앨범 일단락

This commit is contained in:
Ino 2025-08-29 22:01:17 +09:00
parent 29b02bb4c2
commit 8bdb4d91bc
16 changed files with 296 additions and 254 deletions

View File

@ -593,6 +593,9 @@ MonoBehaviour:
texts_price:
- {fileID: 7869372793093363598}
- {fileID: 1689290113695682411}
texts:
- {fileID: 2216168989134581704}
- {fileID: 518911568356458294}
Right_GOs:
- {fileID: 1075369012370353052}
sr: {fileID: 0}
@ -1541,7 +1544,7 @@ GameObject:
- component: {fileID: 6836075082636235612}
- component: {fileID: 518911568356458294}
m_Layer: 5
m_Name: t_lv
m_Name: t_point
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -1941,7 +1944,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 5943d49aa8260fd42a04c79f281dc835, type: 3}
m_Sprite: {fileID: 21300000, guid: b6a8c7f2de072314babd4892dda62f03, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1

View File

@ -27,8 +27,9 @@ namespace ES3Types
writer.WriteProperty("ProductAdWatchedNumber", instance.ProductAdWatchedNumber, ES3Type_int.Instance);
writer.WriteProperty("FreeHeartCount", instance.FreeHeartCount, ES3Type_int.Instance);
writer.WriteProperty("InterstitialADCount", instance.InterstitialADCount, ES3Type_int.Instance);
writer.WriteProperty("ImageOpenStates", instance.ImageOpenStates, ES3Type_boolArray.Instance);
writer.WriteProperty("UnlockProgress", instance.UnlockProgress, ES3Type_longArray.Instance);
writer.WriteProperty("ImageOpenStates_Left", instance.ImageOpenStates_Left, ES3Type_boolArray.Instance);
writer.WriteProperty("ImageOpenStates_Right", instance.ImageOpenStates_Right, ES3Type_boolArray.Instance);
writer.WriteProperty("UnlockProgress", instance.UnlockProgress, ES3Type_longArray.Instance);
writer.WriteProperty("NormalGameLevel", instance.NormalGameLevel, ES3Type_int.Instance);
writer.WriteProperty("NormalGame_GetGold", instance.NormalGame_GetGold, ES3Type_long.Instance);
writer.WriteProperty("BuyShopAccumulatedMoney", instance.BuyShopAccumulatedMoney, ES3Type_long.Instance);
@ -75,10 +76,13 @@ namespace ES3Types
case "InterstitialADCount":
instance.InterstitialADCount = reader.Read<System.Int32>(ES3Type_int.Instance);
break;
case "ImageOpenStates":
instance.ImageOpenStates = reader.Read<System.Boolean[]>(ES3Type_boolArray.Instance);
case "ImageOpenStates_Left":
instance.ImageOpenStates_Left = reader.Read<System.Boolean[]>(ES3Type_boolArray.Instance);
break;
case "UnlockProgress":
case "ImageOpenStates_Right":
instance.ImageOpenStates_Right = reader.Read<System.Boolean[]>(ES3Type_boolArray.Instance);
break;
case "UnlockProgress":
instance.UnlockProgress = reader.Read<System.Int64[]>(ES3Type_longArray.Instance);
break;
case "NormalGameLevel":

View File

@ -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}

View File

@ -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<BansheeGz.BGDatabase.BGMetaRow>(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<BansheeGz.BGDatabase.BGFieldEntityName>(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<BansheeGz.BGDatabase.BGFieldString>(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<BansheeGz.BGDatabase.BGFieldString>(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<BansheeGz.BGDatabase.BGFieldInt>(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<BansheeGz.BGDatabase.BGFieldInt>(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<BansheeGz.BGDatabase.BGFieldInt>(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<BansheeGz.BGDatabase.BGFieldInt>(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<BansheeGz.BGDatabase.BGFieldInt>(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<BansheeGz.BGDatabase.BGFieldInt>(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();

View File

@ -531,7 +531,7 @@ public class AccountManager : MonoBehaviour
var jsonFile = dataSnapshot.GetRawJsonValue();
UploadData downloadData = JsonConvert.DeserializeObject<UploadData>(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;

View File

@ -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<30><30><EFBFBD><EFBFBD><EFBFBD> 50<35><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ִ<EFBFBD>.
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<HuntingData> Get_AlbumDatas(int type)
public List<HuntingUIData> Get_AlbumDatas(int type)
{
return _lstHuntindData.FindAll(f => f.n_AlbumType == type);
var rtn = new List<HuntingUIData>();
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();

View File

@ -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);
}

View File

@ -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);

View File

@ -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)
{

View File

@ -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>(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<color=yellow>{_data_left.Name}</color>";
//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);
//}
}
}
}

View File

@ -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);
}

View File

@ -9,12 +9,12 @@ public class FirstBbugPopup : PopupBase
resultGold = GamePanel.Instance.Stake * 5;
if (isPlayer)
{
tmp.text = $"첫 뻑이네요!\n+{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} <color=yellow>획득</color>!";
tmp.text = $"첫 뻑이네요!\n+{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} <color=yellow>획득</color>!";
GameManager.DB.AddGold(resultGold, this.name);
}
else
{
tmp.text = $"상대가 첫 뻑이네요!\n{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} <color=#FD9898>뺏김</color>!";
tmp.text = $"상대가 첫 뻑이네요!\n{CodeJay.CodeJayUtility.Converter.MoneyToString(resultGold)} <color=#FD9898>뺏김</color>!";
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<ResultPopup>(EPopupType.ResultPopup).WinWithFirstBbug(resultGold);
}

View File

@ -48,9 +48,9 @@ public class GoStopPopup : PopupBase
long resultMoney = resultScore * GamePanel.Instance.Stake;
tmp.text = "½ºÅé ½Ã,<color=#yellow>+" + CodeJay.CodeJayUtility.Converter.MoneyToString(resultMoney) + "</color>";
tmp.text = "스톱 시,<color=#yellow>+" + CodeJay.CodeJayUtility.Converter.MoneyToString(resultMoney) + "</color>";
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 = "½ºÅé ½Ã,<color=#yellow>+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + "</color>";
tmp.text = "스톱 시,<color=#yellow>+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + "</color>";
}
}
else
@ -73,7 +73,7 @@ public class GoStopPopup : PopupBase
EndLabelGO.SetActive(remaining - resultMoney <= 0);
if (remaining - resultMoney < 0)
tmp.text = "½ºÅé ½Ã,<color=#yellow>+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + "</color>";
tmp.text = "스톱 시,<color=#yellow>+" + CodeJay.CodeJayUtility.Converter.MoneyToString(remaining) + "</color>";
}
}

View File

@ -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)
{

View File

@ -182,10 +182,10 @@ public class ResultPopup : PopupBase
if (GamePanel.Instance.IsChallengeMode)
{
long reamainingAIMoney = GameManager.DB.GetReaminingTargetCondition();
long reamainingAIMoney = GameManager.DB.GetReaminingTargetCondition(true);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD> <20>ߴٸ<DFB4>
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);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD> <20>ߴٸ<DFB4>
if (GameManager.DB.AddCurrentChallengeCondition(_resultTotalGold))
if (GameManager.DB.AddCurrentChallengeCondition(_resultTotalGold, true))
{
GameManager.Sound.PlaySFX(ESFXType.Win_2);