Dokumentace třídy Bomb

Bomba. ...

#include <bomb.h>

Diagram dědičnosti pro třídu Bomb

Inheritance graph
[vysvětlivky]
Diagram tříd pro Bomb:

Collaboration graph
[vysvětlivky]

Seznam všech členů.

Veřejné metody

 Bomb (const Animation &anim, Uint16 x, Uint16 y, Uint16 flamesize, Uint16 speed, bool timer)
 Vytvoří bombu.
virtual bool move ()
 Pohyb.
virtual void draw (SDL_Surface *window, const SDL_Rect &rect)
 Vykreslení.
virtual void update ()
 Posun animace.
virtual OBJECT_TYPES type () const
 Typ objektu je bomba.
virtual ~Bomb ()
 Destructor.
virtual bool is_mega () const
 Ne, není megabomba.
virtual void explode ()
 Přinutí bombu k explozi.
void kick (DIRECTION d)
 Kopne do bomby.
void remove_timer ()
 Odstranění ručního odpalování.

Chráněné metody

void update_periods_to_flame_ ()
 Obnovit počet period do výbuchu.
bool move_by_direction_ ()
 Pohnout bombou ve směru pohybu.
virtual void update_presumptions_ ()
 Vytvořit presumpce.
void update_presumptions_from_field_ (const field_t &start_field, Sint16 factor_x, Sint16 factor_y)
 Vytvoří presumpce v jednom směru.
field_t find_target_field_ () const
 Najít cílové políčko bomby.
Uint16 count_distance_ (Uint16 periods_to_end) const
 Spočítat vzdálenost dojezdu.
void move_field_by_direction_ (field_t &field, Sint16 delta) const
 Posunout políčko.
bool is_danger_presumption_ (const field_t &field, Uint16 periods_to_end) const
 Je zde nebezpečná presumpce?.
field_t take_target_from_bomb_before_ (Bomb *bomb_before) const
 Převezme cíl od předcházející bomby.
bool update_presumption_ (const field_t &field)
 Přidat či obnovit presumpci.
void remove_presumptions_ ()
 Odstranit presumpce.

Chráněné atributy

Animation anim_
 Animace.
bool explodes_
 Exploduje-li bomba.
bool timer_
 Odpaluje se ručně.
Uint16 periods_to_flame_
 Počet period do výbuchu.
Uint16 access_counter_
 Počítadlo přístupů.
Uint16 flamesize_
 Velikost plamene.
Uint16 speed_diff_
 Velikost parciálního pohybu.
Uint16 speed_rate_
 Míra parciálního pohybu.
DIRECTION d_
 Směr pohybu.
std::vector< Presumption * > presumptions_
 Seznam presumpcí.
field_t target_field_
 Cílové políčko.


Detailní popis

Bomba.

Dynamický objekt vytvářený především hráčem. Vytváří plamen, může se hýbat.


Dokumentace konstruktoru a destruktoru

Bomb::Bomb ( const Animation anim,
Uint16  x,
Uint16  y,
Uint16  flamesize,
Uint16  speed,
bool  timer 
)

Vytvoří bombu.

Parametry:
anim animace
x souřadnice středu v pixelech
y souřadnice středu v pixelech
flamesize velikost plamene v políčkách
speed rychlost jedoucí bomby
timer odpaluje-li se rucne

Tato funkce volá...

Bomb::~Bomb (  )  [virtual]

Destructor.

Vyhodí zbylé presumpce.

Viz také:
remove_presumptions_()

Tato funkce volá...


Dokumentace k metodám

bool Bomb::move (  )  [virtual]

Pohyb.

Sníží počet period do výbuchu. Hýbe s bombou, stará se o presumpce (vyhazuje nepotřebné, vytváří nové).

Návratová hodnota:
Vrací TRUE pokud objekt explodoval.

Implementuje DynamicMO.

Tato funkce volá...

void Bomb::draw ( SDL_Surface *  window,
const SDL_Rect &  rect 
) [virtual]

Vykreslení.

Parametry:
window surface okna pro vykreslení
rect obdelnik mapy v okne

Implementuje MapObject.

Tato funkce volá...

void Bomb::update (  )  [virtual]

Posun animace.

Posune frame animace, pokud není na ruční odpal. Pokud animace dobehne nebo je na policku bomby plamen, odpálí bombu.

Viz také:
explode()

Implementuje MapObject.

Tato funkce volá...

virtual OBJECT_TYPES Bomb::type (  )  const [inline, virtual]

Typ objektu je bomba.

Implementuje MapObject.

Tuto funkci volají...

virtual bool Bomb::is_mega (  )  const [inline, virtual]

Ne, není megabomba.

Reimplementováno v MegaBomb.

void Bomb::explode (  )  [virtual]

Přinutí bombu k explozi.

Výbuch bomby. Vytvoří plameny s ohledem na okolí. Ohlídá si, aby běžela pouze jednou, protože nemá smysl vytvářet plameny dvakrát.

Reimplementováno v MegaBomb.

Tato funkce volá...

Tuto funkci volají...

void Bomb::kick ( DIRECTION  d  ) 

Kopne do bomby.

Nastaví nový směr. Vycentruje bombu na políčku podle nového směru. Pokud je na dalším políčku ve směru pohybu bomba, posune sebe na vzdálenější okraj políčka.

