多轮审查和修复
This commit is contained in:
85
Assets/Scripts/Skills/FormSkillSO.cs
Normal file
85
Assets/Scripts/Skills/FormSkillSO.cs
Normal file
@@ -0,0 +1,85 @@
|
||||
using UnityEngine;
|
||||
using Animancer;
|
||||
using BaseGames.Combat;
|
||||
|
||||
namespace BaseGames.Skills
|
||||
{
|
||||
/// <summary>
|
||||
/// 技能资源消耗类型。
|
||||
/// </summary>
|
||||
public enum SkillResourceType { SoulPower, SpiritPower }
|
||||
|
||||
/// <summary>
|
||||
/// 技能效果类型(决定施放时执行的逻辑分支)。
|
||||
/// </summary>
|
||||
public enum SkillEffectType
|
||||
{
|
||||
MeleeAoE,
|
||||
Projectile,
|
||||
BarrierAura,
|
||||
GroundDive,
|
||||
DragonKick,
|
||||
WraithDash,
|
||||
ShadowDecoy,
|
||||
DelayedExplosion
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 反馈预设 SO(FeedbackPresetSO),封装一组 MMF_Player 反馈配置。
|
||||
/// </summary>
|
||||
[CreateAssetMenu(menuName = "Skills/FeedbackPreset")]
|
||||
public class FeedbackPresetSO : ScriptableObject { }
|
||||
|
||||
/// <summary>
|
||||
/// 形态技能数据 SO(架构 09_ProgressionModule §8)。
|
||||
/// 路径: Assets/Scripts/Skills/FormSkillSO.cs
|
||||
/// </summary>
|
||||
[CreateAssetMenu(menuName = "Skills/FormSkill")]
|
||||
public class FormSkillSO : ScriptableObject
|
||||
{
|
||||
[Header("Identity")]
|
||||
public string skillId;
|
||||
public string displayNameKey;
|
||||
[TextArea(1, 3)]
|
||||
public string descriptionKey;
|
||||
public Sprite icon;
|
||||
|
||||
[Header("Resource")]
|
||||
public SkillResourceType resourceType;
|
||||
public int baseCost;
|
||||
public float cooldown;
|
||||
|
||||
[Header("Animation")]
|
||||
public ClipTransition castAnimation;
|
||||
public float castLockDuration; // 施放锁定时长(秒)
|
||||
|
||||
[Header("Effect")]
|
||||
public SkillEffectType effectType;
|
||||
public DamageSourceSO damageSource;
|
||||
|
||||
[Header("Projectile")]
|
||||
public ProjectileConfigSO projectileConfig;
|
||||
public bool isHoming;
|
||||
public bool holdForContinuous;
|
||||
|
||||
[Header("Dash")]
|
||||
public float dashForce;
|
||||
public float dashDuration;
|
||||
public bool isInvincibleDuringDash;
|
||||
|
||||
[Header("Explosion")]
|
||||
public float explosionDelay;
|
||||
public float explosionRadius;
|
||||
|
||||
[Header("Feedback")]
|
||||
public FeedbackPresetSO castFeedback;
|
||||
|
||||
[Header("HitBox Prefab")]
|
||||
/// <summary>
|
||||
/// 近战/爆炸技能的命中盒 Prefab,内含 SkillHitBoxInstance + HitBox。
|
||||
/// 投射物技能此字段留空——由 ProjectileConfigSO 负责。
|
||||
/// 命名规范: Assets/Prefabs/Skills/SKL_{skillId}_HitBox.prefab
|
||||
/// </summary>
|
||||
public GameObject SkillHitBoxPrefab;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user