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

Funkcióbeli változás nem történt; előkészítése szabályzat elkészítésének; meg ilyenek

parent cc1ed139
No related branches found
No related tags found
No related merge requests found
......@@ -4,13 +4,13 @@ using namespace genv;
int main()
{
event ev;
Palya* tictac = new Palya();
event ev;
while (gin >> ev && ev.keycode!=key_escape)
{
tictac->jatek(ev);
gout << refresh;
}
}
......
......@@ -2,39 +2,37 @@
#include "palya.h"
#include "palyamezo.h"
#include "player.h"
#include <iostream>
using namespace genv;
using namespace std;
Mester::Mester()
{
player1 = new Player("Player1", 0);
player2 = new Player("Player2", 1);
player1 = new Player("Player1", 1);
player2 = new Player("Player2", 2);
aktiv = player1;
}
void Mester::PlayerChange(){
if(aktiv == player1) {aktiv = player2;}
else
if(aktiv == player2) {aktiv = player1;}
else if(aktiv == player2) {aktiv = player1;}
}
void Mester::iranyitas(Palyamezo* f, event ev) {
if(f->hozzaer(ev) && !f->get_filled() && !f->get_chosen()){
f->chosen_draw();
f->set_chosen();
if(f->hozzaer(ev) && !f->get_filled() && !f->get_hovered()){
f->hovered_draw();
f->set_hovered();
}
if(!f->hozzaer(ev) && !f->get_filled() && f->get_chosen()){
if(!f->hozzaer(ev) && !f->get_filled() && f->get_hovered()){
f->draw();
f->reset_chosen();
f->reset_hovered();
}
if(f->select(ev) && !f->get_filled()){
cout << aktiv->get_name() << endl;
f->mark(aktiv->get_sorszam());
f->occupy(aktiv->get_sorszam());
f->fillin();
PlayerChange();
}
}
void Mester::szabalyzat() {}
Mester::~Mester() {}
#ifndef MESTER_H
#define MESTER_H
#include "graphics.hpp"
#include <vector>
class Palya;
class Palyamezo;
class Player;
class Mester
{
Palya* p;
genv::event ev;
Player* player1;
Player* player2;
Player* aktiv;
std::vector<Palyamezo*> negyzetek;
public:
Mester();
void iranyitas(Palyamezo* f, genv::event ev);
void PlayerChange();
void szabalyzat();
~Mester();
};
......
......@@ -10,9 +10,9 @@ class Palya
{
const int XX = 1000;
const int YY = 1000;
std::vector<Palyamezo*> palyaterulet;
public:
Palya();
std::vector<Palyamezo*> palyaterulet;
Mester* mesztor;
void jatek(genv::event ev);
~Palya();
......
#include "palyamezo.h"
#define red 235,25,25
#define red 255,27,27
#define blue 0,175,255
using namespace genv;
......@@ -14,7 +14,7 @@ void Palyamezo::draw(){
gout << move_to(x+1,y+1) << color(t,t,t) << box(w-2,h-2);
}
void Palyamezo::chosen_draw(){
void Palyamezo::hovered_draw(){
int t = 175;
gout << move_to(x+1,y+1) << color(t,t,t) << box(w-2,h-2);
}
......@@ -23,24 +23,25 @@ bool Palyamezo::get_filled() {return filled;}
void Palyamezo::fillin() {filled = true;}
bool Palyamezo::get_chosen() {return chosen;}
bool Palyamezo::get_hovered() {return hovered;}
void Palyamezo::set_chosen(){
if(!chosen)
chosen = true;
void Palyamezo::set_hovered(){
if(!hovered)
hovered = true;
}
void Palyamezo::reset_chosen(){
if(chosen)
chosen = false;
void Palyamezo::reset_hovered(){
if(hovered)
hovered = false;
}
void Palyamezo::mark(int id){
void Palyamezo::occupy(int id){
gout << move_to(x+1,y+1) << color(0,0,0) << box(w-2,h-2);
if(id == 0)
gout << move_to(x+5,y+5) << color(red) << line(0,30) << line(30,0) << line(0,-30) << line(-30,0);
occupied_by = id;
if(id == 1)
gout << move_to(x+5,y+35) << color(blue) << line(30,0) << line_to(x+w/2,y+5) << line_to(x+5,y+35);
gout << move_to(x+8,y+8) << color(red) << line(0,24) << line(24,0) << line(0,-24) << line(-24,0);
if(id == 2)
gout << move_to(x+8,y+32) << color(blue) << line(24,0) << line_to(x+w/2,y+8) << line_to(x+8,y+32);
}
Palyamezo::~Palyamezo() {}
......@@ -4,21 +4,22 @@
class Palyamezo : public Widget
{
int index_m;
int index_n;
bool filled = false;
bool chosen = false;
bool hovered = false;
int occupied_by = 0;
public:
int index_m;
int index_n;
Palyamezo(Palya* _p, int _x, int _y, int _w, int _h, int _m, int _n);
~Palyamezo();
void draw() override;
void chosen_draw();
void hovered_draw();
bool get_filled();
void fillin();
bool get_chosen();
void set_chosen();
void reset_chosen();
void mark(int id);
bool get_hovered();
void set_hovered();
void reset_hovered();
void occupy(int id);
};
#endif // PALYAMEZO_H
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment