private static int GetChangeValueProperty(ActorRoot targetActor, ref SSkillFuncContext inContext) { int num = inContext.GetSkillFuncParam(1, true); int skillFuncParam = inContext.GetSkillFuncParam(2, true); int skillFuncParam2 = inContext.GetSkillFuncParam(3, true); ESkillFuncMode skillFuncParam3 = (ESkillFuncMode)inContext.GetSkillFuncParam(4, false); int skillFuncParam4 = inContext.GetSkillFuncParam(5, true); num += skillFuncParam * targetActor.ValueComponent.mActorValue[1].totalValue / 10000 + skillFuncParam2 * targetActor.ValueComponent.mActorValue[2].totalValue / 10000; if (skillFuncParam3 == ESkillFuncMode.SkillFuncMode_Constant) { return(num); } int num2 = (int)inContext.inSkillFunc.dwSkillFuncFreq; if (skillFuncParam4 <= 0) { DebugHelper.Assert(false, "ESkillFuncMode LastTime error!"); return(num); } if (num2 <= 0) { num2 = 30; } int num3 = skillFuncParam4 / num2; if (num3 <= 0) { return(num); } if (skillFuncParam3 == ESkillFuncMode.SkillFuncMode_Fade) { if (inContext.inDoCount == 1) { return(num); } if (inContext.inDoCount - 1 <= num3) { return(-num / num3); } return(0); } else { if (inContext.inDoCount == 1) { return(0); } if (inContext.inDoCount - 1 <= num3) { return(num / num3); } return(0); } }
private static int GetChangeValueProperty(ActorRoot targetActor, ref SSkillFuncContext inContext) { int skillFuncParam = inContext.GetSkillFuncParam(1, true); int num2 = inContext.GetSkillFuncParam(2, true); int num3 = inContext.GetSkillFuncParam(3, true); ESkillFuncMode mode = (ESkillFuncMode)inContext.GetSkillFuncParam(4, false); int num4 = inContext.GetSkillFuncParam(5, true); skillFuncParam += ((num2 * targetActor.ValueComponent.mActorValue[RES_FUNCEFT_TYPE.RES_FUNCEFT_PHYATKPT].totalValue) / 0x2710) + ((num3 * targetActor.ValueComponent.mActorValue[RES_FUNCEFT_TYPE.RES_FUNCEFT_MGCATKPT].totalValue) / 0x2710); if (mode == ESkillFuncMode.SkillFuncMode_Constant) { return(skillFuncParam); } int num5 = 0; int dwSkillFuncFreq = (int)inContext.inSkillFunc.dwSkillFuncFreq; if (num4 <= 0) { DebugHelper.Assert(false, "ESkillFuncMode LastTime error!"); return(skillFuncParam); } if (dwSkillFuncFreq <= 0) { dwSkillFuncFreq = 30; } num5 = num4 / dwSkillFuncFreq; if (num5 <= 0) { return(skillFuncParam); } if (mode == ESkillFuncMode.SkillFuncMode_Fade) { if (inContext.inDoCount == 1) { return(skillFuncParam); } if ((inContext.inDoCount - 1) <= num5) { return(-skillFuncParam / num5); } return(0); } if ((inContext.inDoCount != 1) && ((inContext.inDoCount - 1) <= num5)) { return(skillFuncParam / num5); } return(0); }