summaryrefslogtreecommitdiff
path: root/SurvivalTest/Assets/Scripts/Equips
diff options
context:
space:
mode:
Diffstat (limited to 'SurvivalTest/Assets/Scripts/Equips')
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/EquipBase.cs38
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/EquipBase.cs.meta11
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs30
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs.meta11
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs18
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs.meta11
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs18
-rw-r--r--SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs.meta11
8 files changed, 148 insertions, 0 deletions
diff --git a/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs
new file mode 100644
index 0000000..bda8b81
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs
@@ -0,0 +1,38 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public abstract class EquipBase
+{
+
+ /// <summary>
+ /// 连发模式
+ /// </summary>
+ public enum AutoMode
+ {
+ Interval, // 按时连发,需要设置Interval
+ Condition, // 按条件触发,需要重写CheckCondition
+ }
+
+ public abstract AutoMode autoMode { get; }
+
+ /// <summary>
+ /// 触发的时间间隔
+ /// </summary>
+ public virtual float interval { get; }
+
+ /// <summary>
+ /// 使用装备
+ /// </summary>
+ public abstract void OnTrigger(GameObject owner);
+
+ public virtual bool CheckCondition(GameObject owner)
+ {
+ return false;
+ }
+
+ public virtual void Update()
+ {
+ }
+
+}
diff --git a/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs.meta b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs.meta
new file mode 100644
index 0000000..23e0a00
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a9ad03a26b4af7a42a81bd9216665ebb
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs
new file mode 100644
index 0000000..be1645b
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs
@@ -0,0 +1,30 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+/// <summary>
+/// 回旋镖
+/// </summary>
+public class Equip_Boomerang : EquipBase
+{
+ public override AutoMode autoMode => AutoMode.Condition;
+
+ /// <summary>
+ /// 接到回旋镖后重新掷出,否则间隔一段时间投掷
+ /// </summary>
+ /// <param name="owner"></param>
+ /// <returns></returns>
+ public override bool CheckCondition(GameObject owner)
+ {
+ return false;
+ }
+
+ public override void OnTrigger(GameObject owner)
+ {
+ }
+
+ public override void Update()
+ {
+ }
+
+} \ No newline at end of file
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs.meta b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs.meta
new file mode 100644
index 0000000..dc65c95
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: de55161bf2db13f48b0192e0c4fcbcfa
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs
new file mode 100644
index 0000000..6e3eb26
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs
@@ -0,0 +1,18 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+/// <summary>
+/// 榴弹发射器
+/// </summary>
+public class Equip_GrenadeLauncher : EquipBase
+{
+ public override AutoMode autoMode => AutoMode.Interval;
+
+ public override float interval => 0.5f;
+
+ public override void OnTrigger(GameObject owner)
+ {
+
+ }
+} \ No newline at end of file
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs.meta b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs.meta
new file mode 100644
index 0000000..0664e49
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8576c95cf1a888f41be5cb6907cd02bc
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs
new file mode 100644
index 0000000..335e2a7
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs
@@ -0,0 +1,18 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+/// <summary>
+/// 枪
+/// </summary>
+public class Equip_Gun : EquipBase
+{
+ public override AutoMode autoMode => AutoMode.Interval;
+
+ public override float interval => 0.1f;
+
+ public override void OnTrigger(GameObject owner)
+ {
+ }
+
+} \ No newline at end of file
diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs.meta b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs.meta
new file mode 100644
index 0000000..0388d5b
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 3e3705ee478644d4092b29376c9173ad
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: