public void Initialize(HitInfos hitInfos, AttackStats.AttackWeightType weight = AttackStats.AttackWeightType.SameAsStats) { if (weight != AttackStats.AttackWeightType.SameAsStats) { Weight = weight; } else { Weight = hitInfos.AttackStats.weight; } this.hitInfos = new HitInfos(hitInfos, this); maxHitTimes = hitInfos.AttackStats.maxHitTimes; }
AttackStats.AttackWeightType GetWeightByThreshold(AttackStats.AttackWeightType inWeight) { if (PB.CurBlood < strongBloodThreshold) { return(inWeight); } else { switch (inWeight) { case AttackStats.AttackWeightType.Cheap: return(AttackStats.AttackWeightType.Light); case AttackStats.AttackWeightType.Light: return(AttackStats.AttackWeightType.Medium); default: return(AttackStats.AttackWeightType.Heavy); } } }