summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Unit
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-08-20 09:28:49 +0800
committerchai <chaifix@163.com>2021-08-20 09:28:49 +0800
commite0d93c689c5223afaa7619975244fdc540ff58b9 (patch)
tree44fd8b8ec1a73844fde58250dcdae556e84c64a4 /Assets/Scripts/Unit
parentf50326c223546e862f6800f643490e13616960e0 (diff)
*misc
Diffstat (limited to 'Assets/Scripts/Unit')
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderAttributes.cs72
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderAttributes.cs.meta (renamed from Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs.meta)2
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox.cs33
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs51
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs.meta11
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs12
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs.meta11
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs12
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs.meta11
-rw-r--r--Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs14
10 files changed, 183 insertions, 46 deletions
diff --git a/Assets/Scripts/Unit/Collider/ColliderAttributes.cs b/Assets/Scripts/Unit/Collider/ColliderAttributes.cs
new file mode 100644
index 00000000..292a29f7
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderAttributes.cs
@@ -0,0 +1,72 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ColliderTypeAttribute : Attribute
+{
+ public ColliderTypeAttribute(ColliderBox.EColliderType type)
+ {
+ this.type = type;
+ }
+
+ public ColliderBox.EColliderType type;
+}
+
+
+public class IfAttribute : Attribute
+{
+ public IfAttribute(string name)
+ {
+ this.conditionName = name;
+ }
+
+ public string conditionName;
+
+}
+
+public class IfNotAttribute : Attribute
+{
+ public IfNotAttribute(string name)
+ {
+ this.conditionName = name;
+ }
+
+ public string conditionName;
+
+}
+
+
+public class WhenAttribute : Attribute
+{
+ public WhenAttribute(string name, int value)
+ {
+ this.conditionName = name;
+ }
+
+ public string conditionName;
+ public int value;
+}
+
+
+
+public class WhenNotAttribute : Attribute
+{
+ public WhenNotAttribute(string name, int value)
+ {
+ this.conditionName = name;
+ }
+
+ public string conditionName;
+ public int value;
+}
+
+public class CommentAttribute : Attribute
+{
+ public CommentAttribute(string comment)
+ {
+ this.comment = comment;
+ }
+ public string comment;
+
+} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs.meta b/Assets/Scripts/Unit/Collider/ColliderAttributes.cs.meta
index 73ff8d73..9cdbeaf7 100644
--- a/Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs.meta
+++ b/Assets/Scripts/Unit/Collider/ColliderAttributes.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 9aa9fd1fcb8a10341bbf8b8fdeb54599
+guid: 618a95231c298694696513e29164d269
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox.cs b/Assets/Scripts/Unit/Collider/ColliderBox.cs
index 1163c888..24319ef2 100644
--- a/Assets/Scripts/Unit/Collider/ColliderBox.cs
+++ b/Assets/Scripts/Unit/Collider/ColliderBox.cs
@@ -4,7 +4,7 @@ using System.Collections.Generic;
using UnityEngine;
[Serializable]
-public class ColliderBox
+public partial class ColliderBox
{
// pivot
public enum Pivot
@@ -26,38 +26,9 @@ public class ColliderBox
[DisallowModifiyInGUI]
[Tooltip("Collider类型")]
public EColliderType type;
+
[DisallowModifiyInGUI]
[Tooltip("Collider原点")]
public Pivot pivot;
- #region Hurtbox
- [ColliderType(EColliderType.HurtBox), Tooltip("是否开启重力")]
- public bool useGravity;
- #endregion
-
- #region Hitbox
- public enum SparkAnchor
- {
- Default = 0,
- CenterOfIntersection = 0,
- }
- [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 Vector3 sparkOffset;
- [ColliderType(EColliderType.HitBox), Tooltip("自身钝帧")]
- public float freezeFramesSelf;
- [ColliderType(EColliderType.HitBox), Tooltip("对方钝帧")]
- public float freezeFramesOther;
- #endregion
-
- #region ThrowBox
- [ColliderType(EColliderType.ThrowBox), Tooltip("是否允许抓取多个")]
- public bool multiple;
- #endregion
-
} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs b/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs
new file mode 100644
index 00000000..d28a7c8d
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs
@@ -0,0 +1,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;
+
+} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs.meta b/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs.meta
new file mode 100644
index 00000000..639f1fc5
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderBox_Hitbox.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ddd96c09da9d8ff468e34a19a4698555
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs b/Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs
new file mode 100644
index 00000000..ac70fef9
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public partial class ColliderBox
+{
+
+ [ColliderType(EColliderType.HurtBox), Tooltip("是否开启重力")]
+ public bool useGravity;
+
+} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs.meta b/Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs.meta
new file mode 100644
index 00000000..607eaa13
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderBox_Hurtbox.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 9a6f3f28157915d4799d28475c61a11a
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs b/Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs
new file mode 100644
index 00000000..c751b6da
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public partial class ColliderBox
+{
+
+ [ColliderType(EColliderType.ThrowBox), Tooltip("是否允许抓取多个")]
+ public bool multiple;
+
+} \ No newline at end of file
diff --git a/Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs.meta b/Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs.meta
new file mode 100644
index 00000000..14bc67b2
--- /dev/null
+++ b/Assets/Scripts/Unit/Collider/ColliderBox_ThrowBox.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 855e124ac6f58354a86276f0cda17fa1
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs b/Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs
deleted file mode 100644
index 7d634b93..00000000
--- a/Assets/Scripts/Unit/Collider/ColliderDifferentiationAttribute.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-
-public class ColliderTypeAttribute : Attribute
-{
- public ColliderTypeAttribute(ColliderBox.EColliderType type)
- {
- this.type = type;
- }
-
- public ColliderBox.EColliderType type;
-}