summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs
blob: d28a7c8dc1a2ec24d974f16b6cb3d5b8b0b77480 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using UnityEngine;

public partial class ColliderBox
{
	// https://gameinstitute.qq.com/community/detail/112371
	public enum EColorDriftMode : int
	{
		None = 0,
		UI = 1,
		All = 2,
	}

	public enum SparkAnchor : int
	{
		CenterOfIntersection = 0, // hitbox和hurtbox相交的矩形中心
		CenterOfOther = 1, // 被攻击的对象的几何中心
		PositionOfOther = 2, // 被攻击对象的原点
	}

	[ColliderType(EColliderType.HitBox), Tooltip("击退距离")]
	public Vector3 hitBack;

	[ColliderType(EColliderType.HitBox), Tooltip("允许多次击中")]
	public bool multiHit;

	[ColliderType(EColliderType.HitBox), Tooltip("击中后的粒子效果")]
	public string sparkPath;
	[ColliderType(EColliderType.HitBox), Tooltip("粒子的锚点")]
	public SparkAnchor sparkAnchor;
	[ColliderType(EColliderType.HitBox), Tooltip("击中后的粒子位置偏移")]
	public Vector3 sparkOffset;

	[ColliderType(EColliderType.HitBox), Tooltip("自身钝帧")]
	public float freezeFramesSelf;
	[ColliderType(EColliderType.HitBox), Tooltip("对方钝帧")]
	public float freezeFramesOther;

	[ColliderType(EColliderType.HitBox), Tooltip("是否震屏")]
	public bool shakeScreen;
	[ColliderType(EColliderType.HitBox), If("shakeScreen"), Tooltip("是否震屏")]
	public Vector2 shakeOffset;
	[ColliderType(EColliderType.HitBox), If("shakeScreen"), Tooltip("震屏力度")]
	public float shakeStrength;

	[ColliderType(EColliderType.HitBox), Tooltip("颜色漂移效果")]
	public EColorDriftMode colorDrift;

	[ColliderType(EColliderType.HitBox), Tooltip("拉近相机")]
	public bool zoomCamera;  

}