diff options
author | chai <chaifix@163.com> | 2022-04-24 08:34:09 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2022-04-24 08:34:09 +0800 |
commit | d76c9cff59d3c8a65968058df992c39c2cdb44ad (patch) | |
tree | 0fcd78527e8b0644be53538a639bba96674b3769 /SurvivalTest/Assets/Scripts/Managers | |
parent | c53a09367b8eb79610c0ff9bd25fe2a171183514 (diff) |
+ several equips
Diffstat (limited to 'SurvivalTest/Assets/Scripts/Managers')
-rw-r--r-- | SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs | 40 |
1 files changed, 31 insertions, 9 deletions
diff --git a/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs b/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs index 05ca6df..73f86ff 100644 --- a/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs +++ b/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs @@ -13,7 +13,7 @@ public partial class PlayerManager : Singleton<PlayerManager> public bool isFire { get; private set; } private bool m_AutoFire; - private float m_AutoFireDuration = 1f; + private float m_AutoFireDuration = 0.8f; private float m_LastAxisValue = 0; @@ -21,6 +21,10 @@ public partial class PlayerManager : Singleton<PlayerManager> { m_Equips.Add(new Equip_Gun()); m_Equips.Add(new Equip_GrenadeLauncher()); + m_Equips.Add(new Equip_Boomerang()); + m_Equips.Add(new Equip_TeslaCoil()); + m_Equips.Add(new Equip_MightyGlove()); + m_Equips.Add(new Equip_MysteryMask()); m_AutoFire = false; @@ -51,29 +55,47 @@ public partial class PlayerManager : Singleton<PlayerManager> { m_AutoFire = false; } - if(TinyCountDown.Instance.Get("ReleaseFire") > 0) + + isFire = true; + RunFireCoroutine(true); + } + + if (!m_AutoFire && !Input.GetButton("Fire1") && (axis == 0 && m_LastAxisValue != 0)) + { + if (TinyCountDown.Instance.Get("ReleaseFire") > 0) { m_AutoFire = true; + isFire = true; + RunFireCoroutine(true); } - isFire = true; + else + { + TinyCountDown.Instance.Set("ReleaseFire", m_AutoFireDuration); + isFire = false; + RunFireCoroutine(false); + } + } + + m_LastAxisValue = axis; + } + + void RunFireCoroutine(bool start) + { + if (start) + { if (m_CoFire == null) { m_CoFire = GameApp.Instance.StartCoroutine(coFire()); } } - - if (!m_AutoFire && !Input.GetButton("Fire1") && (axis == 0 && m_LastAxisValue != 0)) + else { - TinyCountDown.Instance.Set("ReleaseFire", m_AutoFireDuration); - isFire = false; if (m_CoFire != null) { GameApp.Instance.StopCoroutine(m_CoFire); m_CoFire = null; } } - - m_LastAxisValue = axis; } /// <summary> |