Argentum Online - Cliente
|
|
1 #ifndef __VISUAL_CHARACTER_COMPONENT
2 #define __VISUAL_CHARACTER_COMPONENT
3 #include <unordered_map>
5 #include "../../../include/types.h"
6 #include "../ECS/component.h"
9 #include "../in_game_text.h"
10 #include "../in_game_bar.h"
11 #include "../visual_effect.h"
14 typedef std::unordered_map<std::string, Actor> Parts;
15 typedef std::unordered_map<std::string, int> PartIds;
25 int transition_offset_x;
26 int transition_offset_y;
33 bool recently_damaged;
38 void _update_offset();
39 void _update_animation(
int delta_x,
int delta_y);
44 std::recursive_mutex m;
46 void _draw_if_present(
Camera &camera,
const std::string &part_name);
64 int shield_id,
int helmet_id,
int armor_id,
65 int speed,
const std::string& name);
94 void set_part(
const std::string &type,
const std::string &texture_family,
103 void init()
override;
Clase usada para mostrar una barra del render.
Definition: in_game_bar.h:10
Componente visual de los personajes.
Definition: visual_character_component.h:21
Camara, utilizada para renderizar el mapa y las entidades.
Definition: camera.h:20
int get_part_id(const std::string &part_name)
Devuelve el id asociado a una parte.
Definition: visual_character_component.cpp:248
void update() override
Actualiza el componente.
Definition: visual_character_component.cpp:215
bool is_moving()
Indica si el personaje se esta moviendo.
Definition: visual_character_component.cpp:244
void set_part(const std::string &type, const std::string &texture_family, int new_part_id, visual_info_t visual_info)
Cambia una parte.
Definition: visual_character_component.cpp:62
Objeto renderizable que contiene informacion para las cuatro orientaciones posibles,...
Definition: actor.h:14
void set_orientation(direction_t new_orientation)
Setea la nueva orientacion del personaje.
Definition: visual_character_component.cpp:184
Struct de informacion visual.
Definition: renderizable_object.h:15
Timer basado en la cuenta de SDL.
Definition: sdl_timer.h:9
Actor & get_part(const std::string &type)
Devuelve una de las partes visuales.
Definition: visual_character_component.cpp:129
Clase usada para mostrar texto del render, mediante texto bitmap.
Definition: in_game_text.h:10
void display_damage(int damage)
Indica que se debe renderizar el danio recibido.
Definition: visual_character_component.cpp:253
Clase para mostrar efectos visuales en posiciones dinamicas.
Definition: visual_effect.h:9
void draw(Camera &camera)
Dibuja el personaje.
Definition: visual_character_component.cpp:96
VisualCharacterComponent(int head_id, int body_id, int weapon_id, int shield_id, int helmet_id, int armor_id, int speed, const std::string &name)
Crea un objeto VisualCharacterComponent.
Definition: visual_character_component.cpp:11
Componente agregable a entidades.
Definition: component.h:10
void server_update(nlohmann::json update_info)
Actualiza el jugador segun la informacion de actualizacion obtenida del servidor.
Definition: visual_character_component.cpp:43
void init() override
Inicializa el componente con lo que necesite, es llamado en el momento de agregarlo a la entity.
Definition: visual_character_component.cpp:55