2025-08-25 01:48:42 +08:00
|
|
|
|
package node
|
2025-08-24 20:35:08 +08:00
|
|
|
|
|
|
|
|
|
|
import "github.com/tnnmigga/enum"
|
|
|
|
|
|
|
2025-08-25 01:48:42 +08:00
|
|
|
|
// EnumEffectTrigger 效果触发时机枚举类型
|
|
|
|
|
|
// 定义了战斗中各种效果的触发时机点
|
|
|
|
|
|
type EnumEffectTrigger int
|
2025-08-24 20:35:08 +08:00
|
|
|
|
|
2025-08-25 01:48:42 +08:00
|
|
|
|
// EffectTrigger 效果触发时机枚举实例
|
|
|
|
|
|
// 包含战斗过程中所有可能触发效果的关键时间点
|
2025-08-24 20:35:08 +08:00
|
|
|
|
var EffectTrigger = enum.New[struct {
|
2025-08-25 01:48:42 +08:00
|
|
|
|
// 已有的触发时机
|
2025-08-24 20:35:08 +08:00
|
|
|
|
OnBattleStart EnumEffectTrigger `enum:"OnBattleStart"` // 战斗开始时触发
|
|
|
|
|
|
BeforeSort EnumEffectTrigger `enum:"BeforeSort"` // 先手顺序判定前触发
|
|
|
|
|
|
BeforeUseSkillCheck EnumEffectTrigger `enum:"BeforeUseSkillCheck"` // 使用技能前检查(PP、状态等)
|
|
|
|
|
|
AfterUseSkillCheck EnumEffectTrigger `enum:"AfterUseSkillCheck"` // 使用技能检查后触发
|
|
|
|
|
|
BeforeMultiHit EnumEffectTrigger `enum:"BeforeMultiHit"` // 多段攻击开始前触发
|
|
|
|
|
|
BeforeHit EnumEffectTrigger `enum:"BeforeHit"` // 攻击命中前触发
|
|
|
|
|
|
OnCritPreDamage EnumEffectTrigger `enum:"OnCritPreDamage"` // 暴击判定成功且伤害计算前触发
|
|
|
|
|
|
PreDamage EnumEffectTrigger `enum:"PreDamage"` // 技能伤害计算前触发(增伤/减伤等)
|
|
|
|
|
|
OnHit EnumEffectTrigger `enum:"OnHit"` // 技能命中时触发
|
|
|
|
|
|
OnMiss EnumEffectTrigger `enum:"OnMiss"` // 技能未命中时触发
|
|
|
|
|
|
AfterAttacked EnumEffectTrigger `enum:"AfterAttacked"` // 被攻击后触发(受击判定)
|
|
|
|
|
|
OnDefeat EnumEffectTrigger `enum:"OnDefeat"` // 精灵被击败时触发
|
|
|
|
|
|
SkillUseEnd EnumEffectTrigger `enum:"SkillUseEnd"` // 技能使用结束后触发
|
|
|
|
|
|
OnBeforeCalculateDamage EnumEffectTrigger `enum:"OnBeforeCalculateDamage"` // 最终伤害计算前触发
|
|
|
|
|
|
OnDamage EnumEffectTrigger `enum:"OnDamage"` // 造成伤害时触发
|
|
|
|
|
|
Shield EnumEffectTrigger `enum:"Shield"` // 护盾值变化时触发
|
|
|
|
|
|
PostDamage EnumEffectTrigger `enum:"PostDamage"` // 伤害结算后触发(血量扣除后)
|
|
|
|
|
|
OnCritPostDamage EnumEffectTrigger `enum:"OnCritPostDamage"` // 暴击伤害结算后触发
|
|
|
|
|
|
OnTransform EnumEffectTrigger `enum:"OnTransform"` // 精灵变形/进化时触发
|
|
|
|
|
|
OnTransformEnd EnumEffectTrigger `enum:"OnTransformEnd"` // 变形/进化结束时触发
|
|
|
|
|
|
BeforeTransform EnumEffectTrigger `enum:"BeforeTransform"` // 变形/进化前触发
|
|
|
|
|
|
AfterTransform EnumEffectTrigger `enum:"AfterTransform"` // 变形/进化后触发
|
|
|
|
|
|
TurnStart EnumEffectTrigger `enum:"TurnStart"` // 回合开始时触发
|
|
|
|
|
|
TurnEnd EnumEffectTrigger `enum:"TurnEnd"` // 回合结束时触发
|
|
|
|
|
|
OnBeforeAddMark EnumEffectTrigger `enum:"OnBeforeAddMark"` // 添加印记前触发
|
|
|
|
|
|
OnAnyMarkAdded EnumEffectTrigger `enum:"OnAnyMarkAdded"` // 任何印记添加时触发
|
|
|
|
|
|
OnRemoveMark EnumEffectTrigger `enum:"OnRemoveMark"` // 移除印记时触发
|
|
|
|
|
|
OnMarkCreated EnumEffectTrigger `enum:"OnMarkCreated"` // 印记创建时触发
|
|
|
|
|
|
OnMarkDestroy EnumEffectTrigger `enum:"OnMarkDestroy"` // 印记销毁时触发
|
|
|
|
|
|
OnMarkDurationEnd EnumEffectTrigger `enum:"OnMarkDurationEnd"` // 印记持续回合结束时触发
|
|
|
|
|
|
OnStackBefore EnumEffectTrigger `enum:"OnStackBefore"` // 堆叠效果前触发
|
|
|
|
|
|
OnStack EnumEffectTrigger `enum:"OnStack"` // 堆叠效果触发
|
|
|
|
|
|
OnBeforeConsumeStack EnumEffectTrigger `enum:"OnBeforeConsumeStack"` // 消耗堆叠前触发
|
|
|
|
|
|
OnConsumeStack EnumEffectTrigger `enum:"OnConsumeStack"` // 消耗堆叠时触发
|
|
|
|
|
|
OnBeforeHeal EnumEffectTrigger `enum:"OnBeforeHeal"` // 治疗前触发
|
|
|
|
|
|
OnHeal EnumEffectTrigger `enum:"OnHeal"` // 治疗生效时触发
|
|
|
|
|
|
BeforeRageGain EnumEffectTrigger `enum:"BeforeRageGain"` // 增怒前触发
|
|
|
|
|
|
BeforeRageLoss EnumEffectTrigger `enum:"BeforeRageLoss"` // 减怒前触发
|
|
|
|
|
|
OnRageGain EnumEffectTrigger `enum:"OnRageGain"` // 增怒时触发
|
|
|
|
|
|
OnRageLoss EnumEffectTrigger `enum:"OnRageLoss"` // 减怒时触发
|
|
|
|
|
|
OnSwitchIn EnumEffectTrigger `enum:"OnSwitchIn"` // 精灵出战/上场时触发
|
|
|
|
|
|
OnSwitchOut EnumEffectTrigger `enum:"OnSwitchOut"` // 精灵下场时触发
|
|
|
|
|
|
OnOwnerSwitchIn EnumEffectTrigger `enum:"OnOwnerSwitchIn"` // 所属玩家精灵出战时触发
|
|
|
|
|
|
OnOwnerSwitchOut EnumEffectTrigger `enum:"OnOwnerSwitchOut"` // 所属玩家精灵下场时触发
|
|
|
|
|
|
BeforeEffect EnumEffectTrigger `enum:"BeforeEffect"` // 效果生效前触发
|
|
|
|
|
|
AfterEffect EnumEffectTrigger `enum:"AfterEffect"` // 效果生效后触发
|
2025-08-25 01:48:42 +08:00
|
|
|
|
|
|
|
|
|
|
// 补充的触发时机
|
|
|
|
|
|
OnBattleEnd EnumEffectTrigger `enum:"OnBattleEnd"` // 战斗结束时触发
|
|
|
|
|
|
OnRoundNumber EnumEffectTrigger `enum:"OnRoundNumber"` // 特定回合数时触发
|
|
|
|
|
|
OnMaxHPChange EnumEffectTrigger `enum:"OnMaxHPChange"` // 最大生命值变化时触发
|
|
|
|
|
|
OnHPPercentLow EnumEffectTrigger `enum:"OnHPPercentLow"` // 生命值低于特定百分比时触发
|
|
|
|
|
|
OnHPPercentHigh EnumEffectTrigger `enum:"OnHPPercentHigh"` // 生命值高于特定百分比时触发
|
|
|
|
|
|
OnStatusAdd EnumEffectTrigger `enum:"OnStatusAdd"` // 获得状态时触发
|
|
|
|
|
|
OnStatusRemove EnumEffectTrigger `enum:"OnStatusRemove"` // 状态被移除时触发
|
|
|
|
|
|
OnStatusRefresh EnumEffectTrigger `enum:"OnStatusRefresh"` // 状态被刷新时触发
|
|
|
|
|
|
OnStatusDurationEnd EnumEffectTrigger `enum:"OnStatusDurationEnd"` // 状态持续回合结束时触发
|
|
|
|
|
|
OnAlliesDefeated EnumEffectTrigger `enum:"OnAlliesDefeated"` // 友方单位被击败时触发
|
|
|
|
|
|
OnEnemiesDefeated EnumEffectTrigger `enum:"OnEnemiesDefeated"` // 敌方单位被击败时触发
|
|
|
|
|
|
OnSkillTypeUsed EnumEffectTrigger `enum:"OnSkillTypeUsed"` // 特定类型技能被使用时触发
|
|
|
|
|
|
OnSpecificSkillUsed EnumEffectTrigger `enum:"OnSpecificSkillUsed"` // 特定技能被使用时触发
|
|
|
|
|
|
OnDeath EnumEffectTrigger `enum:"OnDeath"` // 自身死亡时触发
|
|
|
|
|
|
OnRevive EnumEffectTrigger `enum:"OnRevive"` // 被复活时触发
|
|
|
|
|
|
OnFullHP EnumEffectTrigger `enum:"OnFullHP"` // 生命值回满时触发
|
|
|
|
|
|
OnZeroHP EnumEffectTrigger `enum:"OnZeroHP"` // 生命值归零时触发
|
|
|
|
|
|
OnMaxRage EnumEffectTrigger `enum:"OnMaxRage"` // 怒气值满时触发
|
|
|
|
|
|
OnZeroRage EnumEffectTrigger `enum:"OnZeroRage"` // 怒气值归零时触发
|
|
|
|
|
|
OnWeatherChange EnumEffectTrigger `enum:"OnWeatherChange"` // 天气变化时触发
|
|
|
|
|
|
OnFieldStateChange EnumEffectTrigger `enum:"OnFieldStateChange"` // 场地状态变化时触发
|
|
|
|
|
|
OnItemUsed EnumEffectTrigger `enum:"OnItemUsed"` // 使用物品时触发
|
|
|
|
|
|
OnBeforeItemUse EnumEffectTrigger `enum:"OnBeforeItemUse"` // 使用物品前触发
|
|
|
|
|
|
OnAfterItemUse EnumEffectTrigger `enum:"OnAfterItemUse"` // 使用物品后触发
|
|
|
|
|
|
OnSwapFailed EnumEffectTrigger `enum:"OnSwapFailed"` // 交换精灵失败时触发
|
|
|
|
|
|
OnAllEnemiesDefeated EnumEffectTrigger `enum:"OnAllEnemiesDefeated"` // 所有敌方单位被击败时触发
|
|
|
|
|
|
OnAllAlliesDefeated EnumEffectTrigger `enum:"OnAllAlliesDefeated"` // 所有友方单位被击败时触发
|
|
|
|
|
|
OnComboHit EnumEffectTrigger `enum:"OnComboHit"` // 连击达到特定次数时触发
|
|
|
|
|
|
OnMissContinuous EnumEffectTrigger `enum:"OnMissContinuous"` // 连续未命中特定次数时触发
|
|
|
|
|
|
OnCritContinuous EnumEffectTrigger `enum:"OnCritContinuous"` // 连续暴击特定次数时触发
|
|
|
|
|
|
OnBeforeFaint EnumEffectTrigger `enum:"OnBeforeFaint"` // 即将昏厥前触发
|
|
|
|
|
|
OnImmuneDamage EnumEffectTrigger `enum:"OnImmuneDamage"` // 免疫伤害时触发
|
|
|
|
|
|
OnDamageReflect EnumEffectTrigger `enum:"OnDamageReflect"` // 反弹伤害时触发
|
|
|
|
|
|
OnAbsorbDamage EnumEffectTrigger `enum:"OnAbsorbDamage"` // 吸收伤害时触发
|
|
|
|
|
|
OnStealHP EnumEffectTrigger `enum:"OnStealHP"` // 偷取生命值时触发
|
|
|
|
|
|
OnCopySkill EnumEffectTrigger `enum:"OnCopySkill"` // 复制技能时触发
|
|
|
|
|
|
OnSkillSealed EnumEffectTrigger `enum:"OnSkillSealed"` // 技能被封印时触发
|
|
|
|
|
|
OnSkillUnsealed EnumEffectTrigger `enum:"OnSkillUnsealed"` // 技能封印解除时触发
|
|
|
|
|
|
OnSilenced EnumEffectTrigger `enum:"OnSilenced"` // 被沉默时触发
|
|
|
|
|
|
OnSilenceEnd EnumEffectTrigger `enum:"OnSilenceEnd"` // 沉默状态结束时触发
|
|
|
|
|
|
OnStunned EnumEffectTrigger `enum:"OnStunned"` // 被眩晕时触发
|
|
|
|
|
|
OnStunEnd EnumEffectTrigger `enum:"OnStunEnd"` // 眩晕状态结束时触发
|
2025-08-24 20:35:08 +08:00
|
|
|
|
}]()
|