#include <submarine.h>
Public Types | |
enum | Direction { kDirectionNone, kDirectionN, kDirectionNE, kDirectionE, kDirectionSE, kDirectionS, kDirectionSW, kDirectionW, kDirectionNW } |
Public Types inherited from Gob::ANIObject | |
enum | Mode { kModeContinuous, kModeOnce } |
Public Member Functions | |
Submarine (const ANIFile &ani) | |
Direction | getDirection () const |
void | turn (Direction to) |
void | shoot () |
void | die () |
void | leave () |
void | advance () override |
bool | canMove () const |
bool | isDead () const |
bool | isShooting () const |
bool | hasExited () const |
Public Member Functions inherited from Gob::ANIObject | |
ANIObject (const ANIFile &ani) | |
ANIObject (const CMPFile &cmp) | |
void | setVisible (bool visible) |
bool | isVisible () const |
void | setPause (bool pause) |
bool | isPaused () const |
void | setMode (Mode mode) |
virtual void | setPosition () |
virtual void | setPosition (int16 x, int16 y) |
void | getPosition (int16 &x, int16 &y) const |
void | getFramePosition (int16 &x, int16 &y, uint16 n=0) const |
void | getFrameSize (int16 &width, int16 &height, uint16 n=0) const |
bool | isIn (int16 x, int16 y) const |
bool | isIn (const ANIObject &obj) const |
void | setAnimation (uint16 animation) |
void | rewind () |
void | setFrame (uint16 frame) |
uint16 | getAnimation () const |
uint16 | getFrame () const |
bool | lastFrame () const |
virtual bool | draw (Surface &dest, int16 &left, int16 &top, int16 &right, int16 &bottom) |
virtual bool | clear (Surface &dest, int16 &left, int16 &top, int16 &right, int16 &bottom) |
Additional Inherited Members | |
Protected Member Functions inherited from Gob::BackBuffer | |
void | trashBuffer () |
void | resizeBuffer (uint16 width, uint16 height) |
bool | saveScreen (const Surface &dest, int16 &left, int16 &top, int16 &right, int16 &bottom) |
bool | restoreScreen (Surface &dest, int16 &left, int16 &top, int16 &right, int16 &bottom) |
bool | hasBuffer () const |
bool | hasSavedBackground () const |
The submarine Geisha's "Penetration" minigame.
void Gob::Geisha::Submarine::turn | ( | Direction | to | ) |
Turn to the specified direction.
void Gob::Geisha::Submarine::shoot | ( | ) |
Play the shoot animation.
void Gob::Geisha::Submarine::die | ( | ) |
Play the exploding animation.
void Gob::Geisha::Submarine::leave | ( | ) |
Play the exiting animation.
|
overridevirtual |
Advance the animation to the next frame.
Reimplemented from Gob::ANIObject.
bool Gob::Geisha::Submarine::canMove | ( | ) | const |
Can the submarine move at the moment?
bool Gob::Geisha::Submarine::isDead | ( | ) | const |
Is the submarine dead?
bool Gob::Geisha::Submarine::isShooting | ( | ) | const |
Is the submarine shooting?
bool Gob::Geisha::Submarine::hasExited | ( | ) | const |
Has the submarine finished exiting the level?