From 52e55e177f6c967a94843d647883f8db88111c19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=ED=8C=90=EB=8F=8C?= Date: Sun, 7 Apr 2024 18:19:10 +0900 Subject: [PATCH] =?UTF-8?q?=EC=8A=A4=ED=86=A0=EB=A6=AC=20=EB=AA=A8?= =?UTF-8?q?=EB=93=9C=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Assets/1_Script/GameUI/StoryPlayUiCtrl.cs | 74 ++++++++++++++++++- Client/Assets/1_Script/PlayCtrl.cs | 22 +++--- Client/Assets/1_Script/Prefab/DeckPrefab.cs | 2 +- .../1_Script/System/Datas/ScriptData.cs | 1 + Client/Assets/1_Script/System/GameManager.cs | 4 +- Client/Assets/1_Script/System/Statics.cs | 8 +- 6 files changed, 91 insertions(+), 20 deletions(-) diff --git a/Client/Assets/1_Script/GameUI/StoryPlayUiCtrl.cs b/Client/Assets/1_Script/GameUI/StoryPlayUiCtrl.cs index 328ee0bf..6b2c5955 100644 --- a/Client/Assets/1_Script/GameUI/StoryPlayUiCtrl.cs +++ b/Client/Assets/1_Script/GameUI/StoryPlayUiCtrl.cs @@ -1,19 +1,87 @@ +using System; using System.Collections.Generic; +using System.Reflection; +using TMPro; +using UnityEngine; public class StoryPlayUiCtrl : SingletonMonoBehaviour { List scriptDatas = new List(); - bool isScript = false; + + int index; + + [SerializeField] GameObject iUnit; + [SerializeField] TMP_Text iUnitNickname; + [SerializeField] GameObject youUnit; + [SerializeField] TMP_Text youUnitNickname; + + [SerializeField] TMP_Text scriptText; protected override void OnAwake() { //TODO game¸Þ´ÏÀú¸¦ È®ÀÎÇØ¼­ µ¥ÀÌÅͰ¡ ÀÖÀ¸¸é true ¾øÀ¸¸é ¹Ù·Î °ÔÀÓÁ¾·á°¡ µÇµµ·Ï ¼öÁ¤ÇÒ°Í - isScript = true; - gameObject.SetActive(true); + if (GameManager.Instance.chapterData != null) + { + int chapter_id = GameManager.Instance.chapterData.index; + foreach (var item in Statics.excelDatas.scriptData) + { + if (item.Value.chapter_id == chapter_id) + { + scriptDatas.Add(item.Value); + } + } + index = 0; + } + else + { + gameObject.SetActive(false); + } + } + + protected override void OnStart() + { + Script(); } public void SelectNextButton() { + if (scriptDatas.Count -1 == index) + { + GameManager.Instance.NextScene(GameManager.eScene.Game); + } + if (scriptDatas[index].buttle) + { + PlayCtrl.Instance.isStop = false; + gameObject.SetActive (false); + return; + } + index++; + Script(); } + + public void EndButtle() + { + gameObject.SetActive(true); + index++; + Script(); + } + + private void Script() + { + iUnit.SetActive(scriptDatas[index].position); + youUnit.SetActive(!scriptDatas[index].position); + if (scriptDatas[index].position) + { + iUnitNickname.text = Statics.intUnits[scriptDatas[index].unit_id].name; + } + else + { + youUnitNickname.text = Statics.intUnits[scriptDatas[index].unit_id].name; + } + scriptText.text = scriptDatas[index].text; + } + + //TODO õõÈ÷ ÅØ½ºÆ®°¡ 1°³¾¿ »ý¼ºµÇ°Ô ¸¸µé±â } + diff --git a/Client/Assets/1_Script/PlayCtrl.cs b/Client/Assets/1_Script/PlayCtrl.cs index 9e4971ac..63d1b4c4 100644 --- a/Client/Assets/1_Script/PlayCtrl.cs +++ b/Client/Assets/1_Script/PlayCtrl.cs @@ -45,18 +45,18 @@ public class PlayCtrl : SingletonMonoBehaviour money = 0; moneyText.text = money.ToString(); isEndGame = false; - isStop = false; + isStop = (GameManager.Instance.chapterData != null); delay = 0.0f; units = new UnitCtrl[9]; - units[0] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit0_id).unit_data_id].GetComponent(); - units[1] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit1_id).unit_data_id].GetComponent(); - units[2] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit2_id).unit_data_id].GetComponent(); - units[3] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit3_id).unit_data_id].GetComponent(); - units[4] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit4_id).unit_data_id].GetComponent(); - units[5] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit5_id).unit_data_id].GetComponent(); - units[6] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit6_id).unit_data_id].GetComponent(); - units[7] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit7_id).unit_data_id].GetComponent(); - units[8] = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit8_id).unit_data_id].GetComponent(); + units[0] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit0_id).unit_data_id].GetComponent(); + units[1] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit1_id).unit_data_id].GetComponent(); + units[2] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit2_id).unit_data_id].GetComponent(); + units[3] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit3_id).unit_data_id].GetComponent(); + units[4] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit4_id).unit_data_id].GetComponent(); + units[5] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit5_id).unit_data_id].GetComponent(); + units[6] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit6_id).unit_data_id].GetComponent(); + units[7] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit7_id).unit_data_id].GetComponent(); + units[8] = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(Statics.deck_info[0].deck_unit8_id).unit_data_id].GetComponent(); for (int n = 0; n < unitSpriteButton.Length; n++) { unitSpriteButton[n].sprite = units[n].unitSprite; @@ -89,7 +89,7 @@ public class PlayCtrl : SingletonMonoBehaviour if(delay > 3.0f) { //°ÔÀÓ¾ÀÀ¸·Î À̵¿ - GameManager.Instance.NextScene(GameManager.eScene.Game); + StoryPlayUiCtrl.Instance.EndButtle(); } return; } diff --git a/Client/Assets/1_Script/Prefab/DeckPrefab.cs b/Client/Assets/1_Script/Prefab/DeckPrefab.cs index a6fbd791..0f3e0be1 100644 --- a/Client/Assets/1_Script/Prefab/DeckPrefab.cs +++ b/Client/Assets/1_Script/Prefab/DeckPrefab.cs @@ -59,7 +59,7 @@ public class DeckPrefab : MonoBehaviour } else { - img.sprite = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(unit_id).unit_data_id].GetComponent().unitSprite; + img.sprite = Statics.intUnits[Statics.itemManager.box.FindDeckUnitInfo(unit_id).unit_data_id].GetComponent().unitSprite; img.color = Color.white; } } diff --git a/Client/Assets/1_Script/System/Datas/ScriptData.cs b/Client/Assets/1_Script/System/Datas/ScriptData.cs index b08ca461..ee353e87 100644 --- a/Client/Assets/1_Script/System/Datas/ScriptData.cs +++ b/Client/Assets/1_Script/System/Datas/ScriptData.cs @@ -5,6 +5,7 @@ public class ScriptData : Excel public int chapter_id; public int unit_id; public string text; + public bool position; public bool buttle; public override void toJson() { diff --git a/Client/Assets/1_Script/System/GameManager.cs b/Client/Assets/1_Script/System/GameManager.cs index 2880c102..29d68ace 100644 --- a/Client/Assets/1_Script/System/GameManager.cs +++ b/Client/Assets/1_Script/System/GameManager.cs @@ -12,6 +12,8 @@ public class GameManager : DontDestroy public eScene NowScene; public bool Over; + public ChapterData chapterData = null; + private CoroutineHandle corExcel; /// @@ -52,7 +54,7 @@ public class GameManager : DontDestroy { obj.GetComponent().DataSet(data.Key); Statics.stringUnits.Add(data.Value.name, obj); - Statics.longUnits.Add(data.Value.index, obj); + Statics.intUnits.Add(data.Value.index, obj); } } //stringIcons diff --git a/Client/Assets/1_Script/System/Statics.cs b/Client/Assets/1_Script/System/Statics.cs index 4cdc54bd..b5c6e22c 100644 --- a/Client/Assets/1_Script/System/Statics.cs +++ b/Client/Assets/1_Script/System/Statics.cs @@ -16,11 +16,11 @@ public class Statics public static ExcelDatas excelDatas; public static Dictionary stringUnits = new Dictionary(); - public static Dictionary longUnits = new Dictionary(); + public static Dictionary intUnits = new Dictionary(); public static Dictionary stringIcons = new Dictionary(); - public static Dictionary shopItems = new Dictionary(); + public static Dictionary shopItems = new Dictionary(); //¼­¹ö¿¡¼­ ³»·ÁÁÖ´Â µ¥ÀÌÅ͵é public static string uuid; @@ -28,8 +28,8 @@ public class Statics //À¯Àú ±âº» Á¤º¸ public static string nickname; - public static ulong gold; - public static ulong cash; + public static uint gold; + public static uint cash; public static ItemManager itemManager; //À¯Àú°¡ ¼¼ÆÃÇÑ µ¦ Á¤º¸ public static List deck_info;