diff options
Diffstat (limited to 'SurvivalTest/Assets/Scripts/Equips')
6 files changed, 56 insertions, 0 deletions
diff --git a/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs index bda8b81..334609d 100644 --- a/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs +++ b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs @@ -5,6 +5,10 @@ using UnityEngine; public abstract class EquipBase { + public abstract string name { get; } + + public abstract string iconPath { get; } + /// <summary> /// Á¬·¢Ä£Ê½ /// </summary> diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs index be1645b..c00ebc4 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs @@ -9,6 +9,10 @@ public class Equip_Boomerang : EquipBase { public override AutoMode autoMode => AutoMode.Condition; + public override string name => ""; + + public override string iconPath => ""; + /// <summary> /// ½Óµ½»ØÐýïÚºóÖØÐÂÖÀ³ö£¬·ñÔò¼ä¸ôÒ»¶Îʱ¼äͶÖÀ /// </summary> diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs index 6e3eb26..090c3ab 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs @@ -7,12 +7,45 @@ using UnityEngine; /// </summary> public class Equip_GrenadeLauncher : EquipBase { + + public override string name => "Áñµ¯·¢ÉäÆ÷"; + + public override string iconPath => "art/ui/equipicon/grenade"; + public override AutoMode autoMode => AutoMode.Interval; public override float interval => 0.5f; + private string prefabPath = "prefabs/grenade/grenade_v1"; + + // ÌØÐ§vfx + private string vfxPath = "prefabs/effect/eff_launch"; + + Vector3 GetRandomLaunchGrenadeDirection(CrewScript crew) + { + Vector3 dirOnPlane = Quaternion.Euler(0, 0, Random.Range(-15f, 15f)) * new Vector3(crew.aimDirection.x, crew.aimDirection.y, 0); + dirOnPlane = dirOnPlane.normalized; + Vector3 dir = new Vector3(dirOnPlane.x, dirOnPlane.y, Random.Range(0f, 1f)).normalized; + return dir.normalized; + } + + public override void OnTrigger(GameObject owner) { + Debug.Log("Grenade !!!"); + + CrewScript crew = owner.GetComponent<CrewScript>(); + + //// grenade + TestPeaceMakerGrenade grenade = UnityEngine.Object.Instantiate<TestPeaceMakerGrenade>(ResourceManager.Instance.Load<TestPeaceMakerGrenade>(prefabPath)); + Vector3 position = owner.GetComponent<TopDownTransform>().position + new Vector3(0, 0, 1.8f); + grenade.Set(position, GetRandomLaunchGrenadeDirection(crew), Random.Range(8f, 10f)); + grenade.gameObject.SetActive(true); + + //// vfx + GameObject eff = UnityEngine.Object.Instantiate<GameObject>(ResourceManager.Instance.Load<UnityEngine.GameObject>(vfxPath), crew.transform); + eff.transform.position = crew.launchPoint.position; + eff.SetActive(true); } }
\ No newline at end of file diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs index 335e2a7..b370e66 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs @@ -7,6 +7,11 @@ using UnityEngine; /// </summary> public class Equip_Gun : EquipBase { + + public override string name => "枪"; + + public override string iconPath => "art/ui/equipicon/gun"; + public override AutoMode autoMode => AutoMode.Interval; public override float interval => 0.1f; diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs index 1af4143..d5e4189 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs @@ -7,6 +7,11 @@ using UnityEngine; /// </summary> public class Equip_MightyGlove : EquipBase { + + public override string name => ""; + + public override string iconPath => ""; + public override AutoMode autoMode => AutoMode.Interval; public override void OnTrigger(GameObject owner) diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs index 1546e1b..c0bdfc6 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs @@ -7,6 +7,11 @@ using UnityEngine; /// </summary> public class Equip_TeslaCoil : EquipBase { + + public override string name => ""; + + public override string iconPath => ""; + public override AutoMode autoMode => AutoMode.Interval; public override float interval => 1f; |