supertux
|
Public Member Functions | |
Bullet (const Vector &pos, const Vector &xm, Direction dir, BonusType type, Player &player) | |
virtual GameObjectClasses | get_class_types () const override |
List notable classes in inheritance hierarchy of class. More... | |
virtual void | update (float dt_sec) override |
This function is called once per frame and allows the object to update it's state. More... | |
virtual void | draw (DrawingContext &context) override |
The GameObject should draw itself onto the provided DrawingContext if this function is called. More... | |
virtual void | collision_solid (const CollisionHit &hit) override |
this function is called when the object collided with something solid | |
virtual HitResponse | collision (GameObject &other, const CollisionHit &hit) override |
this function is called when the object collided with any other object | |
virtual bool | is_saveable () const override |
Indicates if the object will be saved. More... | |
virtual int | get_layer () const override |
void | ricochet (GameObject &other, const CollisionHit &hit) |
Makes bullet bounce off an object (that got hit). More... | |
BonusType | get_type () const |
Player & | get_player () const |
![]() | |
MovingObject (const ReaderMapping &reader) | |
virtual bool | collides (GameObject &, const CollisionHit &) const override |
when 2 objects collided, we will first call the collision functions of both objects that can decide on how to react to the collision. More... | |
virtual void | collision_tile (uint32_t) override |
called when tiles with special attributes have been touched | |
virtual void | set_pos (const Vector &pos) |
virtual void | move_to (const Vector &pos) |
virtual void | move (const Vector &dist) |
virtual bool | listener_is_valid () const override |
Vector | get_pos () const |
const Rectf & | get_bbox () const |
const Vector & | get_movement () const |
CollisionGroup | get_group () const |
CollisionObject * | get_collision_object () |
const CollisionObject * | get_collision_object () const |
void | set_parent_dispenser (Dispenser *dispenser) |
Dispenser * | get_parent_dispenser () const |
virtual std::string | get_class_name () const override |
virtual std::string | get_exposed_class_name () const override |
virtual ObjectSettings | get_settings () override |
virtual void | editor_select () override |
The user clicked on the object in the editor and selected it. | |
virtual void | on_flip (float height) override |
When level is flipped vertically. | |
float | get_x () const |
Returns the object's X coordinate. | |
float | get_y () const |
Returns the object's Y coordinate. | |
void | set_pos (float x, float y) |
Sets the position of the object. More... | |
void | move (float x, float y) |
Moves the object by ""x"" units to the right and ""y"" down, relative to its current position. More... | |
float | get_width () const |
Returns the object's hitbox width. | |
float | get_height () const |
Returns the object's hitbox height. | |
![]() | |
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 |
virtual void | save (Writer &writer) |
This function saves the object. More... | |
std::string | save () |
virtual std::string | get_display_name () const |
Returns the display name of the object, translated to the user's locale. | |
virtual std::vector< std::string > | get_patches () const |
Version checking/updating, patch information. | |
virtual void | update_version () |
int | get_version () const |
Returns the current version of the object. | |
int | get_latest_version () const |
Returns the latest version of the object. | |
bool | is_up_to_date () const |
Checks whether the object's current version is equal to its latest one. | |
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 | track_state () const |
Indicates if the object's state should be tracked. More... | |
virtual bool | has_object_manager_priority () const |
Indicates if the object should be added at the beginning of the object list. More... | |
virtual bool | has_settings () const |
Indicates if get_settings() is implemented. More... | |
virtual GameObjectTypes | get_types () const |
Get all types of the object, if available. More... | |
int | get_type () const |
Returns the type index of the object. | |
virtual void | after_editor_set () |
virtual void | remove_me () |
schedules this object to be removed at the end of the frame | |
bool | is_valid () const |
returns true if the object is not scheduled to be removed yet | |
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 |
Returns the name of the object. | |
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 | save_state () |
Save/check the current state of the object. More... | |
virtual void | check_state () |
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... | |
GameObjectManager * | get_parent () const |
Additional Inherited Members | |
![]() | |
static void | register_class (ssq::VM &vm) |
static std::string | class_name () |
![]() | |
static void | register_class (ssq::VM &vm) |
![]() | |
enum | TypeChange { INITIAL = -1 } |
When the type has been changed from the editor. More... | |
![]() | |
void | set_group (CollisionGroup group) |
![]() | |
void | parse_type (const ReaderMapping &reader) |
Parse object type. More... | |
virtual void | on_type_change (int old_type) |
int | type_id_to_value (const std::string &id) const |
Conversion between type ID and value. More... | |
std::string | type_value_to_id (int value) const |
![]() | |
CollisionObject | m_col |
Dispenser * | m_parent_dispenser |
![]() | |
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 | |
int | m_type |
Type of the GameObject. More... | |
std::vector< std::unique_ptr< FadeHelper > > | m_fade_helpers |
Fade Helpers are for easing/fading script functions. | |
bool | m_track_undo |
Track the following creation/deletion of this object for undo. More... | |
|
overridevirtual |
The GameObject should draw itself onto the provided DrawingContext if this function is called.
Implements GameObject.
|
inlineoverridevirtual |
List notable classes in inheritance hierarchy of class.
This makes it possible to efficiently look up all objects deriving from a particular intermediate class
Reimplemented from MovingObject.
|
inlineoverridevirtual |
Indicates if the object will be saved.
If false, the object will be skipped on saving and can't be cloned in the editor.
Reimplemented from GameObject.
void Bullet::ricochet | ( | GameObject & | other, |
const CollisionHit & | hit | ||
) |
Makes bullet bounce off an object (that got hit).
To be called by the collision handler of that object. Note that the hit
parameter is filled in as perceived by the object, not by the bullet.
|
overridevirtual |
This function is called once per frame and allows the object to update it's state.
The dt_sec is the time that has passed since the last frame in seconds and should be the base for all timed calculations (don't use SDL_GetTicks directly as this will fail in pause mode). This function is not called in the Editor.
Implements GameObject.