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

#include <Status.hpp>

Classes

struct  bonuses
 
class  StatusRegistry
 

Public Member Functions

 Status (std::weak_ptr< Unit > unit, unit_type type)
 
 ~Status ()
 
bool initialize (std::shared_ptr< Horizon::Zone::Units::Mob > creature, std::shared_ptr< const monster_config_data > md)
 
bool initialize (std::shared_ptr< Horizon::Zone::Units::Player > player)
 
bool initialize (std::shared_ptr< Horizon::Zone::Units::NPC > npc)
 
uint32_t get_required_statpoints (uint16_t from, uint16_t to)
 
uint32_t get_status_base (status_point_type type)
 
bool increase_status_point (status_point_type type, uint16_t amount)
 Increases a status point to a certain limit and returns the current total of the stat. More...
 
bool save (std::shared_ptr< Horizon::Zone::Units::Player > pl)
 
bool load (std::shared_ptr< Horizon::Zone::Units::Player > pl)
 
void on_equipment_changed (bool equipped, std::shared_ptr< const item_entry_data > item)
 
void on_job_changed (uint32_t job_id)
 
std::shared_ptr< Strengthstrength ()
 Attributes. More...
 
void set_strength (std::shared_ptr< Strength > str)
 
std::shared_ptr< Agilityagility ()
 
void set_agility (std::shared_ptr< Agility > agi)
 
std::shared_ptr< Vitalityvitality ()
 
void set_vitality (std::shared_ptr< Vitality > vit)
 
std::shared_ptr< Dexteritydexterity ()
 
void set_dexterity (std::shared_ptr< Dexterity > dex)
 
std::shared_ptr< Intelligenceintelligence ()
 
void set_intelligence (std::shared_ptr< Intelligence > int_)
 
std::shared_ptr< Luckluck ()
 
void set_luck (std::shared_ptr< Luck > luck)
 
std::shared_ptr< StrengthPointCoststrength_cost ()
 
void set_strength_cost (std::shared_ptr< StrengthPointCost > str)
 
std::shared_ptr< AgilityPointCostagility_cost ()
 
void set_agility_cost (std::shared_ptr< AgilityPointCost > agi)
 
std::shared_ptr< VitalityPointCostvitality_cost ()
 
void set_vitality_cost (std::shared_ptr< VitalityPointCost > vit)
 
std::shared_ptr< DexterityPointCostdexterity_cost ()
 
void set_dexterity_cost (std::shared_ptr< DexterityPointCost > dex)
 
std::shared_ptr< IntelligencePointCostintelligence_cost ()
 
void set_intelligence_cost (std::shared_ptr< IntelligencePointCost > int_)
 
std::shared_ptr< LuckPointCostluck_cost ()
 
void set_luck_cost (std::shared_ptr< LuckPointCost > luck)
 
std::shared_ptr< StatusPointstatus_point ()
 
void set_status_point (std::shared_ptr< StatusPoint > st)
 
std::shared_ptr< SkillPointskill_point ()
 
void set_skill_point (std::shared_ptr< SkillPoint > sk)
 
std::shared_ptr< MaxHPmax_hp ()
 
void set_max_hp (std::shared_ptr< MaxHP > max_hp)
 
std::shared_ptr< MaxSPmax_sp ()
 
void set_max_sp (std::shared_ptr< MaxSP > max_sp)
 
std::shared_ptr< CurrentHPcurrent_hp ()
 
void set_current_hp (std::shared_ptr< CurrentHP > hp)
 
std::shared_ptr< CurrentSPcurrent_sp ()
 
void set_current_sp (std::shared_ptr< CurrentSP > sp)
 
std::shared_ptr< BaseLevelbase_level ()
 
void set_base_level (std::shared_ptr< BaseLevel > blvl)
 
std::shared_ptr< JobLeveljob_level ()
 
void set_job_level (std::shared_ptr< JobLevel > jlvl)
 
std::shared_ptr< BaseExperiencebase_experience ()
 
void set_base_experience (std::shared_ptr< BaseExperience > bexp)
 
std::shared_ptr< JobExperiencejob_experience ()
 
void set_job_experience (std::shared_ptr< JobExperience > jexp)
 
std::shared_ptr< NextBaseExperiencenext_base_experience ()
 
void set_next_base_experience (std::shared_ptr< NextBaseExperience > nbexp)
 
std::shared_ptr< NextJobExperiencenext_job_experience ()
 
void set_next_job_experience (std::shared_ptr< NextJobExperience > njexp)
 
std::shared_ptr< MovementSpeedmovement_speed ()
 
void set_movement_speed (std::shared_ptr< MovementSpeed > speed)
 
std::shared_ptr< MaxWeightmax_weight ()
 
void set_max_weight (std::shared_ptr< MaxWeight > mw)
 
std::shared_ptr< CurrentWeightcurrent_weight ()
 
void set_current_weight (std::shared_ptr< CurrentWeight > cw)
 
std::shared_ptr< AttackRangeattack_range ()
 
void set_attack_range (std::shared_ptr< AttackRange > m)
 
std::shared_ptr< StatusATKstatus_atk ()
 SubAttributes. More...
 
void set_status_atk (std::shared_ptr< StatusATK > satk)
 
std::shared_ptr< EquipATKequip_atk ()
 
void set_equip_atk (std::shared_ptr< EquipATK > eatk)
 
std::shared_ptr< StatusMATKstatus_matk ()
 
void set_status_matk (std::shared_ptr< StatusMATK > smatk)
 
std::shared_ptr< EquipMATKequip_matk ()
 
void set_equip_matk (std::shared_ptr< EquipMATK > ematk)
 
std::shared_ptr< SoftDEFsoft_def ()
 
void set_soft_def (std::shared_ptr< SoftDEF > sdef)
 
std::shared_ptr< HardDEFhard_def ()
 
void set_hard_def (std::shared_ptr< HardDEF > hdef)
 
std::shared_ptr< SoftMDEFsoft_mdef ()
 
void set_soft_mdef (std::shared_ptr< SoftMDEF > smdef)
 
std::shared_ptr< HardMDEFhard_mdef ()
 
void set_hard_mdef (std::shared_ptr< HardMDEF > hmdef)
 
std::shared_ptr< HIThit ()
 
void set_hit (std::shared_ptr< HIT > hit)
 
std::shared_ptr< CRITcrit ()
 
void set_crit (std::shared_ptr< CRIT > crit)
 
std::shared_ptr< FLEEflee ()
 
void set_flee (std::shared_ptr< FLEE > flee)
 
std::shared_ptr< AttackSpeedattack_speed ()
 
void set_attack_speed (std::shared_ptr< AttackSpeed > aspd)
 
std::shared_ptr< HPRegenerationhp_regeneration ()
 
void set_hp_regeneration (std::shared_ptr< HPRegeneration > hpr)
 
std::shared_ptr< SPRegenerationsp_regeneration ()
 
void set_sp_regeneration (std::shared_ptr< SPRegeneration > spr)
 
std::shared_ptr< BaseAppearancebase_appearance ()
 Appearance. More...
 
void set_base_appearance (std::shared_ptr< BaseAppearance > ba)
 
std::shared_ptr< HairColorhair_color ()
 
void set_hair_color (std::shared_ptr< HairColor > hc)
 
std::shared_ptr< ClothColorcloth_color ()
 
void set_cloth_color (std::shared_ptr< ClothColor > cc)
 
std::shared_ptr< WeaponSpriteweapon_sprite ()
 
void set_weapon_sprite (std::shared_ptr< WeaponSprite > ws)
 
std::shared_ptr< ShieldSpriteshield_sprite ()
 
void set_shield_sprite (std::shared_ptr< ShieldSprite > ss)
 
std::shared_ptr< RobeSpriterobe_sprite ()
 
void set_robe_sprite (std::shared_ptr< RobeSprite > rs)
 
std::shared_ptr< HeadTopSpritehead_top_sprite ()
 
void set_head_top_sprite (std::shared_ptr< HeadTopSprite > hts)
 
std::shared_ptr< HeadMidSpritehead_mid_sprite ()
 
void set_head_mid_sprite (std::shared_ptr< HeadMidSprite > hms)
 
std::shared_ptr< HeadBottomSpritehead_bottom_sprite ()
 
void set_head_bottom_sprite (std::shared_ptr< HeadBottomSprite > hbs)
 
std::shared_ptr< HairStylehair_style ()
 
void set_hair_style (std::shared_ptr< HairStyle > hs)
 
std::shared_ptr< BodyStylebody_style ()
 
void set_body_style (std::shared_ptr< BodyStyle > bs)
 
std::shared_ptr< Zenyzeny ()
 
void set_zeny (std::shared_ptr< Zeny > z)
 
std::shared_ptr< Honorhonor ()
 
void set_honor (std::shared_ptr< Honor > h)
 
std::shared_ptr< Mannermanner ()
 
void set_manner (std::shared_ptr< Manner > m)
 
std::shared_ptr< Virtuevirtue ()
 
void set_virtue (std::shared_ptr< Virtue > v)
 
std::shared_ptr< AttackDelayattack_delay ()
 Combat Status. More...
 
void set_attack_delay (std::shared_ptr< AttackDelay > a)
 
std::shared_ptr< DamageWalkDelaydamage_walk_delay ()
 
void set_damage_walk_delay (std::shared_ptr< DamageWalkDelay > m)
 
std::shared_ptr< BaseAttackbase_attack ()
 
void set_base_attack (std::shared_ptr< BaseAttack > b)
 
std::shared_ptr< WeaponAttackLeftweapon_attack_left ()
 
void set_weapon_attack_left (std::shared_ptr< WeaponAttackLeft > w)
 
std::shared_ptr< WeaponAttackRightweapon_attack_right ()
 
void set_weapon_attack_right (std::shared_ptr< WeaponAttackRight > w)
 
std::shared_ptr< WeaponAttackCombinedweapon_attack_combined ()
 
void set_weapon_attack_combined (std::shared_ptr< WeaponAttackCombined > w)
 
std::shared_ptr< UnitSizesize ()
 
void set_size (std::shared_ptr< UnitSize > s)
 
std::shared_ptr< MobWeaponAttackcreature_weapon_attack ()
 
void set_creature_weapon_attack (std::shared_ptr< MobWeaponAttack > m)
 
std::shared_ptr< MobWeaponAttackcreature_weapon_attack_magic ()
 
void set_creature_weapon_attack_magic (std::shared_ptr< MobWeaponAttack > m)
 
std::shared_ptr< MobAttackDamagecreature_attack_damage ()
 
void set_creature_attack_damage (std::shared_ptr< MobAttackDamage > m)
 
std::shared_ptr< MobMagicAttackDamagecreature_magic_attack_damage ()
 
void set_creature_magic_attack_damage (std::shared_ptr< MobMagicAttackDamage > m)
 
std::shared_ptr< MobViewRangecreature_view_range ()
 
void set_creature_view_range (std::shared_ptr< MobViewRange > m)
 
std::shared_ptr< MobChaseRangecreature_chase_range ()
 
void set_creature_chase_range (std::shared_ptr< MobChaseRange > m)
 
std::shared_ptr< MobPrimaryRacecreature_primary_race ()
 
void set_creature_primary_race (std::shared_ptr< MobPrimaryRace > m)
 
std::shared_ptr< MobSecondaryRacecreature_secondary_race ()
 
void set_creature_secondary_race (std::shared_ptr< MobSecondaryRace > m)
 
std::shared_ptr< MobElementcreature_element ()
 
void set_creature_element (std::shared_ptr< MobElement > m)
 
std::shared_ptr< MobElementLevelcreature_element_level ()
 
void set_creature_element_level (std::shared_ptr< MobElementLevel > m)
 
std::shared_ptr< MobModecreature_mode ()
 
void set_creature_mode (std::shared_ptr< MobMode > m)
 
std::shared_ptr< StatusRegistrystatus_registry ()
 
bool is_initialized ()
 
void set_initialized (bool b)
 
void add_attribute (std::shared_ptr< Attribute > attribute)
 
void remove_attribute (std::shared_ptr< Attribute > attribute)
 
std::shared_ptr< Attributeget_attribute (status_point_type type)
 
void add_appearance (std::shared_ptr< Appearance > appearance)
 
void remove_appearance (std::shared_ptr< Appearance > appearance)
 
std::shared_ptr< Appearanceget_appearance (unit_appearance_type type)
 
void calculate (bool notify=true)
 
bool recalculate (bool notify=true)
 
bool update (uint64_t delta)
 
void add_bonus (std::shared_ptr< Bonuses::Bonus > bonus)
 
void remove_bonus (std::shared_ptr< Bonuses::Bonus > bonus)
 
std::shared_ptr< Bonuses::Bonusget_bonus (status_point_type type)
 
std::shared_ptr< Bonuses::BonusAllStatusbonus_all_status ()
 
void set_bonus_all_status (std::shared_ptr< Bonuses::BonusAllStatus > b)
 
std::shared_ptr< Bonuses::BonusAttackElementbonus_attack_element ()
 
void set_bonus_attack_element (std::shared_ptr< Bonuses::BonusAttackElement > b)
 
std::shared_ptr< Bonuses::BonusDefenseElementbonus_defense_element ()
 
void set_bonus_defense_element (std::shared_ptr< Bonuses::BonusDefenseElement > b)
 
std::shared_ptr< Bonuses::BonusCastPercentbonus_cast_percent ()
 
void set_bonus_cast_percent (std::shared_ptr< Bonuses::BonusCastPercent > b)
 
std::shared_ptr< Bonuses::BonusMaxHPPercentbonus_max_hp_percent ()
 
void set_bonus_max_hp_percent (std::shared_ptr< Bonuses::BonusMaxHPPercent > b)
 
std::shared_ptr< Bonuses::BonusMaxSPPercentbonus_max_sp_percent ()
 
void set_bonus_max_sp_percent (std::shared_ptr< Bonuses::BonusMaxSPPercent > b)
 
std::shared_ptr< Bonuses::BonusSPPercentbonus_sp_percent ()
 
void set_bonus_sp_percent (std::shared_ptr< Bonuses::BonusSPPercent > b)
 
std::shared_ptr< Bonuses::BonusAttackRangebonus_attack_range ()
 
void set_bonus_attack_range (std::shared_ptr< Bonuses::BonusAttackRange > b)
 
std::shared_ptr< Bonuses::BonusAttackRangePercentbonus_attack_range_percent ()
 
void set_bonus_attack_range_percent (std::shared_ptr< Bonuses::BonusAttackRangePercent > b)
 
std::shared_ptr< Bonuses::BonusAddMovementSpeedPercentbonus_add_movement_speed_percent ()
 
void set_bonus_add_movement_speed_percent (std::shared_ptr< Bonuses::BonusAddMovementSpeedPercent > b)
 
std::shared_ptr< Bonuses::BonusAttackSpeedPercentbonus_attack_speed_percent ()
 
void set_bonus_attack_speed_percent (std::shared_ptr< Bonuses::BonusAttackSpeedPercent > b)
 
std::shared_ptr< Bonuses::BonusHPRecoveryPercentbonus_hp_recovery_percent ()
 
void set_bonus_hp_recovery_percent (std::shared_ptr< Bonuses::BonusHPRecoveryPercent > b)
 
std::shared_ptr< Bonuses::BonusSPRecoveryPercentbonus_sp_recovery_percent ()
 
void set_bonus_sp_recovery_percent (std::shared_ptr< Bonuses::BonusSPRecoveryPercent > b)
 
std::shared_ptr< Bonuses::BonusCriticalDefensebonus_critical_defense ()
 
void set_bonus_critical_defense (std::shared_ptr< Bonuses::BonusCriticalDefense > b)
 
std::shared_ptr< Bonuses::BonusMeleeDefensebonus_melee_defense ()
 
void set_bonus_melee_defense (std::shared_ptr< Bonuses::BonusMeleeDefense > b)
 
std::shared_ptr< Bonuses::BonusRangedDefensebonus_ranged_defense ()
 
void set_bonus_ranged_defense (std::shared_ptr< Bonuses::BonusRangedDefense > b)
 
std::shared_ptr< Bonuses::BonusDoubleAttackPercentbonus_double_attack_percent ()
 
void set_bonus_double_attack_percent (std::shared_ptr< Bonuses::BonusDoubleAttackPercent > b)
 
std::shared_ptr< Bonuses::BonusMagicAttackPercentbonus_magic_attack_percent ()
 
void set_bonus_magic_attack_percent (std::shared_ptr< Bonuses::BonusMagicAttackPercent > b)
 
std::shared_ptr< Bonuses::BonusAttackPercentbonus_attack_percent ()
 
void set_bonus_attack_percent (std::shared_ptr< Bonuses::BonusAttackPercent > b)
 
std::shared_ptr< Bonuses::BonusMagicDefensePercentbonus_magic_defense_percent ()
 
void set_bonus_magic_defense_percent (std::shared_ptr< Bonuses::BonusMagicDefensePercent > b)
 
std::shared_ptr< Bonuses::BonusMiscDefensePercentbonus_misc_defense_percent ()
 
void set_bonus_misc_defense_percent (std::shared_ptr< Bonuses::BonusMiscDefensePercent > b)
 
std::shared_ptr< Bonuses::BonusPerfectHitPercentbonus_perfect_hit_percent ()
 
void set_bonus_perfect_hit_percent (std::shared_ptr< Bonuses::BonusPerfectHitPercent > b)
 
std::shared_ptr< Bonuses::BonusCriticalPercentbonus_critical_percent ()
 
void set_bonus_critical_percent (std::shared_ptr< Bonuses::BonusCriticalPercent > b)
 
std::shared_ptr< Bonuses::BonusGetZenyNumbonus_get_zeny_num ()
 
void set_bonus_get_zeny_num (std::shared_ptr< Bonuses::BonusGetZenyNum > b)
 
std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForElementbonus_attack_on_defense_ratio_for_element ()
 
void set_bonus_attack_on_defense_ratio_for_element (std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForElement > b)
 
std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForRacebonus_attack_on_defense_ratio_for_race ()
 
void set_bonus_attack_on_defense_ratio_for_race (std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForRace > b)
 
std::shared_ptr< Bonuses::BonusHitPercentbonus_hit_percent ()
 
void set_bonus_hit_percent (std::shared_ptr< Bonuses::BonusHitPercent > b)
 
std::shared_ptr< Bonuses::BonusFleePercentbonus_flee_percent ()
 
void set_bonus_flee_percent (std::shared_ptr< Bonuses::BonusFleePercent > b)
 
std::shared_ptr< Bonuses::BonusPerfectDodgePercentbonus_perfect_dodge_percent ()
 
void set_bonus_perfect_dodge_percent (std::shared_ptr< Bonuses::BonusPerfectDodgePercent > b)
 
std::shared_ptr< Bonuses::BonusSoftDefensePercentbonus_soft_defense_percent ()
 
void set_bonus_soft_defense_percent (std::shared_ptr< Bonuses::BonusSoftDefensePercent > b)
 
std::shared_ptr< Bonuses::BonusHardDefensePercentbonus_hard_defense_percent ()
 
void set_bonus_hard_defense_percent (std::shared_ptr< Bonuses::BonusHardDefensePercent > b)
 
std::shared_ptr< Bonuses::BonusSoftMagicalDefensePercentbonus_soft_magical_defense_percent ()
 
void set_bonus_soft_magical_defense_percent (std::shared_ptr< Bonuses::BonusSoftMagicalDefensePercent > b)
 
std::shared_ptr< Bonuses::BonusHardMagicalDefensePercentbonus_hard_magical_defense_percent ()
 
void set_bonus_hard_magical_defense_percent (std::shared_ptr< Bonuses::BonusHardMagicalDefensePercent > b)
 
std::shared_ptr< Bonuses::BonusRestartWithFullRecoverybonus_restart_with_full_recovery ()
 
void set_bonus_restart_with_full_recovery (std::shared_ptr< Bonuses::BonusRestartWithFullRecovery > b)
 
std::shared_ptr< Bonuses::BonusCastCancelImmunitybonus_cast_cancel_immunity ()
 
void set_bonus_cast_cancel_immunity (std::shared_ptr< Bonuses::BonusCastCancelImmunity > b)
 
std::shared_ptr< Bonuses::BonusSizeModifierImmunitybonus_size_modifier_immunity ()
 
void set_bonus_size_modifier_immunity (std::shared_ptr< Bonuses::BonusSizeModifierImmunity > b)
 
std::shared_ptr< Bonuses::BonusMagicDamageImmunitybonus_magic_damage_immunity ()
 
void set_bonus_magic_damage_immunity (std::shared_ptr< Bonuses::BonusMagicDamageImmunity > b)
 
std::shared_ptr< Bonuses::BonusWeaponDamageImmunitybonus_weapon_damage_immunity ()
 
void set_bonus_weapon_damage_immunity (std::shared_ptr< Bonuses::BonusWeaponDamageImmunity > b)
 
std::shared_ptr< Bonuses::BonusGemstoneImmunitybonus_gemstone_immunity ()
 
void set_bonus_gemstone_immunity (std::shared_ptr< Bonuses::BonusGemstoneImmunity > b)
 
std::shared_ptr< Bonuses::BonusGearFuelImmunitybonus_gear_fuel_immunity ()
 
void set_bonus_gear_fuel_immunity (std::shared_ptr< Bonuses::BonusGearFuelImmunity > b)
 
std::shared_ptr< Bonuses::BonusInfiniteEndurebonus_infinite_endure ()
 
void set_bonus_infinite_endure (std::shared_ptr< Bonuses::BonusInfiniteEndure > b)
 
std::shared_ptr< Bonuses::BonusUnbreakableWeaponbonus_unbreakable_weapon ()
 
void set_bonus_unbreakable_weapon (std::shared_ptr< Bonuses::BonusUnbreakableWeapon > b)
 
std::shared_ptr< Bonuses::BonusUnbreakableArmorbonus_unbreakable_armor ()
 
void set_bonus_unbreakable_armor (std::shared_ptr< Bonuses::BonusUnbreakableArmor > b)
 
std::shared_ptr< Bonuses::BonusUnbreakableHelmbonus_unbreakable_helm ()
 
void set_bonus_unbreakable_helm (std::shared_ptr< Bonuses::BonusUnbreakableHelm > b)
 
std::shared_ptr< Bonuses::BonusUnbreakableShieldbonus_unbreakable_shield ()
 
void set_bonus_unbreakable_shield (std::shared_ptr< Bonuses::BonusUnbreakableShield > b)
 
std::shared_ptr< Bonuses::BonusSPGainOnMobKillbonus_sp_gain_on_mob_kill ()
 
void set_bonus_sp_gain_on_mob_kill (std::shared_ptr< Bonuses::BonusSPGainOnMobKill > b)
 
std::shared_ptr< Bonuses::BonusHPGainOnMobKillbonus_hp_gain_on_mob_kill ()
 
void set_bonus_hp_gain_on_mob_kill (std::shared_ptr< Bonuses::BonusHPGainOnMobKill > b)
 
std::shared_ptr< Bonuses::BonusDamageSplashRangebonus_damage_splash_range ()
 
void set_bonus_damage_splash_range (std::shared_ptr< Bonuses::BonusDamageSplashRange > b)
 
std::shared_ptr< Bonuses::BonusMeleeWeaponDamageReflectPercentOnSelfbonus_melee_weapon_damage_reflect_percent_on_self ()
 
void set_bonus_melee_weapon_damage_reflect_percent_on_self (std::shared_ptr< Bonuses::BonusMeleeWeaponDamageReflectPercentOnSelf > b)
 
std::shared_ptr< Bonuses::BonusRangedWeaponDamageReflectPercentOnSelfbonus_ranged_weapon_damage_reflect_percent_on_self ()
 
void set_bonus_ranged_weapon_damage_reflect_percent_on_self (std::shared_ptr< Bonuses::BonusRangedWeaponDamageReflectPercentOnSelf > b)
 
std::shared_ptr< Bonuses::BonusWeaponBreakPercentbonus_weapon_break_percent ()
 
void set_bonus_weapon_break_percent (std::shared_ptr< Bonuses::BonusWeaponBreakPercent > b)
 
std::shared_ptr< Bonuses::BonusArmorBreakPercentbonus_armor_break_percent ()
 
void set_bonus_armor_break_percent (std::shared_ptr< Bonuses::BonusArmorBreakPercent > b)
 
std::shared_ptr< Bonuses::BonusAddStealPercentbonus_add_steal_percent ()
 
void set_bonus_add_steal_percent (std::shared_ptr< Bonuses::BonusAddStealPercent > b)
 
std::shared_ptr< Bonuses::BonusCriticalDamagePercentbonus_critical_damage_percent ()
 
void set_bonus_critical_damage_percent (std::shared_ptr< Bonuses::BonusCriticalDamagePercent > b)
 
std::shared_ptr< Bonuses::BonusDisableHPRecoverybonus_disable_hp_recovery ()
 
void set_bonus_disable_hp_recovery (std::shared_ptr< Bonuses::BonusDisableHPRecovery > b)
 
std::shared_ptr< Bonuses::BonusDisableSPRecoverybonus_disable_sp_recovery ()
 
void set_bonus_disable_sp_recovery (std::shared_ptr< Bonuses::BonusDisableSPRecovery > b)
 
std::shared_ptr< Bonuses::BonusMagicDamageReflectPercentOnSelfbonus_magic_damage_reflect_percent_on_self ()
 
void set_bonus_magic_damage_reflect_percent_on_self (std::shared_ptr< Bonuses::BonusMagicDamageReflectPercentOnSelf > b)
 
std::shared_ptr< Bonuses::BonusShortWeaponDamagePercentbonus_short_weapon_damage_percent ()
 
void set_bonus_short_weapon_damage_percent (std::shared_ptr< Bonuses::BonusShortWeaponDamagePercent > b)
 
std::shared_ptr< Bonuses::BonusLongWeaponDamagePercentbonus_long_weapon_damage_percent ()
 
void set_bonus_long_weapon_damage_percent (std::shared_ptr< Bonuses::BonusLongWeaponDamagePercent > b)
 
std::shared_ptr< Bonuses::BonusItemUsageImmunitybonus_item_usage_immunity ()
 
void set_bonus_item_usage_immunity (std::shared_ptr< Bonuses::BonusItemUsageImmunity > b)
 
std::shared_ptr< Bonuses::BonusKnockBackImmunitybonus_knock_back_immunity ()
 
void set_bonus_knock_back_immunity (std::shared_ptr< Bonuses::BonusKnockBackImmunity > b)
 
std::shared_ptr< Bonuses::BonusHPVanishPercentbonus_hp_vanish_percent ()
 
void set_bonus_hp_vanish_percent (std::shared_ptr< Bonuses::BonusHPVanishPercent > b)
 
std::shared_ptr< Bonuses::BonusSPVanishPercentbonus_sp_vanish_percent ()
 
void set_bonus_sp_vanish_percent (std::shared_ptr< Bonuses::BonusSPVanishPercent > b)
 
std::shared_ptr< Bonuses::BonusRaisebonus_raise ()
 
void set_bonus_raise (std::shared_ptr< Bonuses::BonusRaise > b)
 
std::shared_ptr< Bonuses::BonusAddItemDropOnMonsterKillbonus_add_item_drop_on_monster_kill ()
 
void set_bonus_add_item_drop_on_monster_kill (std::shared_ptr< Bonuses::BonusAddItemDropOnMonsterKill > b)
 
std::shared_ptr< Bonuses::BonusHPDrainOnMonsterKillbonus_hp_drain_on_monster_kill ()
 
void set_bonus_hp_drain_on_monster_kill (std::shared_ptr< Bonuses::BonusHPDrainOnMonsterKill > b)
 
std::shared_ptr< Bonuses::BonusSPDrainOnMonsterKillbonus_sp_drain_on_monster_kill ()
 
void set_bonus_sp_drain_on_monster_kill (std::shared_ptr< Bonuses::BonusSPDrainOnMonsterKill > b)
 
void add_bonus (std::shared_ptr< Bonuses::IBonusArray > ba)
 
void remove_bonus (std::shared_ptr< Bonuses::IBonusArray > ba)
 
std::shared_ptr< Bonuses::IBonusArrayget_bonus_array (status_point_type type)
 
std::shared_ptr< Bonuses::BonusAddAttackPercentageToElementbonus_add_attack_percentage_to_element ()
 
void set_bonus_add_attack_percentage_to_element (std::shared_ptr< Bonuses::BonusAddAttackPercentageToElement > b)
 
std::shared_ptr< Bonuses::BonusAddAttackPercentageToRacebonus_add_attack_percentage_to_race ()
 
void set_bonus_add_attack_percentage_to_race (std::shared_ptr< Bonuses::BonusAddAttackPercentageToRace > b)
 
std::shared_ptr< Bonuses::BonusAddAttackPercentageToSizebonus_add_attack_percentage_to_size ()
 
void set_bonus_add_attack_percentage_to_size (std::shared_ptr< Bonuses::BonusAddAttackPercentageToSize > b)
 
std::shared_ptr< Bonuses::BonusSubAttackPercentageFromElementbonus_sub_attack_percentage_from_element ()
 
void set_bonus_sub_attack_percentage_from_element (std::shared_ptr< Bonuses::BonusSubAttackPercentageFromElement > b)
 
std::shared_ptr< Bonuses::BonusSubAttackPercentageFromRacebonus_sub_attack_percentage_from_race ()
 
void set_bonus_sub_attack_percentage_from_race (std::shared_ptr< Bonuses::BonusSubAttackPercentageFromRace > b)
 
std::shared_ptr< Bonuses::BonusAddEffectOnDamagebonus_add_effect_on_damage ()
 
void set_bonus_add_effect_on_damage (std::shared_ptr< Bonuses::BonusAddEffectOnDamage > b)
 
std::shared_ptr< Bonuses::BonusAddEffectWhenDamagedbonus_add_effect_when_damaged ()
 
void set_bonus_add_effect_when_damaged (std::shared_ptr< Bonuses::BonusAddEffectWhenDamaged > b)
 
std::shared_ptr< Bonuses::BonusRessistEffectbonus_ressist_effect ()
 
void set_bonus_ressist_effect (std::shared_ptr< Bonuses::BonusRessistEffect > b)
 
std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToElementbonus_add_magic_attack_percentage_to_element ()
 
void set_bonus_add_magic_attack_percentage_to_element (std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToElement > b)
 
std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToRacebonus_add_magic_attack_to_Race ()
 
void set_bonus_add_magic_attack_percentage_to_race (std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToRace > b)
 
std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToSizebonus_add_magic_attack_percentage_to_size ()
 
void set_bonus_add_magic_attack_percentage_to_size (std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToSize > b)
 
std::shared_ptr< Bonuses::BonusAddEffectOnMagicAttackbonus_add_effect_on_magic_attack ()
 
void set_bonus_add_effect_on_magic_attack (std::shared_ptr< Bonuses::BonusAddEffectOnMagicAttack > b)
 
std::shared_ptr< Bonuses::BonusResistMagicAttackFromRacebonus_resist_magic_attack_from_race ()
 
void set_bonus_resist_magic_attack_from_race (std::shared_ptr< Bonuses::BonusResistMagicAttackFromRace > b)
 
std::shared_ptr< Bonuses::BonusAddDamageToClassbonus_add_damage_to_class ()
 
void set_bonus_add_damage_to_class (std::shared_ptr< Bonuses::BonusAddDamageToClass > b)
 
std::shared_ptr< Bonuses::BonusAddMagicDamageToClassbonus_add_magic_damage_to_class ()
 
void set_bonus_add_magic_damage_to_class (std::shared_ptr< Bonuses::BonusAddMagicDamageToClass > b)
 
std::shared_ptr< Bonuses::BonusAddDefenseToClassbonus_add_defense_to_class ()
 
void set_bonus_add_defense_to_class (std::shared_ptr< Bonuses::BonusAddDefenseToClass > b)
 
std::shared_ptr< Bonuses::BonusAddMagicalDefenseToClassbonus_add_magical_defense_to_class ()
 
void set_bonus_add_magical_defense_to_class (std::shared_ptr< Bonuses::BonusAddMagicalDefenseToClass > b)
 
std::shared_ptr< Bonuses::BonusHPDrainPercentbonus_hp_drain_percent ()
 
void set_bonus_hp_drain_percent (std::shared_ptr< Bonuses::BonusHPDrainPercent > b)
 
std::shared_ptr< Bonuses::BonusHPDrainValuebonus_hp_drain_value ()
 
void set_bonus_hp_drain_value (std::shared_ptr< Bonuses::BonusHPDrainValue > b)
 
std::shared_ptr< Bonuses::BonusSPDrainPercentbonus_sp_drain_percent ()
 
void set_bonus_sp_drain_percent (std::shared_ptr< Bonuses::BonusSPDrainPercent > b)
 
std::shared_ptr< Bonuses::BonusSPDrainValuebonus_sp_drain_value ()
 
void set_bonus_sp_drain_value (std::shared_ptr< Bonuses::BonusSPDrainValue > b)
 
std::shared_ptr< Bonuses::BonusAddWeaponComaToElementbonus_add_weapon_coma_to_element ()
 
void set_bonus_add_weapon_coma_to_element (std::shared_ptr< Bonuses::BonusAddWeaponComaToElement > b)
 
std::shared_ptr< Bonuses::BonusAddWeaponComaToRacebonus_add_weapon_coma_to_race ()
 
void set_bonus_add_weapon_coma_to_race (std::shared_ptr< Bonuses::BonusAddWeaponComaToRace > b)
 
std::shared_ptr< Bonuses::BonusAddWeaponComaToSubElementbonus_add_weapon_coma_to_sub_element ()
 
void set_bonus_add_weapon_coma_to_sub_element (std::shared_ptr< Bonuses::BonusAddWeaponComaToSubElement > b)
 
std::shared_ptr< Bonuses::BonusAddWeaponComaToSubRacebonus_add_weapon_coma_to_sub_race ()
 
void set_bonus_add_weapon_coma_to_sub_race (std::shared_ptr< Bonuses::BonusAddWeaponComaToSubRace > b)
 
std::shared_ptr< Bonuses::BonusAddAttackbonus_add_attack ()
 
void set_bonus_add_attack (std::shared_ptr< Bonuses::BonusAddAttack > b)
 
std::shared_ptr< Bonuses::BonusAddAttackPercentbonus_add_attack_percent ()
 
void set_bonus_add_attack_percent (std::shared_ptr< Bonuses::BonusAddAttackPercent > b)
 
std::shared_ptr< Bonuses::BonusCriticalRacebonus_critical_race ()
 
void set_bonus_critical_race (std::shared_ptr< Bonuses::BonusCriticalRace > b)
 
std::shared_ptr< Bonuses::BonusCriticalRacePercentbonus_critical_race_percent ()
 
void set_bonus_critical_race_percent (std::shared_ptr< Bonuses::BonusCriticalRacePercent > b)
 
std::shared_ptr< Bonuses::BonusDamageReductionAgainstSizebonus_damage_reduction_against_size ()
 
void set_bonus_damage_reduction_against_size (std::shared_ptr< Bonuses::BonusDamageReductionAgainstSize > b)
 
std::shared_ptr< Bonuses::BonusMagicDamageReductionAgainstSizebonus_magic_damage_reduction_against_size ()
 
void set_bonus_magic_damage_reduction_against_size (std::shared_ptr< Bonuses::BonusMagicDamageReductionAgainstSize > b)
 
std::shared_ptr< Bonuses::BonusExpPercentPerRacebonus_exp_percent_per_race ()
 
void set_bonus_exp_percent_per_race (std::shared_ptr< Bonuses::BonusExpPercentPerRace > b)
 
std::shared_ptr< Bonuses::BonusJobPercentPerRacebonus_job_percent_per_race ()
 
void set_bonus_job_percent_per_race (std::shared_ptr< Bonuses::BonusJobPercentPerRace > b)
 
std::shared_ptr< Bonuses::BonusSkillAttackbonus_skill_attack ()
 
void set_bonus_skill_attack (std::shared_ptr< Bonuses::BonusSkillAttack > b)
 
std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkillByPercentbonus_reduce_sp_consumption_of_skill_by_percent ()
 
void set_bonus_reduce_sp_consumption_of_skill_by_percent (std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkillByPercent > b)
 
std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkillbonus_reduce_sp_consumption_of_skill ()
 
void set_bonus_reduce_sp_consumption_of_skill (std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkill > b)
 
std::shared_ptr< Bonuses::BonusLearnedSkillHealbonus_learned_skill_heal ()
 
void set_bonus_learned_skill_heal (std::shared_ptr< Bonuses::BonusLearnedSkillHeal > b)
 
std::shared_ptr< Bonuses::BonusHealOfSkillCastedOnSelfbonus_heal_of_skill_casted_on_self ()
 
void set_bonus_heal_of_skill_casted_on_self (std::shared_ptr< Bonuses::BonusHealOfSkillCastedOnSelf > b)
 
std::shared_ptr< Bonuses::BonusSkillKnockbackbonus_skill_knockback ()
 
void set_bonus_skill_knockback (std::shared_ptr< Bonuses::BonusSkillKnockback > b)
 
std::shared_ptr< Bonuses::BonusSkillCastPercentbonus_skill_cast_percent ()
 
void set_bonus_skill_cast_percent (std::shared_ptr< Bonuses::BonusSkillCastPercent > b)
 
std::shared_ptr< Bonuses::BonusSkillCooldownbonus_skill_cooldown ()
 
void set_bonus_skill_cooldown (std::shared_ptr< Bonuses::BonusSkillCooldown > b)
 
std::shared_ptr< Bonuses::BonusSkillFixCastPercentbonus_skill_fix_cast_percent ()
 
void set_bonus_skill_fix_cast_percent (std::shared_ptr< Bonuses::BonusSkillFixCastPercent > b)
 
std::shared_ptr< Bonuses::BonusSkillVariableCastPercentbonus_skill_variable_cast_percent ()
 
void set_bonus_skill_variable_cast_percent (std::shared_ptr< Bonuses::BonusSkillVariableCastPercent > b)
 
std::shared_ptr< Bonuses::BonusResistSkillDamagePercentbonus_resist_skill_damage_percent ()
 
void set_bonus_resist_skill_damage_percent (std::shared_ptr< Bonuses::BonusResistSkillDamagePercent > b)
 
std::shared_ptr< Bonuses::BonusIgnoreDefenseFromElementbonus_ignore_defense_from_element ()
 
void set_bonus_ignore_defense_from_element (std::shared_ptr< Bonuses::BonusIgnoreDefenseFromElement > b)
 
std::shared_ptr< Bonuses::BonusIgnoreDefenseFromRacebonus_ignore_defense_from_race ()
 
void set_bonus_ignore_defense_from_race (std::shared_ptr< Bonuses::BonusIgnoreDefenseFromRace > b)
 
std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromElementbonus_ignore_magic_defense_from_element ()
 
void set_bonus_ignore_magic_defense_from_element (std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromElement > b)
 
std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromRacebonus_ignore_magic_defense_from_race ()
 
void set_bonus_ignore_magic_defense_from_race (std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromRace > b)
 
std::shared_ptr< Bonuses::BonusAddEleWeaponDamagePercentbonus_add_ele_weapon_damage_percent ()
 
void set_bonus_add_ele_weapon_damage_percent (std::shared_ptr< Bonuses::BonusAddEleWeaponDamagePercent > b)
 
std::shared_ptr< Bonuses::BonusAddEleMagicDamagePercentbonus_add_ele_magic_damage_percent ()
 
void set_bonus_add_ele_magic_damage_percent (std::shared_ptr< Bonuses::BonusAddEleMagicDamagePercent > b)
 
std::shared_ptr< Bonuses::BonusAutoSpellOnSkillbonus_auto_spell_on_skill ()
 
void set_bonus_auto_spell_on_skill (std::shared_ptr< Bonuses::BonusAutoSpellOnSkill > b)
 
std::shared_ptr< Bonuses::BonusAutoSpellOnAttackbonus_auto_spell_on_attack ()
 
void set_bonus_auto_spell_on_attack (std::shared_ptr< Bonuses::BonusAutoSpellOnAttack > b)
 
std::shared_ptr< Bonuses::BonusAutoSpellOnReceiveDamagebonus_auto_spell_on_receive_damage ()
 
void set_bonus_auto_spell_on_receive_damage (std::shared_ptr< Bonuses::BonusAutoSpellOnReceiveDamage > b)
 
std::shared_ptr< Bonuses::BonusAutoSpellOnSelfbonus_auto_spell_on_self ()
 
void set_bonus_auto_spell_on_self (std::shared_ptr< Bonuses::BonusAutoSpellOnSelf > b)
 

Protected Member Functions

std::shared_ptr< Unitunit ()
 

Protected Attributes

unit_type _type { UNIT_PLAYER }
 
bool _is_initialized { false }
 

Private Attributes

std::shared_ptr< StatusRegistry_status_registry { nullptr }
 
std::weak_ptr< Unit_unit
 
std::shared_ptr< Strength_str
 
std::shared_ptr< Agility_agi
 
std::shared_ptr< Vitality_vit
 
std::shared_ptr< Intelligence_int
 
std::shared_ptr< Dexterity_dex
 
std::shared_ptr< Luck_luk
 
std::shared_ptr< StrengthPointCost_str_cost
 
std::shared_ptr< AgilityPointCost_agi_cost
 
std::shared_ptr< VitalityPointCost_vit_cost
 
std::shared_ptr< IntelligencePointCost_int_cost
 
std::shared_ptr< DexterityPointCost_dex_cost
 
std::shared_ptr< LuckPointCost_luk_cost
 
std::shared_ptr< StatusPoint_status_point
 
std::shared_ptr< SkillPoint_skill_point
 
std::shared_ptr< MaxHP_max_hp
 
std::shared_ptr< MaxSP_max_sp
 
std::shared_ptr< CurrentHP_current_hp
 
std::shared_ptr< CurrentSP_current_sp
 
std::shared_ptr< BaseLevel_base_level
 
std::shared_ptr< JobLevel_job_level
 
std::shared_ptr< BaseExperience_base_exp
 
std::shared_ptr< JobExperience_job_exp
 
std::shared_ptr< NextBaseExperience_next_base_exp
 
std::shared_ptr< NextJobExperience_next_job_exp
 
std::shared_ptr< MovementSpeed_movement_speed
 
std::shared_ptr< MaxWeight_max_weight
 
std::shared_ptr< CurrentWeight_current_weight
 
std::shared_ptr< AttackRange_attack_range
 
std::shared_ptr< StatusATK_status_atk
 
std::shared_ptr< EquipATK_equip_atk
 
std::shared_ptr< StatusMATK_status_matk
 
std::shared_ptr< EquipMATK_equip_matk
 
std::shared_ptr< SoftDEF_soft_def
 
std::shared_ptr< HardDEF_hard_def
 
std::shared_ptr< SoftMDEF_soft_mdef
 
std::shared_ptr< HardMDEF_hard_mdef
 
std::shared_ptr< HIT_hit
 
std::shared_ptr< CRIT_crit
 
std::shared_ptr< FLEE_flee
 
std::shared_ptr< AttackSpeed_aspd
 
std::shared_ptr< HPRegeneration_hp_regeneration
 
std::shared_ptr< SPRegeneration_sp_regeneration
 
std::shared_ptr< BaseAppearance_base_appearance
 
std::shared_ptr< HairColor_hair_color
 
std::shared_ptr< ClothColor_cloth_color
 
std::shared_ptr< WeaponSprite_weapon_sprite
 
std::shared_ptr< ShieldSprite_shield_sprite
 
std::shared_ptr< RobeSprite_robe_sprite
 
std::shared_ptr< HeadTopSprite_head_top_sprite
 
std::shared_ptr< HeadMidSprite_head_mid_sprite
 
std::shared_ptr< HeadBottomSprite_head_bottom_sprite
 
std::shared_ptr< HairStyle_hair_style
 
std::shared_ptr< BodyStyle_body_style
 
std::shared_ptr< Zeny_zeny
 
std::shared_ptr< Honor_honor
 
std::shared_ptr< Manner_manner
 
std::shared_ptr< Virtue_virtue
 
std::shared_ptr< AttackDelay_attack_delay
 
std::shared_ptr< DamageWalkDelay_damage_walk_delay
 
std::shared_ptr< BaseAttack_base_attack
 
std::shared_ptr< WeaponAttackLeft_weapon_attack_left
 
std::shared_ptr< WeaponAttackRight_weapon_attack_right
 
std::shared_ptr< WeaponAttackCombined_weapon_attack_combined
 
std::shared_ptr< UnitSize_size
 
std::shared_ptr< MobWeaponAttack_creature_weapon_attack
 
std::shared_ptr< MobWeaponAttack_creature_weapon_attack_magic
 
std::shared_ptr< MobAttackDamage_creature_attack_damage
 
std::shared_ptr< MobMagicAttackDamage_creature_magic_attack_damage
 
std::shared_ptr< MobViewRange_creature_view_range
 
std::shared_ptr< MobChaseRange_creature_chase_range
 
std::shared_ptr< MobPrimaryRace_creature_primary_race
 
std::shared_ptr< MobSecondaryRace_creature_secondary_race
 
std::shared_ptr< MobElement_creature_element
 
std::shared_ptr< MobElementLevel_creature_element_level
 
std::shared_ptr< MobMode_creature_mode
 
std::vector< std::shared_ptr< Attribute > > _attributes
 
std::vector< std::shared_ptr< Appearance > > _appearances
 
std::vector< std::shared_ptr< Bonuses::Bonus > > _bonuses
 
std::vector< std::shared_ptr< Bonuses::IBonusArray > > _bonus_arrays
 
std::shared_ptr< bonuses_bonus
 

Constructor & Destructor Documentation

◆ Status()

Status::Status ( std::weak_ptr< Unit unit,
unit_type  type 
)
248 : _unit(unit), _type(type)
249{
250 _status_registry = std::make_shared<StatusRegistry>();
251}
unit_type _type
Definition: Status.hpp:1786
std::shared_ptr< StatusRegistry > _status_registry
Definition: Status.hpp:1790
std::shared_ptr< Unit > unit()
Definition: Status.hpp:1785
std::weak_ptr< Unit > _unit
Definition: Status.hpp:1791

References _status_registry.

◆ ~Status()

Status::~Status ( )
254{
255}

Member Function Documentation

◆ add_appearance()

void Horizon::Zone::Traits::Status::add_appearance ( std::shared_ptr< Appearance appearance)
inline
764{ _appearances.push_back(appearance); }
std::vector< std::shared_ptr< Appearance > > _appearances
Definition: Status.hpp:1875

References _appearances.

Referenced by set_base_appearance(), set_body_style(), set_cloth_color(), set_hair_color(), set_hair_style(), set_head_bottom_sprite(), set_head_mid_sprite(), set_head_top_sprite(), set_robe_sprite(), set_shield_sprite(), and set_weapon_sprite().

+ Here is the caller graph for this function:

◆ add_attribute()

void Horizon::Zone::Traits::Status::add_attribute ( std::shared_ptr< Attribute attribute)
inline
748{ _attributes.push_back(attribute); }
std::vector< std::shared_ptr< Attribute > > _attributes
Definition: Status.hpp:1874

References _attributes.

Referenced by set_agility(), set_agility_cost(), set_attack_delay(), set_attack_range(), set_attack_speed(), set_base_attack(), set_base_experience(), set_base_level(), set_creature_attack_damage(), set_creature_chase_range(), set_creature_element(), set_creature_element_level(), set_creature_magic_attack_damage(), set_creature_mode(), set_creature_primary_race(), set_creature_secondary_race(), set_creature_view_range(), set_creature_weapon_attack(), set_creature_weapon_attack_magic(), set_crit(), set_current_hp(), set_current_sp(), set_current_weight(), set_damage_walk_delay(), set_dexterity(), set_dexterity_cost(), set_equip_atk(), set_equip_matk(), set_flee(), set_hard_def(), set_hard_mdef(), set_hit(), set_honor(), set_hp_regeneration(), set_intelligence(), set_intelligence_cost(), set_job_experience(), set_job_level(), set_luck(), set_luck_cost(), set_manner(), set_max_hp(), set_max_sp(), set_max_weight(), set_movement_speed(), set_next_base_experience(), set_next_job_experience(), set_size(), set_skill_point(), set_soft_def(), set_soft_mdef(), set_sp_regeneration(), set_status_atk(), set_status_matk(), set_status_point(), set_strength(), set_strength_cost(), set_virtue(), set_vitality(), set_vitality_cost(), set_weapon_attack_combined(), set_weapon_attack_left(), set_weapon_attack_right(), and set_zeny().

◆ add_bonus() [1/2]

void Horizon::Zone::Traits::Status::add_bonus ( std::shared_ptr< Bonuses::Bonus bonus)
inline
784{ _bonuses.push_back(bonus); }
std::vector< std::shared_ptr< Bonuses::Bonus > > _bonuses
Definition: Status.hpp:1876

References _bonuses.

Referenced by set_bonus_add_attack(), set_bonus_add_attack_percent(), set_bonus_add_attack_percentage_to_element(), set_bonus_add_attack_percentage_to_race(), set_bonus_add_attack_percentage_to_size(), set_bonus_add_damage_to_class(), set_bonus_add_defense_to_class(), set_bonus_add_effect_on_damage(), set_bonus_add_effect_on_magic_attack(), set_bonus_add_effect_when_damaged(), set_bonus_add_ele_magic_damage_percent(), set_bonus_add_ele_weapon_damage_percent(), set_bonus_add_item_drop_on_monster_kill(), set_bonus_add_magic_attack_percentage_to_element(), set_bonus_add_magic_attack_percentage_to_race(), set_bonus_add_magic_attack_percentage_to_size(), set_bonus_add_magic_damage_to_class(), set_bonus_add_magical_defense_to_class(), set_bonus_add_movement_speed_percent(), set_bonus_add_steal_percent(), set_bonus_add_weapon_coma_to_element(), set_bonus_add_weapon_coma_to_race(), set_bonus_add_weapon_coma_to_sub_element(), set_bonus_add_weapon_coma_to_sub_race(), set_bonus_all_status(), set_bonus_armor_break_percent(), set_bonus_attack_element(), set_bonus_attack_on_defense_ratio_for_element(), set_bonus_attack_on_defense_ratio_for_race(), set_bonus_attack_percent(), set_bonus_attack_range(), set_bonus_attack_range_percent(), set_bonus_attack_speed_percent(), set_bonus_auto_spell_on_attack(), set_bonus_auto_spell_on_receive_damage(), set_bonus_auto_spell_on_self(), set_bonus_auto_spell_on_skill(), set_bonus_cast_cancel_immunity(), set_bonus_cast_percent(), set_bonus_critical_damage_percent(), set_bonus_critical_defense(), set_bonus_critical_percent(), set_bonus_critical_race(), set_bonus_critical_race_percent(), set_bonus_damage_reduction_against_size(), set_bonus_damage_splash_range(), set_bonus_defense_element(), set_bonus_disable_hp_recovery(), set_bonus_disable_sp_recovery(), set_bonus_double_attack_percent(), set_bonus_exp_percent_per_race(), set_bonus_flee_percent(), set_bonus_gear_fuel_immunity(), set_bonus_gemstone_immunity(), set_bonus_get_zeny_num(), set_bonus_hard_defense_percent(), set_bonus_hard_magical_defense_percent(), set_bonus_heal_of_skill_casted_on_self(), set_bonus_hit_percent(), set_bonus_hp_drain_on_monster_kill(), set_bonus_hp_drain_percent(), set_bonus_hp_drain_value(), set_bonus_hp_gain_on_mob_kill(), set_bonus_hp_recovery_percent(), set_bonus_hp_vanish_percent(), set_bonus_ignore_defense_from_element(), set_bonus_ignore_defense_from_race(), set_bonus_ignore_magic_defense_from_element(), set_bonus_ignore_magic_defense_from_race(), set_bonus_infinite_endure(), set_bonus_item_usage_immunity(), set_bonus_job_percent_per_race(), set_bonus_knock_back_immunity(), set_bonus_learned_skill_heal(), set_bonus_long_weapon_damage_percent(), set_bonus_magic_attack_percent(), set_bonus_magic_damage_immunity(), set_bonus_magic_damage_reduction_against_size(), set_bonus_magic_damage_reflect_percent_on_self(), set_bonus_magic_defense_percent(), set_bonus_max_hp_percent(), set_bonus_max_sp_percent(), set_bonus_melee_defense(), set_bonus_melee_weapon_damage_reflect_percent_on_self(), set_bonus_misc_defense_percent(), set_bonus_perfect_dodge_percent(), set_bonus_perfect_hit_percent(), set_bonus_raise(), set_bonus_ranged_defense(), set_bonus_ranged_weapon_damage_reflect_percent_on_self(), set_bonus_reduce_sp_consumption_of_skill(), set_bonus_reduce_sp_consumption_of_skill_by_percent(), set_bonus_resist_magic_attack_from_race(), set_bonus_resist_skill_damage_percent(), set_bonus_ressist_effect(), set_bonus_restart_with_full_recovery(), set_bonus_short_weapon_damage_percent(), set_bonus_size_modifier_immunity(), set_bonus_skill_attack(), set_bonus_skill_cast_percent(), set_bonus_skill_cooldown(), set_bonus_skill_fix_cast_percent(), set_bonus_skill_knockback(), set_bonus_skill_variable_cast_percent(), set_bonus_soft_defense_percent(), set_bonus_soft_magical_defense_percent(), set_bonus_sp_drain_on_monster_kill(), set_bonus_sp_drain_percent(), set_bonus_sp_drain_value(), set_bonus_sp_gain_on_mob_kill(), set_bonus_sp_percent(), set_bonus_sp_recovery_percent(), set_bonus_sp_vanish_percent(), set_bonus_sub_attack_percentage_from_element(), set_bonus_sub_attack_percentage_from_race(), set_bonus_unbreakable_armor(), set_bonus_unbreakable_helm(), set_bonus_unbreakable_shield(), set_bonus_unbreakable_weapon(), set_bonus_weapon_break_percent(), and set_bonus_weapon_damage_immunity().

◆ add_bonus() [2/2]

void Horizon::Zone::Traits::Status::add_bonus ( std::shared_ptr< Bonuses::IBonusArray ba)
inline
1336{ _bonus_arrays.push_back(ba); }
std::vector< std::shared_ptr< Bonuses::IBonusArray > > _bonus_arrays
Definition: Status.hpp:1877

References _bonus_arrays.

◆ agility()

std::shared_ptr< Agility > Horizon::Zone::Traits::Status::agility ( )
inline
196{ return _agi; }
std::shared_ptr< Agility > _agi
Definition: Status.hpp:1794

References _agi.

Referenced by get_status_base(), increase_status_point(), initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ agility_cost()

std::shared_ptr< AgilityPointCost > Horizon::Zone::Traits::Status::agility_cost ( )
inline
244{ return _agi_cost; }
std::shared_ptr< AgilityPointCost > _agi_cost
Definition: Status.hpp:1800

References _agi_cost.

Referenced by increase_status_point(), and initialize().

+ Here is the caller graph for this function:

◆ attack_delay()

std::shared_ptr< AttackDelay > Horizon::Zone::Traits::Status::attack_delay ( )
inline

Combat Status.

598{ return _attack_delay; }
std::shared_ptr< AttackDelay > _attack_delay
Definition: Status.hpp:1854

References _attack_delay.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ attack_range()

std::shared_ptr< AttackRange > Horizon::Zone::Traits::Status::attack_range ( )
inline
404{ return _attack_range; }
std::shared_ptr< AttackRange > _attack_range
Definition: Status.hpp:1820

References _attack_range.

Referenced by on_equipment_changed().

+ Here is the caller graph for this function:

◆ attack_speed()

std::shared_ptr< AttackSpeed > Horizon::Zone::Traits::Status::attack_speed ( )
inline
503{ return _aspd; }
std::shared_ptr< AttackSpeed > _aspd
Definition: Status.hpp:1833

References _aspd.

Referenced by initialize(), on_equipment_changed(), and on_job_changed().

+ Here is the caller graph for this function:

◆ base_appearance()

std::shared_ptr< BaseAppearance > Horizon::Zone::Traits::Status::base_appearance ( )
inline

Appearance.

530{ return _base_appearance; }
std::shared_ptr< BaseAppearance > _base_appearance
Definition: Status.hpp:1837

References _base_appearance.

Referenced by on_job_changed().

+ Here is the caller graph for this function:

◆ base_attack()

std::shared_ptr< BaseAttack > Horizon::Zone::Traits::Status::base_attack ( )
inline
614{ return _base_attack; }
std::shared_ptr< BaseAttack > _base_attack
Definition: Status.hpp:1856

References _base_attack.

Referenced by initialize(), and on_equipment_changed().

+ Here is the caller graph for this function:

◆ base_experience()

std::shared_ptr< BaseExperience > Horizon::Zone::Traits::Status::base_experience ( )
inline
348{ return _base_exp; }
std::shared_ptr< BaseExperience > _base_exp
Definition: Status.hpp:1813

References _base_exp.

Referenced by initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ base_level()

std::shared_ptr< BaseLevel > Horizon::Zone::Traits::Status::base_level ( )
inline
332{ return _base_level; }
std::shared_ptr< BaseLevel > _base_level
Definition: Status.hpp:1811

References _base_level.

Referenced by initialize(), load(), on_job_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ body_style()

std::shared_ptr< BodyStyle > Horizon::Zone::Traits::Status::body_style ( )
inline
560{ return _body_style; }
std::shared_ptr< BodyStyle > _body_style
Definition: Status.hpp:1847

References _body_style.

Referenced by save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ bonus_add_attack()

std::shared_ptr< Bonuses::BonusAddAttack > Horizon::Zone::Traits::Status::bonus_add_attack ( )
inline
1552{ return _bonus->_add_attack; }
std::shared_ptr< bonuses > _bonus
Definition: Status.hpp:2006

References _bonus.

◆ bonus_add_attack_percent()

std::shared_ptr< Bonuses::BonusAddAttackPercent > Horizon::Zone::Traits::Status::bonus_add_attack_percent ( )
inline
1560{ return _bonus->_add_attack_percent; }

References _bonus.

◆ bonus_add_attack_percentage_to_element()

std::shared_ptr< Bonuses::BonusAddAttackPercentageToElement > Horizon::Zone::Traits::Status::bonus_add_attack_percentage_to_element ( )
inline
1352{ return _bonus->_add_attack_percentage_to_element; }

References _bonus.

◆ bonus_add_attack_percentage_to_race()

std::shared_ptr< Bonuses::BonusAddAttackPercentageToRace > Horizon::Zone::Traits::Status::bonus_add_attack_percentage_to_race ( )
inline
1360{ return _bonus->_add_attack_percentage_to_race; }

References _bonus.

◆ bonus_add_attack_percentage_to_size()

std::shared_ptr< Bonuses::BonusAddAttackPercentageToSize > Horizon::Zone::Traits::Status::bonus_add_attack_percentage_to_size ( )
inline
1368{ return _bonus->_add_attack_percentage_to_size; }

References _bonus.

◆ bonus_add_damage_to_class()

std::shared_ptr< Bonuses::BonusAddDamageToClass > Horizon::Zone::Traits::Status::bonus_add_damage_to_class ( )
inline
1456{ return _bonus->_add_damage_to_class; }

References _bonus.

◆ bonus_add_defense_to_class()

std::shared_ptr< Bonuses::BonusAddDefenseToClass > Horizon::Zone::Traits::Status::bonus_add_defense_to_class ( )
inline
1472{ return _bonus->_add_defense_to_class; }

References _bonus.

◆ bonus_add_effect_on_damage()

std::shared_ptr< Bonuses::BonusAddEffectOnDamage > Horizon::Zone::Traits::Status::bonus_add_effect_on_damage ( )
inline
1392{ return _bonus->_add_effect_on_damage; }

References _bonus.

◆ bonus_add_effect_on_magic_attack()

std::shared_ptr< Bonuses::BonusAddEffectOnMagicAttack > Horizon::Zone::Traits::Status::bonus_add_effect_on_magic_attack ( )
inline
1440{ return _bonus->_add_effect_on_magic_attack; }

References _bonus.

◆ bonus_add_effect_when_damaged()

std::shared_ptr< Bonuses::BonusAddEffectWhenDamaged > Horizon::Zone::Traits::Status::bonus_add_effect_when_damaged ( )
inline
1400{ return _bonus->_add_effect_when_damaged; }

References _bonus.

◆ bonus_add_ele_magic_damage_percent()

std::shared_ptr< Bonuses::BonusAddEleMagicDamagePercent > Horizon::Zone::Traits::Status::bonus_add_ele_magic_damage_percent ( )
inline
1744{ return _bonus->_add_ele_magic_damage_percent; }

References _bonus.

◆ bonus_add_ele_weapon_damage_percent()

std::shared_ptr< Bonuses::BonusAddEleWeaponDamagePercent > Horizon::Zone::Traits::Status::bonus_add_ele_weapon_damage_percent ( )
inline
1736{ return _bonus->_add_ele_weapon_damage_percent; }

References _bonus.

◆ bonus_add_item_drop_on_monster_kill()

std::shared_ptr< Bonuses::BonusAddItemDropOnMonsterKill > Horizon::Zone::Traits::Status::bonus_add_item_drop_on_monster_kill ( )
inline
1312{ return _bonus->_add_item_drop_on_monster_kill; }

References _bonus.

◆ bonus_add_magic_attack_percentage_to_element()

std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToElement > Horizon::Zone::Traits::Status::bonus_add_magic_attack_percentage_to_element ( )
inline
1416{ return _bonus->_add_magic_attack_percentage_to_element; }

References _bonus.

◆ bonus_add_magic_attack_percentage_to_size()

std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToSize > Horizon::Zone::Traits::Status::bonus_add_magic_attack_percentage_to_size ( )
inline
1432{ return _bonus->_add_magic_attack_percentage_to_size; }

References _bonus.

◆ bonus_add_magic_attack_to_Race()

std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToRace > Horizon::Zone::Traits::Status::bonus_add_magic_attack_to_Race ( )
inline
1424{ return _bonus->_add_magic_attack_percentage_to_race; }

References _bonus.

◆ bonus_add_magic_damage_to_class()

std::shared_ptr< Bonuses::BonusAddMagicDamageToClass > Horizon::Zone::Traits::Status::bonus_add_magic_damage_to_class ( )
inline
1464{ return _bonus->_add_magic_damage_to_class; }

References _bonus.

◆ bonus_add_magical_defense_to_class()

std::shared_ptr< Bonuses::BonusAddMagicalDefenseToClass > Horizon::Zone::Traits::Status::bonus_add_magical_defense_to_class ( )
inline
1480{ return _bonus->_add_magical_defense_to_class; }

References _bonus.

◆ bonus_add_movement_speed_percent()

std::shared_ptr< Bonuses::BonusAddMovementSpeedPercent > Horizon::Zone::Traits::Status::bonus_add_movement_speed_percent ( )
inline
872{ return _bonus->_bonus_add_movement_speed_percent; }

References _bonus.

◆ bonus_add_steal_percent()

std::shared_ptr< Bonuses::BonusAddStealPercent > Horizon::Zone::Traits::Status::bonus_add_steal_percent ( )
inline
1216{ return _bonus->_add_steal_percent; }

References _bonus.

◆ bonus_add_weapon_coma_to_element()

std::shared_ptr< Bonuses::BonusAddWeaponComaToElement > Horizon::Zone::Traits::Status::bonus_add_weapon_coma_to_element ( )
inline
1520{ return _bonus->_add_weapon_coma_to_element; }

References _bonus.

◆ bonus_add_weapon_coma_to_race()

std::shared_ptr< Bonuses::BonusAddWeaponComaToRace > Horizon::Zone::Traits::Status::bonus_add_weapon_coma_to_race ( )
inline
1528{ return _bonus->_add_weapon_coma_to_race; }

References _bonus.

◆ bonus_add_weapon_coma_to_sub_element()

std::shared_ptr< Bonuses::BonusAddWeaponComaToSubElement > Horizon::Zone::Traits::Status::bonus_add_weapon_coma_to_sub_element ( )
inline
1536{ return _bonus->_add_weapon_coma_to_sub_element; }

References _bonus.

◆ bonus_add_weapon_coma_to_sub_race()

std::shared_ptr< Bonuses::BonusAddWeaponComaToSubRace > Horizon::Zone::Traits::Status::bonus_add_weapon_coma_to_sub_race ( )
inline
1544{ return _bonus->_add_weapon_coma_to_sub_race; }

References _bonus.

◆ bonus_all_status()

std::shared_ptr< Bonuses::BonusAllStatus > Horizon::Zone::Traits::Status::bonus_all_status ( )
inline
800{ return _bonus->_all_status; }

References _bonus.

◆ bonus_armor_break_percent()

std::shared_ptr< Bonuses::BonusArmorBreakPercent > Horizon::Zone::Traits::Status::bonus_armor_break_percent ( )
inline
1208{ return _bonus->_armor_break_percent; }

References _bonus.

◆ bonus_attack_element()

std::shared_ptr< Bonuses::BonusAttackElement > Horizon::Zone::Traits::Status::bonus_attack_element ( )
inline
808{ return _bonus->_attack_element; }

References _bonus.

◆ bonus_attack_on_defense_ratio_for_element()

std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForElement > Horizon::Zone::Traits::Status::bonus_attack_on_defense_ratio_for_element ( )
inline
992{ return _bonus->_attack_on_defense_ratio_for_element; }

References _bonus.

◆ bonus_attack_on_defense_ratio_for_race()

std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForRace > Horizon::Zone::Traits::Status::bonus_attack_on_defense_ratio_for_race ( )
inline
1000{ return _bonus->_attack_on_defense_ratio_for_race; }

References _bonus.

◆ bonus_attack_percent()

std::shared_ptr< Bonuses::BonusAttackPercent > Horizon::Zone::Traits::Status::bonus_attack_percent ( )
inline
944{ return _bonus->_attack_percent; }

References _bonus.

◆ bonus_attack_range()

std::shared_ptr< Bonuses::BonusAttackRange > Horizon::Zone::Traits::Status::bonus_attack_range ( )
inline
856{ return _bonus->_attack_range; }

References _bonus.

◆ bonus_attack_range_percent()

std::shared_ptr< Bonuses::BonusAttackRangePercent > Horizon::Zone::Traits::Status::bonus_attack_range_percent ( )
inline
864{ return _bonus->_attack_range_percent; }

References _bonus.

◆ bonus_attack_speed_percent()

std::shared_ptr< Bonuses::BonusAttackSpeedPercent > Horizon::Zone::Traits::Status::bonus_attack_speed_percent ( )
inline
880{ return _bonus->_attack_speed_percent; }

References _bonus.

◆ bonus_auto_spell_on_attack()

std::shared_ptr< Bonuses::BonusAutoSpellOnAttack > Horizon::Zone::Traits::Status::bonus_auto_spell_on_attack ( )
inline
1760{ return _bonus->_auto_spell_on_attack; }

References _bonus.

◆ bonus_auto_spell_on_receive_damage()

std::shared_ptr< Bonuses::BonusAutoSpellOnReceiveDamage > Horizon::Zone::Traits::Status::bonus_auto_spell_on_receive_damage ( )
inline
1768{ return _bonus->_auto_spell_on_receive_damage; }

References _bonus.

◆ bonus_auto_spell_on_self()

std::shared_ptr< Bonuses::BonusAutoSpellOnSelf > Horizon::Zone::Traits::Status::bonus_auto_spell_on_self ( )
inline
1776{ return _bonus->_auto_spell_on_self; }

References _bonus.

◆ bonus_auto_spell_on_skill()

std::shared_ptr< Bonuses::BonusAutoSpellOnSkill > Horizon::Zone::Traits::Status::bonus_auto_spell_on_skill ( )
inline
1752{ return _bonus->_auto_spell_on_skill; }

References _bonus.

◆ bonus_cast_cancel_immunity()

std::shared_ptr< Bonuses::BonusCastCancelImmunity > Horizon::Zone::Traits::Status::bonus_cast_cancel_immunity ( )
inline
1072{ return _bonus->_cast_cancel_immunity; }

References _bonus.

◆ bonus_cast_percent()

std::shared_ptr< Bonuses::BonusCastPercent > Horizon::Zone::Traits::Status::bonus_cast_percent ( )
inline
824{ return _bonus->_cast_percent; }

References _bonus.

◆ bonus_critical_damage_percent()

std::shared_ptr< Bonuses::BonusCriticalDamagePercent > Horizon::Zone::Traits::Status::bonus_critical_damage_percent ( )
inline
1224{ return _bonus->_critical_damage_percent; }

References _bonus.

◆ bonus_critical_defense()

std::shared_ptr< Bonuses::BonusCriticalDefense > Horizon::Zone::Traits::Status::bonus_critical_defense ( )
inline
904{ return _bonus->_critical_defense; }

References _bonus.

◆ bonus_critical_percent()

std::shared_ptr< Bonuses::BonusCriticalPercent > Horizon::Zone::Traits::Status::bonus_critical_percent ( )
inline
976{ return _bonus->_critical_percent; }

References _bonus.

◆ bonus_critical_race()

std::shared_ptr< Bonuses::BonusCriticalRace > Horizon::Zone::Traits::Status::bonus_critical_race ( )
inline
1568{ return _bonus->_critical_race; }

References _bonus.

◆ bonus_critical_race_percent()

std::shared_ptr< Bonuses::BonusCriticalRacePercent > Horizon::Zone::Traits::Status::bonus_critical_race_percent ( )
inline
1576{ return _bonus->_critical_race_percent; }

References _bonus.

◆ bonus_damage_reduction_against_size()

std::shared_ptr< Bonuses::BonusDamageReductionAgainstSize > Horizon::Zone::Traits::Status::bonus_damage_reduction_against_size ( )
inline
1584{ return _bonus->_damage_reduction_against_size; }

References _bonus.

◆ bonus_damage_splash_range()

std::shared_ptr< Bonuses::BonusDamageSplashRange > Horizon::Zone::Traits::Status::bonus_damage_splash_range ( )
inline
1176{ return _bonus->_damage_splash_range; }

References _bonus.

◆ bonus_defense_element()

std::shared_ptr< Bonuses::BonusDefenseElement > Horizon::Zone::Traits::Status::bonus_defense_element ( )
inline
816{ return _bonus->_defense_element; }

References _bonus.

◆ bonus_disable_hp_recovery()

std::shared_ptr< Bonuses::BonusDisableHPRecovery > Horizon::Zone::Traits::Status::bonus_disable_hp_recovery ( )
inline
1232{ return _bonus->_disable_hp_recovery; }

References _bonus.

◆ bonus_disable_sp_recovery()

std::shared_ptr< Bonuses::BonusDisableSPRecovery > Horizon::Zone::Traits::Status::bonus_disable_sp_recovery ( )
inline
1240{ return _bonus->_disable_sp_recovery; }

References _bonus.

◆ bonus_double_attack_percent()

std::shared_ptr< Bonuses::BonusDoubleAttackPercent > Horizon::Zone::Traits::Status::bonus_double_attack_percent ( )
inline
928{ return _bonus->_double_attack_percent; }

References _bonus.

◆ bonus_exp_percent_per_race()

std::shared_ptr< Bonuses::BonusExpPercentPerRace > Horizon::Zone::Traits::Status::bonus_exp_percent_per_race ( )
inline
1600{ return _bonus->_exp_percent_per_race; }

References _bonus.

◆ bonus_flee_percent()

std::shared_ptr< Bonuses::BonusFleePercent > Horizon::Zone::Traits::Status::bonus_flee_percent ( )
inline
1016{ return _bonus->_flee_percent; }

References _bonus.

◆ bonus_gear_fuel_immunity()

std::shared_ptr< Bonuses::BonusGearFuelImmunity > Horizon::Zone::Traits::Status::bonus_gear_fuel_immunity ( )
inline
1112{ return _bonus->_gear_fuel_immunity; }

References _bonus.

◆ bonus_gemstone_immunity()

std::shared_ptr< Bonuses::BonusGemstoneImmunity > Horizon::Zone::Traits::Status::bonus_gemstone_immunity ( )
inline
1104{ return _bonus->_gemstone_immunity; }

References _bonus.

◆ bonus_get_zeny_num()

std::shared_ptr< Bonuses::BonusGetZenyNum > Horizon::Zone::Traits::Status::bonus_get_zeny_num ( )
inline
984{ return _bonus->_get_zeny_num; }

References _bonus.

◆ bonus_hard_defense_percent()

std::shared_ptr< Bonuses::BonusHardDefensePercent > Horizon::Zone::Traits::Status::bonus_hard_defense_percent ( )
inline
1040{ return _bonus->_hard_defense_percent; }

References _bonus.

◆ bonus_hard_magical_defense_percent()

std::shared_ptr< Bonuses::BonusHardMagicalDefensePercent > Horizon::Zone::Traits::Status::bonus_hard_magical_defense_percent ( )
inline
1056{ return _bonus->_hard_magical_defense_percent; }

References _bonus.

◆ bonus_heal_of_skill_casted_on_self()

std::shared_ptr< Bonuses::BonusHealOfSkillCastedOnSelf > Horizon::Zone::Traits::Status::bonus_heal_of_skill_casted_on_self ( )
inline
1648{ return _bonus->_heal_of_skill_casted_on_self; }

References _bonus.

◆ bonus_hit_percent()

std::shared_ptr< Bonuses::BonusHitPercent > Horizon::Zone::Traits::Status::bonus_hit_percent ( )
inline
1008{ return _bonus->_hit_percent; }

References _bonus.

◆ bonus_hp_drain_on_monster_kill()

std::shared_ptr< Bonuses::BonusHPDrainOnMonsterKill > Horizon::Zone::Traits::Status::bonus_hp_drain_on_monster_kill ( )
inline
1320{ return _bonus->_hp_drain_on_monster_kill; }

References _bonus.

◆ bonus_hp_drain_percent()

std::shared_ptr< Bonuses::BonusHPDrainPercent > Horizon::Zone::Traits::Status::bonus_hp_drain_percent ( )
inline
1488{ return _bonus->_hp_drain_percent; }

References _bonus.

◆ bonus_hp_drain_value()

std::shared_ptr< Bonuses::BonusHPDrainValue > Horizon::Zone::Traits::Status::bonus_hp_drain_value ( )
inline
1496{ return _bonus->_hp_drain_value; }

References _bonus.

◆ bonus_hp_gain_on_mob_kill()

std::shared_ptr< Bonuses::BonusHPGainOnMobKill > Horizon::Zone::Traits::Status::bonus_hp_gain_on_mob_kill ( )
inline
1168{ return _bonus->_hp_gain_on_mob_kill; }

References _bonus.

◆ bonus_hp_recovery_percent()

std::shared_ptr< Bonuses::BonusHPRecoveryPercent > Horizon::Zone::Traits::Status::bonus_hp_recovery_percent ( )
inline
888{ return _bonus->_hp_recovery_percent; }

References _bonus.

◆ bonus_hp_vanish_percent()

std::shared_ptr< Bonuses::BonusHPVanishPercent > Horizon::Zone::Traits::Status::bonus_hp_vanish_percent ( )
inline
1288{ return _bonus->_hp_vanish_percent; }

References _bonus.

◆ bonus_ignore_defense_from_element()

std::shared_ptr< Bonuses::BonusIgnoreDefenseFromElement > Horizon::Zone::Traits::Status::bonus_ignore_defense_from_element ( )
inline
1704{ return _bonus->_ignore_defense_from_element; }

References _bonus.

◆ bonus_ignore_defense_from_race()

std::shared_ptr< Bonuses::BonusIgnoreDefenseFromRace > Horizon::Zone::Traits::Status::bonus_ignore_defense_from_race ( )
inline
1712{ return _bonus->_ignore_defense_from_race; }

References _bonus.

◆ bonus_ignore_magic_defense_from_element()

std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromElement > Horizon::Zone::Traits::Status::bonus_ignore_magic_defense_from_element ( )
inline
1720{ return _bonus->_ignore_magic_defense_from_element; }

References _bonus.

◆ bonus_ignore_magic_defense_from_race()

std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromRace > Horizon::Zone::Traits::Status::bonus_ignore_magic_defense_from_race ( )
inline
1728{ return _bonus->_ignore_magic_defense_from_race; }

References _bonus.

◆ bonus_infinite_endure()

std::shared_ptr< Bonuses::BonusInfiniteEndure > Horizon::Zone::Traits::Status::bonus_infinite_endure ( )
inline
1120{ return _bonus->_infinite_endure; }

References _bonus.

◆ bonus_item_usage_immunity()

std::shared_ptr< Bonuses::BonusItemUsageImmunity > Horizon::Zone::Traits::Status::bonus_item_usage_immunity ( )
inline
1272{ return _bonus->_item_usage_immunity; }

References _bonus.

◆ bonus_job_percent_per_race()

std::shared_ptr< Bonuses::BonusJobPercentPerRace > Horizon::Zone::Traits::Status::bonus_job_percent_per_race ( )
inline
1608{ return _bonus->_job_percent_per_race; }

References _bonus.

◆ bonus_knock_back_immunity()

std::shared_ptr< Bonuses::BonusKnockBackImmunity > Horizon::Zone::Traits::Status::bonus_knock_back_immunity ( )
inline
1280{ return _bonus->_knockback_immunity; }

References _bonus.

◆ bonus_learned_skill_heal()

std::shared_ptr< Bonuses::BonusLearnedSkillHeal > Horizon::Zone::Traits::Status::bonus_learned_skill_heal ( )
inline
1640{ return _bonus->_learned_skill_heal; }

References _bonus.

◆ bonus_long_weapon_damage_percent()

std::shared_ptr< Bonuses::BonusLongWeaponDamagePercent > Horizon::Zone::Traits::Status::bonus_long_weapon_damage_percent ( )
inline
1264{ return _bonus->_long_weapon_damage_percent; }

References _bonus.

◆ bonus_magic_attack_percent()

std::shared_ptr< Bonuses::BonusMagicAttackPercent > Horizon::Zone::Traits::Status::bonus_magic_attack_percent ( )
inline
936{ return _bonus->_magic_attack_percent; }

References _bonus.

◆ bonus_magic_damage_immunity()

std::shared_ptr< Bonuses::BonusMagicDamageImmunity > Horizon::Zone::Traits::Status::bonus_magic_damage_immunity ( )
inline
1088{ return _bonus->_magic_damage_immunity; }

References _bonus.

◆ bonus_magic_damage_reduction_against_size()

std::shared_ptr< Bonuses::BonusMagicDamageReductionAgainstSize > Horizon::Zone::Traits::Status::bonus_magic_damage_reduction_against_size ( )
inline
1592{ return _bonus->_magic_damage_reduction_against_size; }

References _bonus.

◆ bonus_magic_damage_reflect_percent_on_self()

std::shared_ptr< Bonuses::BonusMagicDamageReflectPercentOnSelf > Horizon::Zone::Traits::Status::bonus_magic_damage_reflect_percent_on_self ( )
inline
1248{ return _bonus->_magic_damage_reflect_percent_on_self; }

References _bonus.

◆ bonus_magic_defense_percent()

std::shared_ptr< Bonuses::BonusMagicDefensePercent > Horizon::Zone::Traits::Status::bonus_magic_defense_percent ( )
inline
952{ return _bonus->_magic_defense_percent; }

References _bonus.

◆ bonus_max_hp_percent()

std::shared_ptr< Bonuses::BonusMaxHPPercent > Horizon::Zone::Traits::Status::bonus_max_hp_percent ( )
inline
832{ return _bonus->_max_hp_percent; }

References _bonus.

◆ bonus_max_sp_percent()

std::shared_ptr< Bonuses::BonusMaxSPPercent > Horizon::Zone::Traits::Status::bonus_max_sp_percent ( )
inline
840{ return _bonus->_max_sp_percent; }

References _bonus.

◆ bonus_melee_defense()

std::shared_ptr< Bonuses::BonusMeleeDefense > Horizon::Zone::Traits::Status::bonus_melee_defense ( )
inline
912{ return _bonus->_melee_defense; }

References _bonus.

◆ bonus_melee_weapon_damage_reflect_percent_on_self()

std::shared_ptr< Bonuses::BonusMeleeWeaponDamageReflectPercentOnSelf > Horizon::Zone::Traits::Status::bonus_melee_weapon_damage_reflect_percent_on_self ( )
inline
1184{ return _bonus->_melee_weapon_damage_reflect_percent_on_self; }

References _bonus.

◆ bonus_misc_defense_percent()

std::shared_ptr< Bonuses::BonusMiscDefensePercent > Horizon::Zone::Traits::Status::bonus_misc_defense_percent ( )
inline
960{ return _bonus->_misc_defense_percent; }

References _bonus.

◆ bonus_perfect_dodge_percent()

std::shared_ptr< Bonuses::BonusPerfectDodgePercent > Horizon::Zone::Traits::Status::bonus_perfect_dodge_percent ( )
inline
1024{ return _bonus->_perfect_dodge_percent; }

References _bonus.

◆ bonus_perfect_hit_percent()

std::shared_ptr< Bonuses::BonusPerfectHitPercent > Horizon::Zone::Traits::Status::bonus_perfect_hit_percent ( )
inline
968{ return _bonus->_perfect_hit_percent; }

References _bonus.

◆ bonus_raise()

std::shared_ptr< Bonuses::BonusRaise > Horizon::Zone::Traits::Status::bonus_raise ( )
inline
1304{ return _bonus->_raise; }

References _bonus.

◆ bonus_ranged_defense()

std::shared_ptr< Bonuses::BonusRangedDefense > Horizon::Zone::Traits::Status::bonus_ranged_defense ( )
inline
920{ return _bonus->_ranged_defense; }

References _bonus.

◆ bonus_ranged_weapon_damage_reflect_percent_on_self()

std::shared_ptr< Bonuses::BonusRangedWeaponDamageReflectPercentOnSelf > Horizon::Zone::Traits::Status::bonus_ranged_weapon_damage_reflect_percent_on_self ( )
inline
1192{ return _bonus->_ranged_weapon_damage_reflect_percent_on_self; }

References _bonus.

◆ bonus_reduce_sp_consumption_of_skill()

std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkill > Horizon::Zone::Traits::Status::bonus_reduce_sp_consumption_of_skill ( )
inline
1632{ return _bonus->_reduce_sp_consumption_of_skill; }

References _bonus.

◆ bonus_reduce_sp_consumption_of_skill_by_percent()

std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkillByPercent > Horizon::Zone::Traits::Status::bonus_reduce_sp_consumption_of_skill_by_percent ( )
inline
1624{ return _bonus->_reduce_sp_consumption_of_skill_by_percent; }

References _bonus.

◆ bonus_resist_magic_attack_from_race()

std::shared_ptr< Bonuses::BonusResistMagicAttackFromRace > Horizon::Zone::Traits::Status::bonus_resist_magic_attack_from_race ( )
inline
1448{ return _bonus->_resist_magic_attack_from_race; }

References _bonus.

◆ bonus_resist_skill_damage_percent()

std::shared_ptr< Bonuses::BonusResistSkillDamagePercent > Horizon::Zone::Traits::Status::bonus_resist_skill_damage_percent ( )
inline
1696{ return _bonus->_resist_skill_damage_percent; }

References _bonus.

◆ bonus_ressist_effect()

std::shared_ptr< Bonuses::BonusRessistEffect > Horizon::Zone::Traits::Status::bonus_ressist_effect ( )
inline
1408{ return _bonus->_ressist_effect; }

References _bonus.

◆ bonus_restart_with_full_recovery()

std::shared_ptr< Bonuses::BonusRestartWithFullRecovery > Horizon::Zone::Traits::Status::bonus_restart_with_full_recovery ( )
inline
1064{ return _bonus->_restart_with_full_recovery; }

References _bonus.

◆ bonus_short_weapon_damage_percent()

std::shared_ptr< Bonuses::BonusShortWeaponDamagePercent > Horizon::Zone::Traits::Status::bonus_short_weapon_damage_percent ( )
inline
1256{ return _bonus->_short_weapon_damage_percent; }

References _bonus.

◆ bonus_size_modifier_immunity()

std::shared_ptr< Bonuses::BonusSizeModifierImmunity > Horizon::Zone::Traits::Status::bonus_size_modifier_immunity ( )
inline
1080{ return _bonus->_size_modifier_immunity; }

References _bonus.

◆ bonus_skill_attack()

std::shared_ptr< Bonuses::BonusSkillAttack > Horizon::Zone::Traits::Status::bonus_skill_attack ( )
inline
1616{ return _bonus->_skill_attack; }

References _bonus.

◆ bonus_skill_cast_percent()

std::shared_ptr< Bonuses::BonusSkillCastPercent > Horizon::Zone::Traits::Status::bonus_skill_cast_percent ( )
inline
1664{ return _bonus->_skill_cast_percent; }

References _bonus.

◆ bonus_skill_cooldown()

std::shared_ptr< Bonuses::BonusSkillCooldown > Horizon::Zone::Traits::Status::bonus_skill_cooldown ( )
inline
1672{ return _bonus->_skill_cooldown; }

References _bonus.

◆ bonus_skill_fix_cast_percent()

std::shared_ptr< Bonuses::BonusSkillFixCastPercent > Horizon::Zone::Traits::Status::bonus_skill_fix_cast_percent ( )
inline
1680{ return _bonus->_skill_fix_cast_percent; }

References _bonus.

◆ bonus_skill_knockback()

std::shared_ptr< Bonuses::BonusSkillKnockback > Horizon::Zone::Traits::Status::bonus_skill_knockback ( )
inline
1656{ return _bonus->_skill_knockback; }

References _bonus.

◆ bonus_skill_variable_cast_percent()

std::shared_ptr< Bonuses::BonusSkillVariableCastPercent > Horizon::Zone::Traits::Status::bonus_skill_variable_cast_percent ( )
inline
1688{ return _bonus->_skill_variable_cast_percent; }

References _bonus.

◆ bonus_soft_defense_percent()

std::shared_ptr< Bonuses::BonusSoftDefensePercent > Horizon::Zone::Traits::Status::bonus_soft_defense_percent ( )
inline
1032{ return _bonus->_soft_defense_percent; }

References _bonus.

◆ bonus_soft_magical_defense_percent()

std::shared_ptr< Bonuses::BonusSoftMagicalDefensePercent > Horizon::Zone::Traits::Status::bonus_soft_magical_defense_percent ( )
inline
1048{ return _bonus->_soft_magical_defense_percent; }

References _bonus.

◆ bonus_sp_drain_on_monster_kill()

std::shared_ptr< Bonuses::BonusSPDrainOnMonsterKill > Horizon::Zone::Traits::Status::bonus_sp_drain_on_monster_kill ( )
inline
1328{ return _bonus->_sp_drain_on_monster_kill; }

References _bonus.

◆ bonus_sp_drain_percent()

std::shared_ptr< Bonuses::BonusSPDrainPercent > Horizon::Zone::Traits::Status::bonus_sp_drain_percent ( )
inline
1504{ return _bonus->_sp_drain_percent; }

References _bonus.

◆ bonus_sp_drain_value()

std::shared_ptr< Bonuses::BonusSPDrainValue > Horizon::Zone::Traits::Status::bonus_sp_drain_value ( )
inline
1512{ return _bonus->_bonus_sp_drain_value; }

References _bonus.

◆ bonus_sp_gain_on_mob_kill()

std::shared_ptr< Bonuses::BonusSPGainOnMobKill > Horizon::Zone::Traits::Status::bonus_sp_gain_on_mob_kill ( )
inline
1160{ return _bonus->_sp_gain_on_mob_kill; }

References _bonus.

◆ bonus_sp_percent()

std::shared_ptr< Bonuses::BonusSPPercent > Horizon::Zone::Traits::Status::bonus_sp_percent ( )
inline
848{ return _bonus->_sp_percent; }

References _bonus.

◆ bonus_sp_recovery_percent()

std::shared_ptr< Bonuses::BonusSPRecoveryPercent > Horizon::Zone::Traits::Status::bonus_sp_recovery_percent ( )
inline
896{ return _bonus->_sp_recovery_percent; }

References _bonus.

◆ bonus_sp_vanish_percent()

std::shared_ptr< Bonuses::BonusSPVanishPercent > Horizon::Zone::Traits::Status::bonus_sp_vanish_percent ( )
inline
1296{ return _bonus->_sp_vanish_percent; }

References _bonus.

◆ bonus_sub_attack_percentage_from_element()

std::shared_ptr< Bonuses::BonusSubAttackPercentageFromElement > Horizon::Zone::Traits::Status::bonus_sub_attack_percentage_from_element ( )
inline
1376{ return _bonus->_sub_attack_percentage_from_element; }

References _bonus.

◆ bonus_sub_attack_percentage_from_race()

std::shared_ptr< Bonuses::BonusSubAttackPercentageFromRace > Horizon::Zone::Traits::Status::bonus_sub_attack_percentage_from_race ( )
inline
1384{ return _bonus->_sub_attack_percentage_from_race; }

References _bonus.

◆ bonus_unbreakable_armor()

std::shared_ptr< Bonuses::BonusUnbreakableArmor > Horizon::Zone::Traits::Status::bonus_unbreakable_armor ( )
inline
1136{ return _bonus->_unbreakable_armor; }

References _bonus.

◆ bonus_unbreakable_helm()

std::shared_ptr< Bonuses::BonusUnbreakableHelm > Horizon::Zone::Traits::Status::bonus_unbreakable_helm ( )
inline
1144{ return _bonus->_unbreakable_helm; }

References _bonus.

◆ bonus_unbreakable_shield()

std::shared_ptr< Bonuses::BonusUnbreakableShield > Horizon::Zone::Traits::Status::bonus_unbreakable_shield ( )
inline
1152{ return _bonus->_unbreakable_shield; }

References _bonus.

◆ bonus_unbreakable_weapon()

std::shared_ptr< Bonuses::BonusUnbreakableWeapon > Horizon::Zone::Traits::Status::bonus_unbreakable_weapon ( )
inline
1128{ return _bonus->_unbreakable_weapon; }

References _bonus.

◆ bonus_weapon_break_percent()

std::shared_ptr< Bonuses::BonusWeaponBreakPercent > Horizon::Zone::Traits::Status::bonus_weapon_break_percent ( )
inline
1200{ return _bonus->_weapon_break_percent; }

References _bonus.

◆ bonus_weapon_damage_immunity()

std::shared_ptr< Bonuses::BonusWeaponDamageImmunity > Horizon::Zone::Traits::Status::bonus_weapon_damage_immunity ( )
inline
1096{ return _bonus->_weapon_damage_immunity; }

References _bonus.

◆ calculate()

void Status::calculate ( bool  notify = true)
502{
503 // calculate before initialize is set.
504 for (auto i : _attributes) {
505 i->apply(notify);
506 }
507}

References _attributes.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ cloth_color()

std::shared_ptr< ClothColor > Horizon::Zone::Traits::Status::cloth_color ( )
inline
536{ return _cloth_color; }
std::shared_ptr< ClothColor > _cloth_color
Definition: Status.hpp:1839

References _cloth_color.

Referenced by save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ creature_attack_damage()

std::shared_ptr< MobAttackDamage > Horizon::Zone::Traits::Status::creature_attack_damage ( )
inline
671{ return _creature_attack_damage; }
std::shared_ptr< MobAttackDamage > _creature_attack_damage
Definition: Status.hpp:1864

References _creature_attack_damage.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ creature_chase_range()

std::shared_ptr< MobChaseRange > Horizon::Zone::Traits::Status::creature_chase_range ( )
inline
695{ return _creature_chase_range; }
std::shared_ptr< MobChaseRange > _creature_chase_range
Definition: Status.hpp:1867

References _creature_chase_range.

◆ creature_element()

std::shared_ptr< MobElement > Horizon::Zone::Traits::Status::creature_element ( )
inline
719{ return _creature_element; }
std::shared_ptr< MobElement > _creature_element
Definition: Status.hpp:1870

References _creature_element.

◆ creature_element_level()

std::shared_ptr< MobElementLevel > Horizon::Zone::Traits::Status::creature_element_level ( )
inline
727{ return _creature_element_level; }
std::shared_ptr< MobElementLevel > _creature_element_level
Definition: Status.hpp:1871

References _creature_element_level.

◆ creature_magic_attack_damage()

std::shared_ptr< MobMagicAttackDamage > Horizon::Zone::Traits::Status::creature_magic_attack_damage ( )
inline
std::shared_ptr< MobMagicAttackDamage > _creature_magic_attack_damage
Definition: Status.hpp:1865

References _creature_magic_attack_damage.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ creature_mode()

std::shared_ptr< MobMode > Horizon::Zone::Traits::Status::creature_mode ( )
inline
735{ return _creature_mode; }
std::shared_ptr< MobMode > _creature_mode
Definition: Status.hpp:1872

References _creature_mode.

◆ creature_primary_race()

std::shared_ptr< MobPrimaryRace > Horizon::Zone::Traits::Status::creature_primary_race ( )
inline
703{ return _creature_primary_race; }
std::shared_ptr< MobPrimaryRace > _creature_primary_race
Definition: Status.hpp:1868

References _creature_primary_race.

◆ creature_secondary_race()

std::shared_ptr< MobSecondaryRace > Horizon::Zone::Traits::Status::creature_secondary_race ( )
inline
711{ return _creature_secondary_race; }
std::shared_ptr< MobSecondaryRace > _creature_secondary_race
Definition: Status.hpp:1869

References _creature_secondary_race.

◆ creature_view_range()

std::shared_ptr< MobViewRange > Horizon::Zone::Traits::Status::creature_view_range ( )
inline
687{ return _creature_view_range; }
std::shared_ptr< MobViewRange > _creature_view_range
Definition: Status.hpp:1866

References _creature_view_range.

◆ creature_weapon_attack()

std::shared_ptr< MobWeaponAttack > Horizon::Zone::Traits::Status::creature_weapon_attack ( )
inline
655{ return _creature_weapon_attack; }
std::shared_ptr< MobWeaponAttack > _creature_weapon_attack
Definition: Status.hpp:1862

References _creature_weapon_attack.

◆ creature_weapon_attack_magic()

std::shared_ptr< MobWeaponAttack > Horizon::Zone::Traits::Status::creature_weapon_attack_magic ( )
inline
std::shared_ptr< MobWeaponAttack > _creature_weapon_attack_magic
Definition: Status.hpp:1863

References _creature_weapon_attack_magic.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ crit()

std::shared_ptr< CRIT > Horizon::Zone::Traits::Status::crit ( )
inline
487{ return _crit; }
std::shared_ptr< CRIT > _crit
Definition: Status.hpp:1831

References _crit.

Referenced by initialize(), and set_crit().

+ Here is the caller graph for this function:

◆ current_hp()

std::shared_ptr< CurrentHP > Horizon::Zone::Traits::Status::current_hp ( )
inline
316{ return _current_hp; }
std::shared_ptr< CurrentHP > _current_hp
Definition: Status.hpp:1809

References _current_hp.

Referenced by initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ current_sp()

std::shared_ptr< CurrentSP > Horizon::Zone::Traits::Status::current_sp ( )
inline
324{ return _current_sp; }
std::shared_ptr< CurrentSP > _current_sp
Definition: Status.hpp:1810

References _current_sp.

Referenced by initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ current_weight()

std::shared_ptr< CurrentWeight > Horizon::Zone::Traits::Status::current_weight ( )
inline
396{ return _current_weight; }
std::shared_ptr< CurrentWeight > _current_weight
Definition: Status.hpp:1819

References _current_weight.

Referenced by Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ damage_walk_delay()

std::shared_ptr< DamageWalkDelay > Horizon::Zone::Traits::Status::damage_walk_delay ( )
inline
606{ return _damage_walk_delay; }
std::shared_ptr< DamageWalkDelay > _damage_walk_delay
Definition: Status.hpp:1855

References _damage_walk_delay.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ dexterity()

std::shared_ptr< Dexterity > Horizon::Zone::Traits::Status::dexterity ( )
inline
212{ return _dex; }
std::shared_ptr< Dexterity > _dex
Definition: Status.hpp:1797

References _dex.

Referenced by get_status_base(), increase_status_point(), initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ dexterity_cost()

std::shared_ptr< DexterityPointCost > Horizon::Zone::Traits::Status::dexterity_cost ( )
inline
260{ return _dex_cost; }
std::shared_ptr< DexterityPointCost > _dex_cost
Definition: Status.hpp:1803

References _dex_cost.

Referenced by increase_status_point(), and initialize().

+ Here is the caller graph for this function:

◆ equip_atk()

std::shared_ptr< EquipATK > Horizon::Zone::Traits::Status::equip_atk ( )
inline
423{ return _equip_atk; }
std::shared_ptr< EquipATK > _equip_atk
Definition: Status.hpp:1823

References _equip_atk.

Referenced by initialize(), and on_equipment_changed().

+ Here is the caller graph for this function:

◆ equip_matk()

std::shared_ptr< EquipMATK > Horizon::Zone::Traits::Status::equip_matk ( )
inline
439{ return _equip_matk; }
std::shared_ptr< EquipMATK > _equip_matk
Definition: Status.hpp:1825

References _equip_matk.

Referenced by on_equipment_changed().

+ Here is the caller graph for this function:

◆ flee()

std::shared_ptr< FLEE > Horizon::Zone::Traits::Status::flee ( )
inline
495{ return _flee; }
std::shared_ptr< FLEE > _flee
Definition: Status.hpp:1832

References _flee.

Referenced by initialize(), and set_flee().

+ Here is the caller graph for this function:

◆ get_appearance()

std::shared_ptr< Appearance > Horizon::Zone::Traits::Status::get_appearance ( unit_appearance_type  type)
inline
770 {
771 for (auto &appearance : _appearances)
772 {
773 if (appearance->get_type() == type)
774 return appearance;
775 }
776
777 return nullptr;
778 }

References _appearances.

◆ get_attribute()

std::shared_ptr< Attribute > Horizon::Zone::Traits::Status::get_attribute ( status_point_type  type)
inline
754 {
755 for (auto &attribute : _attributes)
756 {
757 if (attribute->get_type() == type)
758 return attribute;
759 }
760
761 return nullptr;
762 }

References _attributes.

◆ get_bonus()

std::shared_ptr< Bonuses::Bonus > Horizon::Zone::Traits::Status::get_bonus ( status_point_type  type)
inline
790 {
791 for (auto &bonus : _bonuses)
792 {
793 if (bonus->get_type() == type)
794 return bonus;
795 }
796
797 return nullptr;
798 }

References _bonuses.

◆ get_bonus_array()

std::shared_ptr< Bonuses::IBonusArray > Horizon::Zone::Traits::Status::get_bonus_array ( status_point_type  type)
inline
1342 {
1343 for (auto &ba : _bonus_arrays)
1344 {
1345 if (ba->get_type() == type)
1346 return ba;
1347 }
1348
1349 return nullptr;
1350 }

References _bonus_arrays.

◆ get_required_statpoints()

uint32_t Status::get_required_statpoints ( uint16_t  from,
uint16_t  to 
)
836{
837 uint32_t sp = 0;
838
839 for (; from < to; from++)
840 sp += (from < 100) ? (2 + (from - 1) / 10) : (16 + 4 * ((from - 100) / 5));
841
842 return sp;
843}

Referenced by increase_status_point(), and load().

+ Here is the caller graph for this function:

◆ get_status_base()

uint32_t Status::get_status_base ( status_point_type  type)
846{
847 uint32_t value = 0;
848 switch (type)
849 {
850 case STATUS_STRENGTH: value = strength()->get_base(); break;
851 case STATUS_AGILITY: value = agility()->get_base(); break;
852 case STATUS_VITALITY: value = vitality()->get_base(); break;
853 case STATUS_INTELLIGENCE: value = intelligence()->get_base(); break;
854 case STATUS_DEXTERITY: value = dexterity()->get_base(); break;
855 case STATUS_LUCK: value = luck()->get_base(); break;
856 default: return 0;
857 }
858
859 return value;
860}
@ STATUS_DEXTERITY
Definition: UnitDefinitions.hpp:106
@ STATUS_AGILITY
Definition: UnitDefinitions.hpp:103
@ STATUS_STRENGTH
Definition: UnitDefinitions.hpp:102
@ STATUS_VITALITY
Definition: UnitDefinitions.hpp:104
@ STATUS_LUCK
Definition: UnitDefinitions.hpp:107
@ STATUS_INTELLIGENCE
Definition: UnitDefinitions.hpp:105
std::shared_ptr< Dexterity > dexterity()
Definition: Status.hpp:212
std::shared_ptr< Intelligence > intelligence()
Definition: Status.hpp:220
std::shared_ptr< Luck > luck()
Definition: Status.hpp:228
std::shared_ptr< Agility > agility()
Definition: Status.hpp:196
std::shared_ptr< Strength > strength()
Attributes.
Definition: Status.hpp:188
std::shared_ptr< Vitality > vitality()
Definition: Status.hpp:204

References agility(), dexterity(), intelligence(), luck(), STATUS_AGILITY, STATUS_DEXTERITY, STATUS_INTELLIGENCE, STATUS_LUCK, STATUS_STRENGTH, STATUS_VITALITY, strength(), and vitality().

Referenced by increase_status_point().

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

◆ hair_color()

std::shared_ptr< HairColor > Horizon::Zone::Traits::Status::hair_color ( )
inline
533{ return _hair_color; }
std::shared_ptr< HairColor > _hair_color
Definition: Status.hpp:1838

References _hair_color.

Referenced by save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ hair_style()

std::shared_ptr< HairStyle > Horizon::Zone::Traits::Status::hair_style ( )
inline
557{ return _hair_style; }
std::shared_ptr< HairStyle > _hair_style
Definition: Status.hpp:1846

References _hair_style.

Referenced by save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ hard_def()

std::shared_ptr< HardDEF > Horizon::Zone::Traits::Status::hard_def ( )
inline
455{ return _hard_def; }
std::shared_ptr< HardDEF > _hard_def
Definition: Status.hpp:1827

References _hard_def.

◆ hard_mdef()

std::shared_ptr< HardMDEF > Horizon::Zone::Traits::Status::hard_mdef ( )
inline
471{ return _hard_mdef; }
std::shared_ptr< HardMDEF > _hard_mdef
Definition: Status.hpp:1829

References _hard_mdef.

◆ head_bottom_sprite()

std::shared_ptr< HeadBottomSprite > Horizon::Zone::Traits::Status::head_bottom_sprite ( )
inline
554{ return _head_bottom_sprite; }
std::shared_ptr< HeadBottomSprite > _head_bottom_sprite
Definition: Status.hpp:1845

References _head_bottom_sprite.

Referenced by on_equipment_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ head_mid_sprite()

std::shared_ptr< HeadMidSprite > Horizon::Zone::Traits::Status::head_mid_sprite ( )
inline
551{ return _head_mid_sprite; }
std::shared_ptr< HeadMidSprite > _head_mid_sprite
Definition: Status.hpp:1844

References _head_mid_sprite.

Referenced by on_equipment_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ head_top_sprite()

std::shared_ptr< HeadTopSprite > Horizon::Zone::Traits::Status::head_top_sprite ( )
inline
548{ return _head_top_sprite; }
std::shared_ptr< HeadTopSprite > _head_top_sprite
Definition: Status.hpp:1843

References _head_top_sprite.

Referenced by on_equipment_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ hit()

std::shared_ptr< HIT > Horizon::Zone::Traits::Status::hit ( )
inline
479{ return _hit; }
std::shared_ptr< HIT > _hit
Definition: Status.hpp:1830

References _hit.

Referenced by initialize(), and set_hit().

+ Here is the caller graph for this function:

◆ honor()

std::shared_ptr< Honor > Horizon::Zone::Traits::Status::honor ( )
inline
571{ return _honor; }
std::shared_ptr< Honor > _honor
Definition: Status.hpp:1850

References _honor.

Referenced by save().

+ Here is the caller graph for this function:

◆ hp_regeneration()

std::shared_ptr< HPRegeneration > Horizon::Zone::Traits::Status::hp_regeneration ( )
inline
511{ return _hp_regeneration; }
std::shared_ptr< HPRegeneration > _hp_regeneration
Definition: Status.hpp:1834

References _hp_regeneration.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ increase_status_point()

bool Status::increase_status_point ( status_point_type  type,
uint16_t  limit 
)

Increases a status point to a certain limit and returns the current total of the stat.

Parameters
type[in]Type of the status point
See also
status_point_type
Parameters
limit[in]Limit to increase the status point to.
Returns
The total base value of the current status point.
870{
871 uint32_t value = 0;
872
873 if (limit <= 0 || limit > MAX_STATUS_POINTS)
874 return false;
875
876 if (_unit.expired())
877 return false;
878
879 uint32_t available_points = status_point()->get_base();
880 uint32_t required_points = 0;
881
882 limit += get_status_base(type);
883
884#define notify_status(t, amount, result) \
885 unit()->template downcast<Horizon::Zone::Units::Player>()->get_session()->clif()->notify_status_attribute_update(t, amount, result)
886 while (limit > get_status_base(type)) {
887 value = get_status_base(type);
888 required_points = get_required_statpoints(value + 1, value + 2);
889
890 if (required_points > available_points || value >= MAX_STATUS_POINTS)
891 break;
892
893 available_points -= required_points;
894 switch (type)
895 {
896 case STATUS_STRENGTH:
897 strength()->add_base(1);
898 strength_cost()->set_base(required_points);
899 break;
900 case STATUS_AGILITY:
901 agility()->add_base(1);
902 agility_cost()->set_base(required_points);
903 break;
904 case STATUS_VITALITY:
905 vitality()->add_base(1);
906 vitality_cost()->set_base(required_points);
907 break;
909 intelligence()->add_base(1);
910 intelligence_cost()->set_base(required_points);
911 break;
912 case STATUS_DEXTERITY:
913 dexterity()->add_base(1);
914 dexterity_cost()->set_base(required_points);
915 break;
916 case STATUS_LUCK:
917 luck()->add_base(1);
918 luck_cost()->set_base(required_points);
919 break;
920 default:
921 notify_status(type, get_status_base(type), false);
922 return false;
923 }
924
925 notify_status(type, get_status_base(type), true);
926 status_point()->set_base(available_points);
927 }
928#undef notify_status
929 return true;
930}
#define MAX_STATUS_POINTS
Definition: Horizon.hpp:49
#define notify_status(t, amount, result)
std::shared_ptr< LuckPointCost > luck_cost()
Definition: Status.hpp:276
std::shared_ptr< VitalityPointCost > vitality_cost()
Definition: Status.hpp:252
std::shared_ptr< IntelligencePointCost > intelligence_cost()
Definition: Status.hpp:268
std::shared_ptr< DexterityPointCost > dexterity_cost()
Definition: Status.hpp:260
std::shared_ptr< StrengthPointCost > strength_cost()
Definition: Status.hpp:236
std::shared_ptr< StatusPoint > status_point()
Definition: Status.hpp:284
uint32_t get_status_base(status_point_type type)
Definition: Status.cpp:845
std::shared_ptr< AgilityPointCost > agility_cost()
Definition: Status.hpp:244
uint32_t get_required_statpoints(uint16_t from, uint16_t to)
Definition: Status.cpp:835

References _unit, agility(), agility_cost(), dexterity(), dexterity_cost(), get_required_statpoints(), get_status_base(), intelligence(), intelligence_cost(), luck(), luck_cost(), MAX_STATUS_POINTS, notify_status, STATUS_AGILITY, STATUS_DEXTERITY, STATUS_INTELLIGENCE, STATUS_LUCK, status_point(), STATUS_STRENGTH, STATUS_VITALITY, strength(), strength_cost(), vitality(), and vitality_cost().

+ Here is the call graph for this function:

◆ initialize() [1/3]

bool Status::initialize ( std::shared_ptr< Horizon::Zone::Units::Mob creature,
std::shared_ptr< const monster_config_data md 
)
547{
548 set_movement_speed(std::make_shared<MovementSpeed>(_unit, md->move_speed));
549
550 set_base_level(std::make_shared<BaseLevel>(_unit, md->level));
551
552 set_current_hp(std::make_shared<CurrentHP>(_unit, md->hp));
553 set_current_sp(std::make_shared<CurrentSP>(_unit, md->sp));
554 set_max_hp(std::make_shared<MaxHP>(_unit, md->hp));
555 set_max_sp(std::make_shared<MaxSP>(_unit, md->sp));
556 set_size(std::make_shared<UnitSize>(_unit, (int) md->size));
557 set_base_appearance(std::make_shared<BaseAppearance>(_unit, md->monster_id));
558 set_hair_color(std::make_shared<HairColor>(_unit, md->view.hair_color_id));
559 set_cloth_color(std::make_shared<ClothColor>(_unit, md->view.body_color_id));
560 set_head_top_sprite(std::make_shared<HeadTopSprite>(_unit, md->view.headgear_top_id));
561 set_head_mid_sprite(std::make_shared<HeadMidSprite>(_unit, md->view.headgear_middle_id));
562 set_head_bottom_sprite(std::make_shared<HeadBottomSprite>(_unit, md->view.headgear_bottom_id));
563 set_hair_style(std::make_shared<HairStyle>(_unit, md->view.hair_style_id));
564 set_shield_sprite(std::make_shared<ShieldSprite>(_unit, md->view.shield_id));
565 set_weapon_sprite(std::make_shared<WeaponSprite>(_unit, md->view.weapon_id));
566 set_robe_sprite(std::make_shared<RobeSprite>(_unit, md->view.robe_id));
567 set_body_style(std::make_shared<BodyStyle>(_unit, md->view.body_style_id));
568
569 set_strength(std::make_shared<Strength>(_unit, md->stats.str));
570 set_agility(std::make_shared<Agility>(_unit, md->stats.agi, 0, 0));
571 set_vitality(std::make_shared<Vitality>(_unit, md->stats.vit, 0, 0));
572 set_intelligence(std::make_shared<Intelligence>(_unit, md->stats.int_, 0, 0));
573 set_dexterity(std::make_shared<Dexterity>(_unit, md->stats.dex, 0, 0));
574 set_luck(std::make_shared<Luck>(_unit, md->stats.luk, 0, 0));
575
576 set_soft_def(std::make_shared<SoftDEF>(_unit));
577 soft_def()->set_vitality(vitality().get());
578 soft_def()->set_base_level(base_level().get());
579 // Agility not used for monsters.
580
581 set_hard_def(std::make_shared<HardDEF>(_unit, md->defense));
582
583 set_soft_mdef(std::make_shared<SoftMDEF>(_unit));
584 soft_mdef()->set_base_level(base_level().get());
585 soft_mdef()->set_intelligence(intelligence().get());
586 soft_mdef()->set_dexterity(dexterity().get());
587 soft_mdef()->set_vitality(vitality().get());
588
589 set_hit(std::make_shared<HIT>(_unit));
590 hit()->set_base_level(base_level().get());
591 hit()->set_dexterity(dexterity().get());
592 hit()->set_luck(luck().get());
593
594 set_crit(std::make_shared<CRIT>(_unit));
595 crit()->set_luck(luck().get());
596
597 set_flee(std::make_shared<FLEE>(_unit));
598 flee()->set_base_level(base_level().get());
599 flee()->set_agility(agility().get());
600 flee()->set_luck(luck().get());
601
602 set_attack_range(std::make_shared<AttackRange>(_unit));
603
604 set_attack_delay(std::make_shared<AttackDelay>(_unit));
605
606 set_damage_walk_delay(std::make_shared<DamageWalkDelay>(_unit));
607
608 set_attack_range(std::make_shared<AttackRange>(_unit));
609
610 set_creature_weapon_attack(std::make_shared<MobWeaponAttack>(_unit, md->attack_damage[0]));
611 set_creature_weapon_attack_magic(std::make_shared<MobWeaponAttack>(_unit, md->attack_damage[1]));
612
613 set_creature_attack_damage(std::make_shared<MobAttackDamage>(_unit));
614 creature_attack_damage()->set_strength(strength().get());
615 creature_attack_damage()->set_base_level(base_level().get());
616 creature_attack_damage()->set_creature_weapon_attack(creature_weapon_attack_magic().get());
617
618 set_creature_magic_attack_damage(std::make_shared<MobMagicAttackDamage>(_unit));
619 creature_magic_attack_damage()->set_intelligence(intelligence().get());
620 creature_magic_attack_damage()->set_base_level(base_level().get());
621 creature_magic_attack_damage()->set_creature_weapon_attack(creature_weapon_attack_magic().get());
622
623 set_creature_view_range(std::make_shared<MobViewRange>(_unit, (int) md->view_range));
624 set_creature_chase_range(std::make_shared<MobChaseRange>(_unit, (int) md->chase_range));
625 set_creature_primary_race(std::make_shared<MobPrimaryRace>(_unit, (int) md->primary_race));
626 set_creature_secondary_race(std::make_shared<MobSecondaryRace>(_unit, (int) md->secondary_race));
627 set_creature_element(std::make_shared<MobElement>(_unit, (int) md->element));
628 set_creature_element_level(std::make_shared<MobElementLevel>(_unit, (int) md->element_level));
629 set_creature_mode(std::make_shared<MobMode>(_unit, (int) md->mode));
630
631 calculate(false);
632
633 set_initialized(true);
634 return true;
635}
std::shared_ptr< BaseLevel > base_level()
Definition: Status.hpp:332
void set_size(std::shared_ptr< UnitSize > s)
Definition: Status.hpp:647
void set_base_appearance(std::shared_ptr< BaseAppearance > ba)
Definition: Status.hpp:531
void set_shield_sprite(std::shared_ptr< ShieldSprite > ss)
Definition: Status.hpp:543
void set_body_style(std::shared_ptr< BodyStyle > bs)
Definition: Status.hpp:561
void set_soft_mdef(std::shared_ptr< SoftMDEF > smdef)
Definition: Status.hpp:464
void set_creature_primary_race(std::shared_ptr< MobPrimaryRace > m)
Definition: Status.hpp:704
std::shared_ptr< MobWeaponAttack > creature_weapon_attack_magic()
Definition: Status.hpp:663
void set_hair_color(std::shared_ptr< HairColor > hc)
Definition: Status.hpp:534
void set_soft_def(std::shared_ptr< SoftDEF > sdef)
Definition: Status.hpp:448
void set_hit(std::shared_ptr< HIT > hit)
Definition: Status.hpp:480
void set_head_mid_sprite(std::shared_ptr< HeadMidSprite > hms)
Definition: Status.hpp:552
void set_agility(std::shared_ptr< Agility > agi)
Definition: Status.hpp:197
std::shared_ptr< HIT > hit()
Definition: Status.hpp:479
void set_hard_def(std::shared_ptr< HardDEF > hdef)
Definition: Status.hpp:456
void calculate(bool notify=true)
Definition: Status.cpp:501
void set_damage_walk_delay(std::shared_ptr< DamageWalkDelay > m)
Definition: Status.hpp:607
std::shared_ptr< CRIT > crit()
Definition: Status.hpp:487
void set_current_sp(std::shared_ptr< CurrentSP > sp)
Definition: Status.hpp:325
std::shared_ptr< FLEE > flee()
Definition: Status.hpp:495
void set_attack_delay(std::shared_ptr< AttackDelay > a)
Definition: Status.hpp:599
void set_crit(std::shared_ptr< CRIT > crit)
Definition: Status.hpp:488
void set_cloth_color(std::shared_ptr< ClothColor > cc)
Definition: Status.hpp:537
void set_flee(std::shared_ptr< FLEE > flee)
Definition: Status.hpp:496
void set_head_top_sprite(std::shared_ptr< HeadTopSprite > hts)
Definition: Status.hpp:549
void set_creature_element(std::shared_ptr< MobElement > m)
Definition: Status.hpp:720
void set_robe_sprite(std::shared_ptr< RobeSprite > rs)
Definition: Status.hpp:546
void set_movement_speed(std::shared_ptr< MovementSpeed > speed)
Definition: Status.hpp:381
void set_creature_weapon_attack_magic(std::shared_ptr< MobWeaponAttack > m)
Definition: Status.hpp:664
void set_max_sp(std::shared_ptr< MaxSP > max_sp)
Definition: Status.hpp:309
std::shared_ptr< MobMagicAttackDamage > creature_magic_attack_damage()
Definition: Status.hpp:679
void set_creature_attack_damage(std::shared_ptr< MobAttackDamage > m)
Definition: Status.hpp:672
void set_base_level(std::shared_ptr< BaseLevel > blvl)
Definition: Status.hpp:333
void set_weapon_sprite(std::shared_ptr< WeaponSprite > ws)
Definition: Status.hpp:540
void set_head_bottom_sprite(std::shared_ptr< HeadBottomSprite > hbs)
Definition: Status.hpp:555
void set_max_hp(std::shared_ptr< MaxHP > max_hp)
Definition: Status.hpp:301
std::shared_ptr< SoftMDEF > soft_mdef()
Definition: Status.hpp:463
std::shared_ptr< MobAttackDamage > creature_attack_damage()
Definition: Status.hpp:671
void set_creature_secondary_race(std::shared_ptr< MobSecondaryRace > m)
Definition: Status.hpp:712
void set_initialized(bool b)
Definition: Status.hpp:746
void set_current_hp(std::shared_ptr< CurrentHP > hp)
Definition: Status.hpp:317
void set_dexterity(std::shared_ptr< Dexterity > dex)
Definition: Status.hpp:213
void set_creature_magic_attack_damage(std::shared_ptr< MobMagicAttackDamage > m)
Definition: Status.hpp:680
void set_creature_view_range(std::shared_ptr< MobViewRange > m)
Definition: Status.hpp:688
void set_hair_style(std::shared_ptr< HairStyle > hs)
Definition: Status.hpp:558
void set_creature_mode(std::shared_ptr< MobMode > m)
Definition: Status.hpp:736
void set_creature_weapon_attack(std::shared_ptr< MobWeaponAttack > m)
Definition: Status.hpp:656
void set_strength(std::shared_ptr< Strength > str)
Definition: Status.hpp:189
void set_creature_chase_range(std::shared_ptr< MobChaseRange > m)
Definition: Status.hpp:696
std::shared_ptr< SoftDEF > soft_def()
Definition: Status.hpp:447
void set_intelligence(std::shared_ptr< Intelligence > int_)
Definition: Status.hpp:221
void set_attack_range(std::shared_ptr< AttackRange > m)
Definition: Status.hpp:405
void set_vitality(std::shared_ptr< Vitality > vit)
Definition: Status.hpp:205
void set_creature_element_level(std::shared_ptr< MobElementLevel > m)
Definition: Status.hpp:728
void set_luck(std::shared_ptr< Luck > luck)
Definition: Status.hpp:229

References _unit, agility(), base_level(), calculate(), creature_attack_damage(), creature_magic_attack_damage(), creature_weapon_attack_magic(), crit(), dexterity(), flee(), hit(), intelligence(), luck(), set_agility(), set_attack_delay(), set_attack_range(), set_base_appearance(), set_base_level(), set_body_style(), set_cloth_color(), set_creature_attack_damage(), set_creature_chase_range(), set_creature_element(), set_creature_element_level(), set_creature_magic_attack_damage(), set_creature_mode(), set_creature_primary_race(), set_creature_secondary_race(), set_creature_view_range(), set_creature_weapon_attack(), set_creature_weapon_attack_magic(), set_crit(), set_current_hp(), set_current_sp(), set_damage_walk_delay(), set_dexterity(), set_flee(), set_hair_color(), set_hair_style(), set_hard_def(), set_head_bottom_sprite(), set_head_mid_sprite(), set_head_top_sprite(), set_hit(), set_initialized(), set_intelligence(), set_luck(), set_max_hp(), set_max_sp(), set_movement_speed(), set_robe_sprite(), set_shield_sprite(), set_size(), set_soft_def(), set_soft_mdef(), set_strength(), set_vitality(), set_weapon_sprite(), soft_def(), soft_mdef(), strength(), and vitality().

◆ initialize() [2/3]

bool Status::initialize ( std::shared_ptr< Horizon::Zone::Units::NPC npc)
482{
483 set_movement_speed(std::make_shared<MovementSpeed>(_unit, 100));
484 set_base_level(std::make_shared<BaseLevel>(_unit, 1));
485
486 set_current_hp(std::make_shared<CurrentHP>(_unit, 1));
487 set_current_sp(std::make_shared<CurrentSP>(_unit, 1));
488 set_max_hp(std::make_shared<MaxHP>(_unit, 1));
489 set_max_sp(std::make_shared<MaxSP>(_unit, 1));
490 set_hair_style(std::make_shared<HairStyle>(_unit, 0));
491 set_hair_color(std::make_shared<HairColor>(_unit, 0));
492 set_robe_sprite(std::make_shared<RobeSprite>(_unit, 0));
493 set_base_appearance(std::make_shared<BaseAppearance>(_unit, npc->job_id()));
494
495 calculate(false);
496
497 set_initialized(true);
498 return true;
499}

References _unit, calculate(), set_base_appearance(), set_base_level(), set_current_hp(), set_current_sp(), set_hair_color(), set_hair_style(), set_initialized(), set_max_hp(), set_max_sp(), set_movement_speed(), and set_robe_sprite().

+ Here is the call graph for this function:

◆ initialize() [3/3]

bool Status::initialize ( std::shared_ptr< Horizon::Zone::Units::Player player)
258{
259 load(player);
260
261 std::shared_ptr<const job_config_data> job = player->job();
262
263 if (job == nullptr) {
264 HLog(error) << "Status::initialize_compound_attributes: Job was null.";
265 return false;
266 }
267
268 set_attack_range(std::make_shared<AttackRange>(_unit));
269
270 set_max_weight(std::make_shared<MaxWeight>(_unit, job->max_weight));
271 max_weight()->set_strength(strength().get());
272
273 // Calculated when inventory is synced.
274 set_current_weight(std::make_shared<CurrentWeight>(_unit, 0));
275
276 set_status_atk(std::make_shared<StatusATK>(_unit));
277 status_atk()->set_base_level(base_level().get());
278 status_atk()->set_strength(strength().get());
279 status_atk()->set_dexterity(dexterity().get());
280 status_atk()->set_luck(luck().get());
281
282 set_equip_atk(std::make_shared<EquipATK>(_unit));
283 equip_atk()->set_strength(strength().get());
284 equip_atk()->set_dexterity(dexterity().get());
285
286 set_status_matk(std::make_shared<StatusMATK>(_unit));
287 status_matk()->set_base_level(base_level().get());
288 status_matk()->set_intelligence(intelligence().get());
289 status_matk()->set_dexterity(dexterity().get());
290 status_matk()->set_luck(luck().get());
291
292 set_equip_matk(std::make_shared<EquipMATK>(_unit));
293 set_soft_def(std::make_shared<SoftDEF>(_unit));
294 soft_def()->set_vitality(vitality().get());
295 soft_def()->set_base_level(base_level().get());
296 soft_def()->set_agility(agility().get());
297
298 set_hard_def(std::make_shared<HardDEF>(_unit));
299
300 set_soft_mdef(std::make_shared<SoftMDEF>(_unit));
301 soft_mdef()->set_base_level(base_level().get());
302 soft_mdef()->set_intelligence(intelligence().get());
303 soft_mdef()->set_dexterity(dexterity().get());
304 soft_mdef()->set_vitality(vitality().get());
305
306 set_hit(std::make_shared<HIT>(_unit));
307 hit()->set_base_level(base_level().get());
308 hit()->set_dexterity(dexterity().get());
309 hit()->set_luck(luck().get());
310
311 set_crit(std::make_shared<CRIT>(_unit));
312 crit()->set_luck(luck().get());
313
314 set_flee(std::make_shared<FLEE>(_unit));
315 flee()->set_base_level(base_level().get());
316 flee()->set_agility(agility().get());
317 flee()->set_luck(luck().get());
318
319 set_attack_speed(std::make_shared<AttackSpeed>(_unit));
320 attack_speed()->set_base_level(base_level().get());
321 attack_speed()->set_agility(agility().get());
322 attack_speed()->set_dexterity(dexterity().get());
323
324 set_hp_regeneration(std::make_shared<HPRegeneration>(_unit));
325 hp_regeneration()->set_vitality(vitality().get());
326 hp_regeneration()->set_max_hp(max_hp().get());
327
328 set_sp_regeneration(std::make_shared<SPRegeneration>(_unit));
329 sp_regeneration()->set_intelligence(intelligence().get());
330 sp_regeneration()->set_max_sp(max_sp().get());
331
332 // Register Status Observables
333 strength()->register_observable(strength().get());
334 agility()->register_observable(agility().get());
335 vitality()->register_observable(vitality().get());
336 intelligence()->register_observable(intelligence().get());
337 dexterity()->register_observable(dexterity().get());
338 luck()->register_observable(luck().get());
339 base_experience()->register_observable(base_experience().get());
340 job_experience()->register_observable(job_experience().get());
341 base_level()->register_observable(base_level().get());
342 job_level()->register_observable(job_level().get());
343 max_hp()->register_observable(max_hp().get());
344 max_sp()->register_observable(max_sp().get());
345 attack_speed()->register_observable(attack_speed().get());
346
347 set_base_attack(std::make_shared<BaseAttack>(_unit));
348
349 // Register Status Observers
350 strength()->register_observers(
351 strength_cost().get(),
352 max_weight().get(),
353 status_atk().get(),
354 equip_atk().get(),
355 base_attack().get());
356
357 agility()->register_observers(
358 agility_cost().get(),
359 flee().get(),
360 attack_speed().get(),
361 soft_def().get());
362
363 vitality()->register_observers(
364 vitality_cost().get(),
365 soft_def().get(),
366 soft_mdef().get(),
367 max_hp().get(),
368 hp_regeneration().get());
369
370 intelligence()->register_observers(
371 intelligence_cost().get(),
372 max_sp().get(),
373 status_matk().get(),
374 soft_mdef().get(),
375 sp_regeneration().get());
376
377 dexterity()->register_observers(
378 dexterity_cost().get(),
379 status_atk().get(),
380 equip_atk().get(),
381 status_matk().get(),
382 soft_mdef().get(),
383 hit().get(),
384 attack_speed().get(),
385 base_attack().get());
386
387 luck()->register_observers(
388 luck_cost().get(),
389 status_atk().get(),
390 status_matk().get(),
391 hit().get(),
392 crit().get(),
393 flee().get(),
394 base_attack().get());
395
396 base_level()->register_observers(
397 status_point().get(),
398 max_hp().get(),
399 max_sp().get(),
400 next_base_experience().get(),
401 status_atk().get(),
402 status_matk().get(),
403 soft_def().get(),
404 soft_mdef().get(),
405 hit().get(),
406 flee().get(),
407 attack_speed().get(),
408 base_attack().get());
409
410 job_level()->register_observers(
411 skill_point().get(),
412 next_job_experience().get());
413
414 max_hp()->register_observers(
415 hp_regeneration().get());
416
417 max_sp()->register_observers(
418 sp_regeneration().get());
419
420 base_experience()->register_observers(base_level().get());
421
422 job_experience()->register_observers(job_level().get());
423
424 /* Combat Status Attributes */
425 set_attack_delay(std::make_shared<AttackDelay>(_unit));
426 attack_delay()->set_attack_speed(attack_speed().get());
427
428 attack_speed()->register_observers(
429 attack_delay().get());
430
431 set_damage_walk_delay(std::make_shared<DamageWalkDelay>(_unit));
432 damage_walk_delay()->set_agility(agility().get());
433
434 base_attack()->set_strength(strength().get());
435 base_attack()->set_dexterity(dexterity().get());
436 base_attack()->set_luck(luck().get());
437 base_attack()->set_base_level(base_level().get());
438
439 set_weapon_attack_left(std::make_shared<WeaponAttackLeft>(_unit));
440 weapon_attack_left()->register_observable(weapon_attack_left().get());
441
442 set_weapon_attack_right(std::make_shared<WeaponAttackRight>(_unit));
443 weapon_attack_right()->register_observable(weapon_attack_right().get());
444
445 set_weapon_attack_combined(std::make_shared<WeaponAttackCombined>(_unit));
446 weapon_attack_combined()->set_weapon_attack_left(weapon_attack_left().get());
447 weapon_attack_combined()->set_weapon_attack_right(weapon_attack_right().get());
448
449 weapon_attack_left()->register_observers(weapon_attack_combined().get());
450 weapon_attack_right()->register_observers(weapon_attack_combined().get());
451
452 calculate(false);
453
454 player->get_session()->clif()->notify_initial_status();
455
456 set_initialized(true);
457
458 current_hp()->add_periodic_change(
460 [player, this](s_attribute_change_values &this_) {
461 player->get_session()->clif()->notify_recovery(ZC_NOTIFY_RECOVERY_HP, this_.get_live_attribute().get_attribute()->total());
462 }
463 ),
464 0,
465 player->map()->container()->game_config().get_natural_heal_hp_interval(),
466 "natural_hp_regen");
467
468 current_sp()->add_periodic_change(
470 [player, this](s_attribute_change_values &this_) {
471 player->get_session()->clif()->notify_recovery(ZC_NOTIFY_RECOVERY_SP, this_.get_live_attribute().get_attribute()->total());
472 }
473 ),
474 0,
475 player->map()->container()->game_config().get_natural_heal_sp_interval(),
476 "natural_sp_regen");
477
478 return true;
479}
@ ZC_NOTIFY_RECOVERY_HP
Definition: ClientDefinitions.hpp:914
@ ZC_NOTIFY_RECOVERY_SP
Definition: ClientDefinitions.hpp:915
#define HLog(type)
Definition: Logger.hpp:122
virtual int32_t total() const
Definition: Attribute.hpp:289
std::shared_ptr< WeaponAttackCombined > weapon_attack_combined()
Definition: Status.hpp:638
std::shared_ptr< MaxWeight > max_weight()
Definition: Status.hpp:388
std::shared_ptr< WeaponAttackLeft > weapon_attack_left()
Definition: Status.hpp:622
std::shared_ptr< WeaponAttackRight > weapon_attack_right()
Definition: Status.hpp:630
std::shared_ptr< MaxSP > max_sp()
Definition: Status.hpp:308
void set_base_attack(std::shared_ptr< BaseAttack > b)
Definition: Status.hpp:615
void set_max_weight(std::shared_ptr< MaxWeight > mw)
Definition: Status.hpp:389
void set_hp_regeneration(std::shared_ptr< HPRegeneration > hpr)
Definition: Status.hpp:512
std::shared_ptr< AttackSpeed > attack_speed()
Definition: Status.hpp:503
void set_attack_speed(std::shared_ptr< AttackSpeed > aspd)
Definition: Status.hpp:504
std::shared_ptr< NextJobExperience > next_job_experience()
Definition: Status.hpp:372
void set_weapon_attack_right(std::shared_ptr< WeaponAttackRight > w)
Definition: Status.hpp:631
void set_status_atk(std::shared_ptr< StatusATK > satk)
Definition: Status.hpp:416
std::shared_ptr< JobExperience > job_experience()
Definition: Status.hpp:356
bool load(std::shared_ptr< Horizon::Zone::Units::Player > pl)
Definition: Status.cpp:637
std::shared_ptr< CurrentSP > current_sp()
Definition: Status.hpp:324
void set_status_matk(std::shared_ptr< StatusMATK > smatk)
Definition: Status.hpp:432
void set_sp_regeneration(std::shared_ptr< SPRegeneration > spr)
Definition: Status.hpp:520
void set_current_weight(std::shared_ptr< CurrentWeight > cw)
Definition: Status.hpp:397
std::shared_ptr< SPRegeneration > sp_regeneration()
Definition: Status.hpp:519
std::shared_ptr< CurrentHP > current_hp()
Definition: Status.hpp:316
void set_equip_matk(std::shared_ptr< EquipMATK > ematk)
Definition: Status.hpp:440
std::shared_ptr< BaseExperience > base_experience()
Definition: Status.hpp:348
void set_weapon_attack_left(std::shared_ptr< WeaponAttackLeft > w)
Definition: Status.hpp:623
std::shared_ptr< StatusATK > status_atk()
SubAttributes.
Definition: Status.hpp:415
std::shared_ptr< SkillPoint > skill_point()
Definition: Status.hpp:292
std::shared_ptr< DamageWalkDelay > damage_walk_delay()
Definition: Status.hpp:606
void set_weapon_attack_combined(std::shared_ptr< WeaponAttackCombined > w)
Definition: Status.hpp:639
std::shared_ptr< BaseAttack > base_attack()
Definition: Status.hpp:614
std::shared_ptr< NextBaseExperience > next_base_experience()
Definition: Status.hpp:364
std::shared_ptr< EquipATK > equip_atk()
Definition: Status.hpp:423
std::shared_ptr< HPRegeneration > hp_regeneration()
Definition: Status.hpp:511
void set_equip_atk(std::shared_ptr< EquipATK > eatk)
Definition: Status.hpp:424
std::shared_ptr< StatusMATK > status_matk()
Definition: Status.hpp:431
std::shared_ptr< AttackDelay > attack_delay()
Combat Status.
Definition: Status.hpp:598
std::shared_ptr< JobLevel > job_level()
Definition: Status.hpp:340
std::shared_ptr< MaxHP > max_hp()
Definition: Status.hpp:300
Attribute * get_attribute()
Definition: Attribute.hpp:102
ApplyLiveAttribute get_live_attribute()
Definition: Attribute.hpp:148

References _unit, agility(), agility_cost(), attack_delay(), attack_speed(), base_attack(), base_experience(), base_level(), calculate(), crit(), current_hp(), current_sp(), damage_walk_delay(), dexterity(), dexterity_cost(), equip_atk(), flee(), Horizon::Zone::Traits::s_attribute_change_values::ApplyLiveAttribute::get_attribute(), Horizon::Zone::Traits::s_attribute_change_values::get_live_attribute(), hit(), HLog, hp_regeneration(), intelligence(), intelligence_cost(), job_experience(), job_level(), load(), luck(), luck_cost(), max_hp(), max_sp(), max_weight(), next_base_experience(), next_job_experience(), set_attack_delay(), set_attack_range(), set_attack_speed(), set_base_attack(), set_crit(), set_current_weight(), set_damage_walk_delay(), set_equip_atk(), set_equip_matk(), set_flee(), set_hard_def(), set_hit(), set_hp_regeneration(), set_initialized(), set_max_weight(), set_soft_def(), set_soft_mdef(), set_sp_regeneration(), set_status_atk(), set_status_matk(), set_weapon_attack_combined(), set_weapon_attack_left(), set_weapon_attack_right(), skill_point(), soft_def(), soft_mdef(), sp_regeneration(), status_atk(), status_matk(), status_point(), strength(), strength_cost(), Horizon::Zone::Traits::Attribute::total(), vitality(), vitality_cost(), weapon_attack_combined(), weapon_attack_left(), weapon_attack_right(), ZC_NOTIFY_RECOVERY_HP, and ZC_NOTIFY_RECOVERY_SP.

◆ intelligence()

std::shared_ptr< Intelligence > Horizon::Zone::Traits::Status::intelligence ( )
inline
220{ return _int; }
std::shared_ptr< Intelligence > _int
Definition: Status.hpp:1796

References _int.

Referenced by get_status_base(), increase_status_point(), initialize(), load(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ intelligence_cost()

std::shared_ptr< IntelligencePointCost > Horizon::Zone::Traits::Status::intelligence_cost ( )
inline
268{ return _int_cost; }
std::shared_ptr< IntelligencePointCost > _int_cost
Definition: Status.hpp:1802

References _int_cost.

Referenced by increase_status_point(), and initialize().

+ Here is the caller graph for this function:

◆ is_initialized()

bool Horizon::Zone::Traits::Status::is_initialized ( )
inline
745{ return _is_initialized; }
bool _is_initialized
Definition: Status.hpp:1787

References _is_initialized.

Referenced by recalculate(), and update().

+ Here is the caller graph for this function:

◆ job_experience()

std::shared_ptr< JobExperience > Horizon::Zone::Traits::Status::job_experience ( )
inline
356{ return _job_exp; }
std::shared_ptr< JobExperience > _job_exp
Definition: Status.hpp:1814

References _job_exp.

Referenced by initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ job_level()

std::shared_ptr< JobLevel > Horizon::Zone::Traits::Status::job_level ( )
inline
340{ return _job_level; }
std::shared_ptr< JobLevel > _job_level
Definition: Status.hpp:1812

References _job_level.

Referenced by initialize(), load(), on_job_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ load()

bool Status::load ( std::shared_ptr< Horizon::Zone::Units::Player pl)

Main Attributes.

Misc

638{
639 std::shared_ptr<boost::mysql::tcp_ssl_connection> conn = sZone->get_database_connection();
640
641 try {
642 boost::mysql::statement stmt = conn->prepare_statement("SELECT `job_id`, `strength`, `agility`, `vitality`, `intelligence`, `dexterity`, "
643 "`luck`, `status_points`, `skill_points`, `hp`, `sp`, `maximum_hp`, `maximum_sp`, `base_level`, `job_level`, `base_experience`, `job_experience`, "
644 "`hair_color_id`, `cloth_color_id`, `head_top_view_id`, `head_mid_view_id`, `head_bottom_view_id`, `hair_style_id`, `shield_view_id`, `weapon_view_id`, `robe_view_id`, "
645 "`body_id`, `zeny`, `virtue`, `honor`, `manner` FROM `character_status` WHERE `id` = ?");
646 auto b1 = stmt.bind(pl->character()._character_id);
647 boost::mysql::results results;
648 conn->execute(b1, results);
649
650 if (results.rows().empty()) {
651 HLog(error) << "Error loading status, character with ID " << pl->character()._character_id << " does not exist.";
652 return false;
653 }
654
655 auto r = results.rows()[0];
656
657 int32_t job_id = r[0].get_uint64();
658
659 std::shared_ptr<const job_config_data> job = JobDB->get_job_by_id(job_id);
660 std::shared_ptr<const exp_group_data> bexpg = ExpDB->get_exp_group(job->base_exp_group, EXP_GROUP_TYPE_BASE);
661 std::shared_ptr<const exp_group_data> jexpg = ExpDB->get_exp_group(job->job_exp_group, EXP_GROUP_TYPE_JOB);
662
663 pl->set_job_id(job_id);
664 pl->set_job(job);
665
666 int32_t str = r[1].as_uint64();
667 int32_t agi = r[2].as_uint64();
668 int32_t vit = r[3].as_uint64();
669 int32_t _int = r[4].as_uint64();
670 int32_t dex = r[5].as_uint64();
671 int32_t luk = r[6].as_uint64();
672
676 set_strength(std::make_shared<Strength>(_unit, str));
677 set_agility(std::make_shared<Agility>(_unit, agi, 0, 0));
678 set_vitality(std::make_shared<Vitality>(_unit, vit, 0, 0));
679 set_intelligence(std::make_shared<Intelligence>(_unit, _int, 0, 0));
680 set_dexterity(std::make_shared<Dexterity>(_unit, dex, 0, 0));
681 set_luck(std::make_shared<Luck>(_unit, luk, 0, 0));
682
683 set_size(std::make_shared<UnitSize>(_unit, (int)ESZ_MEDIUM));
684
685 set_strength_cost(std::make_shared<StrengthPointCost>(_unit, get_required_statpoints(str, str + 1)));
686 set_agility_cost(std::make_shared<AgilityPointCost>(_unit, get_required_statpoints(agi, agi + 1)));
687 set_vitality_cost(std::make_shared<VitalityPointCost>(_unit, get_required_statpoints(vit, vit + 1)));
688 set_intelligence_cost(std::make_shared<IntelligencePointCost>(_unit, get_required_statpoints(_int, _int + 1)));
689 set_dexterity_cost(std::make_shared<DexterityPointCost>(_unit, get_required_statpoints(dex, dex + 1)));
690 set_luck_cost(std::make_shared<LuckPointCost>(_unit, get_required_statpoints(luk, luk + 1)));
691
692 set_status_point(std::make_shared<StatusPoint>(_unit, uint32_t(r[7].as_uint64())));
693 set_skill_point(std::make_shared<SkillPoint>(_unit, uint32_t(r[8].as_uint64())));
694
695 set_current_hp(std::make_shared<CurrentHP>(_unit, uint32_t(r[9].as_uint64())));
696 set_current_sp(std::make_shared<CurrentSP>(_unit, uint32_t(r[10].as_uint64())));
697
698 uint32_t base_level_ = uint32_t(r[13].as_uint64());
699 uint32_t job_level = uint32_t(r[14].as_uint64());
700
701 set_base_level(std::make_shared<BaseLevel>(_unit, base_level_));
702 set_job_level(std::make_shared<JobLevel>(_unit, job_level));
703
704 // Max HP/SP calculated after base_level is set.
705 set_max_hp(std::make_shared<MaxHP>(_unit, uint32_t(r[11].as_uint64())));
706 max_hp()->set_base_level(base_level().get());
707 max_hp()->set_vitality(vitality().get());
708 set_max_sp(std::make_shared<MaxSP>(_unit, uint32_t(r[12].as_uint64())));
709 max_sp()->set_intelligence(intelligence().get());
710 max_sp()->set_base_level(base_level().get());
711
712 set_base_experience(std::make_shared<BaseExperience>(_unit, uint64_t(r[15].as_uint64())));
713 set_job_experience(std::make_shared<JobExperience>(_unit, uint64_t(r[16].as_uint64())));
714 set_next_base_experience(std::make_shared<NextBaseExperience>(_unit, base_level_ == bexpg->max_level ? 0 : bexpg->exp[base_level_ - 1]));
715 set_next_job_experience(std::make_shared<NextJobExperience>(_unit, job_level == jexpg->max_level ? 0 : jexpg->exp[job_level - 1]));
716 set_movement_speed(std::make_shared<MovementSpeed>(_unit, DEFAULT_MOVEMENT_SPEED));
717
718 set_base_appearance(std::make_shared<BaseAppearance>(_unit, job_id));
719 set_hair_color(std::make_shared<HairColor>(_unit, uint32_t(r[17].as_uint64())));
720 set_cloth_color(std::make_shared<ClothColor>(_unit, uint32_t(r[18].as_uint64())));
721 set_head_top_sprite(std::make_shared<HeadTopSprite>(_unit, uint32_t(r[19].as_uint64())));
722 set_head_mid_sprite(std::make_shared<HeadMidSprite>(_unit, uint32_t(r[20].as_uint64())));
723 set_head_bottom_sprite(std::make_shared<HeadBottomSprite>(_unit, uint32_t(r[21].as_uint64())));
724 set_hair_style(std::make_shared<HairStyle>(_unit, uint32_t(r[22].as_uint64())));
725 set_shield_sprite(std::make_shared<ShieldSprite>(_unit, uint32_t(r[23].as_uint64())));
726 set_weapon_sprite(std::make_shared<WeaponSprite>(_unit, uint32_t(r[24].as_uint64())));
727 set_robe_sprite(std::make_shared<RobeSprite>(_unit, uint32_t(r[25].as_uint64())));
728 set_body_style(std::make_shared<BodyStyle>(_unit, uint32_t(r[26].as_uint64())));
729
733 set_zeny(std::make_shared<Zeny>(_unit, int32_t(r[27].as_uint64())));
734 set_virtue(std::make_shared<Virtue>(_unit, int32_t(r[28].as_int64())));
735 set_honor(std::make_shared<Honor>(_unit, int32_t(r[29].as_uint64())));
736 set_manner(std::make_shared<Manner>(_unit, int32_t(r[30].as_int64())));
737
738 HLog(info) << "Status loaded for character " << pl->name() << "(" << pl->character()._character_id << ").";
739
740 }
741 catch (boost::mysql::error_with_diagnostics &error) {
742 HLog(error) << "Status::load:" << error.what();
743 return false;
744 }
745 catch (std::exception& error) {
746 HLog(error) << "Status::load:" << error.what();
747 return false;
748 }
749
750 return true;
751}
#define ExpDB
Definition: ExpDB.hpp:93
#define DEFAULT_MOVEMENT_SPEED
Definition: Horizon.hpp:58
#define JobDB
Definition: JobDB.hpp:87
@ ESZ_MEDIUM
Definition: UnitDefinitions.hpp:38
#define sZone
Definition: Zone.hpp:247
void set_job_experience(std::shared_ptr< JobExperience > jexp)
Definition: Status.hpp:357
void set_next_job_experience(std::shared_ptr< NextJobExperience > njexp)
Definition: Status.hpp:373
void set_intelligence_cost(std::shared_ptr< IntelligencePointCost > int_)
Definition: Status.hpp:269
void set_dexterity_cost(std::shared_ptr< DexterityPointCost > dex)
Definition: Status.hpp:261
void set_base_experience(std::shared_ptr< BaseExperience > bexp)
Definition: Status.hpp:349
void set_job_level(std::shared_ptr< JobLevel > jlvl)
Definition: Status.hpp:341
void set_strength_cost(std::shared_ptr< StrengthPointCost > str)
Definition: Status.hpp:237
void set_skill_point(std::shared_ptr< SkillPoint > sk)
Definition: Status.hpp:293
void set_agility_cost(std::shared_ptr< AgilityPointCost > agi)
Definition: Status.hpp:245
void set_honor(std::shared_ptr< Honor > h)
Definition: Status.hpp:572
void set_manner(std::shared_ptr< Manner > m)
Definition: Status.hpp:580
void set_luck_cost(std::shared_ptr< LuckPointCost > luck)
Definition: Status.hpp:277
void set_zeny(std::shared_ptr< Zeny > z)
Definition: Status.hpp:564
void set_virtue(std::shared_ptr< Virtue > v)
Definition: Status.hpp:588
void set_vitality_cost(std::shared_ptr< VitalityPointCost > vit)
Definition: Status.hpp:253
void set_status_point(std::shared_ptr< StatusPoint > st)
Definition: Status.hpp:285
void set_next_base_experience(std::shared_ptr< NextBaseExperience > nbexp)
Definition: Status.hpp:365
@ EXP_GROUP_TYPE_JOB
Definition: ExpDB.hpp:52
@ EXP_GROUP_TYPE_BASE
Definition: ExpDB.hpp:51

References _int, _unit, base_level(), DEFAULT_MOVEMENT_SPEED, ESZ_MEDIUM, Horizon::Zone::EXP_GROUP_TYPE_BASE, Horizon::Zone::EXP_GROUP_TYPE_JOB, ExpDB, get_required_statpoints(), HLog, intelligence(), job_level(), JobDB, max_hp(), max_sp(), set_agility(), set_agility_cost(), set_base_appearance(), set_base_experience(), set_base_level(), set_body_style(), set_cloth_color(), set_current_hp(), set_current_sp(), set_dexterity(), set_dexterity_cost(), set_hair_color(), set_hair_style(), set_head_bottom_sprite(), set_head_mid_sprite(), set_head_top_sprite(), set_honor(), set_intelligence(), set_intelligence_cost(), set_job_experience(), set_job_level(), set_luck(), set_luck_cost(), set_manner(), set_max_hp(), set_max_sp(), set_movement_speed(), set_next_base_experience(), set_next_job_experience(), set_robe_sprite(), set_shield_sprite(), set_size(), set_skill_point(), set_status_point(), set_strength(), set_strength_cost(), set_virtue(), set_vitality(), set_vitality_cost(), set_weapon_sprite(), set_zeny(), sZone, and vitality().

Referenced by initialize().

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

◆ luck()

std::shared_ptr< Luck > Horizon::Zone::Traits::Status::luck ( )
inline
228{ return _luk; }
std::shared_ptr< Luck > _luk
Definition: Status.hpp:1798

References _luk.

Referenced by get_status_base(), increase_status_point(), initialize(), save(), set_luck(), set_luck_cost(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ luck_cost()

std::shared_ptr< LuckPointCost > Horizon::Zone::Traits::Status::luck_cost ( )
inline
276{ return _luk_cost; }
std::shared_ptr< LuckPointCost > _luk_cost
Definition: Status.hpp:1804

References _luk_cost.

Referenced by increase_status_point(), and initialize().

+ Here is the caller graph for this function:

◆ manner()

std::shared_ptr< Manner > Horizon::Zone::Traits::Status::manner ( )
inline
579{ return _manner; }
std::shared_ptr< Manner > _manner
Definition: Status.hpp:1851

References _manner.

Referenced by save().

+ Here is the caller graph for this function:

◆ max_hp()

std::shared_ptr< MaxHP > Horizon::Zone::Traits::Status::max_hp ( )
inline
300{ return _max_hp; }
std::shared_ptr< MaxHP > _max_hp
Definition: Status.hpp:1807

References _max_hp.

Referenced by initialize(), load(), on_job_changed(), save(), set_max_hp(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ max_sp()

std::shared_ptr< MaxSP > Horizon::Zone::Traits::Status::max_sp ( )
inline
308{ return _max_sp; }
std::shared_ptr< MaxSP > _max_sp
Definition: Status.hpp:1808

References _max_sp.

Referenced by initialize(), load(), on_job_changed(), save(), set_max_sp(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ max_weight()

std::shared_ptr< MaxWeight > Horizon::Zone::Traits::Status::max_weight ( )
inline
388{ return _max_weight; }
std::shared_ptr< MaxWeight > _max_weight
Definition: Status.hpp:1818

References _max_weight.

Referenced by initialize(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ movement_speed()

std::shared_ptr< MovementSpeed > Horizon::Zone::Traits::Status::movement_speed ( )
inline
380{ return _movement_speed; }
std::shared_ptr< MovementSpeed > _movement_speed
Definition: Status.hpp:1817

References _movement_speed.

Referenced by Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ next_base_experience()

std::shared_ptr< NextBaseExperience > Horizon::Zone::Traits::Status::next_base_experience ( )
inline
364{ return _next_base_exp; }
std::shared_ptr< NextBaseExperience > _next_base_exp
Definition: Status.hpp:1815

References _next_base_exp.

Referenced by initialize(), on_job_changed(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ next_job_experience()

std::shared_ptr< NextJobExperience > Horizon::Zone::Traits::Status::next_job_experience ( )
inline
372{ return _next_job_exp; }
std::shared_ptr< NextJobExperience > _next_job_exp
Definition: Status.hpp:1816

References _next_job_exp.

Referenced by initialize(), on_job_changed(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ on_equipment_changed()

void Status::on_equipment_changed ( bool  equipped,
std::shared_ptr< const item_entry_data item 
)
789{
790 if (item == nullptr)
791 return;
792
793 if (item->type == IT_TYPE_WEAPON) {
794 status_atk()->set_weapon_type(equipped ? item->config->sub_type.weapon_t : IT_WT_FIST);
795 equip_atk()->on_weapon_changed();
796
797 weapon_attack_left()->on_equipment_changed();
798 weapon_attack_right()->on_equipment_changed();
799
800 if ((item->config->equip_location_mask & IT_EQPM_HAND_L) == IT_EQPM_HAND_L)
801 weapon_sprite()->set_left(equipped ? item->item_id : 0);
802 else if ((item->config->equip_location_mask & IT_EQPM_HAND_R) == IT_EQPM_HAND_R)
803 weapon_sprite()->set(equipped ? item->item_id : 0);
804 } else if (item->type == IT_TYPE_ARMOR) {
805 if ((item->config->equip_location_mask & IT_EQPM_HEAD_TOP) == IT_EQPM_HEAD_TOP)
806 head_top_sprite()->set(equipped ? item->config->sprite_id : 0);
807 else if ((item->config->equip_location_mask & IT_EQPM_HEAD_MID) == IT_EQPM_HEAD_MID)
808 head_mid_sprite()->set(equipped ? item->config->sprite_id : 0);
809 else if ((item->config->equip_location_mask & IT_EQPM_HEAD_LOW) == IT_EQPM_HEAD_LOW)
810 head_bottom_sprite()->set(equipped ? item->config->sprite_id : 0);
811 else if ((item->config->equip_location_mask & IT_EQPM_HAND_L) == IT_EQPM_HAND_L)
812 shield_sprite()->set(equipped ? item->config->sprite_id : 0);
813 else if ((item->config->equip_location_mask & IT_EQPM_GARMENT) == IT_EQPM_GARMENT)
814 robe_sprite()->set(equipped ? item->config->sprite_id : 0);
815 }
816
817 attack_speed()->on_equipment_changed();
818 attack_range()->on_equipment_changed();
819 base_attack()->on_equipment_changed();
820 equip_matk()->on_equipment_changed();
821}
@ IT_TYPE_ARMOR
Definition: ItemDefinitions.hpp:259
@ IT_TYPE_WEAPON
Definition: ItemDefinitions.hpp:258
@ IT_EQPM_HEAD_MID
Definition: ItemDefinitions.hpp:178
@ IT_EQPM_HAND_R
Definition: ItemDefinitions.hpp:170
@ IT_EQPM_HEAD_LOW
Definition: ItemDefinitions.hpp:169
@ IT_EQPM_HEAD_TOP
Definition: ItemDefinitions.hpp:177
@ IT_EQPM_HAND_L
Definition: ItemDefinitions.hpp:174
@ IT_EQPM_GARMENT
Definition: ItemDefinitions.hpp:171
@ IT_WT_FIST
Bare hands.
Definition: ItemDefinitions.hpp:100
std::shared_ptr< WeaponSprite > weapon_sprite()
Definition: Status.hpp:539
std::shared_ptr< HeadTopSprite > head_top_sprite()
Definition: Status.hpp:548
std::shared_ptr< RobeSprite > robe_sprite()
Definition: Status.hpp:545
std::shared_ptr< AttackRange > attack_range()
Definition: Status.hpp:404
std::shared_ptr< HeadBottomSprite > head_bottom_sprite()
Definition: Status.hpp:554
std::shared_ptr< ShieldSprite > shield_sprite()
Definition: Status.hpp:542
std::shared_ptr< EquipMATK > equip_matk()
Definition: Status.hpp:439
std::shared_ptr< HeadMidSprite > head_mid_sprite()
Definition: Status.hpp:551

References attack_range(), attack_speed(), base_attack(), equip_atk(), equip_matk(), head_bottom_sprite(), head_mid_sprite(), head_top_sprite(), IT_EQPM_GARMENT, IT_EQPM_HAND_L, IT_EQPM_HAND_R, IT_EQPM_HEAD_LOW, IT_EQPM_HEAD_MID, IT_EQPM_HEAD_TOP, IT_TYPE_ARMOR, IT_TYPE_WEAPON, IT_WT_FIST, robe_sprite(), shield_sprite(), status_atk(), weapon_attack_left(), weapon_attack_right(), and weapon_sprite().

+ Here is the call graph for this function:

◆ on_job_changed()

void Status::on_job_changed ( uint32_t  job_id)
824{
825 base_appearance()->set(job_id);
826 max_hp()->compute();
827 max_sp()->compute();
828 next_base_experience()->compute();
829 next_job_experience()->compute();
830 attack_speed()->compute();
831 base_level()->compute();
832 job_level()->compute();
833}
std::shared_ptr< BaseAppearance > base_appearance()
Appearance.
Definition: Status.hpp:530

References attack_speed(), base_appearance(), base_level(), job_level(), max_hp(), max_sp(), next_base_experience(), and next_job_experience().

+ Here is the call graph for this function:

◆ recalculate()

bool Status::recalculate ( bool  notify = true)
510{
511 if (!is_initialized()) {
512 HLog(error) << "Status::recalculate: Status is not initialized.";
513 return false;
514 }
515
516 // Recalculate all attributes.
517 for (auto i : _attributes) {
518 i->reset();
519 i->apply(notify);
520 }
521
522 return true;
523}
bool is_initialized()
Definition: Status.hpp:745

References _attributes, HLog, and is_initialized().

Referenced by update().

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

◆ remove_appearance()

void Horizon::Zone::Traits::Status::remove_appearance ( std::shared_ptr< Appearance appearance)
inline
766 {
767 _appearances.erase(std::remove(_appearances.begin(), _appearances.end(), appearance), _appearances.end());
768 }

References _appearances.

◆ remove_attribute()

void Horizon::Zone::Traits::Status::remove_attribute ( std::shared_ptr< Attribute attribute)
inline

◆ remove_bonus() [1/2]

void Horizon::Zone::Traits::Status::remove_bonus ( std::shared_ptr< Bonuses::Bonus bonus)
inline
786 {
787 _bonuses.erase(std::remove(_bonuses.begin(), _bonuses.end(), bonus), _bonuses.end());
788 }

References _bonuses.

Referenced by set_bonus_add_attack(), set_bonus_add_attack_percent(), set_bonus_add_attack_percentage_to_element(), set_bonus_add_attack_percentage_to_race(), set_bonus_add_attack_percentage_to_size(), set_bonus_add_damage_to_class(), set_bonus_add_defense_to_class(), set_bonus_add_effect_on_damage(), set_bonus_add_effect_on_magic_attack(), set_bonus_add_effect_when_damaged(), set_bonus_add_ele_magic_damage_percent(), set_bonus_add_ele_weapon_damage_percent(), set_bonus_add_item_drop_on_monster_kill(), set_bonus_add_magic_attack_percentage_to_element(), set_bonus_add_magic_attack_percentage_to_race(), set_bonus_add_magic_attack_percentage_to_size(), set_bonus_add_magic_damage_to_class(), set_bonus_add_magical_defense_to_class(), set_bonus_add_movement_speed_percent(), set_bonus_add_steal_percent(), set_bonus_add_weapon_coma_to_element(), set_bonus_add_weapon_coma_to_race(), set_bonus_add_weapon_coma_to_sub_element(), set_bonus_add_weapon_coma_to_sub_race(), set_bonus_all_status(), set_bonus_armor_break_percent(), set_bonus_attack_element(), set_bonus_attack_on_defense_ratio_for_element(), set_bonus_attack_on_defense_ratio_for_race(), set_bonus_attack_percent(), set_bonus_attack_range(), set_bonus_attack_range_percent(), set_bonus_attack_speed_percent(), set_bonus_auto_spell_on_attack(), set_bonus_auto_spell_on_receive_damage(), set_bonus_auto_spell_on_self(), set_bonus_auto_spell_on_skill(), set_bonus_cast_cancel_immunity(), set_bonus_cast_percent(), set_bonus_critical_damage_percent(), set_bonus_critical_defense(), set_bonus_critical_percent(), set_bonus_critical_race(), set_bonus_critical_race_percent(), set_bonus_damage_reduction_against_size(), set_bonus_damage_splash_range(), set_bonus_defense_element(), set_bonus_disable_hp_recovery(), set_bonus_disable_sp_recovery(), set_bonus_double_attack_percent(), set_bonus_exp_percent_per_race(), set_bonus_flee_percent(), set_bonus_gear_fuel_immunity(), set_bonus_gemstone_immunity(), set_bonus_get_zeny_num(), set_bonus_hard_defense_percent(), set_bonus_hard_magical_defense_percent(), set_bonus_heal_of_skill_casted_on_self(), set_bonus_hit_percent(), set_bonus_hp_drain_on_monster_kill(), set_bonus_hp_drain_percent(), set_bonus_hp_drain_value(), set_bonus_hp_gain_on_mob_kill(), set_bonus_hp_recovery_percent(), set_bonus_hp_vanish_percent(), set_bonus_ignore_defense_from_element(), set_bonus_ignore_defense_from_race(), set_bonus_ignore_magic_defense_from_element(), set_bonus_ignore_magic_defense_from_race(), set_bonus_infinite_endure(), set_bonus_item_usage_immunity(), set_bonus_job_percent_per_race(), set_bonus_knock_back_immunity(), set_bonus_learned_skill_heal(), set_bonus_long_weapon_damage_percent(), set_bonus_magic_attack_percent(), set_bonus_magic_damage_immunity(), set_bonus_magic_damage_reduction_against_size(), set_bonus_magic_damage_reflect_percent_on_self(), set_bonus_magic_defense_percent(), set_bonus_max_hp_percent(), set_bonus_max_sp_percent(), set_bonus_melee_defense(), set_bonus_melee_weapon_damage_reflect_percent_on_self(), set_bonus_misc_defense_percent(), set_bonus_perfect_dodge_percent(), set_bonus_perfect_hit_percent(), set_bonus_raise(), set_bonus_ranged_defense(), set_bonus_ranged_weapon_damage_reflect_percent_on_self(), set_bonus_reduce_sp_consumption_of_skill(), set_bonus_reduce_sp_consumption_of_skill_by_percent(), set_bonus_resist_magic_attack_from_race(), set_bonus_resist_skill_damage_percent(), set_bonus_ressist_effect(), set_bonus_restart_with_full_recovery(), set_bonus_short_weapon_damage_percent(), set_bonus_size_modifier_immunity(), set_bonus_skill_attack(), set_bonus_skill_cast_percent(), set_bonus_skill_cooldown(), set_bonus_skill_fix_cast_percent(), set_bonus_skill_knockback(), set_bonus_skill_variable_cast_percent(), set_bonus_soft_defense_percent(), set_bonus_soft_magical_defense_percent(), set_bonus_sp_drain_on_monster_kill(), set_bonus_sp_drain_percent(), set_bonus_sp_drain_value(), set_bonus_sp_gain_on_mob_kill(), set_bonus_sp_percent(), set_bonus_sp_recovery_percent(), set_bonus_sp_vanish_percent(), set_bonus_sub_attack_percentage_from_element(), set_bonus_sub_attack_percentage_from_race(), set_bonus_unbreakable_armor(), set_bonus_unbreakable_helm(), set_bonus_unbreakable_shield(), set_bonus_unbreakable_weapon(), set_bonus_weapon_break_percent(), and set_bonus_weapon_damage_immunity().

◆ remove_bonus() [2/2]

void Horizon::Zone::Traits::Status::remove_bonus ( std::shared_ptr< Bonuses::IBonusArray ba)
inline
1338 {
1339 _bonus_arrays.erase(std::remove(_bonus_arrays.begin(), _bonus_arrays.end(), ba), _bonus_arrays.end());
1340 }

References _bonus_arrays.

◆ robe_sprite()

std::shared_ptr< RobeSprite > Horizon::Zone::Traits::Status::robe_sprite ( )
inline
545{ return _robe_sprite; }
std::shared_ptr< RobeSprite > _robe_sprite
Definition: Status.hpp:1842

References _robe_sprite.

Referenced by on_equipment_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ save()

bool Status::save ( std::shared_ptr< Horizon::Zone::Units::Player pl)
754{
755 std::shared_ptr<boost::mysql::tcp_ssl_connection> conn = sZone->get_database_connection();
756
757 try {
758 boost::mysql::statement stmt = conn->prepare_statement("UPDATE `character_status` SET `job_id` = ?, `base_level` = ?, `job_level` = ?, `base_experience` = ?, `job_experience` = ?, "
759 "`zeny` = ?, `strength` = ?, `agility` = ?, `vitality` = ?, `intelligence` = ?, `dexterity` = ?, `luck` = ?, `maximum_hp` = ?, `hp` = ?, `maximum_sp` = ?, `sp` = ?, "
760 "`status_points` = ?, `skill_points` = ?, `body_state` = ?, `virtue` = ?, `honor` = ?, `manner` = ?, `hair_style_id` = ?, `hair_color_id` = ?, `cloth_color_id` = ?, `body_id` = ?, "
761 "`weapon_view_id` = ?, `shield_view_id` = ?, `head_top_view_id` = ?, `head_mid_view_id` = ?, `head_bottom_view_id` = ?, `robe_view_id` = ? "
762 "WHERE id = ?");
763 auto b1 = stmt.bind(pl->job_id(), base_level()->total(), job_level()->total(), base_experience()->total(),
764 job_experience()->total(), zeny()->total(), strength()->total(), agility()->total(), vitality()->total(),
765 intelligence()->total(), dexterity()->total(),
766 luck()->total(), max_hp()->total(), current_hp()->total(), max_sp()->total(), current_sp()->total(), status_point()->total(),
767 skill_point()->total(), 0, virtue()->total(), honor()->total(), manner()->total(), hair_style()->get(),
768 hair_color()->get(), cloth_color()->get(), body_style()->get(), weapon_sprite()->get(), shield_sprite()->get(),
769 head_top_sprite()->get(), head_mid_sprite()->get(), head_bottom_sprite()->get(), robe_sprite()->get(),
770 pl->character()._character_id);
771 boost::mysql::results results;
772 conn->execute(b1, results);
773
774 HLog(info) << "Status saved for character " << pl->name() << "(" << pl->character()._character_id << ").";
775 }
776 catch (boost::mysql::error_with_diagnostics &error) {
777 HLog(error) << "Status::save:" << error.what();
778 return false;
779 }
780 catch (std::exception& error) {
781 HLog(error) << "Status::save:" << error.what();
782 return false;
783 }
784
785 return true;
786}
std::shared_ptr< HairColor > hair_color()
Definition: Status.hpp:533
std::shared_ptr< HairStyle > hair_style()
Definition: Status.hpp:557
std::shared_ptr< Honor > honor()
Definition: Status.hpp:571
std::shared_ptr< ClothColor > cloth_color()
Definition: Status.hpp:536
std::shared_ptr< Manner > manner()
Definition: Status.hpp:579
std::shared_ptr< Zeny > zeny()
Definition: Status.hpp:563
std::shared_ptr< Virtue > virtue()
Definition: Status.hpp:587
std::shared_ptr< BodyStyle > body_style()
Definition: Status.hpp:560

References agility(), base_experience(), base_level(), body_style(), cloth_color(), current_hp(), current_sp(), dexterity(), hair_color(), hair_style(), head_bottom_sprite(), head_mid_sprite(), head_top_sprite(), HLog, honor(), intelligence(), job_experience(), job_level(), luck(), manner(), max_hp(), max_sp(), robe_sprite(), shield_sprite(), skill_point(), status_point(), strength(), sZone, virtue(), vitality(), weapon_sprite(), and zeny().

+ Here is the call graph for this function:

◆ set_agility()

void Horizon::Zone::Traits::Status::set_agility ( std::shared_ptr< Agility agi)
inline
197 {
198 if (_agi != nullptr)
200 add_attribute(agi);
201 _agi = agi;
202 }
void add_attribute(std::shared_ptr< Attribute > attribute)
Definition: Status.hpp:748
void remove_attribute(std::shared_ptr< Attribute > attribute)
Definition: Status.hpp:749

References _agi, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_agility_cost()

void Horizon::Zone::Traits::Status::set_agility_cost ( std::shared_ptr< AgilityPointCost agi)
inline
245 {
246 if (_agi_cost != nullptr)
248 add_attribute(agi);
249 _agi_cost = agi;
250 }

References _agi_cost, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_attack_delay()

void Horizon::Zone::Traits::Status::set_attack_delay ( std::shared_ptr< AttackDelay a)
inline
599 {
600 if (_attack_delay != nullptr)
602 add_attribute(a);
603 _attack_delay = a;
604 }

References _attack_delay, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_attack_range()

void Horizon::Zone::Traits::Status::set_attack_range ( std::shared_ptr< AttackRange m)
inline
405 {
406 if (_attack_range != nullptr)
408 add_attribute(m);
409 _attack_range = m;
410 }

References _attack_range, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_attack_speed()

void Horizon::Zone::Traits::Status::set_attack_speed ( std::shared_ptr< AttackSpeed aspd)
inline
504 {
505 if (_aspd != nullptr)
507 add_attribute(aspd);
508 _aspd = aspd;
509 }

References _aspd, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_base_appearance()

void Horizon::Zone::Traits::Status::set_base_appearance ( std::shared_ptr< BaseAppearance ba)
inline
531{ add_appearance(ba); _base_appearance = ba; }
void add_appearance(std::shared_ptr< Appearance > appearance)
Definition: Status.hpp:764

References _base_appearance, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_base_attack()

void Horizon::Zone::Traits::Status::set_base_attack ( std::shared_ptr< BaseAttack b)
inline
615 {
616 if (_base_attack != nullptr)
618 add_attribute(b);
619 _base_attack = b;
620 }

References _base_attack, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_base_experience()

void Horizon::Zone::Traits::Status::set_base_experience ( std::shared_ptr< BaseExperience bexp)
inline
349 {
350 if (_base_exp != nullptr)
352 add_attribute(bexp);
353 _base_exp = bexp;
354 }

References _base_exp, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_base_level()

void Horizon::Zone::Traits::Status::set_base_level ( std::shared_ptr< BaseLevel blvl)
inline
333 {
334 if (_base_level != nullptr)
336 add_attribute(blvl);
337 _base_level = blvl;
338 }

References _base_level, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_body_style()

void Horizon::Zone::Traits::Status::set_body_style ( std::shared_ptr< BodyStyle bs)
inline
561{ add_appearance(bs); _body_style = bs; }

References _body_style, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_bonus_add_attack()

void Horizon::Zone::Traits::Status::set_bonus_add_attack ( std::shared_ptr< Bonuses::BonusAddAttack b)
inline
1553 {
1554 if (_bonus->_add_attack != nullptr)
1555 remove_bonus(_bonus->_add_attack);
1556 add_bonus(b);
1557 _bonus->_add_attack = b;
1558 }
void add_bonus(std::shared_ptr< Bonuses::Bonus > bonus)
Definition: Status.hpp:784
void remove_bonus(std::shared_ptr< Bonuses::Bonus > bonus)
Definition: Status.hpp:785

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_attack_percent()

void Horizon::Zone::Traits::Status::set_bonus_add_attack_percent ( std::shared_ptr< Bonuses::BonusAddAttackPercent b)
inline
1561 {
1562 if (_bonus->_add_attack_percent != nullptr)
1563 remove_bonus(_bonus->_add_attack_percent);
1564 add_bonus(b);
1565 _bonus->_add_attack_percent = b;
1566 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_attack_percentage_to_element()

void Horizon::Zone::Traits::Status::set_bonus_add_attack_percentage_to_element ( std::shared_ptr< Bonuses::BonusAddAttackPercentageToElement b)
inline
1353 {
1354 if (_bonus->_add_attack_percentage_to_element != nullptr)
1355 remove_bonus(_bonus->_add_attack_percentage_to_element);
1356 add_bonus(b);
1357 _bonus->_add_attack_percentage_to_element = b;
1358 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_attack_percentage_to_race()

void Horizon::Zone::Traits::Status::set_bonus_add_attack_percentage_to_race ( std::shared_ptr< Bonuses::BonusAddAttackPercentageToRace b)
inline
1361 {
1362 if (_bonus->_add_attack_percentage_to_race != nullptr)
1363 remove_bonus(_bonus->_add_attack_percentage_to_race);
1364 add_bonus(b);
1365 _bonus->_add_attack_percentage_to_race = b;
1366 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_attack_percentage_to_size()

void Horizon::Zone::Traits::Status::set_bonus_add_attack_percentage_to_size ( std::shared_ptr< Bonuses::BonusAddAttackPercentageToSize b)
inline
1369 {
1370 if (_bonus->_add_attack_percentage_to_size != nullptr)
1371 remove_bonus(_bonus->_add_attack_percentage_to_size);
1372 add_bonus(b);
1373 _bonus->_add_attack_percentage_to_size = b;
1374 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_damage_to_class()

void Horizon::Zone::Traits::Status::set_bonus_add_damage_to_class ( std::shared_ptr< Bonuses::BonusAddDamageToClass b)
inline
1457 {
1458 if (_bonus->_add_damage_to_class != nullptr)
1459 remove_bonus(_bonus->_add_damage_to_class);
1460 add_bonus(b);
1461 _bonus->_add_damage_to_class = b;
1462 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_defense_to_class()

void Horizon::Zone::Traits::Status::set_bonus_add_defense_to_class ( std::shared_ptr< Bonuses::BonusAddDefenseToClass b)
inline
1473 {
1474 if (_bonus->_add_defense_to_class != nullptr)
1475 remove_bonus(_bonus->_add_defense_to_class);
1476 add_bonus(b);
1477 _bonus->_add_defense_to_class = b;
1478 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_effect_on_damage()

void Horizon::Zone::Traits::Status::set_bonus_add_effect_on_damage ( std::shared_ptr< Bonuses::BonusAddEffectOnDamage b)
inline
1393 {
1394 if (_bonus->_add_effect_on_damage != nullptr)
1395 remove_bonus(_bonus->_add_effect_on_damage);
1396 add_bonus(b);
1397 _bonus->_add_effect_on_damage = b;
1398 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_effect_on_magic_attack()

void Horizon::Zone::Traits::Status::set_bonus_add_effect_on_magic_attack ( std::shared_ptr< Bonuses::BonusAddEffectOnMagicAttack b)
inline
1441 {
1442 if (_bonus->_add_effect_on_magic_attack != nullptr)
1443 remove_bonus(_bonus->_add_effect_on_magic_attack);
1444 add_bonus(b);
1445 _bonus->_add_effect_on_magic_attack = b;
1446 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_effect_when_damaged()

void Horizon::Zone::Traits::Status::set_bonus_add_effect_when_damaged ( std::shared_ptr< Bonuses::BonusAddEffectWhenDamaged b)
inline
1401 {
1402 if (_bonus->_add_effect_when_damaged != nullptr)
1403 remove_bonus(_bonus->_add_effect_when_damaged);
1404 add_bonus(b);
1405 _bonus->_add_effect_when_damaged = b;
1406 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_ele_magic_damage_percent()

void Horizon::Zone::Traits::Status::set_bonus_add_ele_magic_damage_percent ( std::shared_ptr< Bonuses::BonusAddEleMagicDamagePercent b)
inline
1745 {
1746 if (_bonus->_add_ele_magic_damage_percent != nullptr)
1747 remove_bonus(_bonus->_add_ele_magic_damage_percent);
1748 add_bonus(b);
1749 _bonus->_add_ele_magic_damage_percent = b;
1750 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_ele_weapon_damage_percent()

void Horizon::Zone::Traits::Status::set_bonus_add_ele_weapon_damage_percent ( std::shared_ptr< Bonuses::BonusAddEleWeaponDamagePercent b)
inline
1737 {
1738 if (_bonus->_add_ele_weapon_damage_percent != nullptr)
1739 remove_bonus(_bonus->_add_ele_weapon_damage_percent);
1740 add_bonus(b);
1741 _bonus->_add_ele_weapon_damage_percent = b;
1742 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_item_drop_on_monster_kill()

void Horizon::Zone::Traits::Status::set_bonus_add_item_drop_on_monster_kill ( std::shared_ptr< Bonuses::BonusAddItemDropOnMonsterKill b)
inline
1313 {
1314 if (_bonus->_add_item_drop_on_monster_kill != nullptr)
1315 remove_bonus(_bonus->_add_item_drop_on_monster_kill);
1316 add_bonus(b);
1317 _bonus->_add_item_drop_on_monster_kill = b;
1318 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_magic_attack_percentage_to_element()

void Horizon::Zone::Traits::Status::set_bonus_add_magic_attack_percentage_to_element ( std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToElement b)
inline
1417 {
1418 if (_bonus->_add_magic_attack_percentage_to_element != nullptr)
1419 remove_bonus(_bonus->_add_magic_attack_percentage_to_element);
1420 add_bonus(b);
1421 _bonus->_add_magic_attack_percentage_to_element = b;
1422 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_magic_attack_percentage_to_race()

void Horizon::Zone::Traits::Status::set_bonus_add_magic_attack_percentage_to_race ( std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToRace b)
inline
1425 {
1426 if (_bonus->_add_magic_attack_percentage_to_race != nullptr)
1427 remove_bonus(_bonus->_add_magic_attack_percentage_to_race);
1428 add_bonus(b);
1429 _bonus->_add_magic_attack_percentage_to_race = b;
1430 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_magic_attack_percentage_to_size()

void Horizon::Zone::Traits::Status::set_bonus_add_magic_attack_percentage_to_size ( std::shared_ptr< Bonuses::BonusAddMagicAttackPercentageToSize b)
inline
1433 {
1434 if (_bonus->_add_magic_attack_percentage_to_size != nullptr)
1435 remove_bonus(_bonus->_add_magic_attack_percentage_to_size);
1436 add_bonus(b);
1437 _bonus->_add_magic_attack_percentage_to_size = b;
1438 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_magic_damage_to_class()

void Horizon::Zone::Traits::Status::set_bonus_add_magic_damage_to_class ( std::shared_ptr< Bonuses::BonusAddMagicDamageToClass b)
inline
1465 {
1466 if (_bonus->_add_magic_damage_to_class != nullptr)
1467 remove_bonus(_bonus->_add_magic_damage_to_class);
1468 add_bonus(b);
1469 _bonus->_add_magic_damage_to_class = b;
1470 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_magical_defense_to_class()

void Horizon::Zone::Traits::Status::set_bonus_add_magical_defense_to_class ( std::shared_ptr< Bonuses::BonusAddMagicalDefenseToClass b)
inline
1481 {
1482 if (_bonus->_add_magical_defense_to_class != nullptr)
1483 remove_bonus(_bonus->_add_magical_defense_to_class);
1484 add_bonus(b);
1485 _bonus->_add_magical_defense_to_class = b;
1486 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_movement_speed_percent()

void Horizon::Zone::Traits::Status::set_bonus_add_movement_speed_percent ( std::shared_ptr< Bonuses::BonusAddMovementSpeedPercent b)
inline
873 {
874 if (_bonus->_bonus_add_movement_speed_percent != nullptr)
875 remove_bonus(_bonus->_bonus_add_movement_speed_percent);
876 add_bonus(b);
877 _bonus->_bonus_add_movement_speed_percent = b;
878 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_steal_percent()

void Horizon::Zone::Traits::Status::set_bonus_add_steal_percent ( std::shared_ptr< Bonuses::BonusAddStealPercent b)
inline
1217 {
1218 if (_bonus->_add_steal_percent != nullptr)
1219 remove_bonus(_bonus->_add_steal_percent);
1220 add_bonus(b);
1221 _bonus->_add_steal_percent = b;
1222 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_weapon_coma_to_element()

void Horizon::Zone::Traits::Status::set_bonus_add_weapon_coma_to_element ( std::shared_ptr< Bonuses::BonusAddWeaponComaToElement b)
inline
1521 {
1522 if (_bonus->_add_weapon_coma_to_element != nullptr)
1523 remove_bonus(_bonus->_add_weapon_coma_to_element);
1524 add_bonus(b);
1525 _bonus->_add_weapon_coma_to_element = b;
1526 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_weapon_coma_to_race()

void Horizon::Zone::Traits::Status::set_bonus_add_weapon_coma_to_race ( std::shared_ptr< Bonuses::BonusAddWeaponComaToRace b)
inline
1529 {
1530 if (_bonus->_add_weapon_coma_to_race != nullptr)
1531 remove_bonus(_bonus->_add_weapon_coma_to_race);
1532 add_bonus(b);
1533 _bonus->_add_weapon_coma_to_race = b;
1534 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_weapon_coma_to_sub_element()

void Horizon::Zone::Traits::Status::set_bonus_add_weapon_coma_to_sub_element ( std::shared_ptr< Bonuses::BonusAddWeaponComaToSubElement b)
inline
1537 {
1538 if (_bonus->_add_weapon_coma_to_sub_element != nullptr)
1539 remove_bonus(_bonus->_add_weapon_coma_to_sub_element);
1540 add_bonus(b);
1541 _bonus->_add_weapon_coma_to_sub_element = b;
1542 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_add_weapon_coma_to_sub_race()

void Horizon::Zone::Traits::Status::set_bonus_add_weapon_coma_to_sub_race ( std::shared_ptr< Bonuses::BonusAddWeaponComaToSubRace b)
inline
1545 {
1546 if (_bonus->_add_weapon_coma_to_sub_race != nullptr)
1547 remove_bonus(_bonus->_add_weapon_coma_to_sub_race);
1548 add_bonus(b);
1549 _bonus->_add_weapon_coma_to_sub_race = b;
1550 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_all_status()

void Horizon::Zone::Traits::Status::set_bonus_all_status ( std::shared_ptr< Bonuses::BonusAllStatus b)
inline
801 {
802 if (_bonus->_all_status != nullptr)
803 remove_bonus(_bonus->_all_status);
804 add_bonus(b);
805 _bonus->_all_status = b;
806 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_armor_break_percent()

void Horizon::Zone::Traits::Status::set_bonus_armor_break_percent ( std::shared_ptr< Bonuses::BonusArmorBreakPercent b)
inline
1209 {
1210 if (_bonus->_armor_break_percent != nullptr)
1211 remove_bonus(_bonus->_armor_break_percent);
1212 add_bonus(b);
1213 _bonus->_armor_break_percent = b;
1214 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_element()

void Horizon::Zone::Traits::Status::set_bonus_attack_element ( std::shared_ptr< Bonuses::BonusAttackElement b)
inline
809 {
810 if (_bonus->_attack_element != nullptr)
811 remove_bonus(_bonus->_attack_element);
812 add_bonus(b);
813 _bonus->_attack_element = b;
814 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_on_defense_ratio_for_element()

void Horizon::Zone::Traits::Status::set_bonus_attack_on_defense_ratio_for_element ( std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForElement b)
inline
993 {
994 if (_bonus->_attack_on_defense_ratio_for_element != nullptr)
995 remove_bonus(_bonus->_attack_on_defense_ratio_for_element);
996 add_bonus(b);
997 _bonus->_attack_on_defense_ratio_for_element = b;
998 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_on_defense_ratio_for_race()

void Horizon::Zone::Traits::Status::set_bonus_attack_on_defense_ratio_for_race ( std::shared_ptr< Bonuses::BonusAttackOnDefenseRatioForRace b)
inline
1001 {
1002 if (_bonus->_attack_on_defense_ratio_for_race != nullptr)
1003 remove_bonus(_bonus->_attack_on_defense_ratio_for_race);
1004 add_bonus(b);
1005 _bonus->_attack_on_defense_ratio_for_race = b;
1006 };

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_percent()

void Horizon::Zone::Traits::Status::set_bonus_attack_percent ( std::shared_ptr< Bonuses::BonusAttackPercent b)
inline
945 {
946 if (_bonus->_attack_percent != nullptr)
947 remove_bonus(_bonus->_attack_percent);
948 add_bonus(b);
949 _bonus->_attack_percent = b;
950 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_range()

void Horizon::Zone::Traits::Status::set_bonus_attack_range ( std::shared_ptr< Bonuses::BonusAttackRange b)
inline
857 {
858 if (_bonus->_attack_range != nullptr)
859 remove_bonus(_bonus->_attack_range);
860 add_bonus(b);
861 _bonus->_attack_range = b;
862 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_range_percent()

void Horizon::Zone::Traits::Status::set_bonus_attack_range_percent ( std::shared_ptr< Bonuses::BonusAttackRangePercent b)
inline
865 {
866 if (_bonus->_attack_range_percent != nullptr)
867 remove_bonus(_bonus->_attack_range_percent);
868 add_bonus(b);
869 _bonus->_attack_range_percent = b;
870 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_attack_speed_percent()

void Horizon::Zone::Traits::Status::set_bonus_attack_speed_percent ( std::shared_ptr< Bonuses::BonusAttackSpeedPercent b)
inline
881 {
882 if (_bonus->_attack_speed_percent != nullptr)
883 remove_bonus(_bonus->_attack_speed_percent);
884 add_bonus(b);
885 _bonus->_attack_speed_percent = b;
886 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_auto_spell_on_attack()

void Horizon::Zone::Traits::Status::set_bonus_auto_spell_on_attack ( std::shared_ptr< Bonuses::BonusAutoSpellOnAttack b)
inline
1761 {
1762 if (_bonus->_auto_spell_on_attack != nullptr)
1763 remove_bonus(_bonus->_auto_spell_on_attack);
1764 add_bonus(b);
1765 _bonus->_auto_spell_on_attack = b;
1766 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_auto_spell_on_receive_damage()

void Horizon::Zone::Traits::Status::set_bonus_auto_spell_on_receive_damage ( std::shared_ptr< Bonuses::BonusAutoSpellOnReceiveDamage b)
inline
1769 {
1770 if (_bonus->_auto_spell_on_receive_damage != nullptr)
1771 remove_bonus(_bonus->_auto_spell_on_receive_damage);
1772 add_bonus(b);
1773 _bonus->_auto_spell_on_receive_damage = b;
1774 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_auto_spell_on_self()

void Horizon::Zone::Traits::Status::set_bonus_auto_spell_on_self ( std::shared_ptr< Bonuses::BonusAutoSpellOnSelf b)
inline
1777 {
1778 if (_bonus->_auto_spell_on_self != nullptr)
1779 remove_bonus(_bonus->_auto_spell_on_self);
1780 add_bonus(b);
1781 _bonus->_auto_spell_on_self = b;
1782 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_auto_spell_on_skill()

void Horizon::Zone::Traits::Status::set_bonus_auto_spell_on_skill ( std::shared_ptr< Bonuses::BonusAutoSpellOnSkill b)
inline
1753 {
1754 if (_bonus->_auto_spell_on_skill != nullptr)
1755 remove_bonus(_bonus->_auto_spell_on_skill);
1756 add_bonus(b);
1757 _bonus->_auto_spell_on_skill = b;
1758 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_cast_cancel_immunity()

void Horizon::Zone::Traits::Status::set_bonus_cast_cancel_immunity ( std::shared_ptr< Bonuses::BonusCastCancelImmunity b)
inline
1073 {
1074 if (_bonus->_cast_cancel_immunity != nullptr)
1075 remove_bonus(_bonus->_cast_cancel_immunity);
1076 add_bonus(b);
1077 _bonus->_cast_cancel_immunity = b;
1078 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_cast_percent()

void Horizon::Zone::Traits::Status::set_bonus_cast_percent ( std::shared_ptr< Bonuses::BonusCastPercent b)
inline
825 {
826 if (_bonus->_cast_percent != nullptr)
827 remove_bonus(_bonus->_cast_percent);
828 add_bonus(b);
829 _bonus->_cast_percent = b;
830 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_critical_damage_percent()

void Horizon::Zone::Traits::Status::set_bonus_critical_damage_percent ( std::shared_ptr< Bonuses::BonusCriticalDamagePercent b)
inline
1225 {
1226 if (_bonus->_critical_damage_percent != nullptr)
1227 remove_bonus(_bonus->_critical_damage_percent);
1228 add_bonus(b);
1229 _bonus->_critical_damage_percent = b;
1230 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_critical_defense()

void Horizon::Zone::Traits::Status::set_bonus_critical_defense ( std::shared_ptr< Bonuses::BonusCriticalDefense b)
inline
905 {
906 if (_bonus->_critical_defense != nullptr)
907 remove_bonus(_bonus->_critical_defense);
908 add_bonus(b);
909 _bonus->_critical_defense = b;
910 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_critical_percent()

void Horizon::Zone::Traits::Status::set_bonus_critical_percent ( std::shared_ptr< Bonuses::BonusCriticalPercent b)
inline
977 {
978 if (_bonus->_critical_percent != nullptr)
979 remove_bonus(_bonus->_critical_percent);
980 add_bonus(b);
981 _bonus->_critical_percent = b;
982 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_critical_race()

void Horizon::Zone::Traits::Status::set_bonus_critical_race ( std::shared_ptr< Bonuses::BonusCriticalRace b)
inline
1569 {
1570 if (_bonus->_critical_race != nullptr)
1571 remove_bonus(_bonus->_critical_race);
1572 add_bonus(b);
1573 _bonus->_critical_race = b;
1574 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_critical_race_percent()

void Horizon::Zone::Traits::Status::set_bonus_critical_race_percent ( std::shared_ptr< Bonuses::BonusCriticalRacePercent b)
inline
1577 {
1578 if (_bonus->_critical_race_percent != nullptr)
1579 remove_bonus(_bonus->_critical_race_percent);
1580 add_bonus(b);
1581 _bonus->_critical_race_percent = b;
1582 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_damage_reduction_against_size()

void Horizon::Zone::Traits::Status::set_bonus_damage_reduction_against_size ( std::shared_ptr< Bonuses::BonusDamageReductionAgainstSize b)
inline
1585 {
1586 if (_bonus->_damage_reduction_against_size != nullptr)
1587 remove_bonus(_bonus->_damage_reduction_against_size);
1588 add_bonus(b);
1589 _bonus->_damage_reduction_against_size = b;
1590 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_damage_splash_range()

void Horizon::Zone::Traits::Status::set_bonus_damage_splash_range ( std::shared_ptr< Bonuses::BonusDamageSplashRange b)
inline
1177 {
1178 if (_bonus->_damage_splash_range != nullptr)
1179 remove_bonus(_bonus->_damage_splash_range);
1180 add_bonus(b);
1181 _bonus->_damage_splash_range = b;
1182 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_defense_element()

void Horizon::Zone::Traits::Status::set_bonus_defense_element ( std::shared_ptr< Bonuses::BonusDefenseElement b)
inline
817 {
818 if (_bonus->_defense_element != nullptr)
819 remove_bonus(_bonus->_defense_element);
820 add_bonus(b);
821 _bonus->_defense_element = b;
822 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_disable_hp_recovery()

void Horizon::Zone::Traits::Status::set_bonus_disable_hp_recovery ( std::shared_ptr< Bonuses::BonusDisableHPRecovery b)
inline
1233 {
1234 if (_bonus->_disable_hp_recovery != nullptr)
1235 remove_bonus(_bonus->_disable_hp_recovery);
1236 add_bonus(b);
1237 _bonus->_disable_hp_recovery = b;
1238 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_disable_sp_recovery()

void Horizon::Zone::Traits::Status::set_bonus_disable_sp_recovery ( std::shared_ptr< Bonuses::BonusDisableSPRecovery b)
inline
1241 {
1242 if (_bonus->_disable_sp_recovery != nullptr)
1243 remove_bonus(_bonus->_disable_sp_recovery);
1244 add_bonus(b);
1245 _bonus->_disable_sp_recovery = b;
1246 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_double_attack_percent()

void Horizon::Zone::Traits::Status::set_bonus_double_attack_percent ( std::shared_ptr< Bonuses::BonusDoubleAttackPercent b)
inline
929 {
930 if (_bonus->_double_attack_percent != nullptr)
931 remove_bonus(_bonus->_double_attack_percent);
932 add_bonus(b);
933 _bonus->_double_attack_percent = b;
934 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_exp_percent_per_race()

void Horizon::Zone::Traits::Status::set_bonus_exp_percent_per_race ( std::shared_ptr< Bonuses::BonusExpPercentPerRace b)
inline
1601 {
1602 if (_bonus->_exp_percent_per_race != nullptr)
1603 remove_bonus(_bonus->_exp_percent_per_race);
1604 add_bonus(b);
1605 _bonus->_exp_percent_per_race = b;
1606 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_flee_percent()

void Horizon::Zone::Traits::Status::set_bonus_flee_percent ( std::shared_ptr< Bonuses::BonusFleePercent b)
inline
1017 {
1018 if (_bonus->_flee_percent != nullptr)
1019 remove_bonus(_bonus->_flee_percent);
1020 add_bonus(b);
1021 _bonus->_flee_percent = b;
1022 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_gear_fuel_immunity()

void Horizon::Zone::Traits::Status::set_bonus_gear_fuel_immunity ( std::shared_ptr< Bonuses::BonusGearFuelImmunity b)
inline
1113 {
1114 if (_bonus->_gear_fuel_immunity != nullptr)
1115 remove_bonus(_bonus->_gear_fuel_immunity);
1116 add_bonus(b);
1117 _bonus->_gear_fuel_immunity = b;
1118 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_gemstone_immunity()

void Horizon::Zone::Traits::Status::set_bonus_gemstone_immunity ( std::shared_ptr< Bonuses::BonusGemstoneImmunity b)
inline
1105 {
1106 if (_bonus->_gemstone_immunity != nullptr)
1107 remove_bonus(_bonus->_gemstone_immunity);
1108 add_bonus(b);
1109 _bonus->_gemstone_immunity = b;
1110 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_get_zeny_num()

void Horizon::Zone::Traits::Status::set_bonus_get_zeny_num ( std::shared_ptr< Bonuses::BonusGetZenyNum b)
inline
985 {
986 if (_bonus->_get_zeny_num != nullptr)
987 remove_bonus(_bonus->_get_zeny_num);
988 add_bonus(b);
989 _bonus->_get_zeny_num = b;
990 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hard_defense_percent()

void Horizon::Zone::Traits::Status::set_bonus_hard_defense_percent ( std::shared_ptr< Bonuses::BonusHardDefensePercent b)
inline
1041 {
1042 if (_bonus->_hard_defense_percent != nullptr)
1043 remove_bonus(_bonus->_hard_defense_percent);
1044 add_bonus(b);
1045 _bonus->_hard_defense_percent = b;
1046 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hard_magical_defense_percent()

void Horizon::Zone::Traits::Status::set_bonus_hard_magical_defense_percent ( std::shared_ptr< Bonuses::BonusHardMagicalDefensePercent b)
inline
1057 {
1058 if (_bonus->_hard_magical_defense_percent != nullptr)
1059 remove_bonus(_bonus->_hard_magical_defense_percent);
1060 add_bonus(b);
1061 _bonus->_hard_magical_defense_percent = b;
1062 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_heal_of_skill_casted_on_self()

void Horizon::Zone::Traits::Status::set_bonus_heal_of_skill_casted_on_self ( std::shared_ptr< Bonuses::BonusHealOfSkillCastedOnSelf b)
inline
1649 {
1650 if (_bonus->_heal_of_skill_casted_on_self != nullptr)
1651 remove_bonus(_bonus->_heal_of_skill_casted_on_self);
1652 add_bonus(b);
1653 _bonus->_heal_of_skill_casted_on_self = b;
1654 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hit_percent()

void Horizon::Zone::Traits::Status::set_bonus_hit_percent ( std::shared_ptr< Bonuses::BonusHitPercent b)
inline
1009 {
1010 if (_bonus->_hit_percent != nullptr)
1011 remove_bonus(_bonus->_hit_percent);
1012 add_bonus(b);
1013 _bonus->_hit_percent = b;
1014 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hp_drain_on_monster_kill()

void Horizon::Zone::Traits::Status::set_bonus_hp_drain_on_monster_kill ( std::shared_ptr< Bonuses::BonusHPDrainOnMonsterKill b)
inline
1321 {
1322 if (_bonus->_hp_drain_on_monster_kill != nullptr)
1323 remove_bonus(_bonus->_hp_drain_on_monster_kill);
1324 add_bonus(b);
1325 _bonus->_hp_drain_on_monster_kill = b;
1326 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hp_drain_percent()

void Horizon::Zone::Traits::Status::set_bonus_hp_drain_percent ( std::shared_ptr< Bonuses::BonusHPDrainPercent b)
inline
1489 {
1490 if (_bonus->_hp_drain_percent != nullptr)
1491 remove_bonus(_bonus->_hp_drain_percent);
1492 add_bonus(b);
1493 _bonus->_hp_drain_percent = b;
1494 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hp_drain_value()

void Horizon::Zone::Traits::Status::set_bonus_hp_drain_value ( std::shared_ptr< Bonuses::BonusHPDrainValue b)
inline
1497 {
1498 if (_bonus->_hp_drain_value != nullptr)
1499 remove_bonus(_bonus->_hp_drain_value);
1500 add_bonus(b);
1501 _bonus->_hp_drain_value = b;
1502 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hp_gain_on_mob_kill()

void Horizon::Zone::Traits::Status::set_bonus_hp_gain_on_mob_kill ( std::shared_ptr< Bonuses::BonusHPGainOnMobKill b)
inline
1169 {
1170 if (_bonus->_hp_gain_on_mob_kill != nullptr)
1171 remove_bonus(_bonus->_hp_gain_on_mob_kill);
1172 add_bonus(b);
1173 _bonus->_hp_gain_on_mob_kill = b;
1174 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hp_recovery_percent()

void Horizon::Zone::Traits::Status::set_bonus_hp_recovery_percent ( std::shared_ptr< Bonuses::BonusHPRecoveryPercent b)
inline
889 {
890 if (_bonus->_hp_recovery_percent != nullptr)
891 remove_bonus(_bonus->_hp_recovery_percent);
892 add_bonus(b);
893 _bonus->_hp_recovery_percent = b;
894 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_hp_vanish_percent()

void Horizon::Zone::Traits::Status::set_bonus_hp_vanish_percent ( std::shared_ptr< Bonuses::BonusHPVanishPercent b)
inline
1289 {
1290 if (_bonus->_hp_vanish_percent != nullptr)
1291 remove_bonus(_bonus->_hp_vanish_percent);
1292 add_bonus(b);
1293 _bonus->_hp_vanish_percent = b;
1294 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ignore_defense_from_element()

void Horizon::Zone::Traits::Status::set_bonus_ignore_defense_from_element ( std::shared_ptr< Bonuses::BonusIgnoreDefenseFromElement b)
inline
1705 {
1706 if (_bonus->_ignore_defense_from_element != nullptr)
1707 remove_bonus(_bonus->_ignore_defense_from_element);
1708 add_bonus(b);
1709 _bonus->_ignore_defense_from_element = b;
1710 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ignore_defense_from_race()

void Horizon::Zone::Traits::Status::set_bonus_ignore_defense_from_race ( std::shared_ptr< Bonuses::BonusIgnoreDefenseFromRace b)
inline
1713 {
1714 if (_bonus->_ignore_defense_from_race != nullptr)
1715 remove_bonus(_bonus->_ignore_defense_from_race);
1716 add_bonus(b);
1717 _bonus->_ignore_defense_from_race = b;
1718 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ignore_magic_defense_from_element()

void Horizon::Zone::Traits::Status::set_bonus_ignore_magic_defense_from_element ( std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromElement b)
inline
1721 {
1722 if (_bonus->_ignore_magic_defense_from_element != nullptr)
1723 remove_bonus(_bonus->_ignore_magic_defense_from_element);
1724 add_bonus(b);
1725 _bonus->_ignore_magic_defense_from_element = b;
1726 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ignore_magic_defense_from_race()

void Horizon::Zone::Traits::Status::set_bonus_ignore_magic_defense_from_race ( std::shared_ptr< Bonuses::BonusIgnoreMagicDefenseFromRace b)
inline
1729 {
1730 if (_bonus->_ignore_magic_defense_from_race != nullptr)
1731 remove_bonus(_bonus->_ignore_magic_defense_from_race);
1732 add_bonus(b);
1733 _bonus->_ignore_magic_defense_from_race = b;
1734 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_infinite_endure()

void Horizon::Zone::Traits::Status::set_bonus_infinite_endure ( std::shared_ptr< Bonuses::BonusInfiniteEndure b)
inline
1121 {
1122 if (_bonus->_infinite_endure != nullptr)
1123 remove_bonus(_bonus->_infinite_endure);
1124 add_bonus(b);
1125 _bonus->_infinite_endure = b;
1126 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_item_usage_immunity()

void Horizon::Zone::Traits::Status::set_bonus_item_usage_immunity ( std::shared_ptr< Bonuses::BonusItemUsageImmunity b)
inline
1273 {
1274 if (_bonus->_item_usage_immunity != nullptr)
1275 remove_bonus(_bonus->_item_usage_immunity);
1276 add_bonus(b);
1277 _bonus->_item_usage_immunity = b;
1278 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_job_percent_per_race()

void Horizon::Zone::Traits::Status::set_bonus_job_percent_per_race ( std::shared_ptr< Bonuses::BonusJobPercentPerRace b)
inline
1609 {
1610 if (_bonus->_job_percent_per_race != nullptr)
1611 remove_bonus(_bonus->_job_percent_per_race);
1612 add_bonus(b);
1613 _bonus->_job_percent_per_race = b;
1614 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_knock_back_immunity()

void Horizon::Zone::Traits::Status::set_bonus_knock_back_immunity ( std::shared_ptr< Bonuses::BonusKnockBackImmunity b)
inline
1281 {
1282 if (_bonus->_knockback_immunity != nullptr)
1283 remove_bonus(_bonus->_knockback_immunity);
1284 add_bonus(b);
1285 _bonus->_knockback_immunity = b;
1286 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_learned_skill_heal()

void Horizon::Zone::Traits::Status::set_bonus_learned_skill_heal ( std::shared_ptr< Bonuses::BonusLearnedSkillHeal b)
inline
1641 {
1642 if (_bonus->_learned_skill_heal != nullptr)
1643 remove_bonus(_bonus->_learned_skill_heal);
1644 add_bonus(b);
1645 _bonus->_learned_skill_heal = b;
1646 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_long_weapon_damage_percent()

void Horizon::Zone::Traits::Status::set_bonus_long_weapon_damage_percent ( std::shared_ptr< Bonuses::BonusLongWeaponDamagePercent b)
inline
1265 {
1266 if (_bonus->_long_weapon_damage_percent != nullptr)
1267 remove_bonus(_bonus->_long_weapon_damage_percent);
1268 add_bonus(b);
1269 _bonus->_long_weapon_damage_percent = b;
1270 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_magic_attack_percent()

void Horizon::Zone::Traits::Status::set_bonus_magic_attack_percent ( std::shared_ptr< Bonuses::BonusMagicAttackPercent b)
inline
937 {
938 if (_bonus->_magic_attack_percent != nullptr)
939 remove_bonus(_bonus->_magic_attack_percent);
940 add_bonus(b);
941 _bonus->_magic_attack_percent = b;
942 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_magic_damage_immunity()

void Horizon::Zone::Traits::Status::set_bonus_magic_damage_immunity ( std::shared_ptr< Bonuses::BonusMagicDamageImmunity b)
inline
1089 {
1090 if (_bonus->_magic_damage_immunity != nullptr)
1091 remove_bonus(_bonus->_magic_damage_immunity);
1092 add_bonus(b);
1093 _bonus->_magic_damage_immunity = b;
1094 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_magic_damage_reduction_against_size()

void Horizon::Zone::Traits::Status::set_bonus_magic_damage_reduction_against_size ( std::shared_ptr< Bonuses::BonusMagicDamageReductionAgainstSize b)
inline
1593 {
1594 if (_bonus->_magic_damage_reduction_against_size != nullptr)
1595 remove_bonus(_bonus->_magic_damage_reduction_against_size);
1596 add_bonus(b);
1597 _bonus->_magic_damage_reduction_against_size = b;
1598 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_magic_damage_reflect_percent_on_self()

void Horizon::Zone::Traits::Status::set_bonus_magic_damage_reflect_percent_on_self ( std::shared_ptr< Bonuses::BonusMagicDamageReflectPercentOnSelf b)
inline
1249 {
1250 if (_bonus->_magic_damage_reflect_percent_on_self != nullptr)
1251 remove_bonus(_bonus->_magic_damage_reflect_percent_on_self);
1252 add_bonus(b);
1253 _bonus->_magic_damage_reflect_percent_on_self = b;
1254 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_magic_defense_percent()

void Horizon::Zone::Traits::Status::set_bonus_magic_defense_percent ( std::shared_ptr< Bonuses::BonusMagicDefensePercent b)
inline
953 {
954 if (_bonus->_magic_defense_percent != nullptr)
955 remove_bonus(_bonus->_magic_defense_percent);
956 add_bonus(b);
957 _bonus->_magic_defense_percent = b;
958 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_max_hp_percent()

void Horizon::Zone::Traits::Status::set_bonus_max_hp_percent ( std::shared_ptr< Bonuses::BonusMaxHPPercent b)
inline
833 {
834 if (_bonus->_max_hp_percent != nullptr)
835 remove_bonus(_bonus->_max_hp_percent);
836 add_bonus(b);
837 _bonus->_max_hp_percent = b;
838 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_max_sp_percent()

void Horizon::Zone::Traits::Status::set_bonus_max_sp_percent ( std::shared_ptr< Bonuses::BonusMaxSPPercent b)
inline
841 {
842 if (_bonus->_max_sp_percent != nullptr)
843 remove_bonus(_bonus->_max_sp_percent);
844 add_bonus(b);
845 _bonus->_max_sp_percent = b;
846 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_melee_defense()

void Horizon::Zone::Traits::Status::set_bonus_melee_defense ( std::shared_ptr< Bonuses::BonusMeleeDefense b)
inline
913 {
914 if (_bonus->_melee_defense != nullptr)
915 remove_bonus(_bonus->_melee_defense);
916 add_bonus(b);
917 _bonus->_melee_defense = b;
918 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_melee_weapon_damage_reflect_percent_on_self()

void Horizon::Zone::Traits::Status::set_bonus_melee_weapon_damage_reflect_percent_on_self ( std::shared_ptr< Bonuses::BonusMeleeWeaponDamageReflectPercentOnSelf b)
inline
1185 {
1186 if (_bonus->_melee_weapon_damage_reflect_percent_on_self != nullptr)
1187 remove_bonus(_bonus->_melee_weapon_damage_reflect_percent_on_self);
1188 add_bonus(b);
1189 _bonus->_melee_weapon_damage_reflect_percent_on_self = b;
1190 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_misc_defense_percent()

void Horizon::Zone::Traits::Status::set_bonus_misc_defense_percent ( std::shared_ptr< Bonuses::BonusMiscDefensePercent b)
inline
961 {
962 if (_bonus->_misc_defense_percent != nullptr)
963 remove_bonus(_bonus->_misc_defense_percent);
964 add_bonus(b);
965 _bonus->_misc_defense_percent = b;
966 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_perfect_dodge_percent()

void Horizon::Zone::Traits::Status::set_bonus_perfect_dodge_percent ( std::shared_ptr< Bonuses::BonusPerfectDodgePercent b)
inline
1025 {
1026 if (_bonus->_perfect_dodge_percent != nullptr)
1027 remove_bonus(_bonus->_perfect_dodge_percent);
1028 add_bonus(b);
1029 _bonus->_perfect_dodge_percent = b;
1030 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_perfect_hit_percent()

void Horizon::Zone::Traits::Status::set_bonus_perfect_hit_percent ( std::shared_ptr< Bonuses::BonusPerfectHitPercent b)
inline
969 {
970 if (_bonus->_perfect_hit_percent != nullptr)
971 remove_bonus(_bonus->_perfect_hit_percent);
972 add_bonus(b);
973 _bonus->_perfect_hit_percent = b;
974 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_raise()

void Horizon::Zone::Traits::Status::set_bonus_raise ( std::shared_ptr< Bonuses::BonusRaise b)
inline
1305 {
1306 if (_bonus->_raise != nullptr)
1307 remove_bonus(_bonus->_raise);
1308 add_bonus(b);
1309 _bonus->_raise = b;
1310 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ranged_defense()

void Horizon::Zone::Traits::Status::set_bonus_ranged_defense ( std::shared_ptr< Bonuses::BonusRangedDefense b)
inline
921 {
922 if (_bonus->_ranged_defense != nullptr)
923 remove_bonus(_bonus->_ranged_defense);
924 add_bonus(b);
925 _bonus->_ranged_defense = b;
926 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ranged_weapon_damage_reflect_percent_on_self()

void Horizon::Zone::Traits::Status::set_bonus_ranged_weapon_damage_reflect_percent_on_self ( std::shared_ptr< Bonuses::BonusRangedWeaponDamageReflectPercentOnSelf b)
inline
1193 {
1194 if (_bonus->_ranged_weapon_damage_reflect_percent_on_self != nullptr)
1195 remove_bonus(_bonus->_ranged_weapon_damage_reflect_percent_on_self);
1196 add_bonus(b);
1197 _bonus->_ranged_weapon_damage_reflect_percent_on_self = b;
1198 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_reduce_sp_consumption_of_skill()

void Horizon::Zone::Traits::Status::set_bonus_reduce_sp_consumption_of_skill ( std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkill b)
inline
1633 {
1634 if (_bonus->_reduce_sp_consumption_of_skill != nullptr)
1635 remove_bonus(_bonus->_reduce_sp_consumption_of_skill);
1636 add_bonus(b);
1637 _bonus->_reduce_sp_consumption_of_skill = b;
1638 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_reduce_sp_consumption_of_skill_by_percent()

void Horizon::Zone::Traits::Status::set_bonus_reduce_sp_consumption_of_skill_by_percent ( std::shared_ptr< Bonuses::BonusReduceSPConsumptionOfSkillByPercent b)
inline
1625 {
1626 if (_bonus->_reduce_sp_consumption_of_skill_by_percent != nullptr)
1627 remove_bonus(_bonus->_reduce_sp_consumption_of_skill_by_percent);
1628 add_bonus(b);
1629 _bonus->_reduce_sp_consumption_of_skill_by_percent = b;
1630 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_resist_magic_attack_from_race()

void Horizon::Zone::Traits::Status::set_bonus_resist_magic_attack_from_race ( std::shared_ptr< Bonuses::BonusResistMagicAttackFromRace b)
inline
1449 {
1450 if (_bonus->_resist_magic_attack_from_race != nullptr)
1451 remove_bonus(_bonus->_resist_magic_attack_from_race);
1452 add_bonus(b);
1453 _bonus->_resist_magic_attack_from_race = b;
1454 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_resist_skill_damage_percent()

void Horizon::Zone::Traits::Status::set_bonus_resist_skill_damage_percent ( std::shared_ptr< Bonuses::BonusResistSkillDamagePercent b)
inline
1697 {
1698 if (_bonus->_resist_skill_damage_percent != nullptr)
1699 remove_bonus(_bonus->_resist_skill_damage_percent);
1700 add_bonus(b);
1701 _bonus->_resist_skill_damage_percent = b;
1702 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_ressist_effect()

void Horizon::Zone::Traits::Status::set_bonus_ressist_effect ( std::shared_ptr< Bonuses::BonusRessistEffect b)
inline
1409 {
1410 if (_bonus->_ressist_effect != nullptr)
1411 remove_bonus(_bonus->_ressist_effect);
1412 add_bonus(b);
1413 _bonus->_ressist_effect = b;
1414 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_restart_with_full_recovery()

void Horizon::Zone::Traits::Status::set_bonus_restart_with_full_recovery ( std::shared_ptr< Bonuses::BonusRestartWithFullRecovery b)
inline
1065 {
1066 if (_bonus->_restart_with_full_recovery != nullptr)
1067 remove_bonus(_bonus->_restart_with_full_recovery);
1068 add_bonus(b);
1069 _bonus->_restart_with_full_recovery = b;
1070 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_short_weapon_damage_percent()

void Horizon::Zone::Traits::Status::set_bonus_short_weapon_damage_percent ( std::shared_ptr< Bonuses::BonusShortWeaponDamagePercent b)
inline
1257 {
1258 if (_bonus->_short_weapon_damage_percent != nullptr)
1259 remove_bonus(_bonus->_short_weapon_damage_percent);
1260 add_bonus(b);
1261 _bonus->_short_weapon_damage_percent = b;
1262 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_size_modifier_immunity()

void Horizon::Zone::Traits::Status::set_bonus_size_modifier_immunity ( std::shared_ptr< Bonuses::BonusSizeModifierImmunity b)
inline
1081 {
1082 if (_bonus->_size_modifier_immunity != nullptr)
1083 remove_bonus(_bonus->_size_modifier_immunity);
1084 add_bonus(b);
1085 _bonus->_size_modifier_immunity = b;
1086 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_skill_attack()

void Horizon::Zone::Traits::Status::set_bonus_skill_attack ( std::shared_ptr< Bonuses::BonusSkillAttack b)
inline
1617 {
1618 if (_bonus->_skill_attack != nullptr)
1619 remove_bonus(_bonus->_skill_attack);
1620 add_bonus(b);
1621 _bonus->_skill_attack = b;
1622 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_skill_cast_percent()

void Horizon::Zone::Traits::Status::set_bonus_skill_cast_percent ( std::shared_ptr< Bonuses::BonusSkillCastPercent b)
inline
1665 {
1666 if (_bonus->_skill_cast_percent != nullptr)
1667 remove_bonus(_bonus->_skill_cast_percent);
1668 add_bonus(b);
1669 _bonus->_skill_cast_percent = b;
1670 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_skill_cooldown()

void Horizon::Zone::Traits::Status::set_bonus_skill_cooldown ( std::shared_ptr< Bonuses::BonusSkillCooldown b)
inline
1673 {
1674 if (_bonus->_skill_cooldown != nullptr)
1675 remove_bonus(_bonus->_skill_cooldown);
1676 add_bonus(b);
1677 _bonus->_skill_cooldown = b;
1678 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_skill_fix_cast_percent()

void Horizon::Zone::Traits::Status::set_bonus_skill_fix_cast_percent ( std::shared_ptr< Bonuses::BonusSkillFixCastPercent b)
inline
1681 {
1682 if (_bonus->_skill_fix_cast_percent != nullptr)
1683 remove_bonus(_bonus->_skill_fix_cast_percent);
1684 add_bonus(b);
1685 _bonus->_skill_fix_cast_percent = b;
1686 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_skill_knockback()

void Horizon::Zone::Traits::Status::set_bonus_skill_knockback ( std::shared_ptr< Bonuses::BonusSkillKnockback b)
inline
1657 {
1658 if (_bonus->_skill_knockback != nullptr)
1659 remove_bonus(_bonus->_skill_knockback);
1660 add_bonus(b);
1661 _bonus->_skill_knockback = b;
1662 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_skill_variable_cast_percent()

void Horizon::Zone::Traits::Status::set_bonus_skill_variable_cast_percent ( std::shared_ptr< Bonuses::BonusSkillVariableCastPercent b)
inline
1689 {
1690 if (_bonus->_skill_variable_cast_percent != nullptr)
1691 remove_bonus(_bonus->_skill_variable_cast_percent);
1692 add_bonus(b);
1693 _bonus->_skill_variable_cast_percent = b;
1694 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_soft_defense_percent()

void Horizon::Zone::Traits::Status::set_bonus_soft_defense_percent ( std::shared_ptr< Bonuses::BonusSoftDefensePercent b)
inline
1033 {
1034 if (_bonus->_soft_defense_percent != nullptr)
1035 remove_bonus(_bonus->_soft_defense_percent);
1036 add_bonus(b);
1037 _bonus->_soft_defense_percent = b;
1038 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_soft_magical_defense_percent()

void Horizon::Zone::Traits::Status::set_bonus_soft_magical_defense_percent ( std::shared_ptr< Bonuses::BonusSoftMagicalDefensePercent b)
inline
1049 {
1050 if (_bonus->_soft_magical_defense_percent != nullptr)
1051 remove_bonus(_bonus->_soft_magical_defense_percent);
1052 add_bonus(b);
1053 _bonus->_soft_magical_defense_percent = b;
1054 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_drain_on_monster_kill()

void Horizon::Zone::Traits::Status::set_bonus_sp_drain_on_monster_kill ( std::shared_ptr< Bonuses::BonusSPDrainOnMonsterKill b)
inline
1329 {
1330 if (_bonus->_sp_drain_on_monster_kill != nullptr)
1331 remove_bonus(_bonus->_sp_drain_on_monster_kill);
1332 add_bonus(b);
1333 _bonus->_sp_drain_on_monster_kill = b;
1334 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_drain_percent()

void Horizon::Zone::Traits::Status::set_bonus_sp_drain_percent ( std::shared_ptr< Bonuses::BonusSPDrainPercent b)
inline
1505 {
1506 if (_bonus->_sp_drain_percent != nullptr)
1507 remove_bonus(_bonus->_sp_drain_percent);
1508 add_bonus(b);
1509 _bonus->_sp_drain_percent = b;
1510 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_drain_value()

void Horizon::Zone::Traits::Status::set_bonus_sp_drain_value ( std::shared_ptr< Bonuses::BonusSPDrainValue b)
inline
1513 {
1514 if (_bonus->_bonus_sp_drain_value != nullptr)
1515 remove_bonus(_bonus->_bonus_sp_drain_value);
1516 add_bonus(b);
1517 _bonus->_bonus_sp_drain_value = b;
1518 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_gain_on_mob_kill()

void Horizon::Zone::Traits::Status::set_bonus_sp_gain_on_mob_kill ( std::shared_ptr< Bonuses::BonusSPGainOnMobKill b)
inline
1161 {
1162 if (_bonus->_sp_gain_on_mob_kill != nullptr)
1163 remove_bonus(_bonus->_sp_gain_on_mob_kill);
1164 add_bonus(b);
1165 _bonus->_sp_gain_on_mob_kill = b;
1166 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_percent()

void Horizon::Zone::Traits::Status::set_bonus_sp_percent ( std::shared_ptr< Bonuses::BonusSPPercent b)
inline
849 {
850 if (_bonus->_sp_percent != nullptr)
851 remove_bonus(_bonus->_sp_percent);
852 add_bonus(b);
853 _bonus->_sp_percent = b;
854 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_recovery_percent()

void Horizon::Zone::Traits::Status::set_bonus_sp_recovery_percent ( std::shared_ptr< Bonuses::BonusSPRecoveryPercent b)
inline
897 {
898 if (_bonus->_sp_recovery_percent != nullptr)
899 remove_bonus(_bonus->_sp_recovery_percent);
900 add_bonus(b);
901 _bonus->_sp_recovery_percent = b;
902 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sp_vanish_percent()

void Horizon::Zone::Traits::Status::set_bonus_sp_vanish_percent ( std::shared_ptr< Bonuses::BonusSPVanishPercent b)
inline
1297 {
1298 if (_bonus->_sp_vanish_percent != nullptr)
1299 remove_bonus(_bonus->_sp_vanish_percent);
1300 add_bonus(b);
1301 _bonus->_sp_vanish_percent = b;
1302 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sub_attack_percentage_from_element()

void Horizon::Zone::Traits::Status::set_bonus_sub_attack_percentage_from_element ( std::shared_ptr< Bonuses::BonusSubAttackPercentageFromElement b)
inline
1377 {
1378 if (_bonus->_sub_attack_percentage_from_element != nullptr)
1379 remove_bonus(_bonus->_sub_attack_percentage_from_element);
1380 add_bonus(b);
1381 _bonus->_sub_attack_percentage_from_element = b;
1382 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_sub_attack_percentage_from_race()

void Horizon::Zone::Traits::Status::set_bonus_sub_attack_percentage_from_race ( std::shared_ptr< Bonuses::BonusSubAttackPercentageFromRace b)
inline
1385 {
1386 if (_bonus->_sub_attack_percentage_from_race != nullptr)
1387 remove_bonus(_bonus->_sub_attack_percentage_from_race);
1388 add_bonus(b);
1389 _bonus->_sub_attack_percentage_from_race = b;
1390 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_unbreakable_armor()

void Horizon::Zone::Traits::Status::set_bonus_unbreakable_armor ( std::shared_ptr< Bonuses::BonusUnbreakableArmor b)
inline
1137 {
1138 if (_bonus->_unbreakable_armor != nullptr)
1139 remove_bonus(_bonus->_unbreakable_armor);
1140 add_bonus(b);
1141 _bonus->_unbreakable_armor = b;
1142 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_unbreakable_helm()

void Horizon::Zone::Traits::Status::set_bonus_unbreakable_helm ( std::shared_ptr< Bonuses::BonusUnbreakableHelm b)
inline
1145 {
1146 if (_bonus->_unbreakable_helm != nullptr)
1147 remove_bonus(_bonus->_unbreakable_helm);
1148 add_bonus(b);
1149 _bonus->_unbreakable_helm = b;
1150 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_unbreakable_shield()

void Horizon::Zone::Traits::Status::set_bonus_unbreakable_shield ( std::shared_ptr< Bonuses::BonusUnbreakableShield b)
inline
1153 {
1154 if (_bonus->_unbreakable_shield != nullptr)
1155 remove_bonus(_bonus->_unbreakable_shield);
1156 add_bonus(b);
1157 _bonus->_unbreakable_shield = b;
1158 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_unbreakable_weapon()

void Horizon::Zone::Traits::Status::set_bonus_unbreakable_weapon ( std::shared_ptr< Bonuses::BonusUnbreakableWeapon b)
inline
1129 {
1130 if (_bonus->_unbreakable_weapon != nullptr)
1131 remove_bonus(_bonus->_unbreakable_weapon);
1132 add_bonus(b);
1133 _bonus->_unbreakable_weapon = b;
1134 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_weapon_break_percent()

void Horizon::Zone::Traits::Status::set_bonus_weapon_break_percent ( std::shared_ptr< Bonuses::BonusWeaponBreakPercent b)
inline
1201 {
1202 if (_bonus->_weapon_break_percent != nullptr)
1203 remove_bonus(_bonus->_weapon_break_percent);
1204 add_bonus(b);
1205 _bonus->_weapon_break_percent = b;
1206 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_bonus_weapon_damage_immunity()

void Horizon::Zone::Traits::Status::set_bonus_weapon_damage_immunity ( std::shared_ptr< Bonuses::BonusWeaponDamageImmunity b)
inline
1097 {
1098 if (_bonus->_weapon_damage_immunity != nullptr)
1099 remove_bonus(_bonus->_weapon_damage_immunity);
1100 add_bonus(b);
1101 _bonus->_weapon_damage_immunity = b;
1102 }

References _bonus, add_bonus(), and remove_bonus().

+ Here is the call graph for this function:

◆ set_cloth_color()

void Horizon::Zone::Traits::Status::set_cloth_color ( std::shared_ptr< ClothColor cc)
inline
537{ add_appearance(cc); _cloth_color = cc; }

References _cloth_color, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_creature_attack_damage()

void Horizon::Zone::Traits::Status::set_creature_attack_damage ( std::shared_ptr< MobAttackDamage m)
inline

References _creature_attack_damage, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_chase_range()

void Horizon::Zone::Traits::Status::set_creature_chase_range ( std::shared_ptr< MobChaseRange m)
inline

References _creature_chase_range, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_element()

void Horizon::Zone::Traits::Status::set_creature_element ( std::shared_ptr< MobElement m)
inline
720 {
721 if (_creature_element != nullptr)
723 add_attribute(m);
725 }

References _creature_element, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_element_level()

void Horizon::Zone::Traits::Status::set_creature_element_level ( std::shared_ptr< MobElementLevel m)
inline

References _creature_element_level, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_magic_attack_damage()

void Horizon::Zone::Traits::Status::set_creature_magic_attack_damage ( std::shared_ptr< MobMagicAttackDamage m)
inline

References _creature_magic_attack_damage, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_mode()

void Horizon::Zone::Traits::Status::set_creature_mode ( std::shared_ptr< MobMode m)
inline
736 {
737 if (_creature_mode != nullptr)
739 add_attribute(m);
740 _creature_mode = m;
741 }

References _creature_mode, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_primary_race()

void Horizon::Zone::Traits::Status::set_creature_primary_race ( std::shared_ptr< MobPrimaryRace m)
inline

References _creature_primary_race, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_secondary_race()

void Horizon::Zone::Traits::Status::set_creature_secondary_race ( std::shared_ptr< MobSecondaryRace m)
inline

References _creature_secondary_race, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_view_range()

void Horizon::Zone::Traits::Status::set_creature_view_range ( std::shared_ptr< MobViewRange m)
inline
688 {
689 if (_creature_view_range != nullptr)
691 add_attribute(m);
693 }

References _creature_view_range, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_weapon_attack()

void Horizon::Zone::Traits::Status::set_creature_weapon_attack ( std::shared_ptr< MobWeaponAttack m)
inline

References _creature_weapon_attack, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_creature_weapon_attack_magic()

void Horizon::Zone::Traits::Status::set_creature_weapon_attack_magic ( std::shared_ptr< MobWeaponAttack m)
inline

References _creature_weapon_attack_magic, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_crit()

void Horizon::Zone::Traits::Status::set_crit ( std::shared_ptr< CRIT crit)
inline
488 {
489 if (_crit != nullptr)
492 _crit = crit;
493 }

References _crit, add_attribute(), crit(), and remove_attribute().

Referenced by initialize().

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

◆ set_current_hp()

void Horizon::Zone::Traits::Status::set_current_hp ( std::shared_ptr< CurrentHP hp)
inline
317 {
318 if (_current_hp != nullptr)
320 add_attribute(hp);
321 _current_hp = hp;
322 }

References _current_hp, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_current_sp()

void Horizon::Zone::Traits::Status::set_current_sp ( std::shared_ptr< CurrentSP sp)
inline
325 {
326 if (_current_sp != nullptr)
328 add_attribute(sp);
329 _current_sp = sp;
330 }

References _current_sp, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_current_weight()

void Horizon::Zone::Traits::Status::set_current_weight ( std::shared_ptr< CurrentWeight cw)
inline
397 {
398 if (_current_weight != nullptr)
400 add_attribute(cw);
401 _current_weight = cw;
402 }

References _current_weight, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_damage_walk_delay()

void Horizon::Zone::Traits::Status::set_damage_walk_delay ( std::shared_ptr< DamageWalkDelay m)
inline
607 {
608 if (_damage_walk_delay != nullptr)
610 add_attribute(m);
612 }

References _damage_walk_delay, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_dexterity()

void Horizon::Zone::Traits::Status::set_dexterity ( std::shared_ptr< Dexterity dex)
inline
213 {
214 if (_dex != nullptr)
216 add_attribute(dex);
217 _dex = dex;
218 }

References _dex, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_dexterity_cost()

void Horizon::Zone::Traits::Status::set_dexterity_cost ( std::shared_ptr< DexterityPointCost dex)
inline
261 {
262 if (_dex_cost != nullptr)
264 add_attribute(dex);
265 _dex_cost = dex;
266 }

References _dex_cost, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_equip_atk()

void Horizon::Zone::Traits::Status::set_equip_atk ( std::shared_ptr< EquipATK eatk)
inline
424 {
425 if (_equip_atk != nullptr)
427 add_attribute(eatk);
428 _equip_atk = eatk;
429 }

References _equip_atk, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_equip_matk()

void Horizon::Zone::Traits::Status::set_equip_matk ( std::shared_ptr< EquipMATK ematk)
inline
440 {
441 if (_equip_matk != nullptr)
443 add_attribute(ematk);
444 _equip_matk = ematk;
445 }

References _equip_matk, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_flee()

void Horizon::Zone::Traits::Status::set_flee ( std::shared_ptr< FLEE flee)
inline
496 {
497 if (_flee != nullptr)
500 _flee = flee;
501 }

References _flee, add_attribute(), flee(), and remove_attribute().

Referenced by initialize().

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

◆ set_hair_color()

void Horizon::Zone::Traits::Status::set_hair_color ( std::shared_ptr< HairColor hc)
inline
534{ add_appearance(hc); _hair_color = hc; }

References _hair_color, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_hair_style()

void Horizon::Zone::Traits::Status::set_hair_style ( std::shared_ptr< HairStyle hs)
inline
558{ add_appearance(hs); _hair_style = hs; }

References _hair_style, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_hard_def()

void Horizon::Zone::Traits::Status::set_hard_def ( std::shared_ptr< HardDEF hdef)
inline
456 {
457 if (_hard_def != nullptr)
459 add_attribute(hdef);
460 _hard_def = hdef;
461 }

References _hard_def, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_hard_mdef()

void Horizon::Zone::Traits::Status::set_hard_mdef ( std::shared_ptr< HardMDEF hmdef)
inline
472 {
473 if (_hard_mdef != nullptr)
475 add_attribute(hmdef);
476 _hard_mdef = hmdef;
477 }

References _hard_mdef, add_attribute(), and remove_attribute().

+ Here is the call graph for this function:

◆ set_head_bottom_sprite()

void Horizon::Zone::Traits::Status::set_head_bottom_sprite ( std::shared_ptr< HeadBottomSprite hbs)
inline
555{ add_appearance(hbs); _head_bottom_sprite = hbs; }

References _head_bottom_sprite, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_head_mid_sprite()

void Horizon::Zone::Traits::Status::set_head_mid_sprite ( std::shared_ptr< HeadMidSprite hms)
inline
552{ add_appearance(hms); _head_mid_sprite = hms; }

References _head_mid_sprite, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_head_top_sprite()

void Horizon::Zone::Traits::Status::set_head_top_sprite ( std::shared_ptr< HeadTopSprite hts)
inline
549{ add_appearance(hts); _head_top_sprite = hts; }

References _head_top_sprite, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_hit()

void Horizon::Zone::Traits::Status::set_hit ( std::shared_ptr< HIT hit)
inline
480 {
481 if (_hit != nullptr)
484 _hit = hit;
485 }

References _hit, add_attribute(), hit(), and remove_attribute().

Referenced by initialize().

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

◆ set_honor()

void Horizon::Zone::Traits::Status::set_honor ( std::shared_ptr< Honor h)
inline
572 {
573 if (_honor != nullptr)
575 add_attribute(h);
576 _honor = h;
577 }

References _honor, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_hp_regeneration()

void Horizon::Zone::Traits::Status::set_hp_regeneration ( std::shared_ptr< HPRegeneration hpr)
inline
512 {
513 if (_hp_regeneration != nullptr)
515 add_attribute(hpr);
516 _hp_regeneration = hpr;
517 }

References _hp_regeneration, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_initialized()

void Horizon::Zone::Traits::Status::set_initialized ( bool  b)
inline
746{ _is_initialized = b; }

References _is_initialized.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ set_intelligence()

void Horizon::Zone::Traits::Status::set_intelligence ( std::shared_ptr< Intelligence int_)
inline
221 {
222 if (_int != nullptr)
224 add_attribute(int_);
225 _int = int_;
226 }

References _int, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_intelligence_cost()

void Horizon::Zone::Traits::Status::set_intelligence_cost ( std::shared_ptr< IntelligencePointCost int_)
inline
269 {
270 if (_int_cost != nullptr)
272 add_attribute(int_);
273 _int_cost = int_;
274 }

References _int_cost, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_job_experience()

void Horizon::Zone::Traits::Status::set_job_experience ( std::shared_ptr< JobExperience jexp)
inline
357 {
358 if (_job_exp != nullptr)
360 add_attribute(jexp);
361 _job_exp = jexp;
362 }

References _job_exp, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_job_level()

void Horizon::Zone::Traits::Status::set_job_level ( std::shared_ptr< JobLevel jlvl)
inline
341 {
342 if (_job_level != nullptr)
344 add_attribute(jlvl);
345 _job_level = jlvl;
346 }

References _job_level, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_luck()

void Horizon::Zone::Traits::Status::set_luck ( std::shared_ptr< Luck luck)
inline
229 {
230 if (_luk != nullptr)
233 _luk = luck;
234 }

References _luk, add_attribute(), luck(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_luck_cost()

void Horizon::Zone::Traits::Status::set_luck_cost ( std::shared_ptr< LuckPointCost luck)
inline
277 {
278 if (_luk_cost != nullptr)
281 _luk_cost = luck;
282 }

References _luk_cost, add_attribute(), luck(), and remove_attribute().

Referenced by load().

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

◆ set_manner()

void Horizon::Zone::Traits::Status::set_manner ( std::shared_ptr< Manner m)
inline
580 {
581 if (_manner != nullptr)
583 add_attribute(m);
584 _manner = m;
585 }

References _manner, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_max_hp()

void Horizon::Zone::Traits::Status::set_max_hp ( std::shared_ptr< MaxHP max_hp)
inline
301 {
302 if (_max_hp != nullptr)
305 _max_hp = max_hp;
306 }

References _max_hp, add_attribute(), max_hp(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_max_sp()

void Horizon::Zone::Traits::Status::set_max_sp ( std::shared_ptr< MaxSP max_sp)
inline
309 {
310 if (_max_sp != nullptr)
313 _max_sp = max_sp;
314 }

References _max_sp, add_attribute(), max_sp(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_max_weight()

void Horizon::Zone::Traits::Status::set_max_weight ( std::shared_ptr< MaxWeight mw)
inline
389 {
390 if (_max_weight != nullptr)
392 add_attribute(mw);
393 _max_weight = mw;
394 }

References _max_weight, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_movement_speed()

void Horizon::Zone::Traits::Status::set_movement_speed ( std::shared_ptr< MovementSpeed speed)
inline
381 {
382 if (_movement_speed != nullptr)
384 add_attribute(speed);
385 _movement_speed = speed;
386 }

References _movement_speed, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_next_base_experience()

void Horizon::Zone::Traits::Status::set_next_base_experience ( std::shared_ptr< NextBaseExperience nbexp)
inline
365 {
366 if (_next_base_exp != nullptr)
368 add_attribute(nbexp);
369 _next_base_exp = nbexp;
370 }

References _next_base_exp, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_next_job_experience()

void Horizon::Zone::Traits::Status::set_next_job_experience ( std::shared_ptr< NextJobExperience njexp)
inline
373 {
374 if (_next_job_exp != nullptr)
376 add_attribute(njexp);
377 _next_job_exp = njexp;
378 }

References _next_job_exp, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_robe_sprite()

void Horizon::Zone::Traits::Status::set_robe_sprite ( std::shared_ptr< RobeSprite rs)
inline
546{ add_appearance(rs); _robe_sprite = rs; }

References _robe_sprite, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_shield_sprite()

void Horizon::Zone::Traits::Status::set_shield_sprite ( std::shared_ptr< ShieldSprite ss)
inline
543{ add_appearance(ss); _shield_sprite = ss; }
std::shared_ptr< ShieldSprite > _shield_sprite
Definition: Status.hpp:1841

References _shield_sprite, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_size()

void Horizon::Zone::Traits::Status::set_size ( std::shared_ptr< UnitSize s)
inline
647 {
648 if (_size != nullptr)
650 add_attribute(s);
651 _size = s;
652 }
std::shared_ptr< UnitSize > _size
Definition: Status.hpp:1860

References _size, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_skill_point()

void Horizon::Zone::Traits::Status::set_skill_point ( std::shared_ptr< SkillPoint sk)
inline
293 {
294 if (_skill_point != nullptr)
296 add_attribute(sk);
297 _skill_point = sk;
298 }
std::shared_ptr< SkillPoint > _skill_point
Definition: Status.hpp:1806

References _skill_point, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_soft_def()

void Horizon::Zone::Traits::Status::set_soft_def ( std::shared_ptr< SoftDEF sdef)
inline
448 {
449 if (_soft_def != nullptr)
451 add_attribute(sdef);
452 _soft_def = sdef;
453 }
std::shared_ptr< SoftDEF > _soft_def
Definition: Status.hpp:1826

References _soft_def, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_soft_mdef()

void Horizon::Zone::Traits::Status::set_soft_mdef ( std::shared_ptr< SoftMDEF smdef)
inline
464 {
465 if (_soft_mdef != nullptr)
467 add_attribute(smdef);
468 _soft_mdef = smdef;
469 }
std::shared_ptr< SoftMDEF > _soft_mdef
Definition: Status.hpp:1828

References _soft_mdef, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_sp_regeneration()

void Horizon::Zone::Traits::Status::set_sp_regeneration ( std::shared_ptr< SPRegeneration spr)
inline
520 {
521 if (_sp_regeneration != nullptr)
523 add_attribute(spr);
524 _sp_regeneration = spr;
525 }
std::shared_ptr< SPRegeneration > _sp_regeneration
Definition: Status.hpp:1835

References _sp_regeneration, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_status_atk()

void Horizon::Zone::Traits::Status::set_status_atk ( std::shared_ptr< StatusATK satk)
inline
416 {
417 if (_status_atk != nullptr)
419 add_attribute(satk);
420 _status_atk = satk;
421 }
std::shared_ptr< StatusATK > _status_atk
Definition: Status.hpp:1822

References _status_atk, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_status_matk()

void Horizon::Zone::Traits::Status::set_status_matk ( std::shared_ptr< StatusMATK smatk)
inline
432 {
433 if (_status_matk != nullptr)
435 add_attribute(smatk);
436 _status_matk = smatk;
437 }
std::shared_ptr< StatusMATK > _status_matk
Definition: Status.hpp:1824

References _status_matk, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_status_point()

void Horizon::Zone::Traits::Status::set_status_point ( std::shared_ptr< StatusPoint st)
inline
285 {
286 if (_status_point != nullptr)
288 add_attribute(st);
289 _status_point = st;
290 }
std::shared_ptr< StatusPoint > _status_point
Definition: Status.hpp:1805

References _status_point, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_strength()

void Horizon::Zone::Traits::Status::set_strength ( std::shared_ptr< Strength str)
inline
189 {
190 if (_str != nullptr)
192 add_attribute(str);
193 _str = str;
194 }
std::shared_ptr< Strength > _str
Definition: Status.hpp:1793

References _str, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_strength_cost()

void Horizon::Zone::Traits::Status::set_strength_cost ( std::shared_ptr< StrengthPointCost str)
inline
237 {
238 if (_str_cost != nullptr)
240 add_attribute(str);
241 _str_cost = str;
242 }
std::shared_ptr< StrengthPointCost > _str_cost
Definition: Status.hpp:1799

References _str_cost, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_virtue()

void Horizon::Zone::Traits::Status::set_virtue ( std::shared_ptr< Virtue v)
inline
588 {
589 if (_virtue != nullptr)
591 add_attribute(v);
592 _virtue = v;
593 }
std::shared_ptr< Virtue > _virtue
Definition: Status.hpp:1852

References _virtue, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_vitality()

void Horizon::Zone::Traits::Status::set_vitality ( std::shared_ptr< Vitality vit)
inline
205 {
206 if (_vit != nullptr)
208 add_attribute(vit);
209 _vit = vit;
210 }
std::shared_ptr< Vitality > _vit
Definition: Status.hpp:1795

References _vit, add_attribute(), and remove_attribute().

Referenced by initialize(), and load().

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

◆ set_vitality_cost()

void Horizon::Zone::Traits::Status::set_vitality_cost ( std::shared_ptr< VitalityPointCost vit)
inline
253 {
254 if (_vit_cost != nullptr)
256 add_attribute(vit);
257 _vit_cost = vit;
258 }
std::shared_ptr< VitalityPointCost > _vit_cost
Definition: Status.hpp:1801

References _vit_cost, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ set_weapon_attack_combined()

void Horizon::Zone::Traits::Status::set_weapon_attack_combined ( std::shared_ptr< WeaponAttackCombined w)
inline
639 {
640 if (_weapon_attack_combined != nullptr)
642 add_attribute(w);
644 }
std::shared_ptr< WeaponAttackCombined > _weapon_attack_combined
Definition: Status.hpp:1859

References _weapon_attack_combined, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_weapon_attack_left()

void Horizon::Zone::Traits::Status::set_weapon_attack_left ( std::shared_ptr< WeaponAttackLeft w)
inline
623 {
624 if (_weapon_attack_left != nullptr)
626 add_attribute(w);
628 }
std::shared_ptr< WeaponAttackLeft > _weapon_attack_left
Definition: Status.hpp:1857

References _weapon_attack_left, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_weapon_attack_right()

void Horizon::Zone::Traits::Status::set_weapon_attack_right ( std::shared_ptr< WeaponAttackRight w)
inline
631 {
632 if (_weapon_attack_right != nullptr)
634 add_attribute(w);
636 }
std::shared_ptr< WeaponAttackRight > _weapon_attack_right
Definition: Status.hpp:1858

References _weapon_attack_right, add_attribute(), and remove_attribute().

Referenced by initialize().

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

◆ set_weapon_sprite()

void Horizon::Zone::Traits::Status::set_weapon_sprite ( std::shared_ptr< WeaponSprite ws)
inline
540{ add_appearance(ws); _weapon_sprite = ws; }
std::shared_ptr< WeaponSprite > _weapon_sprite
Definition: Status.hpp:1840

References _weapon_sprite, and add_appearance().

Referenced by initialize(), and load().

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

◆ set_zeny()

void Horizon::Zone::Traits::Status::set_zeny ( std::shared_ptr< Zeny z)
inline
564 {
565 if (_zeny != nullptr)
567 add_attribute(z);
568 _zeny = z;
569 }
std::shared_ptr< Zeny > _zeny
Definition: Status.hpp:1849

References _zeny, add_attribute(), and remove_attribute().

Referenced by load().

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

◆ shield_sprite()

std::shared_ptr< ShieldSprite > Horizon::Zone::Traits::Status::shield_sprite ( )
inline
542{ return _shield_sprite; }

References _shield_sprite.

Referenced by on_equipment_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ size()

std::shared_ptr< UnitSize > Horizon::Zone::Traits::Status::size ( )
inline
646{ return _size; }

References _size.

◆ skill_point()

std::shared_ptr< SkillPoint > Horizon::Zone::Traits::Status::skill_point ( )
inline
292{ return _skill_point; }

References _skill_point.

Referenced by initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ soft_def()

std::shared_ptr< SoftDEF > Horizon::Zone::Traits::Status::soft_def ( )
inline
447{ return _soft_def; }

References _soft_def.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ soft_mdef()

std::shared_ptr< SoftMDEF > Horizon::Zone::Traits::Status::soft_mdef ( )
inline
463{ return _soft_mdef; }

References _soft_mdef.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ sp_regeneration()

std::shared_ptr< SPRegeneration > Horizon::Zone::Traits::Status::sp_regeneration ( )
inline
519{ return _sp_regeneration; }

References _sp_regeneration.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ status_atk()

std::shared_ptr< StatusATK > Horizon::Zone::Traits::Status::status_atk ( )
inline

SubAttributes.

415{ return _status_atk; }

References _status_atk.

Referenced by initialize(), and on_equipment_changed().

+ Here is the caller graph for this function:

◆ status_matk()

std::shared_ptr< StatusMATK > Horizon::Zone::Traits::Status::status_matk ( )
inline
431{ return _status_matk; }

References _status_matk.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ status_point()

std::shared_ptr< StatusPoint > Horizon::Zone::Traits::Status::status_point ( )
inline
284{ return _status_point; }

References _status_point.

Referenced by increase_status_point(), initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ status_registry()

std::shared_ptr< StatusRegistry > Horizon::Zone::Traits::Status::status_registry ( )
inline
743{ return _status_registry; }

References _status_registry.

◆ strength()

std::shared_ptr< Strength > Horizon::Zone::Traits::Status::strength ( )
inline

Attributes.

188{ return _str; }

References _str.

Referenced by get_status_base(), increase_status_point(), initialize(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ strength_cost()

std::shared_ptr< StrengthPointCost > Horizon::Zone::Traits::Status::strength_cost ( )
inline
236{ return _str_cost; }

References _str_cost.

Referenced by increase_status_point(), and initialize().

+ Here is the caller graph for this function:

◆ unit()

std::shared_ptr< Unit > Horizon::Zone::Traits::Status::unit ( )
inlineprotected
1785{ return _unit.lock(); }

References _unit.

◆ update()

bool Status::update ( uint64_t  delta)
526{
527 if (!is_initialized()) {
528 return false;
529 }
530
531 bool recalculate = false;
532 // Update all attributes in the list.
533 // When a change is made in the list of temporary, permanent and interval changes, the attribute requires a recalculation?
534 for (auto i : _attributes) {
535 i->update(delta);
536 if (i->needs_recalculation())
537 recalculate = true;
538 }
539
540 if (recalculate)
541 this->recalculate();
542
543 return true;
544}
bool recalculate(bool notify=true)
Definition: Status.cpp:509

References _attributes, is_initialized(), and recalculate().

+ Here is the call graph for this function:

◆ virtue()

std::shared_ptr< Virtue > Horizon::Zone::Traits::Status::virtue ( )
inline
587{ return _virtue; }

References _virtue.

Referenced by save().

+ Here is the caller graph for this function:

◆ vitality()

std::shared_ptr< Vitality > Horizon::Zone::Traits::Status::vitality ( )
inline
204{ return _vit; }

References _vit.

Referenced by get_status_base(), increase_status_point(), initialize(), load(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ vitality_cost()

std::shared_ptr< VitalityPointCost > Horizon::Zone::Traits::Status::vitality_cost ( )
inline
252{ return _vit_cost; }

References _vit_cost.

Referenced by increase_status_point(), and initialize().

+ Here is the caller graph for this function:

◆ weapon_attack_combined()

std::shared_ptr< WeaponAttackCombined > Horizon::Zone::Traits::Status::weapon_attack_combined ( )
inline
638{ return _weapon_attack_combined; }

References _weapon_attack_combined.

Referenced by initialize().

+ Here is the caller graph for this function:

◆ weapon_attack_left()

std::shared_ptr< WeaponAttackLeft > Horizon::Zone::Traits::Status::weapon_attack_left ( )
inline
622{ return _weapon_attack_left; }

References _weapon_attack_left.

Referenced by initialize(), and on_equipment_changed().

+ Here is the caller graph for this function:

◆ weapon_attack_right()

std::shared_ptr< WeaponAttackRight > Horizon::Zone::Traits::Status::weapon_attack_right ( )
inline
630{ return _weapon_attack_right; }

References _weapon_attack_right.

Referenced by initialize(), and on_equipment_changed().

+ Here is the caller graph for this function:

◆ weapon_sprite()

std::shared_ptr< WeaponSprite > Horizon::Zone::Traits::Status::weapon_sprite ( )
inline
539{ return _weapon_sprite; }

References _weapon_sprite.

Referenced by on_equipment_changed(), save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

◆ zeny()

std::shared_ptr< Zeny > Horizon::Zone::Traits::Status::zeny ( )
inline
563{ return _zeny; }

References _zeny.

Referenced by save(), and Horizon::Zone::UnitComponent::sync_data_types().

+ Here is the caller graph for this function:

Member Data Documentation

◆ _agi

std::shared_ptr<Agility> Horizon::Zone::Traits::Status::_agi
private

Referenced by agility(), and set_agility().

◆ _agi_cost

std::shared_ptr<AgilityPointCost> Horizon::Zone::Traits::Status::_agi_cost
private

Referenced by agility_cost(), and set_agility_cost().

◆ _appearances

std::vector<std::shared_ptr<Appearance> > Horizon::Zone::Traits::Status::_appearances
private

◆ _aspd

std::shared_ptr<AttackSpeed> Horizon::Zone::Traits::Status::_aspd
private

Referenced by attack_speed(), and set_attack_speed().

◆ _attack_delay

std::shared_ptr<AttackDelay> Horizon::Zone::Traits::Status::_attack_delay
private

Referenced by attack_delay(), and set_attack_delay().

◆ _attack_range

std::shared_ptr<AttackRange> Horizon::Zone::Traits::Status::_attack_range
private

Referenced by attack_range(), and set_attack_range().

◆ _attributes

std::vector<std::shared_ptr<Attribute> > Horizon::Zone::Traits::Status::_attributes
private

◆ _base_appearance

std::shared_ptr<BaseAppearance> Horizon::Zone::Traits::Status::_base_appearance
private

◆ _base_attack

std::shared_ptr<BaseAttack> Horizon::Zone::Traits::Status::_base_attack
private

Referenced by base_attack(), and set_base_attack().

◆ _base_exp

std::shared_ptr<BaseExperience> Horizon::Zone::Traits::Status::_base_exp
private

◆ _base_level

std::shared_ptr<BaseLevel> Horizon::Zone::Traits::Status::_base_level
private

Referenced by base_level(), and set_base_level().

◆ _body_style

std::shared_ptr<BodyStyle> Horizon::Zone::Traits::Status::_body_style
private

Referenced by body_style(), and set_body_style().

◆ _bonus

std::shared_ptr<bonuses> Horizon::Zone::Traits::Status::_bonus
private

Referenced by bonus_add_attack(), bonus_add_attack_percent(), bonus_add_attack_percentage_to_element(), bonus_add_attack_percentage_to_race(), bonus_add_attack_percentage_to_size(), bonus_add_damage_to_class(), bonus_add_defense_to_class(), bonus_add_effect_on_damage(), bonus_add_effect_on_magic_attack(), bonus_add_effect_when_damaged(), bonus_add_ele_magic_damage_percent(), bonus_add_ele_weapon_damage_percent(), bonus_add_item_drop_on_monster_kill(), bonus_add_magic_attack_percentage_to_element(), bonus_add_magic_attack_percentage_to_size(), bonus_add_magic_attack_to_Race(), bonus_add_magic_damage_to_class(), bonus_add_magical_defense_to_class(), bonus_add_movement_speed_percent(), bonus_add_steal_percent(), bonus_add_weapon_coma_to_element(), bonus_add_weapon_coma_to_race(), bonus_add_weapon_coma_to_sub_element(), bonus_add_weapon_coma_to_sub_race(), bonus_all_status(), bonus_armor_break_percent(), bonus_attack_element(), bonus_attack_on_defense_ratio_for_element(), bonus_attack_on_defense_ratio_for_race(), bonus_attack_percent(), bonus_attack_range(), bonus_attack_range_percent(), bonus_attack_speed_percent(), bonus_auto_spell_on_attack(), bonus_auto_spell_on_receive_damage(), bonus_auto_spell_on_self(), bonus_auto_spell_on_skill(), bonus_cast_cancel_immunity(), bonus_cast_percent(), bonus_critical_damage_percent(), bonus_critical_defense(), bonus_critical_percent(), bonus_critical_race(), bonus_critical_race_percent(), bonus_damage_reduction_against_size(), bonus_damage_splash_range(), bonus_defense_element(), bonus_disable_hp_recovery(), bonus_disable_sp_recovery(), bonus_double_attack_percent(), bonus_exp_percent_per_race(), bonus_flee_percent(), bonus_gear_fuel_immunity(), bonus_gemstone_immunity(), bonus_get_zeny_num(), bonus_hard_defense_percent(), bonus_hard_magical_defense_percent(), bonus_heal_of_skill_casted_on_self(), bonus_hit_percent(), bonus_hp_drain_on_monster_kill(), bonus_hp_drain_percent(), bonus_hp_drain_value(), bonus_hp_gain_on_mob_kill(), bonus_hp_recovery_percent(), bonus_hp_vanish_percent(), bonus_ignore_defense_from_element(), bonus_ignore_defense_from_race(), bonus_ignore_magic_defense_from_element(), bonus_ignore_magic_defense_from_race(), bonus_infinite_endure(), bonus_item_usage_immunity(), bonus_job_percent_per_race(), bonus_knock_back_immunity(), bonus_learned_skill_heal(), bonus_long_weapon_damage_percent(), bonus_magic_attack_percent(), bonus_magic_damage_immunity(), bonus_magic_damage_reduction_against_size(), bonus_magic_damage_reflect_percent_on_self(), bonus_magic_defense_percent(), bonus_max_hp_percent(), bonus_max_sp_percent(), bonus_melee_defense(), bonus_melee_weapon_damage_reflect_percent_on_self(), bonus_misc_defense_percent(), bonus_perfect_dodge_percent(), bonus_perfect_hit_percent(), bonus_raise(), bonus_ranged_defense(), bonus_ranged_weapon_damage_reflect_percent_on_self(), bonus_reduce_sp_consumption_of_skill(), bonus_reduce_sp_consumption_of_skill_by_percent(), bonus_resist_magic_attack_from_race(), bonus_resist_skill_damage_percent(), bonus_ressist_effect(), bonus_restart_with_full_recovery(), bonus_short_weapon_damage_percent(), bonus_size_modifier_immunity(), bonus_skill_attack(), bonus_skill_cast_percent(), bonus_skill_cooldown(), bonus_skill_fix_cast_percent(), bonus_skill_knockback(), bonus_skill_variable_cast_percent(), bonus_soft_defense_percent(), bonus_soft_magical_defense_percent(), bonus_sp_drain_on_monster_kill(), bonus_sp_drain_percent(), bonus_sp_drain_value(), bonus_sp_gain_on_mob_kill(), bonus_sp_percent(), bonus_sp_recovery_percent(), bonus_sp_vanish_percent(), bonus_sub_attack_percentage_from_element(), bonus_sub_attack_percentage_from_race(), bonus_unbreakable_armor(), bonus_unbreakable_helm(), bonus_unbreakable_shield(), bonus_unbreakable_weapon(), bonus_weapon_break_percent(), bonus_weapon_damage_immunity(), set_bonus_add_attack(), set_bonus_add_attack_percent(), set_bonus_add_attack_percentage_to_element(), set_bonus_add_attack_percentage_to_race(), set_bonus_add_attack_percentage_to_size(), set_bonus_add_damage_to_class(), set_bonus_add_defense_to_class(), set_bonus_add_effect_on_damage(), set_bonus_add_effect_on_magic_attack(), set_bonus_add_effect_when_damaged(), set_bonus_add_ele_magic_damage_percent(), set_bonus_add_ele_weapon_damage_percent(), set_bonus_add_item_drop_on_monster_kill(), set_bonus_add_magic_attack_percentage_to_element(), set_bonus_add_magic_attack_percentage_to_race(), set_bonus_add_magic_attack_percentage_to_size(), set_bonus_add_magic_damage_to_class(), set_bonus_add_magical_defense_to_class(), set_bonus_add_movement_speed_percent(), set_bonus_add_steal_percent(), set_bonus_add_weapon_coma_to_element(), set_bonus_add_weapon_coma_to_race(), set_bonus_add_weapon_coma_to_sub_element(), set_bonus_add_weapon_coma_to_sub_race(), set_bonus_all_status(), set_bonus_armor_break_percent(), set_bonus_attack_element(), set_bonus_attack_on_defense_ratio_for_element(), set_bonus_attack_on_defense_ratio_for_race(), set_bonus_attack_percent(), set_bonus_attack_range(), set_bonus_attack_range_percent(), set_bonus_attack_speed_percent(), set_bonus_auto_spell_on_attack(), set_bonus_auto_spell_on_receive_damage(), set_bonus_auto_spell_on_self(), set_bonus_auto_spell_on_skill(), set_bonus_cast_cancel_immunity(), set_bonus_cast_percent(), set_bonus_critical_damage_percent(), set_bonus_critical_defense(), set_bonus_critical_percent(), set_bonus_critical_race(), set_bonus_critical_race_percent(), set_bonus_damage_reduction_against_size(), set_bonus_damage_splash_range(), set_bonus_defense_element(), set_bonus_disable_hp_recovery(), set_bonus_disable_sp_recovery(), set_bonus_double_attack_percent(), set_bonus_exp_percent_per_race(), set_bonus_flee_percent(), set_bonus_gear_fuel_immunity(), set_bonus_gemstone_immunity(), set_bonus_get_zeny_num(), set_bonus_hard_defense_percent(), set_bonus_hard_magical_defense_percent(), set_bonus_heal_of_skill_casted_on_self(), set_bonus_hit_percent(), set_bonus_hp_drain_on_monster_kill(), set_bonus_hp_drain_percent(), set_bonus_hp_drain_value(), set_bonus_hp_gain_on_mob_kill(), set_bonus_hp_recovery_percent(), set_bonus_hp_vanish_percent(), set_bonus_ignore_defense_from_element(), set_bonus_ignore_defense_from_race(), set_bonus_ignore_magic_defense_from_element(), set_bonus_ignore_magic_defense_from_race(), set_bonus_infinite_endure(), set_bonus_item_usage_immunity(), set_bonus_job_percent_per_race(), set_bonus_knock_back_immunity(), set_bonus_learned_skill_heal(), set_bonus_long_weapon_damage_percent(), set_bonus_magic_attack_percent(), set_bonus_magic_damage_immunity(), set_bonus_magic_damage_reduction_against_size(), set_bonus_magic_damage_reflect_percent_on_self(), set_bonus_magic_defense_percent(), set_bonus_max_hp_percent(), set_bonus_max_sp_percent(), set_bonus_melee_defense(), set_bonus_melee_weapon_damage_reflect_percent_on_self(), set_bonus_misc_defense_percent(), set_bonus_perfect_dodge_percent(), set_bonus_perfect_hit_percent(), set_bonus_raise(), set_bonus_ranged_defense(), set_bonus_ranged_weapon_damage_reflect_percent_on_self(), set_bonus_reduce_sp_consumption_of_skill(), set_bonus_reduce_sp_consumption_of_skill_by_percent(), set_bonus_resist_magic_attack_from_race(), set_bonus_resist_skill_damage_percent(), set_bonus_ressist_effect(), set_bonus_restart_with_full_recovery(), set_bonus_short_weapon_damage_percent(), set_bonus_size_modifier_immunity(), set_bonus_skill_attack(), set_bonus_skill_cast_percent(), set_bonus_skill_cooldown(), set_bonus_skill_fix_cast_percent(), set_bonus_skill_knockback(), set_bonus_skill_variable_cast_percent(), set_bonus_soft_defense_percent(), set_bonus_soft_magical_defense_percent(), set_bonus_sp_drain_on_monster_kill(), set_bonus_sp_drain_percent(), set_bonus_sp_drain_value(), set_bonus_sp_gain_on_mob_kill(), set_bonus_sp_percent(), set_bonus_sp_recovery_percent(), set_bonus_sp_vanish_percent(), set_bonus_sub_attack_percentage_from_element(), set_bonus_sub_attack_percentage_from_race(), set_bonus_unbreakable_armor(), set_bonus_unbreakable_helm(), set_bonus_unbreakable_shield(), set_bonus_unbreakable_weapon(), set_bonus_weapon_break_percent(), and set_bonus_weapon_damage_immunity().

◆ _bonus_arrays

std::vector<std::shared_ptr<Bonuses::IBonusArray> > Horizon::Zone::Traits::Status::_bonus_arrays
private

◆ _bonuses

std::vector<std::shared_ptr<Bonuses::Bonus> > Horizon::Zone::Traits::Status::_bonuses
private

Referenced by add_bonus(), get_bonus(), and remove_bonus().

◆ _cloth_color

std::shared_ptr<ClothColor> Horizon::Zone::Traits::Status::_cloth_color
private

Referenced by cloth_color(), and set_cloth_color().

◆ _creature_attack_damage

std::shared_ptr<MobAttackDamage> Horizon::Zone::Traits::Status::_creature_attack_damage
private

◆ _creature_chase_range

std::shared_ptr<MobChaseRange> Horizon::Zone::Traits::Status::_creature_chase_range
private

◆ _creature_element

std::shared_ptr<MobElement> Horizon::Zone::Traits::Status::_creature_element
private

◆ _creature_element_level

std::shared_ptr<MobElementLevel> Horizon::Zone::Traits::Status::_creature_element_level
private

◆ _creature_magic_attack_damage

std::shared_ptr<MobMagicAttackDamage> Horizon::Zone::Traits::Status::_creature_magic_attack_damage
private

◆ _creature_mode

std::shared_ptr<MobMode> Horizon::Zone::Traits::Status::_creature_mode
private

Referenced by creature_mode(), and set_creature_mode().

◆ _creature_primary_race

std::shared_ptr<MobPrimaryRace> Horizon::Zone::Traits::Status::_creature_primary_race
private

◆ _creature_secondary_race

std::shared_ptr<MobSecondaryRace> Horizon::Zone::Traits::Status::_creature_secondary_race
private

◆ _creature_view_range

std::shared_ptr<MobViewRange> Horizon::Zone::Traits::Status::_creature_view_range
private

◆ _creature_weapon_attack

std::shared_ptr<MobWeaponAttack> Horizon::Zone::Traits::Status::_creature_weapon_attack
private

◆ _creature_weapon_attack_magic

std::shared_ptr<MobWeaponAttack> Horizon::Zone::Traits::Status::_creature_weapon_attack_magic
private

◆ _crit

std::shared_ptr<CRIT> Horizon::Zone::Traits::Status::_crit
private

Referenced by crit(), and set_crit().

◆ _current_hp

std::shared_ptr<CurrentHP> Horizon::Zone::Traits::Status::_current_hp
private

Referenced by current_hp(), and set_current_hp().

◆ _current_sp

std::shared_ptr<CurrentSP> Horizon::Zone::Traits::Status::_current_sp
private

Referenced by current_sp(), and set_current_sp().

◆ _current_weight

std::shared_ptr<CurrentWeight> Horizon::Zone::Traits::Status::_current_weight
private

◆ _damage_walk_delay

std::shared_ptr<DamageWalkDelay> Horizon::Zone::Traits::Status::_damage_walk_delay
private

◆ _dex

std::shared_ptr<Dexterity> Horizon::Zone::Traits::Status::_dex
private

Referenced by dexterity(), and set_dexterity().

◆ _dex_cost

std::shared_ptr<DexterityPointCost> Horizon::Zone::Traits::Status::_dex_cost
private

◆ _equip_atk

std::shared_ptr<EquipATK> Horizon::Zone::Traits::Status::_equip_atk
private

Referenced by equip_atk(), and set_equip_atk().

◆ _equip_matk

std::shared_ptr<EquipMATK> Horizon::Zone::Traits::Status::_equip_matk
private

Referenced by equip_matk(), and set_equip_matk().

◆ _flee

std::shared_ptr<FLEE> Horizon::Zone::Traits::Status::_flee
private

Referenced by flee(), and set_flee().

◆ _hair_color

std::shared_ptr<HairColor> Horizon::Zone::Traits::Status::_hair_color
private

Referenced by hair_color(), and set_hair_color().

◆ _hair_style

std::shared_ptr<HairStyle> Horizon::Zone::Traits::Status::_hair_style
private

Referenced by hair_style(), and set_hair_style().

◆ _hard_def

std::shared_ptr<HardDEF> Horizon::Zone::Traits::Status::_hard_def
private

Referenced by hard_def(), and set_hard_def().

◆ _hard_mdef

std::shared_ptr<HardMDEF> Horizon::Zone::Traits::Status::_hard_mdef
private

Referenced by hard_mdef(), and set_hard_mdef().

◆ _head_bottom_sprite

std::shared_ptr<HeadBottomSprite> Horizon::Zone::Traits::Status::_head_bottom_sprite
private

◆ _head_mid_sprite

std::shared_ptr<HeadMidSprite> Horizon::Zone::Traits::Status::_head_mid_sprite
private

◆ _head_top_sprite

std::shared_ptr<HeadTopSprite> Horizon::Zone::Traits::Status::_head_top_sprite
private

◆ _hit

std::shared_ptr<HIT> Horizon::Zone::Traits::Status::_hit
private

Referenced by hit(), and set_hit().

◆ _honor

std::shared_ptr<Honor> Horizon::Zone::Traits::Status::_honor
private

Referenced by honor(), and set_honor().

◆ _hp_regeneration

std::shared_ptr<HPRegeneration> Horizon::Zone::Traits::Status::_hp_regeneration
private

◆ _int

std::shared_ptr<Intelligence> Horizon::Zone::Traits::Status::_int
private

◆ _int_cost

std::shared_ptr<IntelligencePointCost> Horizon::Zone::Traits::Status::_int_cost
private

◆ _is_initialized

bool Horizon::Zone::Traits::Status::_is_initialized { false }
protected

Referenced by is_initialized(), and set_initialized().

◆ _job_exp

std::shared_ptr<JobExperience> Horizon::Zone::Traits::Status::_job_exp
private

◆ _job_level

std::shared_ptr<JobLevel> Horizon::Zone::Traits::Status::_job_level
private

Referenced by job_level(), and set_job_level().

◆ _luk

std::shared_ptr<Luck> Horizon::Zone::Traits::Status::_luk
private

Referenced by luck(), and set_luck().

◆ _luk_cost

std::shared_ptr<LuckPointCost> Horizon::Zone::Traits::Status::_luk_cost
private

Referenced by luck_cost(), and set_luck_cost().

◆ _manner

std::shared_ptr<Manner> Horizon::Zone::Traits::Status::_manner
private

Referenced by manner(), and set_manner().

◆ _max_hp

std::shared_ptr<MaxHP> Horizon::Zone::Traits::Status::_max_hp
private

Referenced by max_hp(), and set_max_hp().

◆ _max_sp

std::shared_ptr<MaxSP> Horizon::Zone::Traits::Status::_max_sp
private

Referenced by max_sp(), and set_max_sp().

◆ _max_weight

std::shared_ptr<MaxWeight> Horizon::Zone::Traits::Status::_max_weight
private

Referenced by max_weight(), and set_max_weight().

◆ _movement_speed

std::shared_ptr<MovementSpeed> Horizon::Zone::Traits::Status::_movement_speed
private

◆ _next_base_exp

std::shared_ptr<NextBaseExperience> Horizon::Zone::Traits::Status::_next_base_exp
private

◆ _next_job_exp

std::shared_ptr<NextJobExperience> Horizon::Zone::Traits::Status::_next_job_exp
private

◆ _robe_sprite

std::shared_ptr<RobeSprite> Horizon::Zone::Traits::Status::_robe_sprite
private

Referenced by robe_sprite(), and set_robe_sprite().

◆ _shield_sprite

std::shared_ptr<ShieldSprite> Horizon::Zone::Traits::Status::_shield_sprite
private

Referenced by set_shield_sprite(), and shield_sprite().

◆ _size

std::shared_ptr<UnitSize> Horizon::Zone::Traits::Status::_size
private

Referenced by set_size(), and size().

◆ _skill_point

std::shared_ptr<SkillPoint> Horizon::Zone::Traits::Status::_skill_point
private

Referenced by set_skill_point(), and skill_point().

◆ _soft_def

std::shared_ptr<SoftDEF> Horizon::Zone::Traits::Status::_soft_def
private

Referenced by set_soft_def(), and soft_def().

◆ _soft_mdef

std::shared_ptr<SoftMDEF> Horizon::Zone::Traits::Status::_soft_mdef
private

Referenced by set_soft_mdef(), and soft_mdef().

◆ _sp_regeneration

std::shared_ptr<SPRegeneration> Horizon::Zone::Traits::Status::_sp_regeneration
private

◆ _status_atk

std::shared_ptr<StatusATK> Horizon::Zone::Traits::Status::_status_atk
private

Referenced by set_status_atk(), and status_atk().

◆ _status_matk

std::shared_ptr<StatusMATK> Horizon::Zone::Traits::Status::_status_matk
private

Referenced by set_status_matk(), and status_matk().

◆ _status_point

std::shared_ptr<StatusPoint> Horizon::Zone::Traits::Status::_status_point
private

Referenced by set_status_point(), and status_point().

◆ _status_registry

std::shared_ptr<StatusRegistry> Horizon::Zone::Traits::Status::_status_registry { nullptr }
private

Referenced by Status(), and status_registry().

◆ _str

std::shared_ptr<Strength> Horizon::Zone::Traits::Status::_str
private

Referenced by set_strength(), and strength().

◆ _str_cost

std::shared_ptr<StrengthPointCost> Horizon::Zone::Traits::Status::_str_cost
private

Referenced by set_strength_cost(), and strength_cost().

◆ _type

unit_type Horizon::Zone::Traits::Status::_type { UNIT_PLAYER }
protected

◆ _unit

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

◆ _virtue

std::shared_ptr<Virtue> Horizon::Zone::Traits::Status::_virtue
private

Referenced by set_virtue(), and virtue().

◆ _vit

std::shared_ptr<Vitality> Horizon::Zone::Traits::Status::_vit
private

Referenced by set_vitality(), and vitality().

◆ _vit_cost

std::shared_ptr<VitalityPointCost> Horizon::Zone::Traits::Status::_vit_cost
private

Referenced by set_vitality_cost(), and vitality_cost().

◆ _weapon_attack_combined

std::shared_ptr<WeaponAttackCombined> Horizon::Zone::Traits::Status::_weapon_attack_combined
private

◆ _weapon_attack_left

std::shared_ptr<WeaponAttackLeft> Horizon::Zone::Traits::Status::_weapon_attack_left
private

◆ _weapon_attack_right

std::shared_ptr<WeaponAttackRight> Horizon::Zone::Traits::Status::_weapon_attack_right
private

◆ _weapon_sprite

std::shared_ptr<WeaponSprite> Horizon::Zone::Traits::Status::_weapon_sprite
private

Referenced by set_weapon_sprite(), and weapon_sprite().

◆ _zeny

std::shared_ptr<Zeny> Horizon::Zone::Traits::Status::_zeny
private

Referenced by set_zeny(), and zeny().


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