CorsixTH engine (the C++ part)
Open source implementation of Theme Hospital
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
sprite_render_list Class Reference

#include <th_gfx.h>

Inheritance diagram for sprite_render_list:
animation_base drawable link_list

Public Member Functions

void tick ()
 
void set_sheet (sprite_sheet *new_sheet)
 
void set_speed (int x_speed, int y_speed)
 
void set_lifetime (int life_time)
 
void set_use_intermediate_buffer ()
 
void append_sprite (size_t spr_num, int xpos, int ypos)
 
bool is_dead () const
 
void persist (lua_persist_writer *writer) const
 
void depersist (lua_persist_reader *reader)
 
void draw (render_target *canvas, const xy_pair &draw_pos)
 
void draw_fn (render_target *canvas, const xy_pair &draw_pos) override
 Draw the object at a specific point on a render target.
 
bool hit_test (const xy_pair &draw_pos, const xy_pair &obj_pos)
 
bool hit_test_fn (const xy_pair &draw_pos, const xy_pair &obj_pos) override
 Perform a hit test against the object.
 
bool is_multiple_frame_animation_fn () override
 
- Public Member Functions inherited from animation_base
 animation_base ()
 
void remove_from_tile ()
 
void attach_to_tile (const xy_pair &tile_pos, map_tile *node, int layer)
 
uint32_t get_flags () const
 
const xy_pairget_pixel_offset () const
 
const xy_pairget_tile () const
 
void set_flags (uint32_t iFlags)
 
void set_tile (const xy_pair &tile_pos)
 
void set_pixel_offset (int x, int y)
 
void set_layer (int iLayer, int iId)
 
void set_layers_from (const animation_base *pSrc)
 
- Public Member Functions inherited from drawable
 drawable ()=default
 
int get_drawing_layer ()
 
void set_drawing_layer (int layer)
 

Additional Inherited Members

- Public Attributes inherited from drawable
uint32_t flags {0}
 Drawing flags (zero or more list flags from draw_flags).
 
- Protected Attributes inherited from animation_base
xy_pair tile {-1, -1}
 Tile containing the animation. A negative x or y means it is not active.
 
xy_pair pixel_offset {0, 0}
 Offset in pixels relative to the center of the animation tile.
 
::layers layers {}
 

Member Function Documentation

◆ append_sprite()

void sprite_render_list::append_sprite ( size_t  spr_num,
int  xpos,
int  ypos 
)

◆ depersist()

void sprite_render_list::depersist ( lua_persist_reader reader)

◆ draw()

void sprite_render_list::draw ( render_target canvas,
const xy_pair draw_pos 
)

◆ draw_fn()

void sprite_render_list::draw_fn ( render_target canvas,
const xy_pair draw_pos 
)
inlineoverridevirtual

Draw the object at a specific point on a render target.

Can also "draw" the object to the speakers, i.e. play sounds.

Implements drawable.

◆ hit_test()

bool sprite_render_list::hit_test ( const xy_pair draw_pos,
const xy_pair obj_pos 
)

◆ hit_test_fn()

bool sprite_render_list::hit_test_fn ( const xy_pair draw_pos,
const xy_pair obj_pos 
)
inlineoverridevirtual

Perform a hit test against the object.

Should return true if when the object is drawn at draw_pos on a canvas, the point obj_pos is within / on the object.

Implements drawable.

◆ is_dead()

bool sprite_render_list::is_dead ( ) const
inline

◆ is_multiple_frame_animation_fn()

bool sprite_render_list::is_multiple_frame_animation_fn ( )
inlineoverridevirtual

Returns true if instance is a multiple frame animation. Should be overloaded in derived class.

Implements drawable.

◆ persist()

void sprite_render_list::persist ( lua_persist_writer writer) const

◆ set_lifetime()

void sprite_render_list::set_lifetime ( int  life_time)

◆ set_sheet()

void sprite_render_list::set_sheet ( sprite_sheet new_sheet)
inline

◆ set_speed()

void sprite_render_list::set_speed ( int  x_speed,
int  y_speed 
)
inline

◆ set_use_intermediate_buffer()

void sprite_render_list::set_use_intermediate_buffer ( )

◆ tick()

void sprite_render_list::tick ( )

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