diff --git a/Client/Assets/0_Scenes/Game.unity b/Client/Assets/0_Scenes/Game.unity index 77b21f20..f38da21d 100644 --- a/Client/Assets/0_Scenes/Game.unity +++ b/Client/Assets/0_Scenes/Game.unity @@ -2593,7 +2593,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 30} m_Pivot: {x: 0, y: 1} --- !u!114 &210720351 MonoBehaviour: @@ -15005,7 +15005,6 @@ GameObject: m_Component: - component: {fileID: 1425425574} - component: {fileID: 1425425576} - - component: {fileID: 1425425575} m_Layer: 0 m_Name: Camera (1) m_TagString: Untagged @@ -15028,20 +15027,6 @@ Transform: m_Children: [] m_Father: {fileID: 1205412847} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1425425575 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1425425573} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f97d481d44cb90a469c35682cc60c385, type: 3} - m_Name: - m_EditorClassIdentifier: - goldText: [] - cashText: [] --- !u!20 &1425425576 Camera: m_ObjectHideFlags: 0 @@ -17046,7 +17031,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &1647398731 RectTransform: m_ObjectHideFlags: 0 diff --git a/Client/Assets/1_Script/GameUI/UnitSetUiCtrl.cs b/Client/Assets/1_Script/GameUI/UnitSetUiCtrl.cs index 54b960c0..11eed7ae 100644 --- a/Client/Assets/1_Script/GameUI/UnitSetUiCtrl.cs +++ b/Client/Assets/1_Script/GameUI/UnitSetUiCtrl.cs @@ -98,7 +98,7 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour { ButtonStatus(); onItemPrefabList.Clear(); - foreach (var item in Statics.equipment) + foreach (var item in Statics.itemManager.box.equipment) { // ŵ if (item.equip_unit != 0) @@ -110,10 +110,10 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour onItemPrefabList.Add(prefab); } - foreach (var item in Statics.deckUnit) + foreach (var item in Statics.itemManager.box.deckUnitInfo) { UnitPrefab prefab = unitPrefabList.pop(); - prefab.SetData(item.Value); + prefab.SetData(item); prefab.gameObject.SetActive(true); onUnitPrefabList.Add(prefab); } @@ -189,7 +189,7 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour criticalDamage.text = "50%"; damageReduction.text = "0%"; - int index = -1; + Equipment index = null; if (deckUnitInfo.equip0_id == 0) { @@ -198,14 +198,14 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour else { equipItems[0].color = Color.white; - index = Statics.equipment.FindIndex(n => (n.id == deckUnitInfo.equip0_id)); - if (index == -1) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip0_id); + if (index == null) { Debug.LogError("notData"); equipItems[2].color = Color.clear; } else - equipItems[0].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[Statics.equipment[index].equipment_data_id].name]; + equipItems[0].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[index.equipment_data_id].name]; } if (deckUnitInfo.equip1_id == 0) { @@ -214,14 +214,14 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour else { equipItems[1].color = Color.white; - index = Statics.equipment.FindIndex(n => (n.id == deckUnitInfo.equip1_id)); - if (index == -1) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip1_id); + if (index == null) { Debug.LogError("notData"); equipItems[2].color = Color.clear; } else - equipItems[1].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[Statics.equipment[index].equipment_data_id].name]; + equipItems[1].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[index.equipment_data_id].name]; } if (deckUnitInfo.equip2_id == 0) { @@ -230,14 +230,14 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour else { equipItems[2].color = Color.white; - index = Statics.equipment.FindIndex(n => (n.id == deckUnitInfo.equip2_id)); - if(index == -1) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip2_id); + if (index == null) { Debug.LogError("notData"); equipItems[2].color = Color.clear; } else - equipItems[2].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[Statics.equipment[index].equipment_data_id].name]; + equipItems[2].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[index.equipment_data_id].name]; } if (deckUnitInfo.equip3_id == 0) { @@ -246,14 +246,14 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour else { equipItems[3].color = Color.white; - index = Statics.equipment.FindIndex(n => (n.id == deckUnitInfo.equip3_id)); - if (index == -1) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip3_id); + if (index == null) { Debug.LogError("notData : " + deckUnitInfo.equip3_id); equipItems[2].color = Color.clear; } else - equipItems[3].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[Statics.equipment[index].equipment_data_id].name]; + equipItems[3].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[index.equipment_data_id].name]; } if (deckUnitInfo.equip4_id == 0) { @@ -262,14 +262,14 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour else { equipItems[4].color = Color.white; - index = Statics.equipment.FindIndex(n => (n.id == deckUnitInfo.equip4_id)); - if (index == -1) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip4_id); + if (index == null) { Debug.LogError("notData"); equipItems[2].color = Color.clear; } else - equipItems[4].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[Statics.equipment[index].equipment_data_id].name]; + equipItems[4].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[index.equipment_data_id].name]; } if (deckUnitInfo.equip5_id == 0) { @@ -278,14 +278,14 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour else { equipItems[5].color = Color.white; - index = Statics.equipment.FindIndex(n => (n.id == deckUnitInfo.equip5_id)); - if (index == -1) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip5_id); + if (index == null) { Debug.LogError("notData"); equipItems[2].color = Color.clear; } else - equipItems[5].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[Statics.equipment[index].equipment_data_id].name]; + equipItems[5].sprite = Statics.stringIcons[Statics.excelDatas.equipmentData[index.equipment_data_id].name]; } @@ -319,43 +319,33 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour public void ItemSet(ePart part) { Equipment equipment; - int index = -1; + switch (part) { case ePart.Weapon: - if ((index = Statics.equipment.FindIndex(n => n.id == selectUnit.equip0_id)) != -1) - equipment = Statics.equipment[index]; - else return; + equipment = Statics.itemManager.box.FindEquipment(selectUnit.equip0_id); break; case ePart.Armor: - if ((index = Statics.equipment.FindIndex(n => n.id == selectUnit.equip1_id)) != -1) - equipment = Statics.equipment[index]; - else return; + equipment = Statics.itemManager.box.FindEquipment(selectUnit.equip1_id); break; case ePart.Gloves: - if ((index = Statics.equipment.FindIndex(n => n.id == selectUnit.equip2_id)) != -1) - equipment = Statics.equipment[index]; - else return; + equipment = Statics.itemManager.box.FindEquipment(selectUnit.equip2_id); break; case ePart.Headpiece: - if ((index = Statics.equipment.FindIndex(n => n.id == selectUnit.equip3_id)) != -1) - equipment = Statics.equipment[index]; - else return; + equipment = Statics.itemManager.box.FindEquipment(selectUnit.equip3_id); break; case ePart.Shield: - if ((index = Statics.equipment.FindIndex(n => n.id == selectUnit.equip4_id)) != -1) - equipment = Statics.equipment[index]; - else return; + equipment = Statics.itemManager.box.FindEquipment(selectUnit.equip4_id); break; case ePart.Ring: - if ((index = Statics.equipment.FindIndex(n => n.id == selectUnit.equip5_id)) != -1) - equipment = Statics.equipment[index]; - else return; + equipment = Statics.itemManager.box.FindEquipment(selectUnit.equip5_id); break; default: Debug.LogError("Not Data"); return; } + if (equipment == null) + return; EquipmentData equipmentData = Statics.excelDatas.equipmentData[equipment.equipment_data_id]; this.selectItem = equipment; @@ -477,18 +467,9 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour EquipChangeResp request = new EquipChangeResp(); request.Request((data) => { - //ű ü - for(int n = 0; n < Statics.equipment.Count; n++) - { - if (Statics.equipment[n].id == data.equipment.id) - { - Statics.equipment[n] = data.equipment; - break; - } - } + Statics.itemManager.box.UpdateEquipment(data.equipment); - Statics.deckUnit.Remove(data.deck_unit_info.id); - Statics.deckUnit.Add(data.deck_unit_info.id, data.deck_unit_info); + Statics.itemManager.box.UpdateDeckUnitInfo(data.deck_unit_info); //õǾִ selectUnitPrefab.SetData(data.deck_unit_info); @@ -518,14 +499,8 @@ public class UnitSetUiCtrl : SingletonMonoBehaviour //߰ ó if (data.change_equipment != null) { - for (int n = 0; n < Statics.equipment.Count; n++) - { - if (Statics.equipment[n].id == data.change_equipment.id) - { - Statics.equipment[n] = data.change_equipment; - break; - } - } + Statics.itemManager.box.UpdateEquipment(data.change_equipment); + //̰ ιۿ ü ̷ ۾. EquipmentItemPrefab prefab = itemPrefabList.pop(); prefab.SetData(data.change_equipment); diff --git a/Client/Assets/1_Script/Info/UnitInfo.cs b/Client/Assets/1_Script/Info/UnitInfo.cs index f4c9b1e4..c9e35d62 100644 --- a/Client/Assets/1_Script/Info/UnitInfo.cs +++ b/Client/Assets/1_Script/Info/UnitInfo.cs @@ -46,11 +46,11 @@ public class UnitInfo public void DeckUnitInfoSet() { - foreach (var item in Statics.deckUnit) + foreach (var item in Statics.itemManager.box.deckUnitInfo) { - if (item.Value.unit_data_id == _id) + if (item.unit_data_id == _id) { - this.deckUnitInfo = item.Value; + this.deckUnitInfo = item; } } if (this.deckUnitInfo == null) @@ -59,15 +59,14 @@ public class UnitInfo return; } - int index = -1; + Equipment index = null; if (this.deckUnitInfo.equip0_id != 0)// { // ý ۼ - index = Statics.equipment.FindIndex(n => n.id == deckUnitInfo.equip0_id); - Equipment eq = Statics.equipment[index]; - EquipmentData eqd = Statics.excelDatas.equipmentData[eq.equipment_data_id]; - switch (eq.rand_stats) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip0_id); + EquipmentData eqd = Statics.excelDatas.equipmentData[index.equipment_data_id]; + switch (index.rand_stats) { case 1: //ݷ _attack += eqd.stats1; @@ -82,10 +81,9 @@ public class UnitInfo if (this.deckUnitInfo.equip1_id != 0)// { // ý ۼ - index = Statics.equipment.FindIndex(n => n.id == deckUnitInfo.equip1_id); - Equipment eq = Statics.equipment[index]; - EquipmentData eqd = Statics.excelDatas.equipmentData[eq.equipment_data_id]; - switch (eq.rand_stats) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip1_id); + EquipmentData eqd = Statics.excelDatas.equipmentData[index.equipment_data_id]; + switch (index.rand_stats) { case 1: // _defense += eqd.stats1; @@ -101,10 +99,9 @@ public class UnitInfo if (this.deckUnitInfo.equip2_id != 0)//尩 { // ý ۼ - index = Statics.equipment.FindIndex(n => n.id == deckUnitInfo.equip2_id); - Equipment eq = Statics.equipment[index]; - EquipmentData eqd = Statics.excelDatas.equipmentData[eq.equipment_data_id]; - switch (eq.rand_stats) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip2_id); + EquipmentData eqd = Statics.excelDatas.equipmentData[index.equipment_data_id]; + switch (index.rand_stats) { case 1: //̵ӵ _moveSpeed += eqd.stats1; @@ -121,10 +118,9 @@ public class UnitInfo if (this.deckUnitInfo.equip3_id != 0)// { // ý ۼ - index = Statics.equipment.FindIndex(n => n.id == deckUnitInfo.equip3_id); - Equipment eq = Statics.equipment[index]; - EquipmentData eqd = Statics.excelDatas.equipmentData[eq.equipment_data_id]; - switch (eq.rand_stats) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip3_id); + EquipmentData eqd = Statics.excelDatas.equipmentData[index.equipment_data_id]; + switch (index.rand_stats) { case 1: //ݷ _attack += eqd.stats1; @@ -140,10 +136,9 @@ public class UnitInfo if (this.deckUnitInfo.equip4_id != 0)// { // ý ۼ - index = Statics.equipment.FindIndex(n => n.id == deckUnitInfo.equip4_id); - Equipment eq = Statics.equipment[index]; - EquipmentData eqd = Statics.excelDatas.equipmentData[eq.equipment_data_id]; - switch (eq.rand_stats) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip4_id); + EquipmentData eqd = Statics.excelDatas.equipmentData[index.equipment_data_id]; + switch (index.rand_stats) { case 1: // _defense += eqd.stats1; @@ -159,10 +154,9 @@ public class UnitInfo if (this.deckUnitInfo.equip5_id != 0)// { // ý ۼ - index = Statics.equipment.FindIndex(n => n.id == deckUnitInfo.equip5_id); - Equipment eq = Statics.equipment[index]; - EquipmentData eqd = Statics.excelDatas.equipmentData[eq.equipment_data_id]; - switch (eq.rand_stats) + index = Statics.itemManager.box.FindEquipment(deckUnitInfo.equip5_id); + EquipmentData eqd = Statics.excelDatas.equipmentData[index.equipment_data_id]; + switch (index.rand_stats) { case 1: //ġŸȮ break; diff --git a/Client/Assets/1_Script/MainCtrl.cs b/Client/Assets/1_Script/MainCtrl.cs index feab5137..d809dab3 100644 --- a/Client/Assets/1_Script/MainCtrl.cs +++ b/Client/Assets/1_Script/MainCtrl.cs @@ -122,17 +122,13 @@ public class MainCtrl : MonoBehaviour { PlayerPrefs.SetString("uuid", data.uuid); Statics.uuid = data.uuid; - List units = data.deck_unit.OrderBy(n => n.unit_data_id).ToList(); Statics.deck_info = data.deck_info.OrderBy(n => n.id).ToList(); - Statics.equipment = data.equipment.OrderBy(n => n.equipment_data_id).ToList(); - // Set - foreach (DeckUnitInfo item in units) - Statics.deckUnit.Add(item.id, item); - //̳ Set foreach (var item in data.dynamic_data) Statics.dynamic.Add(item.name, item.value); + Statics.itemManager = new ItemManager(data.deck_unit, data.equipment, data.consumableItem, data.etcItem); + Statics.nickname = data.nickname; Statics.gold = data.gold; Statics.cash = data.cash; diff --git a/Client/Assets/1_Script/PlayCtrl.cs b/Client/Assets/1_Script/PlayCtrl.cs index 427e9591..ccf91e79 100644 --- a/Client/Assets/1_Script/PlayCtrl.cs +++ b/Client/Assets/1_Script/PlayCtrl.cs @@ -44,15 +44,15 @@ public class PlayCtrl : SingletonMonoBehaviour isEndGame = false; delay = 0.0f; units = new UnitCtrl[9]; - units[0] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit0_id].unit_data_id].GetComponent(); - units[1] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit1_id].unit_data_id].GetComponent(); - units[2] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit2_id].unit_data_id].GetComponent(); - units[3] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit3_id].unit_data_id].GetComponent(); - units[4] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit4_id].unit_data_id].GetComponent(); - units[5] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit5_id].unit_data_id].GetComponent(); - units[6] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit6_id].unit_data_id].GetComponent(); - units[7] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit7_id].unit_data_id].GetComponent(); - units[8] = Statics.longUnits[Statics.deckUnit[Statics.deck_info[0].deck_unit8_id].unit_data_id].GetComponent(); + 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(); for (int n = 0; n < unitSpriteButton.Length; n++) { unitSpriteButton[n].sprite = units[n].unitSprite; diff --git a/Client/Assets/1_Script/Prefab/DeckPrefab.cs b/Client/Assets/1_Script/Prefab/DeckPrefab.cs index 8085998e..ea20977a 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.deckUnit[unit_id].unit_data_id].GetComponent().unitSprite; + img.sprite = Statics.longUnits[Statics.itemManager.box.FindDeckUnitInfo(unit_id).unit_data_id].GetComponent().unitSprite; img.color = Color.white; } } diff --git a/Client/Assets/1_Script/Prefab/ShopType1itemPrefab.cs b/Client/Assets/1_Script/Prefab/ShopType1itemPrefab.cs index 7020eca1..85354d36 100644 --- a/Client/Assets/1_Script/Prefab/ShopType1itemPrefab.cs +++ b/Client/Assets/1_Script/Prefab/ShopType1itemPrefab.cs @@ -1,35 +1,5 @@ -using System.Collections; -using System.Collections.Generic; -using TMPro; -using UnityEngine; -using UnityEngine.UI; -public class ShopType1itemPrefab : MonoBehaviour +public class ShopType1itemPrefab : ShopTypeitemPrefab { - //߻ȭ ų - [SerializeField] Image img; - [SerializeField] TMP_Text pay; - - ShopItemData shopItemData; - - public void Set(ShopItemData shopItemData) - { - //img.sprite = null; - // ٸ ϰ . - pay.text = "" + shopItemData.buy.ToString(); - this.shopItemData = shopItemData; - } - - public void BuyItemButton() - { - BuyShopItemResp resp = new BuyShopItemResp(); - resp.Request((data) => - { - Debug.Log(" "); - Statics.gold = data.gold; - Statics.cash = data.cash; - GameCtrl.Instance.MoneyUpdate(); - }, shopItemData.index); - } } diff --git a/Client/Assets/1_Script/Prefab/ShopType2itemPrefab.cs b/Client/Assets/1_Script/Prefab/ShopType2itemPrefab.cs index 5c31ca43..06e8fadc 100644 --- a/Client/Assets/1_Script/Prefab/ShopType2itemPrefab.cs +++ b/Client/Assets/1_Script/Prefab/ShopType2itemPrefab.cs @@ -2,33 +2,14 @@ using TMPro; using UnityEngine; using UnityEngine.UI; -public class ShopType2itemPrefab : MonoBehaviour +public class ShopType2itemPrefab : ShopTypeitemPrefab { - //߻ȭ ų - [SerializeField] Image img; - [SerializeField] TMP_Text pay; [SerializeField] TMP_Text name; ShopItemData shopItemData; - public void Set(ShopItemData shopItemData) + + protected override void OnSet(ShopItemData shopItemData) { - //img.sprite = null; - // ٸ ϰ . name.text = shopItemData.name; - pay.text = "" + shopItemData.buy.ToString(); - - this.shopItemData = shopItemData; } - - public void BuyItemButton() - { - BuyShopItemResp resp = new BuyShopItemResp(); - resp.Request((data) => - { - Debug.Log(" "); - Statics.gold = data.gold; - Statics.cash = data.cash; - GameCtrl.Instance.MoneyUpdate(); - }, shopItemData.index); - } -} +} \ No newline at end of file diff --git a/Client/Assets/1_Script/Prefab/ShopTypeitemPrefab.cs b/Client/Assets/1_Script/Prefab/ShopTypeitemPrefab.cs new file mode 100644 index 00000000..86893615 --- /dev/null +++ b/Client/Assets/1_Script/Prefab/ShopTypeitemPrefab.cs @@ -0,0 +1,37 @@ +using System.Collections; +using System.Collections.Generic; +using TMPro; +using UnityEngine; +using UnityEngine.UI; + +public class ShopTypeitemPrefab : MonoBehaviour +{ + [SerializeField] Image img; + [SerializeField] TMP_Text pay; + + ShopItemData shopItemData; + + public void Set(ShopItemData shopItemData) + { + this.shopItemData = shopItemData; + pay.text = "" + shopItemData.buy.ToString(); + OnSet(shopItemData); + } + + virtual protected void OnSet(ShopItemData shopItemData) + { + + } + + public void BuyItemButton() + { + BuyShopItemResp resp = new BuyShopItemResp(); + resp.Request((data) => + { + Debug.Log(" "); + Statics.gold = data.gold; + Statics.cash = data.cash; + GameCtrl.Instance.MoneyUpdate(); + }, shopItemData.index); + } +} diff --git a/Client/Assets/1_Script/Prefab/ShopTypeitemPrefab.cs.meta b/Client/Assets/1_Script/Prefab/ShopTypeitemPrefab.cs.meta new file mode 100644 index 00000000..f8ca8f4f --- /dev/null +++ b/Client/Assets/1_Script/Prefab/ShopTypeitemPrefab.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c99084a4c030b0c4da4cdc38b388016a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/1_Script/System/Http/Protocol.cs b/Client/Assets/1_Script/System/Http/Protocol.cs index 73a00431..93c68b08 100644 --- a/Client/Assets/1_Script/System/Http/Protocol.cs +++ b/Client/Assets/1_Script/System/Http/Protocol.cs @@ -217,6 +217,18 @@ public class DeckUnitInfo public long equip5_id { get; set; } public int level { get; set; } public long exp { get; set; } + + public void Update(DeckUnitInfo item) + { + this.equip0_id = item.equip0_id; + this.equip1_id = item.equip1_id; + this.equip2_id = item.equip2_id; + this.equip3_id = item.equip3_id; + this.equip4_id = item.equip4_id; + this.equip5_id = item.equip5_id; + this.level = item.level; + this.exp = item.exp; + } } public class Equipment @@ -225,6 +237,11 @@ public class Equipment public long equip_unit { get; set; } public int rand_stats { get; set; } public long equipment_data_id { get; set; } + public void Update(Equipment item) + { + this.equip_unit = item.equip_unit; + //this.rand_stats = item.rand_stats; + } } public class DeckInfo diff --git a/Client/Assets/1_Script/System/ItemManager.cs b/Client/Assets/1_Script/System/ItemManager.cs new file mode 100644 index 00000000..a9a7c432 --- /dev/null +++ b/Client/Assets/1_Script/System/ItemManager.cs @@ -0,0 +1,68 @@ +using System.Collections.Generic; +using System.Linq; + +public class ItemManager +{ + public ItemBox box; + public ItemManager(List deckUnitInfo, List equipment, List consumableItem, List etcItem) + { + box = new ItemBox(deckUnitInfo, equipment, consumableItem, etcItem); + } +} +public class ItemBox +{ + List _deckUnitInfo; + public List deckUnitInfo { get { return _deckUnitInfo; } } + List _equipment; + public List equipment { get { return _equipment; } } + List _consumableItem; + public List consumableItem { get { return _consumableItem; } } + List _etcItem; + public List etcItem { get { return _etcItem; } } + public ItemBox(List deckUnitInfo, List equipment, List consumableItem, List etcItem) + { + if (deckUnitInfo == null) + _deckUnitInfo = new List(); + else + _deckUnitInfo = deckUnitInfo.OrderBy(n => n.unit_data_id).ToList(); + + if (equipment == null) + _equipment = new List(); + else + _equipment = equipment.OrderBy(n => n.id).ToList(); + + if (consumableItem == null) + _consumableItem = new List(); + else + _consumableItem = consumableItem.OrderBy(n => n.id).ToList(); + + if (etcItem == null) + _etcItem = new List(); + else + _etcItem = etcItem.OrderBy(n => n.id).ToList(); + } + + public DeckUnitInfo FindDeckUnitInfo(long id) + { + return _deckUnitInfo.Find(n => n.id == id); + } + public int FindIndexDeckUnitInfo(long unit_data_id) + { + return _deckUnitInfo.FindIndex(n => n.unit_data_id == unit_data_id); + } + + public Equipment FindEquipment(long id) + { + return _equipment.Find(n => n.id == id); + } + + public void UpdateDeckUnitInfo(DeckUnitInfo item) + { + FindDeckUnitInfo(item.id).Update(item); + } + + public void UpdateEquipment(Equipment item) + { + FindEquipment(item.id).Update(item); + } +} \ No newline at end of file diff --git a/Client/Assets/1_Script/System/ItemManager.cs.meta b/Client/Assets/1_Script/System/ItemManager.cs.meta new file mode 100644 index 00000000..0c97e947 --- /dev/null +++ b/Client/Assets/1_Script/System/ItemManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 684784a96ae48354f9acf30f4d4bb237 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/1_Script/System/SingletonMonoBehaviour.cs b/Client/Assets/1_Script/System/SingletonMonoBehaviour.cs index 4b08e14d..67c4b977 100644 --- a/Client/Assets/1_Script/System/SingletonMonoBehaviour.cs +++ b/Client/Assets/1_Script/System/SingletonMonoBehaviour.cs @@ -17,7 +17,7 @@ public class SingletonMonoBehaviour : MonoBehaviour where T : SingletonMonoBe { Debug.Log("1개이상의 싱글턴이 존재합니다" + gameObject.name); Debug.Log("같은 함수가 들어간 싱글턴을 제거해 주세요"); - Destroy(gameObject); + //Destroy(gameObject); } } diff --git a/Client/Assets/1_Script/System/Statics.cs b/Client/Assets/1_Script/System/Statics.cs index f26fbc6e..2beb4892 100644 --- a/Client/Assets/1_Script/System/Statics.cs +++ b/Client/Assets/1_Script/System/Statics.cs @@ -23,17 +23,15 @@ public class Statics // ִ ͵ public static string uuid; public static Dictionary dynamic = new Dictionary(); - public static Dictionary deckUnit = new Dictionary(); // ⺻ public static string nickname; public static ulong gold; public static ulong cash; + public static ItemManager itemManager; // public static List deck_info; - public static List equipment; - // ÷ public static int chapter; }