Argentum Online - Servidor
Referencia de la Clase Player
Diagrama de herencias de Player
Entity

Métodos públicos

 Player (EntityId entity_id, nlohmann::json player_info, Map &map)
 Construye a un jugador. Más...
 
entity_type_t get_type () const override
 Obtiene el tipo de la entidad: PLAYER. Más...
 
class_type_t get_class_type () const
 Obtiene la clase del jugador. Más...
 
race_type_t get_race_type () const
 Obtiene la raza del jugador. Más...
 
void immobilize (int delta_t)
 Tiempo a inmovilizar al personaje en milisegundos. Más...
 
void resuscitate (int delta_t)
 Tiempo a esperar para ser resucitado en milisegundos. Más...
 
void regen_max ()
 Regenera al maximo la vida y mana actuales. Más...
 
void teleport (position_t dest, int delta_t)
 
void die () override
 
bool is_alive () const override
 
void use (SlotId slot)
 Utilizar un item del inventario. Más...
 
void use_ability (Entity *target, position_t target_pos)
 Usar la habilidad del arma equipada actualmente. Más...
 
void add_item (Item *item)
 Agrega un item al inventario del jugador. En caso de que el item no entrase en el inventario, este será dropeado al piso. Más...
 
Itemremove_item (SlotId slot, uint32_t amount)
 Quita un item del inventario del jugador. Más...
 
Goldremove_gold (uint32_t amount)
 Remueve amount del Gold actual. Más...
 
uint32_t get_gold_stack () const
 Devuelve la cantidad de oro que tiene actualmente. Más...
 
void unequip (SlotId slot)
 Desequipa de todo su armamento al jugador. Más...
 
Mapget_map ()
 Devuelve el mapa actual del player. Más...
 
void set_movement (mov_action_t action, direction_t direction)
 Setea el movimiento del jugador. Más...
 
void meditate (bool meditating)
 Empieza o detiene la regeneracion de mana al meditar. Más...
 
void update (uint64_t delta_t) override
 Player update. Más...
 
bool can_attack (Entity *attacked) const override
 Define si un jugador podrá o no atacar a otra entidad. Más...
 
void set_alive (bool alive)
 
nlohmann::json get_data () const override
 Obtiene los datos de la entidad para enviar al cliente. (caso PLAYER) Más...
 
nlohmann::json get_inventory_data () const
 Obtiene la información del inventario del jugador. Más...
 
nlohmann::json get_persist_data () const
 Obtener la información para persistir a un jugador. Más...
 
- Métodos públicos heredados desde Entity
 Entity (EntityId id, Map &map, const std::string &name, MovementComponent *movement_component, CombatComponent *combat_component, unsigned int current_level, unsigned int current_exp)
 
 Entity (EntityId id, Map &map, const std::string &name, unsigned int current_level, unsigned int current_exp)
 
unsigned int heal (unsigned int hp)
 
bool can_spend_mp (unsigned int amount)
 
void spend_mp (unsigned int amount)
 
std::string get_name () const
 
unsigned int get_level () const
 
unsigned int get_max_hp () const
 
virtual position_t get_facing_position (position_t position)
 
attack_result_t attack (Entity *attacked)
 
attack_result_t receive_damage (attack_t attack)
 
void add_exp (int exp)
 
EntityId get_id () const
 

Otros miembros heredados

- Atributos protegidos heredados desde Entity
const EntityId id
 
Mapmap
 
const std::string name
 
MovementComponentmovement_component
 
CombatComponentcombat_component
 
ExperienceComponent experience_component
 

Documentación del constructor y destructor

◆ Player()

Player::Player ( EntityId  entity_id,
nlohmann::json  player_info,
Map map 
)

Construye a un jugador.

Parámetros
entity_id
player_info
map

Documentación de las funciones miembro

◆ add_item()

void Player::add_item ( Item item)

Agrega un item al inventario del jugador. En caso de que el item no entrase en el inventario, este será dropeado al piso.

Parámetros
itemItem a ser agregado.

◆ can_attack()

bool Player::can_attack ( Entity attacked) const
overridevirtual

Define si un jugador podrá o no atacar a otra entidad.

Un jugador puede atacar al otro si ambos son de nivel mayor al definido por "newbie level" y la diferencia con éste es mayor a "level difference".

Parámetros
attackedEntidad a la que se pretende atacar.
Devuelve
true
false

Reimplementado de Entity.

◆ get_class_type()

class_type_t Player::get_class_type ( ) const

Obtiene la clase del jugador.

Devuelve
class_type_t

