From 8bdb4d91bc494fa607b1c7cca911639b19701d9a Mon Sep 17 00:00:00 2001 From: Ino Date: Fri, 29 Aug 2025 22:01:17 +0900 Subject: [PATCH] =?UTF-8?q?=EC=95=A8=EB=B2=94=20=EC=9D=BC=EB=8B=A8?= =?UTF-8?q?=EB=9D=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/BGDataBase/bansheegz_database.bytes | Bin 170221 -> 171625 bytes Assets/Bundles/Prefabs/HuntingSlot.prefab | 7 +- .../Easy Save 3/Types/ES3UserType_SaveData.cs | 14 +- Assets/Scenes/Main.unity | 25 +-- Assets/Scripts/Data/BGCodeGen.cs | 40 +++- .../Managers/AccountManager.cs | 4 +- .../SingletonManagers/Managers/DBManager.cs | 134 ++++++++------ Assets/Scripts/UI/GamePanel/GamePanel.cs | 34 ++-- Assets/Scripts/UI/HuntingPanel.cs | 91 ++++----- Assets/Scripts/UI/HuntingScript.cs | 2 +- Assets/Scripts/UI/HuntingSlot.cs | 173 ++++++++---------- Assets/Scripts/UI/MainPanel.cs | 2 +- Assets/Scripts/UI/Popup/FirstBbugPopup.cs | 6 +- Assets/Scripts/UI/Popup/GoStopPopup.cs | 10 +- Assets/Scripts/UI/Popup/OverWriteSavePopup.cs | 2 +- Assets/Scripts/UI/Popup/ResultPopup.cs | 6 +- 16 files changed, 296 insertions(+), 254 deletions(-) diff --git a/Assets/BGDataBase/bansheegz_database.bytes b/Assets/BGDataBase/bansheegz_database.bytes index 7743b650accffbbcd1b71ab37c718785b3189751..f4d42a219d203a08b2c11044fa0fe007f5805aa3 100644 GIT binary patch delta 889 zcmchVKS%;$7{6dQEPh?*y7+IME7_f64mSrzwbF-c=_Jvd#;!@zu%cNQI76R<^*m;&slRP zhTA}{H~P$Z8VDh7lJN|uU9VI8Y0u}JudjS)P`eRPoF5b8Qr7O4lDsjYwg|V}=cO=su=n^8kV6+k@BocFi8zvfgk6^ROA ndc3{M3;VplDZD@}J~|;O)06NK&&Qo_R+wONaYyk%Y1A|j( zWk6A8^5jBajd~^^pBac*fS47C*?^cGh(YQ&ftU-3xq+AmhnSOSP8fmjNNrGZ!mh-HCT4v3M!4Zrtf{*yCyT4GcvuLvHkEAre&M}XZ(ES3Type_int.Instance); break; - case "ImageOpenStates": - instance.ImageOpenStates = reader.Read(ES3Type_boolArray.Instance); + case "ImageOpenStates_Left": + instance.ImageOpenStates_Left = reader.Read(ES3Type_boolArray.Instance); break; - case "UnlockProgress": + case "ImageOpenStates_Right": + instance.ImageOpenStates_Right = reader.Read(ES3Type_boolArray.Instance); + break; + case "UnlockProgress": instance.UnlockProgress = reader.Read(ES3Type_longArray.Instance); break; case "NormalGameLevel": diff --git a/Assets/Scenes/Main.unity b/Assets/Scenes/Main.unity index 8d8a6bf..ab8e2cc 100644 --- a/Assets/Scenes/Main.unity +++ b/Assets/Scenes/Main.unity @@ -36735,14 +36735,14 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 1535761048} - m_TargetAssemblyTypeName: - m_MethodName: - m_Mode: 1 + - m_Target: {fileID: 1535761050} + m_TargetAssemblyTypeName: HuntingPanel, Assembly-CSharp + m_MethodName: OnClick_Arrow + m_Mode: 3 m_Arguments: m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: - m_IntArgument: 0 + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: -1 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 @@ -78650,14 +78650,14 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 1535761048} - m_TargetAssemblyTypeName: - m_MethodName: - m_Mode: 1 + - m_Target: {fileID: 1535761050} + m_TargetAssemblyTypeName: HuntingPanel, Assembly-CSharp + m_MethodName: OnClick_Arrow + m_Mode: 3 m_Arguments: m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: - m_IntArgument: 0 + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 1 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 @@ -101358,6 +101358,7 @@ MonoBehaviour: m_Content: {fileID: 0} go_card: {fileID: 1075369012538214656, guid: 63a9cbea0069cea4ca146a6deecc4279, type: 3} TitleTMP: {fileID: 281679012} + t_type: {fileID: 2115985146} Buttons: - {fileID: 2088694187} - {fileID: 425765868} diff --git a/Assets/Scripts/Data/BGCodeGen.cs b/Assets/Scripts/Data/BGCodeGen.cs index 95baf38..32bdadb 100644 --- a/Assets/Scripts/Data/BGCodeGen.cs +++ b/Assets/Scripts/Data/BGCodeGen.cs @@ -28,8 +28,11 @@ public partial class DB_HuntingData : BGEntity public const string ClearConditionMoney = "ClearConditionMoney"; public const string Name = "Name"; public const string Description = "Description"; - public const string BuyPrice = "BuyPrice"; public const string n_AlbumType = "n_AlbumType"; + public const string NeedKey = "NeedKey"; + public const string NeedHeart = "NeedHeart"; + public const string NeedLv = "NeedLv"; + public const string n_Group = "n_Group"; } private static BansheeGz.BGDatabase.BGMetaRow _metaDefault; public static BansheeGz.BGDatabase.BGMetaRow MetaDefault => _metaDefault ?? (_metaDefault = BGCodeGenUtils.GetMeta(new BGId(5596441023656399567UL,15076767032258538916UL), () => _metaDefault = null)); @@ -63,16 +66,31 @@ public partial class DB_HuntingData : BGEntity get => _DBF_Description[Index]; set => _DBF_Description[Index] = value; } - public System.Int32 DBF_BuyPrice - { - get => _DBF_BuyPrice[Index]; - set => _DBF_BuyPrice[Index] = value; - } public System.Int32 DBF_n_AlbumType { get => _DBF_n_AlbumType[Index]; set => _DBF_n_AlbumType[Index] = value; } + public System.Int32 DBF_NeedKey + { + get => _DBF_NeedKey[Index]; + set => _DBF_NeedKey[Index] = value; + } + public System.Int32 DBF_NeedHeart + { + get => _DBF_NeedHeart[Index]; + set => _DBF_NeedHeart[Index] = value; + } + public System.Int32 DBF_NeedLv + { + get => _DBF_NeedLv[Index]; + set => _DBF_NeedLv[Index] = value; + } + public System.Int32 DBF_n_Group + { + get => _DBF_n_Group[Index]; + set => _DBF_n_Group[Index] = value; + } private static BansheeGz.BGDatabase.BGFieldEntityName _ufle12jhs77_DBF_name; public static BansheeGz.BGDatabase.BGFieldEntityName _DBF_name => _ufle12jhs77_DBF_name ?? (_ufle12jhs77_DBF_name = BGCodeGenUtils.GetField(MetaDefault, new BGId(4847030112262966783UL, 17507168723429622181UL), () => _ufle12jhs77_DBF_name = null)); private static BansheeGz.BGDatabase.BGFieldUnitySprite _ufle12jhs77_DBF_HuntingImage; @@ -89,10 +107,16 @@ public partial class DB_HuntingData : BGEntity public static BansheeGz.BGDatabase.BGFieldString _DBF_Name => _ufle12jhs77_DBF_Name ?? (_ufle12jhs77_DBF_Name = BGCodeGenUtils.GetField(MetaDefault, new BGId(5618959453113093320UL, 13927985292163229361UL), () => _ufle12jhs77_DBF_Name = null)); private static BansheeGz.BGDatabase.BGFieldString _ufle12jhs77_DBF_Description; public static BansheeGz.BGDatabase.BGFieldString _DBF_Description => _ufle12jhs77_DBF_Description ?? (_ufle12jhs77_DBF_Description = BGCodeGenUtils.GetField(MetaDefault, new BGId(4722429003445808783UL, 13878556420686707390UL), () => _ufle12jhs77_DBF_Description = null)); - private static BansheeGz.BGDatabase.BGFieldInt _ufle12jhs77_DBF_BuyPrice; - public static BansheeGz.BGDatabase.BGFieldInt _DBF_BuyPrice => _ufle12jhs77_DBF_BuyPrice ?? (_ufle12jhs77_DBF_BuyPrice = BGCodeGenUtils.GetField(MetaDefault, new BGId(4847726788656022279UL, 11553665224223930517UL), () => _ufle12jhs77_DBF_BuyPrice = null)); private static BansheeGz.BGDatabase.BGFieldInt _ufle12jhs77_DBF_n_AlbumType; public static BansheeGz.BGDatabase.BGFieldInt _DBF_n_AlbumType => _ufle12jhs77_DBF_n_AlbumType ?? (_ufle12jhs77_DBF_n_AlbumType = BGCodeGenUtils.GetField(MetaDefault, new BGId(5125684997853971800UL, 2820862331281249426UL), () => _ufle12jhs77_DBF_n_AlbumType = null)); + private static BansheeGz.BGDatabase.BGFieldInt _ufle12jhs77_DBF_NeedKey; + public static BansheeGz.BGDatabase.BGFieldInt _DBF_NeedKey => _ufle12jhs77_DBF_NeedKey ?? (_ufle12jhs77_DBF_NeedKey = BGCodeGenUtils.GetField(MetaDefault, new BGId(5573446524110709168UL, 10157632733697680794UL), () => _ufle12jhs77_DBF_NeedKey = null)); + private static BansheeGz.BGDatabase.BGFieldInt _ufle12jhs77_DBF_NeedHeart; + public static BansheeGz.BGDatabase.BGFieldInt _DBF_NeedHeart => _ufle12jhs77_DBF_NeedHeart ?? (_ufle12jhs77_DBF_NeedHeart = BGCodeGenUtils.GetField(MetaDefault, new BGId(5379803791366865188UL, 14974488217691312056UL), () => _ufle12jhs77_DBF_NeedHeart = null)); + private static BansheeGz.BGDatabase.BGFieldInt _ufle12jhs77_DBF_NeedLv; + public static BansheeGz.BGDatabase.BGFieldInt _DBF_NeedLv => _ufle12jhs77_DBF_NeedLv ?? (_ufle12jhs77_DBF_NeedLv = BGCodeGenUtils.GetField(MetaDefault, new BGId(5038055206684577747UL, 11596037531323484338UL), () => _ufle12jhs77_DBF_NeedLv = null)); + private static BansheeGz.BGDatabase.BGFieldInt _ufle12jhs77_DBF_n_Group; + public static BansheeGz.BGDatabase.BGFieldInt _DBF_n_Group => _ufle12jhs77_DBF_n_Group ?? (_ufle12jhs77_DBF_n_Group = BGCodeGenUtils.GetField(MetaDefault, new BGId(5264844295662611882UL, 8215687142479050639UL), () => _ufle12jhs77_DBF_n_Group = null)); private static readonly DB_HuntingData.Factory _factory0_PFS = new DB_HuntingData.Factory(); private static readonly DB_Script.Factory _factory1_PFS = new DB_Script.Factory(); private static readonly DB_HuntingListData.Factory _factory2_PFS = new DB_HuntingListData.Factory(); diff --git a/Assets/Scripts/SingletonManagers/Managers/AccountManager.cs b/Assets/Scripts/SingletonManagers/Managers/AccountManager.cs index da3f326..f68ffbf 100644 --- a/Assets/Scripts/SingletonManagers/Managers/AccountManager.cs +++ b/Assets/Scripts/SingletonManagers/Managers/AccountManager.cs @@ -531,7 +531,7 @@ public class AccountManager : MonoBehaviour var jsonFile = dataSnapshot.GetRawJsonValue(); UploadData downloadData = JsonConvert.DeserializeObject(jsonFile); - if (downloadData.UnlockDataCount > GameManager.DB.GetUnlockTargetIndex() || + if (downloadData.UnlockDataCount > GameManager.DB.GetUnlockTargetIndex(true) || downloadData.Level > GameManager.DB.NormalGameLevel) { Debug.Log("AccountManager: CheckExistSaveData: OverWriteSave"); @@ -582,7 +582,7 @@ public class AccountManager : MonoBehaviour { uploadData.Email = user.Email; - uploadData.UnlockDataCount = GameManager.DB.GetUnlockTargetIndex(); + uploadData.UnlockDataCount = GameManager.DB.GetUnlockTargetIndex(true); uploadData.Gold = GameManager.DB.Gold; uploadData.Heart = GameManager.DB.Heart; uploadData.Key = GameManager.DB.Key; diff --git a/Assets/Scripts/SingletonManagers/Managers/DBManager.cs b/Assets/Scripts/SingletonManagers/Managers/DBManager.cs index 903089f..a917cec 100644 --- a/Assets/Scripts/SingletonManagers/Managers/DBManager.cs +++ b/Assets/Scripts/SingletonManagers/Managers/DBManager.cs @@ -34,7 +34,7 @@ namespace CodeJay public int FreeHeartCount; public int InterstitialADCount; - public bool[] ImageOpenStates; + public bool[] ImageOpenStates_Left, ImageOpenStates_Right; public long[] UnlockProgress; public int NormalGameLevel; @@ -60,14 +60,11 @@ namespace CodeJay this.NormalGame_GetGold = 0; this.BuyShopAccumulatedMoney = 0; - if (this.ImageOpenStates == null) - { - // this.ImageOpenStates = new bool[Defines.Constants.AI_IMAGE_NUMBER]; - this.ImageOpenStates = new bool[DB_HuntingData.CountEntities]; - } + if (ImageOpenStates_Left == null) ImageOpenStates_Left = new bool[DB_HuntingData.CountEntities >> 1]; + if (ImageOpenStates_Right == null) ImageOpenStates_Right = new bool[DB_HuntingData.CountEntities >> 1]; - for (int i = 0; i < ImageOpenStates.Length; i++) - ImageOpenStates[i] = false; + for (int i = 0; i < ImageOpenStates_Left.Length; i++) ImageOpenStates_Left[i] = false; + for (int i = 0; i < ImageOpenStates_Right.Length; i++) ImageOpenStates_Right[i] = false; if (this.UnlockProgress == null) this.UnlockProgress = new long[Defines.Constants.AI_IMAGE_NUMBER]; @@ -100,14 +97,14 @@ namespace CodeJay if (NormalGameLevel <= 0) NormalGameLevel = 1; - if (data.ImageOpenStates != null) - { - for (int i = 0; i < ImageOpenStates.Length; i++) - { - if (data.ImageOpenStates.Length > i) - this.ImageOpenStates[i] = data.ImageOpenStates[i]; - } - } + if (data.ImageOpenStates_Left != null) + for (int i = 0; i < ImageOpenStates_Left.Length; i++) + if (data.ImageOpenStates_Left.Length > i) + ImageOpenStates_Left[i] = data.ImageOpenStates_Left[i]; + if (data.ImageOpenStates_Right != null) + for (int i = 0; i < ImageOpenStates_Right.Length; i++) + if (data.ImageOpenStates_Right.Length > i) + ImageOpenStates_Right[i] = data.ImageOpenStates_Right[i]; if (data.UnlockProgress != null) { @@ -126,13 +123,13 @@ namespace CodeJay { // Data Index // 100����� 50������ �ִ�. - public int Index; + public int Index, n_Group; public int Stake; public int TextureIndex; public long ClearConditionMoney; - public int BuyPrice, n_AlbumType; + public int n_AlbumType, NeedKey, NeedHeart, NeedLv; public string Name; public string Description; @@ -164,15 +161,23 @@ namespace CodeJay public HuntingData(int index, DB_HuntingData data) { Index = index; + n_Group = data.DBF_n_Group; Stake = data.DBF_Stake; ClearConditionMoney = data.DBF_ClearConditionMoney; Name = data.DBF_name; Description = data.DBF_Description; HuntingDataID = data.Id.ToString(); - BuyPrice = data.DBF_BuyPrice; n_AlbumType = data.DBF_n_AlbumType; + NeedKey = data.DBF_NeedKey; + NeedHeart = data.DBF_NeedHeart; + NeedLv = data.DBF_NeedLv; } } + + public class HuntingUIData + { + public HuntingData m_Left, m_Right; + } } namespace Defines @@ -428,76 +433,79 @@ public partial class DBManager : MonoBehaviour GameManager.Event.InvokeEvent(EEventType.OnSynchronizeKey); } - public void UnlockLastAIImage() + public void UnlockLastAIImage(bool left) { - if (IsAllUnlocked()) + if (IsAllUnlocked(left)) return; - for (int i = 0; i < saveData.ImageOpenStates.Length; i++) + var lst = left ? saveData.ImageOpenStates_Left : saveData.ImageOpenStates_Right; + for (int i = 0; i < lst.Length; i++) { - if (saveData.ImageOpenStates[i] == false) + if (lst[i] == false) { - saveData.ImageOpenStates[i] = true; + lst[i] = true; GameManager.Event.InvokeEvent(EEventType.OnSynchronizeAIChllengeModeAIData); break; } } - FirebaseAnalytics.LogEvent("UnlockHunting_" + GameManager.DB.GetUnlockTargetIndex().ToString(), new Firebase.Analytics.Parameter("Unlock", GameManager.DB.GetUnlockTargetIndex())); + FirebaseAnalytics.LogEvent("UnlockHunting_" + GameManager.DB.GetUnlockTargetIndex(left).ToString(), new Firebase.Analytics.Parameter("Unlock", GameManager.DB.GetUnlockTargetIndex(left))); } - public bool IsAllUnlocked() + public bool IsAllUnlocked(bool left) { - return saveData.ImageOpenStates[saveData.ImageOpenStates.Length - 1]; + if (left) return saveData.ImageOpenStates_Left[saveData.ImageOpenStates_Left.Length - 1]; + else return saveData.ImageOpenStates_Right[saveData.ImageOpenStates_Right.Length - 1]; } - public int GetUnlockTargetIndex() + public int GetUnlockTargetIndex(bool left) { - if (IsAllUnlocked()) - return saveData.ImageOpenStates.Length - 1; + if (IsAllUnlocked(left)) + return left ? saveData.ImageOpenStates_Left.Length - 1 : saveData.ImageOpenStates_Right.Length - 1; - for (int i = 0; i < saveData.ImageOpenStates.Length; i++) + var lst = left ? saveData.ImageOpenStates_Left : saveData.ImageOpenStates_Right; + for (int i = 0; i < lst.Length; i++) { - if (saveData.ImageOpenStates[i] == false) + if (lst[i] == false) return i; } - return saveData.ImageOpenStates.Length - 1; + return saveData.ImageOpenStates_Left.Length - 1; } public int GetUnlockHuntingCount() { - for (int i = 0; i < saveData.ImageOpenStates.Length; i++) + for (int i = 0; i < saveData.ImageOpenStates_Left.Length; i++) { - if (saveData.ImageOpenStates[i] == false) + if (saveData.ImageOpenStates_Left[i] == false) return i; } - return saveData.ImageOpenStates.Length; + return saveData.ImageOpenStates_Left.Length; } public int GetHuntingListLength() { - return saveData.ImageOpenStates.Length; + return saveData.ImageOpenStates_Left.Length; } public int LastClearedIndex() { - if (saveData.ImageOpenStates[0] == false) + if (saveData.ImageOpenStates_Left[0] == false) return 0; - for (int i = 0; i < saveData.ImageOpenStates.Length; i++) + for (int i = 0; i < saveData.ImageOpenStates_Left.Length; i++) { - if (saveData.ImageOpenStates[i] == false) + if (saveData.ImageOpenStates_Left[i] == false) return i - 1; } - return saveData.ImageOpenStates.Length - 1; + return saveData.ImageOpenStates_Left.Length - 1; } - public long GetUnlockTargetProgress() + public long GetUnlockTargetProgress(bool left) { - return saveData.UnlockProgress[GetUnlockTargetIndex()]; + return saveData.UnlockProgress[GetUnlockTargetIndex(left)]; } public HuntingData GetHuntingData(int index) @@ -511,22 +519,30 @@ public partial class DBManager : MonoBehaviour return _lstHuntindData[index]; } } - public List Get_AlbumDatas(int type) + public List Get_AlbumDatas(int type) { - return _lstHuntindData.FindAll(f => f.n_AlbumType == type); + var rtn = new List(); + var lst = _lstHuntindData.FindAll(f => f.n_AlbumType == type); + for (int i = 0; i < lst.Count; i++) + { + rtn.Add(new HuntingUIData { m_Left = lst[i], m_Right = lst[i + 1] }); + ++i; + } + + return rtn; } - public bool AddCurrentChallengeCondition(long amount) + public bool AddCurrentChallengeCondition(long amount, bool left) { - int targetIndex = GetUnlockTargetIndex(); + int targetIndex = GetUnlockTargetIndex(left); saveData.UnlockProgress[targetIndex] += amount; - if (saveData.ImageOpenStates[targetIndex] == false) + if (saveData.ImageOpenStates_Left[targetIndex] == false) { if (saveData.UnlockProgress[targetIndex] >= _lstHuntindData[targetIndex].ClearConditionMoney) { saveData.UnlockProgress[targetIndex] = _lstHuntindData[targetIndex].ClearConditionMoney; - this.UnlockLastAIImage(); + this.UnlockLastAIImage(left); GameManager.Event.InvokeEvent(EEventType.OnSynchronizeAIChllengeModeAIData); return true; } @@ -543,9 +559,9 @@ public partial class DBManager : MonoBehaviour } } - public long GetReaminingTargetCondition() + public long GetReaminingTargetCondition(bool left) { - int index = GetUnlockTargetIndex(); + int index = GetUnlockTargetIndex(left); long result = _lstHuntindData[index].ClearConditionMoney - saveData.UnlockProgress[index]; if (result < 0) @@ -571,10 +587,10 @@ public partial class DBManager : MonoBehaviour public void NormalGameWin() { - if (GameManager.DB.GetUnlockTargetIndex() <= 5) - { - //GameManager.Flamingo.Flamingo.FinishTutorial(GameManager.DB.NormalGameLevel.ToString(), "Level" + GameManager.DB.NormalGameLevel.ToString(), "Normal"); - } + //if (GameManager.DB.GetUnlockTargetIndex() <= 5) + //{ + // //GameManager.Flamingo.Flamingo.FinishTutorial(GameManager.DB.NormalGameLevel.ToString(), "Level" + GameManager.DB.NormalGameLevel.ToString(), "Normal"); + //} if (GamePanel.Instance.IsChallengeMode == false) { @@ -591,7 +607,7 @@ public partial class DBManager : MonoBehaviour { if (isChallengeMode) { - int index = this.GetUnlockTargetIndex(); + int index = this.GetUnlockTargetIndex(true); saveData.UnlockProgress[index] -= amount; if (saveData.UnlockProgress[index] < 0) @@ -613,15 +629,15 @@ public partial class DBManager : MonoBehaviour { if (saveData != null) { - for (int i = 0; i < saveData.ImageOpenStates.Length; i++) + for (int i = 0; i < saveData.ImageOpenStates_Left.Length; i++) { if (i < count) { - saveData.ImageOpenStates[i] = true; + saveData.ImageOpenStates_Left[i] = true; } else { - saveData.ImageOpenStates[i] = false; + saveData.ImageOpenStates_Left[i] = false; } } SaveDatas(); diff --git a/Assets/Scripts/UI/GamePanel/GamePanel.cs b/Assets/Scripts/UI/GamePanel/GamePanel.cs index 807766e..4e6f78d 100644 --- a/Assets/Scripts/UI/GamePanel/GamePanel.cs +++ b/Assets/Scripts/UI/GamePanel/GamePanel.cs @@ -283,26 +283,26 @@ public partial class GamePanel : MonoBehaviour private void OnChallengeStart() { - //GameManager.Flamingo.Flamingo.StartPlaySession(GameManager.DB.GetUnlockTargetIndex().ToString(), "Hunting"); + ////GameManager.Flamingo.Flamingo.StartPlaySession(GameManager.DB.GetUnlockTargetIndex().ToString(), "Hunting"); - GameManager.Sound.PlaySFX(ESFXType.Start_1); - IsChallengeMode = true; + //GameManager.Sound.PlaySFX(ESFXType.Start_1); + //IsChallengeMode = true; - // Get Highest Clear level - var data = GameManager.DB.GetHuntingData(GameManager.DB.GetUnlockTargetIndex()); - this.UpdateAIGold(); - Stake = data.Stake; + //// Get Highest Clear level + //var data = GameManager.DB.GetHuntingData(GameManager.DB.GetUnlockTargetIndex()); + //this.UpdateAIGold(); + //Stake = data.Stake; - this.Initialize(); - this.Shuffle(); - this.FrontBonusCard(); - this.SetGuideData(false); - this.EnabledPlayerHandRaycast(false); - _delay = 0.2f; - GameOver = false; - CurrentCoroutineType = EGameWorkFlowType.DistributeCard; + //this.Initialize(); + //this.Shuffle(); + //this.FrontBonusCard(); + //this.SetGuideData(false); + //this.EnabledPlayerHandRaycast(false); + //_delay = 0.2f; + //GameOver = false; + //CurrentCoroutineType = EGameWorkFlowType.DistributeCard; - GameManager.Event.InvokeEvent(EEventType.OnSynchronizeGameData); + //GameManager.Event.InvokeEvent(EEventType.OnSynchronizeGameData); } public void ResetScortMultiplyType() @@ -314,7 +314,7 @@ public partial class GamePanel : MonoBehaviour { if (IsChallengeMode) { - var data = GameManager.DB.GetHuntingData(GameManager.DB.GetUnlockTargetIndex()); + var data = GameManager.DB.GetHuntingData(GameManager.DB.GetUnlockTargetIndex(true)); AINameTMP.text = data.Name; AIGoldTMP.text = GameManager.DB.GetReaminingTargetConditionString(data.Index); } diff --git a/Assets/Scripts/UI/HuntingPanel.cs b/Assets/Scripts/UI/HuntingPanel.cs index 516a677..687f4b6 100644 --- a/Assets/Scripts/UI/HuntingPanel.cs +++ b/Assets/Scripts/UI/HuntingPanel.cs @@ -1,11 +1,10 @@ using BansheeGz.BGDatabase; -using CodeJay.Classes; using System.Collections.Generic; using UnityEngine; public class HuntingPanel : uScrollViewMgr { - [SerializeField] private TMPro.TextMeshProUGUI TitleTMP; + [SerializeField] private TMPro.TextMeshProUGUI TitleTMP, t_type; [SerializeField] private GameObject[] Buttons; public GameObject go_mainpaenl, go_botpanel, go_x; @@ -64,7 +63,8 @@ public class HuntingPanel : uScrollViewMgr public void Set_UI() { - Set_ScrollView(GameManager.DB.Get_AlbumDatas(CurAlbumType), GameManager.DB.GetUnlockTargetIndex()); + t_type.text = $"Type{CurAlbumType}"; + Set_ScrollView(GameManager.DB.Get_AlbumDatas(CurAlbumType)); } private void OnClickFullView(object huntingDataID, object huntingListDataID) @@ -81,55 +81,62 @@ public class HuntingPanel : uScrollViewMgr public void ClickUnlockNowButton() { - GameManager.Sound.PlaySFX(ESFXType.Button_Hit); + //GameManager.Sound.PlaySFX(ESFXType.Button_Hit); - if (GameManager.DB.IsAllUnlocked() == false) - { - if (GameManager.DB.Key > 0) - { - GameManager.DB.SubKey(1, this.name); - GameManager.DB.UnlockLastAIImage(); - GameManager.DB.SaveDatas(); - GameManager.Event.InvokeEvent(EEventType.OnSynchronizeAIChllengeModeAIData); + //if (GameManager.DB.IsAllUnlocked() == false) + //{ + // if (GameManager.DB.Key > 0) + // { + // GameManager.DB.SubKey(1, this.name); + // GameManager.DB.UnlockLastAIImage(); + // GameManager.DB.SaveDatas(); + // GameManager.Event.InvokeEvent(EEventType.OnSynchronizeAIChllengeModeAIData); - BGId huntingDataID = GameManager.BGDatabase.GetLastUnolockHuntingDataID(); - BGId huntingListDataID = GameManager.BGDatabase.GetLastUnolockHuntingListDataID(); - if (huntingDataID != BGId.Empty && huntingListDataID != BGId.Empty) - { - GameManager.Event.InvokeEvent(EEventType.OnClickFullView, huntingDataID, huntingListDataID); - } + // BGId huntingDataID = GameManager.BGDatabase.GetLastUnolockHuntingDataID(); + // BGId huntingListDataID = GameManager.BGDatabase.GetLastUnolockHuntingListDataID(); + // if (huntingDataID != BGId.Empty && huntingListDataID != BGId.Empty) + // { + // GameManager.Event.InvokeEvent(EEventType.OnClickFullView, huntingDataID, huntingListDataID); + // } - } - else - { - GameManager.UI.ShowNStackPopup(EPopupType.KeyChargePopup); - } - } + // } + // else + // { + // GameManager.UI.ShowNStackPopup(EPopupType.KeyChargePopup); + // } + //} } public void ClickChallenge() { - GameManager.Sound.PlaySFX(ESFXType.Button_Hit); + //GameManager.Sound.PlaySFX(ESFXType.Button_Hit); - if (GameManager.DB.IsAllUnlocked() == false) - { - if (GameManager.DB.Heart > 0) - { - if (GameManager.DB.Gold > 0) - { - GameManager.DB.SubHeart(1, this.name); - GameManager.Event.InvokeEvent(EEventType.OnChallengeStart); - } - else - { - GameManager.UI.ShowNStackPopup(EPopupType.GoldChargePopup); - } - } - else - GameManager.UI.ShowNStackPopup(EPopupType.HeartChargePopup); - } + //if (GameManager.DB.IsAllUnlocked() == false) + //{ + // if (GameManager.DB.Heart > 0) + // { + // if (GameManager.DB.Gold > 0) + // { + // GameManager.DB.SubHeart(1, this.name); + // GameManager.Event.InvokeEvent(EEventType.OnChallengeStart); + // } + // else + // { + // GameManager.UI.ShowNStackPopup(EPopupType.GoldChargePopup); + // } + // } + // else + // GameManager.UI.ShowNStackPopup(EPopupType.HeartChargePopup); + //} } + public void OnClick_Arrow(int add) + { + CurAlbumType += add; + if (CurAlbumType < 1) CurAlbumType = 10; + else if (CurAlbumType > 10) CurAlbumType = 1; + Set_UI(); + } public void OnClick_X() { gameObject.SetActive(false); diff --git a/Assets/Scripts/UI/HuntingScript.cs b/Assets/Scripts/UI/HuntingScript.cs index df7806f..68d38c6 100644 --- a/Assets/Scripts/UI/HuntingScript.cs +++ b/Assets/Scripts/UI/HuntingScript.cs @@ -280,7 +280,7 @@ public class HuntingScript : MonoBehaviour GameManager.Sound.PlaySFX(ESFXType.Button_Hit); - if (GameManager.DB.IsAllUnlocked() == false) + if (GameManager.DB.IsAllUnlocked(true) == false) { if (GameManager.DB.Heart > 0) { diff --git a/Assets/Scripts/UI/HuntingSlot.cs b/Assets/Scripts/UI/HuntingSlot.cs index 1e7f69d..6232352 100644 --- a/Assets/Scripts/UI/HuntingSlot.cs +++ b/Assets/Scripts/UI/HuntingSlot.cs @@ -8,15 +8,16 @@ using TMPro; public class HuntingSlot : CardBase { - [SerializeField] private TMPro.TextMeshProUGUI NameTMP; + [SerializeField] private TextMeshProUGUI NameTMP; [Space(20)] [SerializeField] private Image AI_Left; [SerializeField] private Image AI_Right; [SerializeField] private GameObject Block_Left; [SerializeField] private GameObject Block_Right; - public GameObject[] gos_openbutton; + public GameObject[] gos_openbutton; // 0 캐시, 1 하트 public TextMeshProUGUI[] texts_price; + public TextMeshProUGUI[] texts; // 0 lv, 1 point [SerializeField] private GameObject[] Right_GOs; @@ -35,25 +36,29 @@ public class HuntingSlot : CardBase public override void Set(T _base, int iLoop = -1, int idata = -1) { base.Set(_base, iLoop, idata); - SetData(iLoop, idata); + var data = _base as HuntingUIData; + + _data_left = data.m_Left; + _data_right = data.m_Right; + + SetData(iLoop); } - public void SetData(int index, int unlockTargetIndex) + public void SetData(int index) { - DB_HuntingListData huntingListData = DB_HuntingListData.GetEntity(Mathf.FloorToInt((float)((float)index / 2.0f))); - _huntingListID = huntingListData.Id; + //DB_HuntingListData huntingListData = DB_HuntingListData.GetEntity(Mathf.FloorToInt((float)((float)index / 2.0f))); + //_huntingListID = huntingListData.Id; - _data_left = GameManager.DB.GetHuntingData(index); - _data_right = GameManager.DB.GetHuntingData(index + 1); + //_data_left = GameManager.DB.GetHuntingData(index); + //_data_right = GameManager.DB.GetHuntingData(index + 1); - gos_openbutton[0].SetActive(false); - gos_openbutton[1].SetActive(false); - if (_data_left != null && _data_left.Index == unlockTargetIndex) - gos_openbutton[0].SetActive(true); - if (_data_right != null && _data_right.Index == unlockTargetIndex) - gos_openbutton[1].SetActive(true); - texts_price[0].text = _data_left.BuyPrice.ToString(); - texts_price[1].text = _data_right.BuyPrice.ToString(); + var unlockTargetIndex_left = GameManager.DB.GetUnlockTargetIndex(true); + var unlockTargetIndex_right = GameManager.DB.GetUnlockTargetIndex(false); + + texts_price[0].text = _data_left.NeedKey.ToString(); + texts_price[1].text = _data_right.NeedHeart.ToString(); + texts[0].text = $"Lv.{_data_left.NeedLv}"; + texts[1].text = $"점 {"???"}"; _huntigdata_left = DB_HuntingData.GetEntity(new BansheeGz.BGDatabase.BGId(_data_left.HuntingDataID)); @@ -62,7 +67,7 @@ public class HuntingSlot : CardBase AI_Left.sprite = GameManager.BGDatabase.LoadUnlockHuntingImageHandle[_huntigdata_left.GetDBF_UnlockImageAddressablesAddress()].Result as Sprite; } - NameTMP.text = huntingListData.DBF_Title; + //NameTMP.text = huntingListData.DBF_Title; //NameTMP.text = $"{huntingListData.DBF_Title}\n{_data_left.Name}"; //AI_Left.sprite = GameManager.Resource.GetAISpriteFromResources(_data_left.TextureIndex); @@ -85,78 +90,42 @@ public class HuntingSlot : CardBase //AI_Right.sprite = GameManager.Resource.GetAISpriteFromResources(_data_right.TextureIndex); } - // 도달 못함 - if (GameManager.DB.IsAllUnlocked()) + gos_openbutton[0].SetActive(false); + gos_openbutton[1].SetActive(false); + + if (_data_left != null) { - _fullview_Left = true; - _fullview_Right = true; - - Block_Left.SetActive(false); - Block_Right.SetActive(false); - } - else if (_data_left.Index > unlockTargetIndex) - { - _fullview_Left = false; - _fullview_Right = false; - - // 왼쪽 클리어 못함 - Block_Left.SetActive(true); - - if (_data_right != null) - { - // 당연히 오른쪽 클리어 못함 - Block_Right.SetActive(true); + if (_data_left.n_Group == unlockTargetIndex_left) + { // 구매 가능 + gos_openbutton[0].SetActive(true); + Block_Left.SetActive(true); } - } - else if (_data_left.Index == unlockTargetIndex) - { - // 1단계 클리어 해야함 - _fullview_Left = false; - _fullview_Right = false; - - // 왼쪽 클리어 못 함 - Block_Left.SetActive(true); - - if (_data_right != null) - { - // 왼쪽 클리어 못 했으니 열 수 없음 - Block_Right.SetActive(true); + else if (_data_left.n_Group > unlockTargetIndex_left) + { // 잠김 + Block_Left.SetActive(true); } - } - else if (_data_right != null) - { - // 2단계 클리어 해야함 - // 두 if문 조건 교체 (복구) - - if (_data_right.Index == unlockTargetIndex) - { - _fullview_Left = true; - _fullview_Right = false; - - // 왼쪽 클리어 함 + else + { // 열림 Block_Left.SetActive(false); + } + } - // 오른쪽 클리어 못 함 + if (_data_right != null) + { + if (_data_right.n_Group == unlockTargetIndex_right) + { // 구매 가능 + gos_openbutton[1].SetActive(true); Block_Right.SetActive(true); } - else if (_data_right.Index < unlockTargetIndex) - { - _fullview_Left = true; - _fullview_Right = true; - - Block_Left.SetActive(false); + else if (_data_right.n_Group > unlockTargetIndex_right) + { // 잠김 + Block_Right.SetActive(true); + } + else + { // 열림 Block_Right.SetActive(false); } } - // 왼쪽 데이터만 있고(총 데이터가 홀수일 경우) 클리어함 - else - { - _fullview_Left = true; - _fullview_Right = false; - - // 왼쪽 클리어 함 - Block_Left.SetActive(false); - } } public void ClickAIImage(bool isLeft) @@ -194,27 +163,45 @@ public class HuntingSlot : CardBase { GameManager.Sound.PlaySFX(ESFXType.Button_Hit); - if (GameManager.DB.IsAllUnlocked() == false) + if (GameManager.DB.IsAllUnlocked(left) == false) { - var needKey = left ? _data_left.BuyPrice : _data_right.BuyPrice; - if (GameManager.DB.Key >= needKey) + var bCondition = false; + if (left) { - GameManager.DB.SubKey(needKey, this.name); - GameManager.DB.UnlockLastAIImage(); - GameManager.DB.SaveDatas(); - GameManager.Event.InvokeEvent(EEventType.OnSynchronizeAIChllengeModeAIData); - - BGId huntingDataID = GameManager.BGDatabase.GetLastUnolockHuntingDataID(); - BGId huntingListDataID = GameManager.BGDatabase.GetLastUnolockHuntingListDataID(); - if (huntingDataID != BGId.Empty && huntingListDataID != BGId.Empty) + if (GameManager.DB.Key >= _data_left.NeedKey) { - GameManager.Event.InvokeEvent(EEventType.OnClickFullView, huntingDataID, huntingListDataID); + GameManager.DB.SubKey(_data_left.NeedKey, this.name); + bCondition = true; + } + else + { + GameManager.UI.ShowNStackPopup(EPopupType.KeyChargePopup); } - } else { - GameManager.UI.ShowNStackPopup(EPopupType.KeyChargePopup); + if (GameManager.DB.Heart >= _data_right.NeedHeart) + { + GameManager.DB.SubHeart(_data_right.NeedHeart, this.name); + bCondition = true; + } + else + { + GameManager.UI.ShowNStackPopup(EPopupType.HeartChargePopup); + } + } + if (bCondition) + { + GameManager.DB.UnlockLastAIImage(left); + GameManager.DB.SaveDatas(); + GameManager.Event.InvokeEvent(EEventType.OnSynchronizeAIChllengeModeAIData); + + //BGId huntingDataID = GameManager.BGDatabase.GetLastUnolockHuntingDataID(); + //BGId huntingListDataID = GameManager.BGDatabase.GetLastUnolockHuntingListDataID(); + //if (huntingDataID != BGId.Empty && huntingListDataID != BGId.Empty) + //{ + // GameManager.Event.InvokeEvent(EEventType.OnClickFullView, huntingDataID, huntingListDataID); + //} } } } diff --git a/Assets/Scripts/UI/MainPanel.cs b/Assets/Scripts/UI/MainPanel.cs index 608a80f..4a39dce 100644 --- a/Assets/Scripts/UI/MainPanel.cs +++ b/Assets/Scripts/UI/MainPanel.cs @@ -114,7 +114,7 @@ public class MainPanel : MonoBehaviour private void OnSynchronizeAIImageOpenState() { - var data = GameManager.DB.GetHuntingData(GameManager.DB.GetUnlockTargetIndex()); + //var data = GameManager.DB.GetHuntingData(GameManager.DB.GetUnlockTargetIndex()); //aiImage.sprite = GameManager.Resource.GetAISpriteFromResources(data.TextureIndex); } diff --git a/Assets/Scripts/UI/Popup/FirstBbugPopup.cs b/Assets/Scripts/UI/Popup/FirstBbugPopup.cs index 0f7492f..87c05ff 100644 --- a/Assets/Scripts/UI/Popup/FirstBbugPopup.cs +++ b/Assets/Scripts/UI/Popup/FirstBbugPopup.cs @@ -9,12 +9,12 @@ public class FirstBbugPopup : PopupBase resultGold = GamePanel.Instance.Stake * 5; if (isPlayer) { - tmp.text = $"ù ̳׿!\n+{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} ȹ!"; + tmp.text = $"첫 뻑이네요!\n+{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} 획득!"; GameManager.DB.AddGold(resultGold, this.name); } else { - tmp.text = $"밡 ù ̳׿!\n{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} !"; + tmp.text = $"상대가 첫 뻑이네요!\n{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} 뺏김!"; GameManager.DB.SubGold(resultGold, this.name); } @@ -31,7 +31,7 @@ public class FirstBbugPopup : PopupBase if (GamePanel.Instance.IsChallengeMode) { - if (GameManager.DB.AddCurrentChallengeCondition(resultGold)) + if (GameManager.DB.AddCurrentChallengeCondition(resultGold, true)) { GameManager.UI.ShowNStackPopup(EPopupType.ResultPopup).WinWithFirstBbug(resultGold); } diff --git a/Assets/Scripts/UI/Popup/GoStopPopup.cs b/Assets/Scripts/UI/Popup/GoStopPopup.cs index f37a3b2..a20673b 100644 --- a/Assets/Scripts/UI/Popup/GoStopPopup.cs +++ b/Assets/Scripts/UI/Popup/GoStopPopup.cs @@ -48,9 +48,9 @@ public class GoStopPopup : PopupBase long resultMoney = resultScore * GamePanel.Instance.Stake; - tmp.text = " ,+" + CodeJay.CodeJayUtility.Converter.MoneyToString(resultMoney) + ""; + tmp.text = "스톱 시,+" + CodeJay.CodeJayUtility.Converter.MoneyToString(resultMoney) + ""; - goTMP.text = (GamePanel.Instance.Player_Go + 1).ToString() + ""; + goTMP.text = (GamePanel.Instance.Player_Go + 1).ToString() + "고"; cg.alpha = 1f; @@ -59,12 +59,12 @@ public class GoStopPopup : PopupBase if (GamePanel.Instance.IsChallengeMode) { - var remaining = GameManager.DB.GetReaminingTargetCondition(); + var remaining = GameManager.DB.GetReaminingTargetCondition(true); EndLabelGO.SetActive(remaining - resultMoney <= 0); if (remaining - resultMoney < 0) { - tmp.text = " ,+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + ""; + tmp.text = "스톱 시,+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + ""; } } else @@ -73,7 +73,7 @@ public class GoStopPopup : PopupBase EndLabelGO.SetActive(remaining - resultMoney <= 0); if (remaining - resultMoney < 0) - tmp.text = " ,+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + ""; + tmp.text = "스톱 시,+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + ""; } } diff --git a/Assets/Scripts/UI/Popup/OverWriteSavePopup.cs b/Assets/Scripts/UI/Popup/OverWriteSavePopup.cs index f012538..7ff46de 100644 --- a/Assets/Scripts/UI/Popup/OverWriteSavePopup.cs +++ b/Assets/Scripts/UI/Popup/OverWriteSavePopup.cs @@ -23,7 +23,7 @@ public class OverWriteSavePopup : PopupBase } if (UnlockHuntingCountText != null) { - UnlockHuntingCountText.text = GameManager.DB.GetUnlockTargetIndex().ToString(); + UnlockHuntingCountText.text = GameManager.DB.GetUnlockTargetIndex(true).ToString(); } if (LevelText != null) { diff --git a/Assets/Scripts/UI/Popup/ResultPopup.cs b/Assets/Scripts/UI/Popup/ResultPopup.cs index 0f7d4fe..6e49ba9 100644 --- a/Assets/Scripts/UI/Popup/ResultPopup.cs +++ b/Assets/Scripts/UI/Popup/ResultPopup.cs @@ -182,10 +182,10 @@ public class ResultPopup : PopupBase if (GamePanel.Instance.IsChallengeMode) { - long reamainingAIMoney = GameManager.DB.GetReaminingTargetCondition(); + long reamainingAIMoney = GameManager.DB.GetReaminingTargetCondition(true); // ������ Ŭ���� �ߴٸ� - if (GameManager.DB.AddCurrentChallengeCondition(_resultTotalGold)) + if (GameManager.DB.AddCurrentChallengeCondition(_resultTotalGold, true)) { _resultTotalGold = reamainingAIMoney; GameManager.Sound.PlaySFX(ESFXType.Win_2); @@ -397,7 +397,7 @@ public class ResultPopup : PopupBase GetHeartPanel.SetActive(false); // ������ Ŭ���� �ߴٸ� - if (GameManager.DB.AddCurrentChallengeCondition(_resultTotalGold)) + if (GameManager.DB.AddCurrentChallengeCondition(_resultTotalGold, true)) { GameManager.Sound.PlaySFX(ESFXType.Win_2);