Parametry:
d nový směr bomby

Tato funkce volá...

Tuto funkci volají...

void Bomb::remove_timer (  ) 

Odstranění ručního odpalování.

Odstraní bombě ruční odpalování, spustí klasické odpočítávání.

Tato funkce volá...

void Bomb::update_periods_to_flame_ (  )  [protected]

Obnovit počet period do výbuchu.

Podle presumpce, která leží pod bombou (pokud tam leží) si nastaví svůj počet period do konce.

Viz také:
Presumption::move()

Tuto funkci volají...

bool Bomb::move_by_direction_ (  )  [protected]

Pohnout bombou ve směru pohybu.

Návratová hodnota:
Vrací TRUE pokud se podařilo nastavit novou polohu. Jinak FALSE (typicky, když se bomba o něc zarazí).

Tuto funkci volají...

void Bomb::update_presumptions_ (  )  [protected, virtual]

Vytvořit presumpce.

Z cílověho políčka vytvoří ve směrech výbuchu presumpce.

Viz také:
find_target_field_()

Reimplementováno v MegaBomb.

Tato funkce volá...

Tuto funkci volají...

void Bomb::update_presumptions_from_field_ ( const field_t start_field,
Sint16  factor_x,
Sint16  factor_y 
) [protected]

Vytvoří presumpce v jednom směru.

Tato funkce volá...

Tuto funkci volají...

field_t Bomb::find_target_field_ (  )  const [protected]

Najít cílové políčko bomby.

Tato funkce volá...

Tuto funkci volají...

Uint16 Bomb::count_distance_ ( Uint16  periods_to_end  )  const [protected]

Spočítat vzdálenost dojezdu.

Parametry:
periods_to_end počet period do výbuchu bomby
Návratová hodnota:
Vzdálenost, kterou je bomba schopna maximálně ujet, než vybuchne.

Tuto funkci volají...

void Bomb::move_field_by_direction_ ( field_t field,
Sint16  delta 
) const [protected]

Posunout políčko.

Pro delta rovno +1 hýbne políčkem o jedna ve směru bomby.

Parametry:
field políčko, které chceme posunout
delta o kolik se má políčko posunout (pro kladné ve směru pohybu)

Tuto funkci volají...

bool Bomb::is_danger_presumption_ ( const field_t field,
Uint16  periods_to_end 
) const [protected]

Je zde nebezpečná presumpce?.

Pokusí se najít presumpci, porovnává počet period do výbuchu presumpce a mě, pokud by mohla presumpce bouchnout dříve než já, testuje, jestli nebudu už za tímto výbuchem.

Parametry:
field policko, ktere testujeme
periods_to_end počet period do mého bouchnutí
Návratová hodnota:
Vrací TRUE pokud je na policku presumpce, ktera bouchne (vytvoří se místo ní plamen) dříve, než stačím odjet, pokud tam presumpce není nebo nesplnuje podmínku výše, vrací FALSE.

Tato funkce volá...

Tuto funkci volají...

field_t Bomb::take_target_from_bomb_before_ ( Bomb bomb_b  )  const [protected]

Převezme cíl od předcházející bomby.

Převezme od předchozí bomby cíl a posune ho o jedna proti směru pohybu.

Poznámka:
bomb_b je bomb_before
Parametry:
bomb_b předcházející bomba
Návratová hodnota:
Vrací svůj cíl.

Tato funkce volá...

Tuto funkci volají...

bool Bomb::update_presumption_ ( const field_t field  )  [protected]

Přidat či obnovit presumpci.

Vytvoří presumpci, pokud ještě na políčku není, vloží ji do mapy a do seznamu presumpcí bomby. Pokud na políčku už je, nastaví jí aspon svojí dobu do výbuchu, pokud je doba do výbuchu presumpce vetší.

Parametry:
field políčko na které chceme vkládat
Návratová hodnota:
Vrací FALSE, pokud je presumpce v tomto smeru zastavena. Pokud je volno, vrací TRUE.

Tuto funkci volají...

void Bomb::remove_presumptions_ (  )  [protected]

Odstranit presumpce.

Vyhodí všechny presumpce bomby.

Viz také:
Game::remove_object()

Tuto funkci volají...


Dokumentace k datovým členům

Animation Bomb::anim_ [protected]

Animace.

bool Bomb::explodes_ [protected]

Exploduje-li bomba.

bool Bomb::timer_ [protected]

Odpaluje se ručně.

Uint16 Bomb::periods_to_flame_ [protected]

Počet period do výbuchu.

Uint16 Bomb::access_counter_ [protected]

Počítadlo přístupů.

Uint16 Bomb::flamesize_ [protected]

Velikost plamene.

Uint16 Bomb::speed_diff_ [protected]

Velikost parciálního pohybu.

Uint16 Bomb::speed_rate_ [protected]

Míra parciálního pohybu.

DIRECTION Bomb::d_ [protected]

Směr pohybu.

std::vector< Presumption* > Bomb::presumptions_ [protected]

Seznam presumpcí.

Cílové políčko.


Dokumentace pro tuto třídu byla generována z následujících souborů:

Generováno Mon May 24 21:57:21 2010 pro projekt Bombic 2 programem  doxygen 1.5.6