Horizon Official Technical Documentation
Horizon::Zone::Traits::Appearance Class Reference

#include <Appearance.hpp>

+ Inheritance diagram for Horizon::Zone::Traits::Appearance:

Public Member Functions

 Appearance (std::weak_ptr< Unit > unit, unit_appearance_type type, uint32_t id=0, uint32_t id_left=0)
 
 ~Appearance ()
 
void set (uint32_t id)
 
uint32_t get ()
 
void set_left (uint32_t id)
 
uint32_t get_left ()
 
virtual void notify_update ()
 
unit_appearance_type get_type ()
 

Protected Member Functions

std::shared_ptr< Unitget_unit ()
 

Private Attributes

std::weak_ptr< Unit_unit
 
unit_appearance_type _type
 
uint32_t _id {0}
 
uint32_t _id_left {0}
 

Constructor & Destructor Documentation

◆ Appearance()

Horizon::Zone::Traits::Appearance::Appearance ( std::weak_ptr< Unit unit,
unit_appearance_type  type,
uint32_t  id = 0,
uint32_t  id_left = 0 
)
inline
50 : _unit(unit), _type(type), _id(id), _id_left(id_left)
51 { }
std::weak_ptr< Unit > _unit
Definition: Appearance.hpp:68
unit_appearance_type _type
Definition: Appearance.hpp:69
uint32_t _id_left
Definition: Appearance.hpp:71
uint32_t _id
Definition: Appearance.hpp:70

◆ ~Appearance()

Horizon::Zone::Traits::Appearance::~Appearance ( )
inline
52{ }

Member Function Documentation

◆ get()

uint32_t Horizon::Zone::Traits::Appearance::get ( )
inline
55{ return _id; }

References _id.

Referenced by notify_update().

+ Here is the caller graph for this function:

◆ get_left()

uint32_t Horizon::Zone::Traits::Appearance::get_left ( )
inline
58{ return _id_left; }

References _id_left.

Referenced by notify_update().

+ Here is the caller graph for this function:

◆ get_type()

unit_appearance_type Horizon::Zone::Traits::Appearance::get_type ( )
inline
62{ return _type; }

References _type.

◆ get_unit()

std::shared_ptr< Unit > Horizon::Zone::Traits::Appearance::get_unit ( )
inlineprotected
65{ return _unit.lock(); }

References _unit.

Referenced by notify_update().

+ Here is the caller graph for this function:

◆ notify_update()

void Appearance::notify_update ( )
virtual
39{
40 if (get_unit() != nullptr && get_unit()->type() == UNIT_PLAYER)
41 get_unit()->template downcast<Horizon::Zone::Units::Player>()->get_session()->clif()->notify_appearance_update(_type, get(), get_left());
42}
@ UNIT_PLAYER
Definition: UnitDefinitions.hpp:45
uint32_t get()
Definition: Appearance.hpp:55
uint32_t get_left()
Definition: Appearance.hpp:58
std::shared_ptr< Unit > get_unit()
Definition: Appearance.hpp:65

References _type, get(), get_left(), get_unit(), and UNIT_PLAYER.

Referenced by set(), and set_left().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set()

void Horizon::Zone::Traits::Appearance::set ( uint32_t  id)
inline
54{ _id = id; notify_update(); }
virtual void notify_update()
Definition: Appearance.cpp:38

References _id, and notify_update().

+ Here is the call graph for this function:

◆ set_left()

void Horizon::Zone::Traits::Appearance::set_left ( uint32_t  id)
inline
57{ _id_left = id; notify_update(); }

References _id_left, and notify_update().

+ Here is the call graph for this function:

Member Data Documentation

◆ _id

uint32_t Horizon::Zone::Traits::Appearance::_id {0}
private

Referenced by get(), and set().

◆ _id_left

uint32_t Horizon::Zone::Traits::Appearance::_id_left {0}
private

Referenced by get_left(), and set_left().

◆ _type

unit_appearance_type Horizon::Zone::Traits::Appearance::_type
private

Referenced by get_type(), and notify_update().

◆ _unit

std::weak_ptr<Unit> Horizon::Zone::Traits::Appearance::_unit
private

Referenced by get_unit().


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