From 48775ebca5b05e69d3c1548d66714173879d083a Mon Sep 17 00:00:00 2001 From: Ino Date: Tue, 14 Jan 2025 08:43:30 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9B=8C=EB=A6=AC=EC=96=B4=20-=20=EC=B9=BC?= =?UTF-8?q?=EB=82=A0=20=ED=8F=AD=ED=92=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Animations/pcanim_twohand.controller | 2 +- Assets/Res_Addr/Skill/Skill_Whirlwind.prefab | 2 +- Assets/Script/Character/Actor.cs | 1 + Assets/Script/Character/PCActor.cs | 21 ++++++++++--------- .../Projectile/Skill/Skill_Whirlwind.cs | 7 ++++++- .../Scripts/Joysticks/FloatingJoystick.cs | 4 ++-- 6 files changed, 22 insertions(+), 15 deletions(-) diff --git a/Assets/Res_Addr/Animations/pcanim_twohand.controller b/Assets/Res_Addr/Animations/pcanim_twohand.controller index f2ef402d4..1d0255144 100644 --- a/Assets/Res_Addr/Animations/pcanim_twohand.controller +++ b/Assets/Res_Addr/Animations/pcanim_twohand.controller @@ -167,7 +167,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: MoveAttack1 - m_Speed: 1 + m_Speed: 2.5 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] diff --git a/Assets/Res_Addr/Skill/Skill_Whirlwind.prefab b/Assets/Res_Addr/Skill/Skill_Whirlwind.prefab index 031f84ef5..10444ff66 100644 --- a/Assets/Res_Addr/Skill/Skill_Whirlwind.prefab +++ b/Assets/Res_Addr/Skill/Skill_Whirlwind.prefab @@ -9760,7 +9760,7 @@ MonoBehaviour: m_Pierce: 1 str_HitEffect: lifeTime: 3 - gapTime: 0.1 + gapTime: 0.3 m_HitChecker: {fileID: 6054281455070537181} --- !u!1 &4019177871371100394 GameObject: diff --git a/Assets/Script/Character/Actor.cs b/Assets/Script/Character/Actor.cs index 136e74b03..e962004ab 100644 --- a/Assets/Script/Character/Actor.cs +++ b/Assets/Script/Character/Actor.cs @@ -265,6 +265,7 @@ public class Actor : MyCoroutine Play_Idle(); } } + public virtual void Set_JoystickStatus(int status) { } public void Set_Warp(Vector3 _pos) { diff --git a/Assets/Script/Character/PCActor.cs b/Assets/Script/Character/PCActor.cs index 0c9319b01..485bed08d 100644 --- a/Assets/Script/Character/PCActor.cs +++ b/Assets/Script/Character/PCActor.cs @@ -16,7 +16,7 @@ public class PCActor : MyActor ObscuredFloat[] arr_magicMaxCoolTime = new ObscuredFloat[] { 0f, 0f, 0f, 0f, 0f, 0f }; SkillListTableData[] arr_magicData = new SkillListTableData[6]; SkillCard[] arr_PCSkillCard; - public bool IsJoystickMove { get; set; } + public int JoystickStatus = 0; // 0 조이스틱 x, 1 조이스틱 + run 애님, 2 조이스틱만 ObscuredFloat m_AvoidCoolTime; protected ClassConfigTableData m_ClassData; @@ -85,7 +85,7 @@ public class PCActor : MyActor Update_Move(); - if (IsJoystickMove || IsStop || IsDead()) return; + if (JoystickStatus > 0 || IsStop || IsDead()) return; base.Update(); @@ -341,7 +341,9 @@ public class PCActor : MyActor //if (IsDead() || CurAnim >= eAnim.Skill1 || IsCC()) if (IsDead() || IsCC() || CurAnim == eAnim.Dodge) return; - Play_RunAnim(); + + if (JoystickStatus != 2) + Play_RunAnim(); Del_Magic(); Del_Target(); @@ -387,6 +389,12 @@ public class PCActor : MyActor } } + public override void Set_JoystickStatus(int status) + { + if (JoystickStatus == 2 && status < 3) return; + JoystickStatus = status == 3 ? 0 : status; + } + public bool Check_Path(Vector3 pos) { if (!IsCC()) @@ -405,13 +413,6 @@ public class PCActor : MyActor NewGameUI.Ins.m_GuideQuestUI.Add_GuideQuest(ePurpose.DieOrQuit); } - public override void Stop(bool _stop) - { - base.Stop(_stop); - // 투견장 없음 - //if (InGameInfo.Ins.Get_CurStageData().Chapter == 105) IsStop = true; - } - protected override IEnumerator Co_ScaleControl(bool returntoOriginalScale, float targetscale, Action actComplete = null) { if (returntoOriginalScale) targetscale = m_ClassData.f_Scale; diff --git a/Assets/Script/Character/Projectile/Skill/Skill_Whirlwind.cs b/Assets/Script/Character/Projectile/Skill/Skill_Whirlwind.cs index 05222dd01..b34ab0f16 100644 --- a/Assets/Script/Character/Projectile/Skill/Skill_Whirlwind.cs +++ b/Assets/Script/Character/Projectile/Skill/Skill_Whirlwind.cs @@ -21,16 +21,21 @@ public class Skill_Whirlwind : ProjectileBase IEnumerator Co_Update() { + m_ProjectTileData.shooter.Set_JoystickStatus(2); m_HitChecker.gameObject.SetActive(false); while (m_ProjectTileData.LifeTime > 0f) { yield return new WaitForSeconds(gapTime); + m_ProjectTileData.LifeTime -= gapTime; transform.position = m_ProjectTileData.shooter.Get_Center_position(); m_HitChecker.gameObject.SetActive(true); + yield return new WaitForSeconds(gapTime); + m_ProjectTileData.LifeTime -= gapTime; m_HitChecker.gameObject.SetActive(false); } Off(true); - // 캐릭터 idle로 만들기 + m_ProjectTileData.shooter.Set_JoystickStatus(3); + m_ProjectTileData.shooter.Play_Idle(); } } \ No newline at end of file diff --git a/Assets/ThirdParty/Joystick Pack/Scripts/Joysticks/FloatingJoystick.cs b/Assets/ThirdParty/Joystick Pack/Scripts/Joysticks/FloatingJoystick.cs index 590ecbad4..25884312e 100644 --- a/Assets/ThirdParty/Joystick Pack/Scripts/Joysticks/FloatingJoystick.cs +++ b/Assets/ThirdParty/Joystick Pack/Scripts/Joysticks/FloatingJoystick.cs @@ -55,7 +55,7 @@ public class FloatingJoystick : Joystick if (!DSUtil.CheckNull(MyValue.MyPC) && MyValue.MyPC.CanMove()) { MyValue.MyPC.Set_AutoBraking(false); - MyValue.MyPC.IsJoystickMove = true; + MyValue.MyPC.Set_JoystickStatus(1); } base.OnPointerDown(eventData); } @@ -66,7 +66,7 @@ public class FloatingJoystick : Joystick base.OnPointerUp(eventData); if (!DSUtil.CheckNull(MyValue.MyPC) && MyValue.MyPC.CanMove()) { - MyValue.MyPC.IsJoystickMove = false; + MyValue.MyPC.Set_JoystickStatus(0); MyValue.MyPC.Set_AutoBraking(true); MyValue.m_RealCamera.Set_DistanceUp(false); MyValue.m_RealCamera.m_BackMove = false;