View difference between Paste ID: F1ExxNrB and T2zEW20i
SHOW: | | - or go back to the newest paste.
1
/*	
2
	Zadanie drugie: Mag niszczący przeszkody!
3
	Utworz klasy "Mag", "Kamien", "Drzewo", oraz wspolna klase-rodzica, np. "Przeszkoda" dla Kamienia i Drzewa.
4
	
5
	Każda przeszkoda powinna zaczynać z określoną wytrzymałością, przekazaną w konstruktorze.
6
	Przeszkody powinny implementować metodę zwracającą, czy zostały zniszczone (czyli, czy ich wytrzymałość <= 0):
7
	bool czyZniszczona();
8
	oraz metodę wyświetlającą w konsoli ich pozostałą wytrzymałość:
9
	void wypiszWytrzymalosc();
10
11
	Konstruktor Maga powinien przyjmować jego lvl, oraz imie.
12
13-
	Mag powinien implementować następujące metody, zmniejszajace wytrzymalosc przeszkody o 1/2 lvla maga:
13+
	Mag powinien implementować następujące metody, zmniejszajace wytrzymalosc przeszkody o równowartość lvla maga:
14
	void kulaOgnia(Przeszkoda p);
15
	void strumienWody(Przeszkoda p);
16
17
	Ponadto: 
18
	Kamień otrzymuje 1/4 obrażeń od ognia. 
19
	Kamień otrzymuje normalne obrażenia od wody.
20
	Drzewo otrzymuje podwójne obrażenia od ognia.
21
	Drzewo nie otrzymuje zadnych obrażeń od wody, zamiast tego odzyskuje 10 pkt wytrzymałości.
22
23
	Poniżej kod do sprawdzenia tego:
24
*/
25
26
Mag mag1 = new Mag(20, "Dumbledore");
27
28
Drzewo drzewo1 = new Drzewo(100);
29
Drzewo drzewo2 = new Drzewo(50);
30
31
Kamien kamien1 = new Kamien(50);
32
33
mag1.kulaOgnia(kamien1);
34
mag1.kulaOgnia(drzewo1);
35
mag1.strumienWody(drzewo2);
36
37
//w komentarzu wartosci, ktory powinny sie pokazac
38
drzewo1.wypiszWytrzymalosc(); //60
39
drzewo2.wypiszWytrzymalosc(); //60
40
kamien1.wypiszWytrzymalosc(); //45
41
42
mag1.strumienWody(kamien1);
43
mag1.strumienWody(kamien1);
44
mag1.kulaOgnia(drzewo1);
45
46
kamien1.wypiszWytrzymalosc(); //5
47
48
if(!(kamien1.czyZniszczona()))
49
	mag1.kulaOgnia(kamien1);
50
51
Console.WriteLine(kamien1.czyZniszczona()); //true
52
Console.WriteLine(drzewo1.czyZniszczona()); //false
53
Console.WriteLine(drzewo2.czyZniszczona()); //true