supertux
Public Member Functions | Protected Types | Protected Attributes | List of all members
SSpiky Class Referencefinal
Inheritance diagram for SSpiky:
WalkingBadguy BadGuy MovingSprite MovingObject GameObject CollisionListener

Public Member Functions

 SSpiky (const ReaderMapping &reader)
 
virtual void initialize () override
 called immediately before the first call to initialize
 
virtual void collision_solid (const CollisionHit &hit) override
 Called when the badguy collided with solid ground.
 
virtual HitResponse collision_badguy (BadGuy &badguy, const CollisionHit &hit) override
 Called when the badguy collided with another badguy.
 
virtual void active_update (float dt_sec) override
 called each frame when the badguy is activated. More...
 
virtual void freeze () override
 Called when hit by an ice bullet, and is_freezable() returns true. More...
 
virtual bool is_freezable () const override
 
virtual bool is_flammable () const override
 Returns whether to call ignite() when a badguy gets hit by a fire bullet.
 
virtual std::string get_class () const override
 
virtual std::string get_display_name () const override
 
- Public Member Functions inherited from WalkingBadguy
 WalkingBadguy (const Vector &pos, const std::string &sprite_name, const std::string &walk_left_action, const std::string &walk_right_action, int layer=LAYER_OBJECTS, const std::string &light_sprite_name="images/objects/lightmap_light/lightmap_light-medium.sprite")
 
 WalkingBadguy (const Vector &pos, Direction direction, const std::string &sprite_name, const std::string &walk_left_action, const std::string &walk_right_action, int layer=LAYER_OBJECTS, const std::string &light_sprite_name="images/objects/lightmap_light/lightmap_light-medium.sprite")
 
 WalkingBadguy (const ReaderMapping &reader, const std::string &sprite_name, const std::string &walk_left_action, const std::string &walk_right_action, int layer=LAYER_OBJECTS, const std::string &light_sprite_name="images/objects/lightmap_light/lightmap_light-medium.sprite")
 
virtual void unfreeze () override
 Called to unfreeze the badguy. More...
 
void active_update (float dt_sec, float target_velocity)
 
float get_velocity_y () const
 
void set_velocity_y (float vy)
 
void add_velocity (const Vector &velocity)
 Adds velocity to the badguy (be careful when using this)
 
float get_walk_speed () const
 
void set_walk_speed (float)
 
bool is_active () const
 
- Public Member Functions inherited from BadGuy
 BadGuy (const Vector &pos, const std::string &sprite_name, int layer=LAYER_OBJECTS, const std::string &light_sprite_name="images/objects/lightmap_light/lightmap_light-medium.sprite")
 
 BadGuy (const Vector &pos, Direction direction, const std::string &sprite_name, int layer=LAYER_OBJECTS, const std::string &light_sprite_name="images/objects/lightmap_light/lightmap_light-medium.sprite")
 
 BadGuy (const ReaderMapping &reader, const std::string &sprite_name, int layer=LAYER_OBJECTS, const std::string &light_sprite_name="images/objects/lightmap_light/lightmap_light-medium.sprite")
 
virtual void draw (DrawingContext &context) override
 Called when the badguy is drawn. More...
 
virtual void update (float dt_sec) override
 Called each frame. More...
 
virtual ObjectSettings get_settings () override
 
virtual void after_editor_set () override
 
virtual HitResponse collision (GameObject &other, const CollisionHit &hit) override
 Called when a collision with another object occurred. More...
 
virtual void collision_tile (uint32_t tile_attributes) override
 Called when a collision with tile with special attributes occurred.
 
virtual void kill_fall ()
 Set the badguy to kill/falling state, which makes him falling of the screen (his sprite is turned upside-down)
 
virtual void run_dead_script ()
 Call this, if you use custom kill_fall() or kill_squashed(GameObject& object)
 
virtual bool can_break () const
 True if this badguy can break bricks or open bonusblocks in his current form. More...
 
Vector get_start_position () const
 
void set_start_position (const Vector &vec)
 
virtual void ignite ()
 Called when hit by a fire bullet, and is_flammable() returns true.
 
virtual void extinguish ()
 Called to revert a badguy when is_ignited() returns true.
 
bool is_ignited () const
 Returns whether this badguys is currently on fire.
 
