summaryrefslogtreecommitdiff
path: root/SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs
diff options
context:
space:
mode:
Diffstat (limited to 'SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs')
-rw-r--r--SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs56
1 files changed, 56 insertions, 0 deletions
diff --git a/SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs b/SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs
new file mode 100644
index 0000000..f5588cd
--- /dev/null
+++ b/SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs
@@ -0,0 +1,56 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+/// <summary>
+/// 回旋镖
+/// </summary>
+public class Weapon_Boomerang : WeaponBase
+{
+ public override AutoMode autoMode => AutoMode.Condition;
+
+ public override string name => "回旋镖";
+
+ public override string iconPath => "art/ui/weaponicon/boomerang";
+
+ string prefabPath = "prefabs/weapon/boomerang";
+
+ Boomerang boomerang;
+
+ /// 接到回旋镖后重新掷出,否则间隔一段时间投掷
+ /// </summary>
+ /// <param name="owner"></param>
+ /// <returns></returns>
+ public override bool CheckCondition(GameObject owner)
+ {
+ return true;
+ }
+
+ public override void OnInitialize(GameObject owner)
+ {
+ base.OnInitialize(owner);
+ boomerang = null;
+ }
+
+ public override void OnTrigger(GameObject owner)
+ {
+ if (boomerang == null)
+ {
+ boomerang = UnityEngine.Object.Instantiate<Boomerang>(ResourceManager.Instance.Load<Boomerang>(prefabPath));
+ CrewScript crew = owner.GetComponent<CrewScript>();
+ Vector3 pos = crew.centre.position + new Vector3(crew.aimDirection.x, crew.aimDirection.y, 0) * 0.3f;
+ boomerang.transform.position = pos;
+ boomerang.Set(crew.aimDirection, 10f, 10f);
+ }
+ }
+
+ public override void OnStop(GameObject owner)
+ {
+
+ }
+
+ public override void Update(GameObject owner)
+ {
+ }
+
+} \ No newline at end of file