From b1b0925ee2acf37639c3d211351d74e957c4d134 Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Apr 2022 14:38:07 +0800 Subject: * lock aim --- .../Scripts/Weapons/Boomerang/Weapon_Boomerang.cs | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs (limited to 'SurvivalTest/Assets/Scripts/Weapons/Boomerang/Weapon_Boomerang.cs') 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; + +/// +/// 回旋镖 +/// +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; + + /// 接到回旋镖后重新掷出,否则间隔一段时间投掷 + /// + /// + /// + 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(ResourceManager.Instance.Load(prefabPath)); + CrewScript crew = owner.GetComponent(); + 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 -- cgit v1.1-26-g67d0