virtual bool is_hurtable () const
 Return true if this badguy can be hurt by tiles with the attribute "hurts".
 
bool is_frozen () const
 
bool is_in_water () const
 
virtual std::string get_water_sprite () const
 Get melting particle sprite filename.
 
void set_parent_dispenser (Dispenser *parent)
 Sets the dispenser that spawns this badguy. More...
 
Dispenserget_parent_dispenser () const
 Returns the dispenser this badguys was spawned by.
 
- Public Member Functions inherited from MovingSprite
 MovingSprite (const Vector &pos, const std::string &sprite_name, int layer=LAYER_OBJECTS, CollisionGroup collision_group=COLGROUP_MOVING)
 
 MovingSprite (const ReaderMapping &reader, const Vector &pos, int layer=LAYER_OBJECTS, CollisionGroup collision_group=COLGROUP_MOVING)
 
 MovingSprite (const ReaderMapping &reader, const std::string &sprite_name, int layer=LAYER_OBJECTS, CollisionGroup collision_group=COLGROUP_MOVING)
 
 MovingSprite (const ReaderMapping &reader, int layer=LAYER_OBJECTS, CollisionGroup collision_group=COLGROUP_MOVING)
 
virtual std::string get_default_sprite_name () const
 
std::string get_sprite_name () const
 
void change_sprite (const std::string &new_sprite_name)
 
void spawn_explosion_sprites (int count, const std::string &sprite_path)
 
- Public Member Functions inherited from MovingObject
 MovingObject (const ReaderMapping &reader)
 
virtual bool collides (GameObject &, const CollisionHit &) const override
 when 2 objects collided, we will first call the pre_collision_check functions of both objects that can decide on how to react to the collision. More...
 
virtual void set_pos (const Vector &pos)
 
virtual void move_to (const Vector &pos)
 
virtual bool listener_is_valid () const override
 
Vector get_pos () const
 
const Rectfget_bbox () const
 
const Vectorget_movement () const
 
CollisionGroup get_group () const
 
CollisionObjectget_collision_object ()
 
const CollisionObjectget_collision_object () const
 
virtual void editor_select () override
 The user clicked on the object in the editor and selected it.
 
- Public Member Functions inherited from GameObject
 GameObject (const std::string &name)
 
 GameObject (const ReaderMapping &reader)
 
virtual void finish_construction ()
 Called after all objects have been added to the Sector and the Sector is fully constructed. More...
 
UID get_uid () const
 
void save (Writer &writer)
 This function saves the object. More...
 
virtual bool is_singleton () const
 If true only a single object of this type is allowed in a given GameObjectManager.
 
virtual bool has_variable_size () const
 Does this object have variable size (secret area trigger, wind, etc.)
 
virtual bool is_saveable () const
 Indicates if the object will be saved. More...
 
virtual bool has_settings () const
 Indicates if get_settings() is implemented. More...
 
bool is_valid () const
 returns true if the object is not scheduled to be removed yet
 
void remove_me ()
 schedules this object to be removed at the end of the frame
 
void add_remove_listener (ObjectRemoveListener *listener)
 registers a remove listener which will be called if the object gets removed/destroyed
 
void del_remove_listener (ObjectRemoveListener *listener)
 unregisters a remove listener, so it will no longer be called if the object gets removed/destroyed
 
void set_name (const std::string &name)
 
const std::string & get_name () const
 
virtual const std::string get_icon_path () const
 
virtual void stop_looping_sounds ()
 stops all looping sounds
 
virtual void play_looping_sounds ()
 continues all looping sounds
 
template<typename T >
T * get_component ()
 
void add_component (std::unique_ptr< GameObjectComponent > component)
 
void remove_component (GameObjectComponent *component)
 
virtual void editor_delete ()
 The editor requested the deletion of the object.
 
virtual void editor_deselect ()
 The object got deselected.
 
virtual void editor_update ()
 Called each frame in the editor, used to keep linked objects together (e.g. More...
 

Protected Types

enum  SSpikyState { SSPIKY_SLEEPING, SSPIKY_WAKING, SSPIKY_WALKING }
 
- Protected Types inherited from BadGuy
enum  State {
  STATE_INIT, STATE_INACTIVE, STATE_ACTIVE, STATE_SQUISHED,
  STATE_FALLING, STATE_BURNING, STATE_MELTING, STATE_GROUND_MELTING,
  STATE_INSIDE_MELTING, STATE_GEAR
}
 

Protected Attributes

SSpikyState state
 
- Protected Attributes inherited from WalkingBadguy
std::string walk_left_action
 
std::string walk_right_action
 
float walk_speed
 
int max_drop_height
 Maximum height of drop before we will turn around, or -1 to just drop from any ledge.
 
Timer turn_around_timer
 
int turn_around_counter
 counts number of turns since turn_around_timer was started
 
- Protected Attributes inherited from BadGuy
Physic m_physic
 
bool m_is_initialized
 true if initialize() has already been called
 
Vector m_start_position
 
Direction m_dir
 The direction we currently face in.
 
Direction m_start_dir
 The direction we initially faced in.
 
bool m_frozen
 
bool m_ignited
 true if this badguy is currently on fire
 
bool m_in_water
 
std::string m_dead_script
 < true if the badguy is currently in water More...
 
float m_melting_time
 
SpritePtr m_lightsprite
 
bool m_glowing
 
- Protected Attributes inherited from MovingSprite
std::string m_sprite_name
 
std::string m_default_sprite_name
 The default sprite for this MovingObject.
 
SpritePtr m_sprite
 
int m_layer
 Sprite's z-position. More...
 
- Protected Attributes inherited from MovingObject
CollisionObject m_col
 
- Protected Attributes inherited from GameObject
std::string m_name
 a name for the gameobject, this is mostly a hint for scripts and for debugging, don't rely on names being set or being unique
 

Additional Inherited Members

- Public Attributes inherited from BadGuy
bool m_countMe
 Count this badguy to the statistics? This value should not be changed during runtime. More...
 
- Protected Member Functions inherited from WalkingBadguy
void turn_around ()
 
- Protected Member Functions inherited from BadGuy
virtual HitResponse collision_player (Player &player, const CollisionHit &hit)
 Called when the badguy collided with a player.
 
virtual bool collision_squished (GameObject &object)
 Called when the player hit the badguy from above. More...
 
virtual HitResponse collision_bullet (Bullet &bullet, const CollisionHit &hit)
 Called when the badguy collided with a bullet.
 
virtual void inactive_update (float dt_sec)
 called each frame when the badguy is not activated. More...
 
virtual void activate ()
 called when the badguy has been activated. More...
 
virtual void deactivate ()
 called when the badguy has been deactivated
 
void kill_squished (GameObject &object)
 
void set_state (State state)
 
State get_state () const
 
bool check_state_timer ()
 
Playerget_nearest_player () const
 returns a pointer to the nearest player or 0 if no player is available
 
bool is_offscreen () const
 initial position of the enemy. More...
 
bool might_fall (int height=1) const
 Returns true if we might soon fall at least height pixels. More...
 
Direction str2dir (const std::string &dir_str) const
 Get Direction from String. More...
 
void update_on_ground_flag (const CollisionHit &hit)
 Update on_ground_flag judging by solid collision hit. More...
 
bool on_ground () const
 Returns true if we touched ground in the past frame This only works if update_on_ground_flag() gets called in collision_solid. More...
 
Vector get_floor_normal () const
 Returns floor normal stored the last time when update_on_ground_flag was called and we touched something solid from above. More...
 
bool is_active () const
 Returns true if we were in STATE_ACTIVE at the beginning of the last call to update()
 
void set_colgroup_active (CollisionGroup group)
 changes colgroup_active. More...
 
- Protected Member Functions inherited from MovingSprite
void set_action (const std::string &action, int loops)
 set new action for sprite and resize bounding box. More...
 
void set_action_centered (const std::string &action, int loops)
 set new action for sprite and re-center bounding box. More...
 
void set_action (const std::string &action, int loops, AnchorPoint anchorPoint)
 set new action for sprite and align bounding boxes at anchorPoint. More...
 
- Protected Member Functions inherited from MovingObject
void set_group (CollisionGroup group)
 

Member Function Documentation

§ active_update()

void SSpiky::active_update ( float  dt_sec)
overridevirtual

called each frame when the badguy is activated.

Reimplemented from WalkingBadguy.

§ freeze()

void SSpiky::freeze ( )
overridevirtual

Called when hit by an ice bullet, and is_freezable() returns true.

Reimplemented from WalkingBadguy.


The documentation for this class was generated from the following files: