diff --git a/BlueWater/Assets/01.Scenes/03.Stage_Test.unity b/BlueWater/Assets/01.Scenes/03.Stage_Test.unity index fda61904c..032cf7792 100644 --- a/BlueWater/Assets/01.Scenes/03.Stage_Test.unity +++ b/BlueWater/Assets/01.Scenes/03.Stage_Test.unity @@ -2097,6 +2097,7 @@ MonoBehaviour: k__BackingField: 0 useMouseAttack: 0 isRolling: 0 + enableRoll: 1 isStiffened: 0 beAttacked: 0 isAttacking: 0 @@ -2104,6 +2105,7 @@ MonoBehaviour: angleSpeed: 0.2 rollDuration: 0.5 rollForce: 2 + rollCooldown: 0.5 myActiveSkill: {fileID: 0} --- !u!114 &418278343 MonoBehaviour: @@ -3682,7 +3684,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 1fbb68ccbcfcf4c4c9f4304a726038e3, type: 3} m_Name: m_EditorClassIdentifier: - activeSkillDataSo: {fileID: 11400000, guid: 97ebd289c10598a458425fbefd7db39f, type: 2} + activeSkillSo: {fileID: 11400000, guid: 97ebd289c10598a458425fbefd7db39f, type: 2} --- !u!1 &1037586753 GameObject: m_ObjectHideFlags: 0 diff --git a/BlueWater/Assets/02.Scripts/Character/Player/Type/InIslandPlayer.cs b/BlueWater/Assets/02.Scripts/Character/Player/Type/InIslandPlayer.cs index c84f0c6fe..0c6384b2b 100644 --- a/BlueWater/Assets/02.Scripts/Character/Player/Type/InIslandPlayer.cs +++ b/BlueWater/Assets/02.Scripts/Character/Player/Type/InIslandPlayer.cs @@ -89,6 +89,8 @@ namespace BlueWaterProject [DisableIf("@true")] [SerializeField] private bool isRolling; [DisableIf("@true")] + [SerializeField] private bool enableRoll = true; + [DisableIf("@true")] [SerializeField] private bool isStiffened; [DisableIf("@true")] [SerializeField] private bool beAttacked; @@ -101,6 +103,7 @@ namespace BlueWaterProject public float angleSpeed = 0.2f; public float rollDuration = 0.3f; public float rollForce = 2f; + public float rollCooldown = 0.5f; // 일반 변수 private bool usedNormalAttackCoroutine; @@ -600,7 +603,7 @@ namespace BlueWaterProject public void OnRoll() { - if (isRolling) return; + if (!enableRoll || isRolling) return; StartCoroutine(nameof(Roll)); } @@ -732,6 +735,7 @@ namespace BlueWaterProject private IEnumerator Roll() { isRolling = true; + enableRoll = false; var time = 0f; @@ -751,6 +755,7 @@ namespace BlueWaterProject afterImageTrail.Stop(); isRolling = false; + StartCoroutine(Utils.CoolDown(rollCooldown, () => enableRoll = true)); if (movementInput == Vector2.zero) { @@ -766,6 +771,7 @@ namespace BlueWaterProject afterImageTrail.Clear(); isRolling = false; + StartCoroutine(Utils.CoolDown(rollCooldown, () => enableRoll = true)); } private void GameOver()