Example #1
0
	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);
	}
Example #2
0
	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);
	}
Example #3
0
	public void SetBuff(Msg_CharBuff_Body _body)
	{
		m_Buff.AddBuff(_body);
	}
Example #4
0
	public void SetBuff(Msg_CharBuff _head, Msg_CharBuff_Body _body)
	{
		m_Buff.AddBuff(_body, _head.effect_);
	}
Example #5
0
	public Msg_ConditionIndicate_AirBone( Msg_CharBuff_Body _body)
	{
		m_MessageType = eMessageType.CONDITION_AIRBONE;
		
		body_ = _body;
	}