public BuffElement(Msg_CharBuff_Body _body, BuffProcessor _owner, bool _effect) { m_CurId = s_Index++; m_Owner = _owner.Owner; m_Processor = _owner; m_Body = _body; m_BuffType = _body.type_; m_Activated = _effect; int effectIdx = int.MaxValue; if(BuffBaseMgr.s_MonsterSkillIndexRange_Min <= _body.skillTableIdx_ && _body.skillTableIdx_ <= BuffBaseMgr.s_MonsterSkillIndexRange_Max) { #region - set skill name - Tbl_MonsterSkill_Record skillRecord = AsTableManager.Instance.GetTbl_MonsterSkill_Record(_body.skillTableIdx_); SetSkillData(skillRecord); #endregion // Tbl_MonsterSkillLevel_Record skill = AsTableManager.Instance.GetTbl_MonsterSkillLevel_Record(_body.skillLevel_, _body.skillTableIdx_); Tbl_MonsterSkillLevel_Record skill = AsTableManager.Instance.GetTbl_MonsterSkillLevel_Record(_body.skillLevelTableIdx_); try{ effectIdx = skill.listSkillLevelPotency[_body.potencyIdx_].Potency_EffectIndex; m_SkillLevelPotency = skill.listSkillLevelPotency[_body.potencyIdx_]; } catch(System.Exception e) { Debug.LogError(e); } } else { #region - set skill name - Tbl_Skill_Record skillRecord = AsTableManager.Instance.GetTbl_Skill_Record(_body.skillTableIdx_); SetSkillData(skillRecord); #endregion Tbl_SkillLevel_Record skill = null; if(_body.chargeStep_ == int.MaxValue) { skill = AsTableManager.Instance.GetTbl_SkillLevel_Record(_body.skillLevel_, _body.skillTableIdx_); } else { skill = AsTableManager.Instance.GetTbl_SkillLevel_Record(_body.skillLevel_, _body.skillTableIdx_, _body.chargeStep_); } effectIdx = skill.listSkillLevelPotency[_body.potencyIdx_].Potency_EffectIndex; m_SkillLevelPotency = skill.listSkillLevelPotency[_body.potencyIdx_]; } m_SkillIdx = _body.skillTableIdx_; m_PotencyIdx = _body.potencyIdx_; m_Record = AsTableManager.Instance.GetTbl_SkillPotencyEffect_Record(effectIdx); }
public void AddBuff(Msg_CharBuff_Body _body, bool _effect) { #region - init dictionary - if(m_dicBuff.ContainsKey(_body.skillTableIdx_) == false) m_dicBuff.Add(_body.skillTableIdx_, new Dictionary<int, BuffElement>()); if(m_dicBuff[_body.skillTableIdx_].ContainsKey(_body.potencyIdx_) == true) { m_dicBuff[_body.skillTableIdx_][_body.potencyIdx_].Release(); m_dicBuff[_body.skillTableIdx_].Remove(_body.potencyIdx_); } #endregion BuffElement buff = new BuffElement(_body, this, _effect); m_dicBuff[_body.skillTableIdx_].Add(_body.potencyIdx_, buff); m_mdicBuff.Add(_body.type_, buff); if( m_ModelLoaded == true) buff.Generate(); ResurrectionPenaltyProc( buff); }
public void SetBuff(Msg_CharBuff_Body _body) { m_Buff.AddBuff(_body); }
public void SetBuff(Msg_CharBuff _head, Msg_CharBuff_Body _body) { m_Buff.AddBuff(_body, _head.effect_); }
public Msg_ConditionIndicate_AirBone( Msg_CharBuff_Body _body) { m_MessageType = eMessageType.CONDITION_AIRBONE; body_ = _body; }