/* Program: "MINI-LEMINGI" Modul: Elementy Swiata Autor: Damian Wojtowicz Weryfikator: Michal Zmijewski Tester: Anna Doros Krotki opis: W pliku tym znajduja sie stale wykorzystywane w programie dotyczace obiektow klasy Leming i jej podklas. */ #ifndef __STALE_LEMING_H #define __STALE_LEMING_H /* czasy trwania czynnosci i wielkosci ekstremalne dla leminga */ #define PREDKOSC_W_WODZIE 10 #define PREDKOSC_W_POWIETRZU 5 #define SPADANIE_W_WODZIE 8 #define SPADANIE_W_POWIETRZU 4 #define POJEMNOSC_PLUC 80 #define MAKSYMALNY_SKOK 40 #define CZAS_ZMIANY_STANU 4 /* czasy trwania czynnosci dla komandosa */ #define CZAS_STANIA 10 #define CZAS_KOPANIA 24 #define CZAS_BUDOWANIA 20 #define CZAS_PICIA 24 #define ZAPAS_SIL_KOPACZA 5 #define ZAPAS_SIL_SCHODKARZA 5 #define ZAPAS_SIL_PIJUSA 5 /* kierunek poruszania sie elementu */ #define DOL 2 #define PRZOD 1 #define GORA 4 /* zwrot nosa (nie zmieniac wartosci!!!) */ #define LEWO -1 #define PRAWO 1 /* stan elementu swiata: 7 bitow na czynnosc podstawowa pozostale na okreslenie dodatkowych stanow (np. w wodzie, pracuje) np.: stan == IDZIE + PRACUJE + W_WODZIE oznacz ze leming idac pracuje oraz znajduje sie w wodzie */ /* stan podstawowy (czynnosc) */ #define IDZIE 1 #define STOI 8 /* bloker i schodkarz */ #define SPADA 2 #define ZAWRACA 4 #define NARODZINY 16 #define DOSZEDL 32 #define UMIERA 64 /* stan - czy pracuje (idzie stoi) */ #define PRACUJE 256 /* komandos pracujacy */ /* stan - czy znajduje sie w wodzie */ #define W_WODZIE 512 /* stan - dodatek do umiera: od czego umiera */ #define W_KWASIE 1024 #define OD_BOMBY 2048 /* rodzaj stanu */ #define CZYNNOSC 127 /* IDZIE + STOI + ... + UMIERA */ #define CZY_PRACUJE 256 #define CZY_WODA 512 #define CZY_KWAS 1024 #define CZY_OD_BOMBY 2048 #endif