using System.Collections; using System.Collections.Generic; using UnityEngine; /// /// 攻击类型,对应不同的受击者反馈(动作) /// public enum HitType { Light, // 轻击 Midium, // 中击 Heavy, // 重击 Ground, // 击倒 Air, // 击飞 } public enum HitSparkHost { Center, // 受击者质心 Hitpoint, // 重叠盒子中心 Fixed, // 固定挂点sparkHost WorldPosition, // 世界空间位置sparkRotation } /// /// 一个hit的定义,如果一个attack有多个hit,需要定义多个HitDef /// public class HitDefination { // 触发的开始和结束时间范围,用来处理一个attack多个hit的情况 public float start = 0f; public float end = 1f; public HitType type = HitType.Light; // 类型 // 特效 public string sparkName = string.Empty; // 特效 public HitSparkHost sparkHostType = HitSparkHost.Center; public Transform sparkHost = null; // 特效挂点 public Vector3 sparkPosition; // 特效位置 public Quaternion sparkRotation; // 特效旋转 public Vector3 sparkScale = Vector3.one; // 特效缩放 // 相机反馈 // 攻击方反馈 // 受击方反馈 public Vector3 hurtAddForce = Vector3.zero; }