mirror of
https://github.com/tym1116/BH3.git
synced 2025-12-17 00:44:49 +01:00
128 lines
2.8 KiB
C#
128 lines
2.8 KiB
C#
using System;
|
|
using System.Text;
|
|
using FullInspector;
|
|
|
|
namespace MoleMole.Config
|
|
{
|
|
public class ConfigEntityAttackProperty : IOnLoaded
|
|
{
|
|
public float DamagePercentage;
|
|
|
|
public float AddedDamageValue;
|
|
|
|
public float NormalDamage;
|
|
|
|
public float NormalDamagePercentage;
|
|
|
|
public float FireDamage;
|
|
|
|
public float FireDamagePercentage;
|
|
|
|
public float ThunderDamage;
|
|
|
|
public float ThunderDamagePercentage;
|
|
|
|
public float IceDamage;
|
|
|
|
public float IceDamagePercentage;
|
|
|
|
public float AlienDamage;
|
|
|
|
public float AlienDamagePercentage;
|
|
|
|
public float AniDamageRatio;
|
|
|
|
public AttackResult.ActorHitType HitType;
|
|
|
|
public AttackResult.AnimatorHitEffect HitEffect = AttackResult.AnimatorHitEffect.Normal;
|
|
|
|
public AttackResult.AnimatorHitEffectAux HitEffectAux;
|
|
|
|
public KillEffect KillEffect;
|
|
|
|
public int FrameHalt;
|
|
|
|
public float RetreatVelocity;
|
|
|
|
public bool IsAnimEventAttack = true;
|
|
|
|
public bool IsInComboCount = true;
|
|
|
|
public float SPRecover;
|
|
|
|
public float WitchTimeRatio = 1f;
|
|
|
|
public bool NoTriggerEvadeAndDefend;
|
|
|
|
public int NoBreakFrameHaltAdd = 2;
|
|
|
|
public MixinTargetting AttackTargetting = MixinTargetting.Enemy;
|
|
|
|
[InspectorNullable]
|
|
public AttackResult.AttackCategoryTag[] CategoryTag;
|
|
|
|
[NonSerialized]
|
|
public AttackResult.AttackCategoryTag CategoryTagCombined;
|
|
|
|
public void OnLoaded()
|
|
{
|
|
if (CategoryTag != null)
|
|
{
|
|
for (int i = 0; i < CategoryTag.Length; i++)
|
|
{
|
|
CategoryTagCombined |= CategoryTag[i];
|
|
}
|
|
}
|
|
}
|
|
|
|
public string GetDebugOutput()
|
|
{
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
stringBuilder.AppendLine("\n--");
|
|
stringBuilder.AppendFormat("攻击力百分比: {0}\n", DamagePercentage);
|
|
if (AddedDamageValue > 0f)
|
|
{
|
|
stringBuilder.AppendFormat("额外基础伤害: {0}\n", AddedDamageValue);
|
|
}
|
|
if (NormalDamage > 0f)
|
|
{
|
|
stringBuilder.AppendFormat("元素伤害(无属性): {0}\n", NormalDamage);
|
|
}
|
|
if (FireDamage > 0f)
|
|
{
|
|
stringBuilder.AppendFormat("元素伤害(火属性): {0}\n", FireDamage);
|
|
}
|
|
if (ThunderDamage > 0f)
|
|
{
|
|
stringBuilder.AppendFormat("元素伤害(雷属性): {0}\n", ThunderDamage);
|
|
}
|
|
if (AlienDamage > 0f)
|
|
{
|
|
stringBuilder.AppendFormat("元素伤害(异能属性): {0}\n", AlienDamage);
|
|
}
|
|
if (RetreatVelocity > 0f)
|
|
{
|
|
stringBuilder.AppendFormat("击退: {0}\n", RetreatVelocity);
|
|
}
|
|
if (HitEffect != AttackResult.AnimatorHitEffect.Normal)
|
|
{
|
|
stringBuilder.AppendFormat("特殊 HitEffect: {0}\n", HitEffect);
|
|
}
|
|
if (KillEffect != KillEffect.KillNow)
|
|
{
|
|
stringBuilder.AppendFormat("特殊 KillEffect: {0}\n", KillEffect);
|
|
}
|
|
if (!IsAnimEventAttack)
|
|
{
|
|
stringBuilder.AppendFormat("!(内在攻击)\n");
|
|
}
|
|
if (!IsInComboCount)
|
|
{
|
|
stringBuilder.AppendFormat("!(不算Combo)\n");
|
|
}
|
|
stringBuilder.AppendLine("--\n");
|
|
return stringBuilder.ToString();
|
|
}
|
|
}
|
|
}
|