Skip to content
Snippets Groups Projects
Commit 0c4c6484 authored by Papp Benjámin's avatar Papp Benjámin
Browse files

POST HATÁRIDŐs kiegészítő commit, de nem akartam befejezetlenül hagyni: won/draw ablak hozzáadva

parent 9b3f9c9a
No related branches found
No related tags found
No related merge requests found
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
using namespace genv; using namespace genv;
Mester::Mester() Mester::Mester(Palya* _p) : p(_p)
{ {
player1 = new Player("Player1", 1); player1 = new Player("Player1", 1);
player2 = new Player("Player2", 2); player2 = new Player("Player2", 2);
...@@ -155,17 +155,23 @@ int Mester::vertic_vizsg(Palyamezo* f, int szam){ ...@@ -155,17 +155,23 @@ int Mester::vertic_vizsg(Palyamezo* f, int szam){
bool Mester::streak_vizsgalo(Palyamezo* vizsgalt){ bool Mester::streak_vizsgalo(Palyamezo* vizsgalt){
int vizsgalt_index = vizsgalt->index; int vizsgalt_index = vizsgalt->index;
if(moncsok_vizsg(vizsgalt, vizsgalt_index) >= 5 || monno_vizsg(vizsgalt, vizsgalt_index) >= 5 || horizont_vizsg(vizsgalt, vizsgalt_index) >= 5 || vertic_vizsg(vizsgalt, vizsgalt_index) >= 5){ if(moncsok_vizsg(vizsgalt, vizsgalt_index) >= 5 || monno_vizsg(vizsgalt, vizsgalt_index) >= 5 || horizont_vizsg(vizsgalt, vizsgalt_index) >= 5 || vertic_vizsg(vizsgalt, vizsgalt_index) >= 5)
std::cout << "streak" << std::endl; {return true;}
return true;} else {return false;}
else {
std::cout << "not really" << std::endl;
return false;}
} }
void Mester::gameover() { void Mester::gameover() {
/*if(player1->get_pontszam() == 3) if(player1->get_pontszam() == 3)
p->won()*/ p->won(player1->get_name());
if(player2->get_pontszam() == 3)
p->won(player2->get_name());
if(turn == 400){
if(player1->get_pontszam() > player2->get_pontszam())
p->won(player1->get_name());
else{ if(player2->get_pontszam() > player1->get_pontszam())
p->won(player2->get_name());
else{ if(player1->get_pontszam() == player2->get_pontszam())
p->dontetlen();}}}
} }
void Mester::szabalyzat(Palyamezo* f){ void Mester::szabalyzat(Palyamezo* f){
......
...@@ -9,13 +9,14 @@ class Player; ...@@ -9,13 +9,14 @@ class Player;
class Mester class Mester
{ {
Palya* p;
Player* aktiv; Player* aktiv;
std::vector<Palyamezo*> negyzetek; std::vector<Palyamezo*> negyzetek;
bool lepes = false; bool lepes = false;
int turn = 0; int turn = 0;
int focused_index = 200; int focused_index = 200;
public: public:
Mester(); Mester(Palya* _p);
Player* player1; Player* player1;
Player* player2; Player* player2;
void set_negyzetek(std::vector<Palyamezo*> v); void set_negyzetek(std::vector<Palyamezo*> v);
......
...@@ -18,7 +18,7 @@ Palya::Palya() ...@@ -18,7 +18,7 @@ Palya::Palya()
negyzet->draw(); negyzet->draw();
} }
} }
mesztor = new Mester(); mesztor = new Mester(this);
title = new TextWidget(this, 410, 30, 200, 50, "Tic-tac-toe"); title = new TextWidget(this, 410, 30, 200, 50, "Tic-tac-toe");
title->draw(); title->draw();
gout << font("LiberationSans-Regular.ttf",24); gout << font("LiberationSans-Regular.ttf",24);
...@@ -36,12 +36,14 @@ Palya::Palya() ...@@ -36,12 +36,14 @@ Palya::Palya()
} }
void Palya::jatek(event ev){ void Palya::jatek(event ev){
if(!vege){
mesztor->set_negyzetek(palyaterulet); mesztor->set_negyzetek(palyaterulet);
for(Palyamezo* negyzet : palyaterulet){ for(Palyamezo* negyzet : palyaterulet){
mesztor->iranyitas(negyzet, ev); mesztor->iranyitas(negyzet, ev);
mesztor->szabalyzat(negyzet); mesztor->szabalyzat(negyzet);
} }
} }
}
void Palya::grafikai_valtozas(){ void Palya::grafikai_valtozas(){
pontok1->set_text(to_string(mesztor->player1->get_pontszam())); pontok1->set_text(to_string(mesztor->player1->get_pontszam()));
...@@ -52,8 +54,22 @@ void Palya::grafikai_valtozas(){ ...@@ -52,8 +54,22 @@ void Palya::grafikai_valtozas(){
void Palya::won(string gyoztes) { void Palya::won(string gyoztes) {
gout << font("LiberationSans-Regular.ttf",35); gout << font("LiberationSans-Regular.ttf",35);
TextWidget* ablak = new TextWidget(this, 450, 450, 150, 150, gyoztes); TextWidget* ablak = new TextWidget(this, 400, 400, 230, 200, gyoztes + " won!");
ablak->draw(); ablak->draw();
gout << font("LiberationSans-Regular.ttf",24);
TextWidget* kilepes = new TextWidget(this, 400, 750, 250, 100, "Press 'Esc' to exit!");
kilepes->draw();
vege = true;
}
void Palya::dontetlen(){
gout << font("LiberationSans-Regular.ttf",35);
TextWidget* ablak = new TextWidget(this, 400, 400, 230, 200, "Draw!");
ablak->draw();
gout << font("LiberationSans-Regular.ttf",24);
TextWidget* kilepes = new TextWidget(this, 400, 750, 250, 100, "Press 'Esc' to exit!");
kilepes->draw();
vege = true;
} }
Palya::~Palya() {} Palya::~Palya() {}
...@@ -11,6 +11,7 @@ class Palya ...@@ -11,6 +11,7 @@ class Palya
{ {
const int XX = 1000; const int XX = 1000;
const int YY = 1000; const int YY = 1000;
bool vege = false;
TextWidget* title; TextWidget* title;
TextWidget* bo3; TextWidget* bo3;
TextWidget* nev1; TextWidget* nev1;
...@@ -24,6 +25,7 @@ public: ...@@ -24,6 +25,7 @@ public:
void jatek(genv::event ev); void jatek(genv::event ev);
void grafikai_valtozas(); void grafikai_valtozas();
void won(std::string gyoztes); void won(std::string gyoztes);
void dontetlen();
~Palya(); ~Palya();
}; };
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment