From ef830fd4ac7e698951dd8e343275a0803f21087c Mon Sep 17 00:00:00 2001 From: Garrett Kaiser Date: Thu, 15 Jan 2026 14:54:58 -0800 Subject: [PATCH] Boss Hurts PLayer --- Assets/Scenes/Scene1-Boss.unity | 4 ++-- Assets/Scripts/JumpHitbox.cs | 29 +++++++++++++++++++++++++++++ Assets/Scripts/JumpHitbox.cs.meta | 2 ++ Assets/Scripts/LungeHitbox.cs | 29 +++++++++++++++++++++++++++++ Assets/Scripts/LungeHitbox.cs.meta | 2 ++ Assets/Scripts/SteampunkBoss.cs | 23 +++++++++++++++++++++-- 6 files changed, 85 insertions(+), 4 deletions(-) create mode 100644 Assets/Scripts/JumpHitbox.cs create mode 100644 Assets/Scripts/JumpHitbox.cs.meta create mode 100644 Assets/Scripts/LungeHitbox.cs create mode 100644 Assets/Scripts/LungeHitbox.cs.meta diff --git a/Assets/Scenes/Scene1-Boss.unity b/Assets/Scenes/Scene1-Boss.unity index 9009513..2f5ef5e 100644 --- a/Assets/Scenes/Scene1-Boss.unity +++ b/Assets/Scenes/Scene1-Boss.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:06ff0c8c995fa95e939cb44943fd159c513b69520af422538f1c65ae70653962 -size 1282574 +oid sha256:40a24a59108b9678a975624f64bada902594b30927f92076f81dd47a74b83d77 +size 1283556 diff --git a/Assets/Scripts/JumpHitbox.cs b/Assets/Scripts/JumpHitbox.cs new file mode 100644 index 0000000..1f0f5c3 --- /dev/null +++ b/Assets/Scripts/JumpHitbox.cs @@ -0,0 +1,29 @@ +using UnityEngine; + +public class JumpHitbox : MonoBehaviour +{ + public PlayerMovement playerMovement; + // Start is called once before the first execution of Update after the MonoBehaviour is created + void Start() + { + + } + + // Update is called once per frame + void Update() + { + + } + + public void OnTriggerEnter(Collider other) + { + if (other.CompareTag("Player")) + { + Debug.Log("Hit Player"); + playerMovement.HP -= 1; + } + else{ + Debug.Log("Failed"); + } + } +} diff --git a/Assets/Scripts/JumpHitbox.cs.meta b/Assets/Scripts/JumpHitbox.cs.meta new file mode 100644 index 0000000..31daca4 --- /dev/null +++ b/Assets/Scripts/JumpHitbox.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: ba495adcc9de84e148094bc4f9073dfa \ No newline at end of file diff --git a/Assets/Scripts/LungeHitbox.cs b/Assets/Scripts/LungeHitbox.cs new file mode 100644 index 0000000..08fa666 --- /dev/null +++ b/Assets/Scripts/LungeHitbox.cs @@ -0,0 +1,29 @@ +using UnityEngine; + +public class LungeHitbox : MonoBehaviour +{ + public PlayerMovement playerMovement; + // Start is called once before the first execution of Update after the MonoBehaviour is created + void Start() + { + + } + + // Update is called once per frame + void Update() + { + + } + + public void OnTriggerEnter(Collider other) + { + if (other.CompareTag("Player")) + { + Debug.Log("Hit Player"); + playerMovement.HP -= 1.5f; + } + else{ + Debug.Log("Failed"); + } + } +} diff --git a/Assets/Scripts/LungeHitbox.cs.meta b/Assets/Scripts/LungeHitbox.cs.meta new file mode 100644 index 0000000..a880364 --- /dev/null +++ b/Assets/Scripts/LungeHitbox.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 982fdb439fe8344d68124ca1628747ae \ No newline at end of file diff --git a/Assets/Scripts/SteampunkBoss.cs b/Assets/Scripts/SteampunkBoss.cs index 3d2c347..9b4f989 100644 --- a/Assets/Scripts/SteampunkBoss.cs +++ b/Assets/Scripts/SteampunkBoss.cs @@ -12,6 +12,9 @@ public class SteampunkBoss : MonoBehaviour public GameObject JumpHitbox; + public GameObject LungeHitbox; + public float lungeBackup; + // Start is called once before the first execution of Update after the MonoBehaviour is created void Start() { @@ -23,6 +26,7 @@ public class SteampunkBoss : MonoBehaviour { if (stallTimer <= 0) { + transform.LookAt(Player.transform); randomNumber = Random.Range(1, 6); setTimer = false; } @@ -113,13 +117,24 @@ public class SteampunkBoss : MonoBehaviour TargetPosition = Player.transform.position; setposition = true; } - transform.position = Vector3.MoveTowards(transform.position, TargetPosition, 30 * Time.deltaTime); + if (lungeBackup > 0) + { + transform.position = Vector3.MoveTowards(transform.position, TargetPosition, -10 * Time.deltaTime); + lungeBackup -= Time.deltaTime; + } + if (lungeBackup <= 0) + { + LungeHitbox.SetActive(true); + transform.position = Vector3.MoveTowards(transform.position, TargetPosition, 30 * Time.deltaTime); + } if (transform.position == TargetPosition) { + LungeHitbox.SetActive(false); stallTimer -= Time.deltaTime; } if (stallTimer <= 0) { + lungeBackup = 1; setposition = false; } } @@ -148,9 +163,13 @@ public class SteampunkBoss : MonoBehaviour public void OnTriggerEnter(Collider other) { - if (randomNumber == 1) + if (other.CompareTag("Player")) { + Debug.Log("Hit Player"); playerMovement.HP -= 1; } + else{ + Debug.Log("Failed"); + } } }