From 0ae02c3348d3876182324d21792cc0bbdb999e42 Mon Sep 17 00:00:00 2001
From: Fahrian Afdholi <89321009+fchrgrib@users.noreply.github.com>
Date: Sat, 11 May 2024 05:30:34 +0700
Subject: [PATCH] feat: add mission text level 04

---
 Assets/Level04Controller.cs          | 17 ++++++++++++++++-
 Assets/Scenes/Level04/Level 04.unity | 15 +++++++++++++++
 2 files changed, 31 insertions(+), 1 deletion(-)

diff --git a/Assets/Level04Controller.cs b/Assets/Level04Controller.cs
index 5971c74..92bc69d 100644
--- a/Assets/Level04Controller.cs
+++ b/Assets/Level04Controller.cs
@@ -1,5 +1,6 @@
 using System.Collections;
 using System.Collections.Generic;
+using TMPro;
 using UnityEngine;
 
 public class Level04Controller : MonoBehaviour
@@ -8,6 +9,11 @@ public class Level04Controller : MonoBehaviour
     public int EnemyLeaderDeathCount { get; private set; }
     public int EnemyAdmiralDeathCount { get; private set; }
     public int EnemyKingDeathCount { get; private set; }
+    public TMP_Text missionText;
+
+    public int maxLeaderKerocoDeath = 2;
+    public int maxAdmiralOfKerocoDeath = 2;
+    public int maxKingOfKerocoDeath = 1;
     
     // Start is called before the first frame update
     void Start()
@@ -16,6 +22,7 @@ public class Level04Controller : MonoBehaviour
         EventManager.StartListening("LeaderOfEnemyDeath", IncrementLeaderOfEnemyDeathCount);
         EventManager.StartListening("AdmiralOfEnemyDeath", IncrementAdmiralOfEnemyDeathCount);
         EventManager.StartListening("KingOfEnemyDeath", IncrementKingOfEnemyDeathCount);
+        missionText.SetText(SetTextMission());
     }
     
     private void OnDestroy()
@@ -25,10 +32,16 @@ public class Level04Controller : MonoBehaviour
         EventManager.StopListening("AdmiralOfEnemyDeath", IncrementAdmiralOfEnemyDeathCount);
         EventManager.StopListening("KingOfEnemyDeath", IncrementKingOfEnemyDeathCount);
     }
+
+    string SetTextMission()
+    {
+        return $"Your Mission\nKill Kepala Keroco   {EnemyLeaderDeathCount}/{maxLeaderKerocoDeath}\nKill Jenderal     {EnemyAdmiralDeathCount}/{maxAdmiralOfKerocoDeath}\nKill King     {EnemyKingDeathCount}/{maxKingOfKerocoDeath}";
+    }
     
     private void IncrementEnemyDeathCount()
     {
         EnemyDeathCount++;
+        missionText.SetText(SetTextMission());
     }
 
     private void IncrementLeaderOfEnemyDeathCount()
@@ -39,17 +52,19 @@ public class Level04Controller : MonoBehaviour
     private void IncrementAdmiralOfEnemyDeathCount()
     {
         EnemyAdmiralDeathCount++;
+        missionText.SetText(SetTextMission());
     }
 
     private void IncrementKingOfEnemyDeathCount()
     {
         EnemyKingDeathCount++;
+        missionText.SetText(SetTextMission());
     }
 
     // Update is called once per frame
     void Update()
     {
-        if (EnemyKingDeathCount>0)
+        if (EnemyKingDeathCount>=maxKingOfKerocoDeath && EnemyAdmiralDeathCount>=maxAdmiralOfKerocoDeath && EnemyLeaderDeathCount >= maxLeaderKerocoDeath)
         {
             //TODO: Do something if king of enemy die  
         }
diff --git a/Assets/Scenes/Level04/Level 04.unity b/Assets/Scenes/Level04/Level 04.unity
index 67977f3..e735cb1 100644
--- a/Assets/Scenes/Level04/Level 04.unity	
+++ b/Assets/Scenes/Level04/Level 04.unity	
@@ -1358,6 +1358,10 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 68987efdd0694f94c9662eaa2a8408cf, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+  missionText: {fileID: 1457063585}
+  maxKerocoDeath: 5
+  maxAdmiralOfKerocoDeath: 2
+  maxKingOfKerocoDeath: 1
 --- !u!4 &676679623
 Transform:
   m_ObjectHideFlags: 0
@@ -2428,6 +2432,17 @@ PrefabInstance:
     m_AddedGameObjects: []
     m_AddedComponents: []
   m_SourcePrefab: {fileID: 100100000, guid: bbe37b25a2946af438186467560df22c, type: 3}
+--- !u!114 &1457063585 stripped
+MonoBehaviour:
+  m_CorrespondingSourceObject: {fileID: 4682884990705362888, guid: bbe37b25a2946af438186467560df22c, type: 3}
+  m_PrefabInstance: {fileID: 1457063584}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
 --- !u!1 &1499179612
 GameObject:
   m_ObjectHideFlags: 0
-- 
GitLab