#include "StdAfx.h" #include ".\changeattrstatus.h" #include "SkillAttrCalculator.h" ChangeAttrStatus::ChangeAttrStatus() { } ChangeAttrStatus::~ChangeAttrStatus() { } void ChangeAttrStatus::Init(Character* owner, Character* attacker, Ability* ability) { AbilityStatus::Init(owner, attacker, ability); SetAbilityValueType(1); } void ChangeAttrStatus::End() { BaseStatus::End(); // »óÅÂÀû¿ëÀÌ ³¡³µÀ½À» Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ¾Ë·ÁÁØ´Ù. // ¸¸ÀÏ ÇöÀç ¼Ó¼ºÀÌ À¯Áö½Ã°£ÀÌ 0À̶ó¸é, ÆÐŶÀ» º¸³»Áö ¾Ê´Â´Ù. if (GetStateID() != eCHAR_STATE_INVALID && GetAbilityInfo()->m_iParam[2] != 0) { SendStatusDelBRD(); } // Buff °è¿­ÀÇ ¾îºô¸®Æ¼µéÀ» ó¸®ÇÑ´Ù. const eATTR_TYPE attr_id = GetAttrID(); if (attr_id != eATTR_TYPE_INVALID && IsApply()) { Character* const owner = GetOwner(); if (owner != NULL) { SkillAttrCalculator calc(owner->GetAttr()); calc.DelAttr(attr_id, GetAbilityValueType(), GetSumValue()); } } }