private void CreateBuffList(MasterParam master_param) { for (int index1 = 0; index1 < this.ranks.Length; ++index1) { if (this.ranks[index1] != null) { List <BuffEffect.BuffValues> list = new List <BuffEffect.BuffValues>(); if (this.ranks[index1].equips != null || index1 != this.ranks.Length) { for (int index2 = 0; index2 < this.ranks[index1].equips.Length; ++index2) { if (!string.IsNullOrEmpty(this.ranks[index1].equips[index2])) { ItemParam itemParam = master_param.GetItemParam(this.ranks[index1].equips[index2]); if (itemParam != null && !string.IsNullOrEmpty(itemParam.skill)) { SkillData skillData = new SkillData(); skillData.Setup(itemParam.skill, 1, 1, master_param); skillData.BuffSkill(ESkillTiming.Passive, EElement.None, (BaseStatus)null, (BaseStatus)null, (BaseStatus)null, (BaseStatus)null, (BaseStatus)null, (BaseStatus)null, (RandXorshift)null, SkillEffectTargets.Target, false, list); } } } if (list.Count > 0) { this.ranks[index1].buff_list = new BuffEffect.BuffValues[list.Count]; for (int index2 = 0; index2 < list.Count; ++index2) { this.ranks[index1].buff_list[index2] = list[index2]; } } } } } }
public void UpdateJobRankTransfarStatus(MasterParam master) { BaseStatus baseStatus = new BaseStatus(); for (int index1 = 0; index1 < this.ranks.Length; ++index1) { if (this.ranks[index1] != null) { this.ranks[index1].TransfarStatus.Clear(); baseStatus.CopyTo(this.ranks[index1].TransfarStatus); if (this.ranks[index1].equips != null || index1 != this.ranks.Length) { for (int index2 = 0; index2 < this.ranks[index1].equips.Length; ++index2) { if (!string.IsNullOrEmpty(this.ranks[index1].equips[index2])) { ItemParam itemParam = master.GetItemParam(this.ranks[index1].equips[index2]); if (itemParam != null && !string.IsNullOrEmpty((string)itemParam.skill)) { SkillData skillData = new SkillData(); skillData.Setup((string)itemParam.skill, 1, 1, master); skillData.BuffSkill(ESkillTiming.Passive, baseStatus, (BaseStatus)null, baseStatus, (BaseStatus)null, (RandXorshift)null, SkillEffectTargets.Target); } } } } } } }
public static void GetPassiveBuffStatus(SkillData skill, BuffEffect[] add_buff_effects, EElement element, ref BaseStatus status, ref BaseStatus negative_status, ref BaseStatus debuff_status, ref BaseStatus negative_debuff_status, ref BaseStatus scale_status) { if (skill == null || !skill.IsPassiveSkill()) { return; } BuffEffect buffEffect1 = skill.GetBuffEffect(SkillEffectTargets.Target); if (buffEffect1 != null && buffEffect1.param != null && (buffEffect1.param.mAppType == EAppType.Standard && buffEffect1.param.mEffRange == EEffRange.Self) && !(bool)buffEffect1.param.mIsUpBuff) { skill.BuffSkill(ESkillTiming.Passive, element, status, negative_status, scale_status, debuff_status, negative_debuff_status, scale_status, (RandXorshift)null, SkillEffectTargets.Target, false, (List <BuffEffect.BuffValues>)null); } BuffEffect buffEffect2 = skill.GetBuffEffect(SkillEffectTargets.Self); if (buffEffect2 == null || buffEffect2.param == null || (buffEffect2.param.mAppType != EAppType.Standard || buffEffect2.param.mEffRange != EEffRange.Self) || (bool)buffEffect2.param.mIsUpBuff) { return; } skill.BuffSkill(ESkillTiming.Passive, element, status, negative_status, scale_status, debuff_status, negative_debuff_status, scale_status, (RandXorshift)null, SkillEffectTargets.Self, false, (List <BuffEffect.BuffValues>)null); }
public static void GetHomePassiveBuffStatus(SkillData skill, EElement element, ref BaseStatus status, ref BaseStatus negative_status, ref BaseStatus debuff_status, ref BaseStatus negative_debuff_status, ref BaseStatus scale_status) { if (skill == null || !skill.IsPassiveSkill() || (skill.Target != ESkillTarget.Self || skill.Condition != ESkillCondition.None) || !string.IsNullOrEmpty(skill.SkillParam.tokkou)) { return; } BuffEffect buffEffect1 = skill.GetBuffEffect(SkillEffectTargets.Target); if (buffEffect1 != null && buffEffect1.param != null && (buffEffect1.param.cond == ESkillCondition.None && buffEffect1.param.mAppType == EAppType.Standard) && (buffEffect1.param.mEffRange == EEffRange.Self && !(bool)buffEffect1.param.mIsUpBuff)) { skill.BuffSkill(ESkillTiming.Passive, element, status, negative_status, scale_status, debuff_status, negative_debuff_status, scale_status, (RandXorshift)null, SkillEffectTargets.Target, false, (List <BuffEffect.BuffValues>)null); } BuffEffect buffEffect2 = skill.GetBuffEffect(SkillEffectTargets.Self); if (buffEffect2 == null || buffEffect2.param == null || (buffEffect2.param.cond != ESkillCondition.None || buffEffect2.param.mAppType != EAppType.Standard) || (buffEffect2.param.mEffRange != EEffRange.Self || (bool)buffEffect2.param.mIsUpBuff)) { return; } skill.BuffSkill(ESkillTiming.Passive, element, status, negative_status, scale_status, debuff_status, negative_debuff_status, scale_status, (RandXorshift)null, SkillEffectTargets.Self, false, (List <BuffEffect.BuffValues>)null); }