◆ get_data()

nlohmann::json Player::get_data ( ) const
overridevirtual

Obtiene los datos de la entidad para enviar al cliente. (caso PLAYER)

ej:
{
"armor_id": 2,
"body_id": 2,
"curr_exp": 93,
"curr_hp": 83,
"curr_level": 16,
"curr_mp": 43,
"direction": 1,
"entity_id": 1,
"head_id": 2,
"helmet_id": 2,
"limit_exp": 16126,
"max_hp": 336,
"max_mp": 256,
"move_speed": 7,
"name": "tai",
"shield_id": 2,
"type_id": 0,
"weapon_id": 3
}
Devuelve
nlohmann::json

Implementa Entity.

◆ get_gold_stack()

uint32_t Player::get_gold_stack ( ) const

Devuelve la cantidad de oro que tiene actualmente.

Devuelve
uint32_t

◆ get_inventory_data()

nlohmann::json Player::get_inventory_data ( ) const

Obtiene la información del inventario del jugador.

ej:
{
"curr_gold": 0,
"items": [
{ 1er Slot: Una poción de maná
"actual_stack": 1200,
"item_id": 2,
"name": "Pocion de mana",
"potion_info": {
"health_var": 0,
"mana_var": 30
},
"type": 3
},
{ // 2do Slot: vacío
"type": 0
},
...
{ // 12avo Slot: vacío
"type": 0
}
]
}
Devuelve
nlohmann::json

◆ get_map()

Map & Player::get_map ( )

Devuelve el mapa actual del player.

Devuelve
Map&

◆ get_persist_data()

nlohmann::json Player::get_persist_data ( ) const

Obtener la información para persistir a un jugador.

{
"alive": true,
"armor_id": 101,
"body_id": 2,
"class_type": 4,
"curr_exp": 131000,
"curr_hp": 117,
"curr_level": 16,
"curr_mp": 77,
"head_id": 2,
"helmet_id": 2,
"inventory": {
"curr_gold": 0,
"items_ids": [
401,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"items_stacks": [
1200,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
]
},
"name": "tai",
"race_type": 3,
"shield_id": 201,
"weapon_id": 302
}
Devuelve
nlohmann::json

◆ get_race_type()

race_type_t Player::get_race_type ( ) const

Obtiene la raza del jugador.

Devuelve
race_type_t

◆ get_type()

entity_type_t Player::get_type ( ) const
overridevirtual

Obtiene el tipo de la entidad: PLAYER.

Devuelve
entity_type_t

Implementa Entity.

◆ immobilize()

void Player::immobilize ( int  delta_t)

Tiempo a inmovilizar al personaje en milisegundos.

Parámetros
delta_t

◆ meditate()

void Player::meditate ( bool  meditating)

Empieza o detiene la regeneracion de mana al meditar.

◆ regen_max()

void Player::regen_max ( )

Regenera al maximo la vida y mana actuales.

◆ remove_gold()

Gold * Player::remove_gold ( uint32_t  amount)

Remueve amount del Gold actual.

Parámetros
amount
Devuelve
Gold*

◆ remove_item()

Item * Player::remove_item ( SlotId  slot,
uint32_t  amount 
)

Quita un item del inventario del jugador.

Parámetros
slotSlot del item que se quiere quitar.
amountCantidad del item a ser quitada.
Devuelve
Item* El item quitado o NULL en caso de que no hubiera un item en esa posicion.

◆ resuscitate()

void Player::resuscitate ( int  delta_t)

Tiempo a esperar para ser resucitado en milisegundos.

Parámetros
delta_t

◆ set_movement()

void Player::set_movement ( mov_action_t  action,
direction_t  direction 
)

Setea el movimiento del jugador.

Parámetros
actionEmpieza (START) o detiene (STOP) el movimiento.
directionSelecciona la dirección del movimiento.

◆ unequip()

void Player::unequip ( SlotId  slot)

Desequipa de todo su armamento al jugador.

◆ update()

void Player::update ( uint64_t  delta_t)
overridevirtual

Player update.

Parámetros
delta_t

Implementa Entity.

◆ use()

void Player::use ( SlotId  slot)

Utilizar un item del inventario.

Parámetros
slotSelecciona el casillero del inventario a utilizar.

◆ use_ability()

void Player::use_ability ( Entity target,
position_t  target_pos 
)

Usar la habilidad del arma equipada actualmente.

Parámetros
EntityEntidad objetivo de la habilidad (podría ser sí mismo).

La documentación para esta clase fue generada a partir de los siguientes ficheros: