diff --git a/MuseumGame/Assets/Scenes/DogLevel/DogBoss.unity b/MuseumGame/Assets/Scenes/DogLevel/DogBoss.unity index 8e7dafd..6c29942 100644 --- a/MuseumGame/Assets/Scenes/DogLevel/DogBoss.unity +++ b/MuseumGame/Assets/Scenes/DogLevel/DogBoss.unity @@ -700,6 +700,7 @@ GameObject: - component: {fileID: 563510753} - component: {fileID: 563510752} - component: {fileID: 563510751} + - component: {fileID: 563510754} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -772,6 +773,20 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &563510754 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 563510750} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2bd046d4caeda4b4b8fcb2e33e4d83c8, type: 3} + m_Name: + m_EditorClassIdentifier: + boundaryPercent: 0.35 + easing: 0.01 --- !u!1 &612235266 GameObject: m_ObjectHideFlags: 0 @@ -1051,6 +1066,10 @@ MonoBehaviour: dogSpeed: 4 runTime: 2 waitTime: 2 + damageTaken: 10 + doors: + - {fileID: 612235266} + - {fileID: 145706356} --- !u!50 &942069608 Rigidbody2D: serializedVersion: 4 diff --git a/MuseumGame/Assets/Scripts/DaisyBoss.cs b/MuseumGame/Assets/Scripts/DaisyBoss.cs index f97df12..e49998b 100644 --- a/MuseumGame/Assets/Scripts/DaisyBoss.cs +++ b/MuseumGame/Assets/Scripts/DaisyBoss.cs @@ -11,7 +11,7 @@ public class DaisyBoss : MonoBehaviour private GameObject enemyHealthBar; private EnemyHealthBar ehb; - public int enemyHealth; + private int enemyHealth; public int damageTaken; public GameObject[] doors; @@ -23,6 +23,7 @@ public class DaisyBoss : MonoBehaviour enemyHealthBar = GameManager.Instance.GetEnemyHealthBar(); ehb = enemyHealthBar.GetComponent(); enemyHealthBar.gameObject.SetActive(true); + enemyHealth = ehb.maxHealth; foreach (GameObject i in doors) { i.GetComponent().isTrigger = false; i.GetComponent().enabled = false; @@ -56,7 +57,7 @@ public class DaisyBoss : MonoBehaviour if (collision2D.gameObject.CompareTag("Projectile")) { - DamageEnemy(50); + DamageEnemy(damageTaken); } } @@ -64,7 +65,7 @@ public class DaisyBoss : MonoBehaviour { if (collider2D.gameObject.CompareTag("Projectile")) { - DamageEnemy(50); + DamageEnemy(damageTaken); } } diff --git a/MuseumGame/Assets/Scripts/DogBoss.cs b/MuseumGame/Assets/Scripts/DogBoss.cs index f45e4ec..67dfdce 100644 --- a/MuseumGame/Assets/Scripts/DogBoss.cs +++ b/MuseumGame/Assets/Scripts/DogBoss.cs @@ -12,11 +12,28 @@ public class DogBoss : MonoBehaviour public float runTime; public float waitTime; + private GameObject enemyHealthBar; + private EnemyHealthBar ehb; + private int enemyHealth; + public int damageTaken; + public GameObject[] doors; + // Start is called before the first frame update void Start() { rb2d = GetComponent(); StartCoroutine(DogMove()); + + enemyHealthBar = GameManager.Instance.GetEnemyHealthBar(); + ehb = enemyHealthBar.GetComponent(); + enemyHealthBar.gameObject.SetActive(true); + enemyHealth = ehb.maxHealth; + Debug.Log(enemyHealth); + foreach (GameObject i in doors) + { + i.GetComponent().isTrigger = false; + i.GetComponent().enabled = false; + } } // Update is called once per frame @@ -28,6 +45,38 @@ public class DogBoss : MonoBehaviour { rb2d.velocity = v2; } + public void DamageEnemy(int damage) + { + enemyHealth -= damage; + ehb.SetHealth(enemyHealth); + if (enemyHealth <= 0) + { + enemyHealthBar.SetActive(false); + foreach (GameObject i in doors) + { + i.GetComponent().isTrigger = true; + i.GetComponent().enabled = true; + } + Destroy(gameObject); + } + + } + void OnCollisionEnter2D(Collision2D collision2D) + { + + if (collision2D.gameObject.CompareTag("Projectile")) + { + DamageEnemy(damageTaken); + } + + } + void OnTriggerEnter2D(Collider2D collider2D) + { + if (collider2D.gameObject.CompareTag("Projectile")) + { + DamageEnemy(damageTaken); + } + } private void flip() { faceRight = !faceRight; diff --git a/MuseumGame/Assets/Scripts/GameManager.cs b/MuseumGame/Assets/Scripts/GameManager.cs index 93ce006..bad9af0 100644 --- a/MuseumGame/Assets/Scripts/GameManager.cs +++ b/MuseumGame/Assets/Scripts/GameManager.cs @@ -180,7 +180,7 @@ public class GameManager : MonoBehaviour startButton.SetActive(false); title.SetActive(false); panel.SetActive(false); - LoadLevel("BossRoom", new Vector3(0, 0, 0)); + LoadLevel("DogBoss", new Vector3(0, 0, 0)); healtBar.SetActive(true); powerUps.SetActive(true); } diff --git a/MuseumGame/UserSettings/EditorUserSettings.asset b/MuseumGame/UserSettings/EditorUserSettings.asset index 5870bf8..acca505 100644 --- a/MuseumGame/UserSettings/EditorUserSettings.asset +++ b/MuseumGame/UserSettings/EditorUserSettings.asset @@ -15,12 +15,15 @@ EditorUserSettings: value: 22424703114646680e0b0227036c7b151b18342f3a2d2a23621b1226f6e50037d6e821ecf5742a323016f6 flags: 0 RecentlyUsedScenePath-3: - value: 22424703114646680e0b0227036c7b151b18342f3a2d2a23620c1336eff9002dece933e5a92f31352d1b + value: 22424703114646680e0b0227036c7b151b18342f3a2d2a23620b1220f1d23b37efa923e7ee2e26 flags: 0 RecentlyUsedScenePath-4: - value: 22424703114646680e0b0227036c7b151b18342f3a2d2a23620b1220f1d23b37efa923e7ee2e26 + value: 22424703114646680e0b0227036c7b151b18342f3a2d2a23620c1336eff9002dece933e5a92f31352d1b flags: 0 RecentlyUsedScenePath-5: + value: 22424703114646680e0b0227036c7b1f113b1d3c29246914222e3f3cf1f37a2decee22f0 + flags: 0 + RecentlyUsedScenePath-6: value: 22424703114646680e0b0227036c72111f19352f223d68252320092a flags: 0 vcSharedLogLevel: