public BuffInfo(CharacterEntity character, CharacterEntity target, SkillInfo skillInfo, MechanicsData mechanics, BuffType buffType, SkillLevelBuffAddType skillLevelBuffAddType, BuffAddType buffAddType, int count, uint targetSkillId, float value, uint level, int judgeType) { this.mechanics = mechanics; this.character = character; this.target = target; this.skillInfo = skillInfo; this.buffType = buffType; this.buffAddType = buffAddType; this.judgeType = judgeType; #if UNITY_EDITOR this.skillLevelBuffAddType = skillLevelBuffAddType; #endif this.targetSkillId = targetSkillId; this.count = count; switch (skillLevelBuffAddType) { case SkillLevelBuffAddType.Time: break; case SkillLevelBuffAddType.Value: { float result = Skill.SkillUtil.GetMechanicsValueByAdvanceLevel(value, character.characterInfo.dlevel); result = BuffUtil.GetBuffValue(result, level); this.value = result; } break; } kindness = BuffUtil.Judge(this.buffType, this.value); originalValue = this.value; interval = 1; }
void LoadBuffs() { Element[] elements = (Element[])Enum.GetValues(typeof(Element)); for (int i = 0; i < elements.Length; i++) { Element element = elements[i]; if (element != Element.none && element != Element.levitate) { string nameAdd = element.ToString().First().ToString().ToUpper() + string.Join("", element.ToString().Skip(1)) + "Add"; ModBuff buffAdd = new BuffAddType() { MyElement = element }; string textureAdd = $"TerraTyping/Abilities/Buffs/TypeAdd/{nameAdd}"; AddBuff(nameAdd, buffAdd, textureAdd); string nameReplace = element.ToString().First().ToString().ToUpper() + string.Join("", element.ToString().Skip(1)) + "Replace"; ModBuff buffReplace = new BuffReplaceType() { MyElement = element }; string textureReplace = $"TerraTyping/Abilities/Buffs/TypeReplace/{nameReplace}"; AddBuff(nameReplace, buffReplace, textureReplace); } } }
public virtual void DeepCopy(Buff buff, Dictionary <Hero, Hero> heroMap) { if (buff.parent != null) { parent = heroMap[buff.parent]; } remainTurn = buff.remainTurn; addType = buff.addType; }
public BuffInfo(CharacterEntity character, CharacterEntity target, SkillInfo skillInfo, MechanicsData mechanics, BuffType buffType, SkillLevelBuffAddType skillLevelBuffAddType, BuffAddType buffAddType, float time, float value, uint level, int judgeType) { this.mechanics = mechanics; this.character = character; this.target = target; this.skillInfo = skillInfo; this.buffType = buffType; this.buffAddType = buffAddType; this.judgeType = judgeType; #if UNITY_EDITOR this.skillLevelBuffAddType = skillLevelBuffAddType; #endif switch (skillLevelBuffAddType) { case SkillLevelBuffAddType.Time: { float result = Skill.SkillUtil.GetMechanicsValueByAdvanceLevel(time, character.characterInfo.dlevel); result = BuffUtil.GetBuffValue(result, level); this.time = TimeController.instance.fightSkillTime + result; this.value = value; break; } case SkillLevelBuffAddType.Value: { float result = Skill.SkillUtil.GetMechanicsValueByAdvanceLevel(value, character.characterInfo.dlevel); result = BuffUtil.GetBuffValue(result, level); this.value = result; this.time = TimeController.instance.fightSkillTime + time; break; } default: this.time = TimeController.instance.fightSkillTime + time; this.value = value; break; } kindness = BuffUtil.Judge(this.buffType, this.value); originalValue = this.value; interval = 1; }
public Buff() { remainTurn = 1; addType = BuffAddType.Mutiple; }