-
Notifications
You must be signed in to change notification settings - Fork 0
/
figura.cpp
98 lines (74 loc) · 1.75 KB
/
figura.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include "figura.h"
#include <cstdlib>
Figura::Figura() {
przesuniecie_x = 0;
przesuniecie_y = 0;
}
char Figura::PobierzZnak() {
return znak;
}
void Figura::UstawZnak(char znak_) {
znak = znak_;
}
void Figura::UstawWysokoscWypelnienia(int liczba_wierszy) {
wypelnienie = new char *[liczba_wierszy];
}
void Figura::UstawDlugoscWypelnienia(int wiersz, int liczba_kolumn) {
wypelnienie[wiersz] = new char[liczba_kolumn];
}
char Figura::PobierzZnakKomorki(int wiersz, int kolumna) {
return wypelnienie[wiersz][kolumna];
}
void Figura::UstawZnakKomorki(int wiersz, int kolumna, char znak) {
wypelnienie[wiersz][kolumna] = znak;
}
int Figura::PobierzWysokosc() {
return wysokosc;
}
void Figura::UstawWysokosc(int wysokosc_) {
wysokosc = wysokosc_;
}
int Figura::PobierzPrzesuniecieX() {
return przesuniecie_x;
}
int Figura::PobierzPrzesuniecieY() {
return przesuniecie_y;
}
void Figura::UstawSrodekX(int kolumny) {
srodek_x = kolumny;
}
void Figura::UstawSrodekY(int wiersze) {
srodek_y = wiersze;
}
int Figura::PobierzZaczepienieX() {
return srodek_x - wysokosc / 2;
}
int Figura::PobierzZaczepienieY() {
return srodek_y + wysokosc / 2;
}
void Figura::PrzesunLewo() {
przesuniecie_x--;
}
void Figura::PrzesunPrawo() {
Figura::przesuniecie_x++;
}
void Figura::PrzesunDol() {
przesuniecie_y++;
}
void Figura::PrzesunGora() {
przesuniecie_y--;
}
void Figura::Powieksz() {
wysokosc++;
};
void Figura::Pomniejsz() {
wysokosc--;
};
bool Figura::JestNaPrzekatnej(int wiersz, int kolumna) {
//zeby komorka byla na przekatnej musi zajsc: |y-y0| == |x-x0|
return abs(wiersz - srodek_y) == abs(kolumna - srodek_x);
}
bool Figura::JestWZakresieUzytkownika(int wiersz) {
return abs(wiersz - srodek_y) < wysokosc / 2 + 1;
}
//test