diff --git a/Assets/JYY/Prefabs/Alien Big Blink.prefab b/Assets/JYY/Prefabs/Alien Big Blink.prefab index d0829083..a773ae34 100644 --- a/Assets/JYY/Prefabs/Alien Big Blink.prefab +++ b/Assets/JYY/Prefabs/Alien Big Blink.prefab @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:957feb878cd80c20a3dc70cfb66c740204db8155c97835537e39de8730221fdc -size 77283 +oid sha256:dfd903c1aeeb5a94942b711769cdf0466e1f9d045ece4136273a665742493e52 +size 77259 diff --git a/Assets/JYY/Prefabs/Bullets/Magic Missaile.prefab b/Assets/JYY/Prefabs/Bullets/Magic Missaile.prefab index c7bbc27d..a06b9f98 100644 --- a/Assets/JYY/Prefabs/Bullets/Magic Missaile.prefab +++ b/Assets/JYY/Prefabs/Bullets/Magic Missaile.prefab @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d51e7bbc994507d09d8e41c524596021b31347e399b76074317e2fa3b19fbbc2 +oid sha256:f2ca28b16f1e9e6161b75435af51d2f18fae41effe525d00ab1eb6746f5235cb size 10895 diff --git a/Assets/JYY/Scenes/MonsterTest.unity b/Assets/JYY/Scenes/MonsterTest.unity index 1afc100f..9923e4bf 100644 --- a/Assets/JYY/Scenes/MonsterTest.unity +++ b/Assets/JYY/Scenes/MonsterTest.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1e8d721e4d0b53d0d1f036e49add6145b037d53c26f1d05c02f1526eca8923fd -size 23594 +oid sha256:41fff336c7ddea02b8494fd1b922c447e7093a98c8a2cbf9b61ff1ee18c315da +size 22653 diff --git a/Assets/Scripts/Character/Enemy/Bullet/BulletBase.cs b/Assets/Scripts/Character/Enemy/Bullet/BulletBase.cs index 788d8b55..3020b535 100644 --- a/Assets/Scripts/Character/Enemy/Bullet/BulletBase.cs +++ b/Assets/Scripts/Character/Enemy/Bullet/BulletBase.cs @@ -51,9 +51,15 @@ public class BulletBase : MonoBehaviour float moveDist = _speed * Time.deltaTime; // 1) Raycast 충돌 검사 - if (Physics.Raycast(_prevPosition, _direction, out RaycastHit hit, moveDist, _targetLayer)) + if (Physics.SphereCast( + _prevPosition, + 1, + _direction, + out RaycastHit hit, + moveDist, + _targetLayer + )) { - // 닿은 지점으로 이동 transform.position = hit.point; OnBulletHit(hit); return; @@ -85,4 +91,11 @@ public class BulletBase : MonoBehaviour Debug.Log("## Bullet destroyed"); Destroy(gameObject); } + + // 기즈모로 반지름 시각화 + private void OnDrawGizmosSelected() + { + Gizmos.color = Color.red; + Gizmos.DrawWireSphere(transform.position, 1); + } } \ No newline at end of file diff --git a/Assets/Scripts/Character/Enemy/CasterDemonController.cs b/Assets/Scripts/Character/Enemy/CasterDemonController.cs index e04f27ee..56c09c46 100644 --- a/Assets/Scripts/Character/Enemy/CasterDemonController.cs +++ b/Assets/Scripts/Character/Enemy/CasterDemonController.cs @@ -277,30 +277,29 @@ public class CasterDemonController : EnemyController private IEnumerator SlowFieldSpell() { var aimPosition = TargetPosOracle(out var basePos, out var rb); - // 1. 시전 애니메이션 - transform.LookAt(aimPosition); - SetAnimation(Cast); - SFXPlayer(slowFieldSound); - // 2. 장판 생성과 세팅 + transform.LookAt(aimPosition); + + // 장판 생성과 세팅 var fixedPos = new Vector3(aimPosition.x, aimPosition.y, aimPosition.z); var warning = Instantiate(chariotWarning, fixedPos, Quaternion.identity).GetComponent(); - warning.SetEffect(SlowFieldEffectData, null, null); + warning.SetEffect(SlowFieldEffectData, () => + { + SetAnimation(Cast); + SFXPlayer(slowFieldSound); + }, null); - // 3. 짧은 텀 후 끝내기 + // 짧은 텀 후 끝내기 yield return Wait.For(1f); } private IEnumerator KnockbackSpell() { - // 시전 애니메이션 - SetAnimation(Spin); - SFXPlayer(spinSound); - - // 넉백 발생 var knockback = Instantiate(chariotWarning, transform).GetComponent(); - knockback.SetEffect(KnockbackData, null, null, DebuffType.Knockback.ToString()); + knockback.SetEffect(KnockbackData, ()=>{ + SetAnimation(Spin); + SFXPlayer(spinSound);}, null, DebuffType.Knockback.ToString()); yield return Wait.For(1f); }