From 2c7f326873709ee2b38098c03b4adb6ad40767a6 Mon Sep 17 00:00:00 2001 From: "aube.lee" Date: Sat, 8 Feb 2025 01:10:12 +0900 Subject: [PATCH] =?UTF-8?q?=EC=BA=90=EB=A6=AD=ED=84=B0=20=EB=A0=88?= =?UTF-8?q?=EB=B2=A8=EC=97=90=20=EB=A7=9E=EA=B2=8C=EB=81=94=20=EC=BB=A8?= =?UTF-8?q?=ED=8A=B8=EB=A1=A4=EB=9F=AC=20=EB=82=B4=20=EC=8A=A4=ED=82=AC=20?= =?UTF-8?q?=EC=84=B8=ED=8C=85=20=EB=90=98=EB=8F=84=EB=A1=9D=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Gameton/Resources/GameData/skill.json | 65 ++++++++++++++++--- .../Resources/GameData/skill.json.meta | 2 +- .../UI/Prefabs/Buttons/Skill Button.prefab | 36 +++++++--- .../UI/Prefabs/UI.ControllerUI.prefab | 20 +++--- .../Assets/Gameton/Scripts/UI/ControllerUI.cs | 16 ++--- .../Scripts/UI/ControllerUI_SkillButton.cs | 18 ++--- 6 files changed, 110 insertions(+), 47 deletions(-) diff --git a/Gameton-06/Assets/Gameton/Resources/GameData/skill.json b/Gameton-06/Assets/Gameton/Resources/GameData/skill.json index 27d8c9fb..c5b144e2 100644 --- a/Gameton-06/Assets/Gameton/Resources/GameData/skill.json +++ b/Gameton-06/Assets/Gameton/Resources/GameData/skill.json @@ -1,7 +1,7 @@ [ { "id": "K0001", - "name": "fireball", + "name": "FireBall", "mpConsumption": 10, "damage": 1.2, "coolDown": 5, @@ -10,20 +10,65 @@ }, { "id": "K0002", - "name": "iceball", - "mpConsumption": 15, - "damage": 1.45, - "coolDown": 15, + "name": "IceBall", + "mpConsumption": 12, + "damage": 1.3, + "coolDown": 6, "slotNumber": 2, - "requiredLevel": 6 + "requiredLevel": 3 }, { "id": "K0003", - "name": "darknessball", - "mpConsumption": 15, - "damage": 1.7, - "coolDown": 10, + "name": "Leaf Shuriken", + "mpConsumption": 7, + "damage": 1.15, + "coolDown": 3, "slotNumber": 3, + "requiredLevel": 5 + }, + { + "id": "K0004", + "name": "Earth Smash", + "mpConsumption": 20, + "damage": 1.8, + "coolDown": 15, + "slotNumber": 0, + "requiredLevel": 7 + }, + { + "id": "K0005", + "name": "Bubble POP", + "mpConsumption": 5, + "damage": 1.15, + "coolDown": 2, + "slotNumber": 0, + "requiredLevel": 9 + }, + { + "id": "K0006", + "name": "Leaf Cutter", + "mpConsumption": 14, + "damage": 1.4, + "coolDown": 5, + "slotNumber": 0, "requiredLevel": 11 + }, + { + "id": "K0007", + "name": "DarknessBall", + "mpConsumption": 30, + "damage": 2.4, + "coolDown": 12, + "slotNumber": 0, + "requiredLevel": 13 + }, + { + "id": "K0008", + "name": "Elemental burst", + "mpConsumption": 60, + "damage": 8, + "coolDown": 40, + "slotNumber": 0, + "requiredLevel": 15 } ] \ No newline at end of file diff --git a/Gameton-06/Assets/Gameton/Resources/GameData/skill.json.meta b/Gameton-06/Assets/Gameton/Resources/GameData/skill.json.meta index 126028fc..3893ea4b 100644 --- a/Gameton-06/Assets/Gameton/Resources/GameData/skill.json.meta +++ b/Gameton-06/Assets/Gameton/Resources/GameData/skill.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 7f440ab5670a24b44914393fc49d44dd +guid: 920b9bd3800ac08409e79255edb991e3 TextScriptImporter: externalObjects: {} userData: diff --git a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/Buttons/Skill Button.prefab b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/Buttons/Skill Button.prefab index b09dfde1..26654c7a 100644 --- a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/Buttons/Skill Button.prefab +++ b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/Buttons/Skill Button.prefab @@ -92,7 +92,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &6576729596631844278 RectTransform: m_ObjectHideFlags: 0 @@ -319,13 +319,13 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 5127688379423261843} - m_TargetAssemblyTypeName: TON.ControllerUI_SkillButton, Assembly-CSharp + - m_Target: {fileID: -4577297331876422106, guid: dfba43d4c3ff3d4439db025ccd05e6eb, type: 3} + m_TargetAssemblyTypeName: TON.ControllerUI, Assembly-CSharp m_MethodName: OnClickSkillButton - m_Mode: 1 + m_Mode: 2 m_Arguments: - m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_ObjectArgument: {fileID: 5127688379423261843} + m_ObjectArgumentAssemblyTypeName: TON.ControllerUI_SkillButton, Assembly-CSharp m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: @@ -351,7 +351,27 @@ MonoBehaviour: coolDown: 0 slotNumber: 0 requiredLevel: 0 - lockImage: {fileID: 0} + skillImage: {fileID: 4450630482936255251} + lockImage: {fileID: 9104780789004064627} + skillSprite: + keys: + - K0001 + - K0002 + - K0003 + - K0004 + - K0005 + - K0006 + - K0007 + - K0008 + values: + - Value: {fileID: 21300000, guid: 0c6802c457ef3a049babd141698d0763, type: 3} + - Value: {fileID: 21300000, guid: dbd065e74e8e2f840a037a91d8ac8b08, type: 3} + - Value: {fileID: 0} + - Value: {fileID: 0} + - Value: {fileID: 0} + - Value: {fileID: 0} + - Value: {fileID: 21300000, guid: 373fbf69075cebf46992176be6e81b0e, type: 3} + - Value: {fileID: 0} --- !u!1 &9104780789004064627 GameObject: m_ObjectHideFlags: 0 @@ -387,7 +407,7 @@ RectTransform: m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 80, y: 80} + m_SizeDelta: {x: 60, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &3911793054694365059 CanvasRenderer: diff --git a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.ControllerUI.prefab b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.ControllerUI.prefab index 1a76ac4e..76a750fd 100644 --- a/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.ControllerUI.prefab +++ b/Gameton-06/Assets/Gameton/Resources/UI/Prefabs/UI.ControllerUI.prefab @@ -682,10 +682,6 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 2009939342780089657} m_Modifications: - - target: {fileID: 513183606973775710, guid: f023329ca96ab444ca7c60781e310d59, type: 3} - propertyPath: m_Sprite - value: - objectReference: {fileID: 21300000, guid: 373fbf69075cebf46992176be6e81b0e, type: 3} - target: {fileID: 3622686016877026920, guid: f023329ca96ab444ca7c60781e310d59, type: 3} propertyPath: m_Pivot.x value: 1 @@ -774,6 +770,10 @@ PrefabInstance: propertyPath: m_Name value: Skill Button objectReference: {fileID: 0} + - target: {fileID: 8637807277690663409, guid: f023329ca96ab444ca7c60781e310d59, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: -4577297331876422106} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -1061,6 +1061,10 @@ PrefabInstance: propertyPath: m_Name value: Skill Button objectReference: {fileID: 0} + - target: {fileID: 8637807277690663409, guid: f023329ca96ab444ca7c60781e310d59, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: -4577297331876422106} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -1101,10 +1105,6 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 2009939342780089657} m_Modifications: - - target: {fileID: 513183606973775710, guid: f023329ca96ab444ca7c60781e310d59, type: 3} - propertyPath: m_Sprite - value: - objectReference: {fileID: 21300000, guid: dbd065e74e8e2f840a037a91d8ac8b08, type: 3} - target: {fileID: 3622686016877026920, guid: f023329ca96ab444ca7c60781e310d59, type: 3} propertyPath: m_Pivot.x value: 1 @@ -1189,6 +1189,10 @@ PrefabInstance: propertyPath: m_Name value: Skill Button objectReference: {fileID: 0} + - target: {fileID: 8637807277690663409, guid: f023329ca96ab444ca7c60781e310d59, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: -4577297331876422106} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] diff --git a/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI.cs b/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI.cs index 6ed5c62e..34880d9f 100644 --- a/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI.cs +++ b/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI.cs @@ -29,7 +29,6 @@ namespace TON if (skillDatas != null) { - Debug.Log("characterLevel ::: " + characterLevel); // 사용 가능한 스킬 필터링 (캐릭터 레벨보다 필요 레벨이 낮거나 같은 것만) List availableSkills = skillDatas .Where(skill => skill.requiredLevel <= characterLevel) @@ -37,26 +36,18 @@ namespace TON .Take(3) // 최대 3개 선택 .ToList(); - Debug.Log(availableSkills.Count); - // availableSkills - // 버튼 설정 for (int i = 0; i < buttons.Length; i++) { if (i < availableSkills.Count) { buttons[i].interactable = true; // 사용 가능 - - SkillData skillData = skillDatas.Find(skill => skill.slotNumber == i); - - skillButtons[i].linkedCharactor = linkedCharactor; + SkillData skillData = skillDatas.Find(skill => skill.slotNumber == i + 1); skillButtons[i].Initalize(skillData); - } else { buttons[i].interactable = false; // 사용 불가 - } } } @@ -78,9 +69,10 @@ namespace TON linkedCharactor.Attack(); } - public void OnClickSkillButton(string skill) + public void OnClickSkillButton(ControllerUI_SkillButton skill) { - linkedCharactor.SkillAttack(skill); + + linkedCharactor.SkillAttack(skill.skillData.name); } } } diff --git a/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI_SkillButton.cs b/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI_SkillButton.cs index ad74cb6a..7ed46ee4 100644 --- a/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI_SkillButton.cs +++ b/Gameton-06/Assets/Gameton/Scripts/UI/ControllerUI_SkillButton.cs @@ -7,23 +7,25 @@ namespace TON { public class ControllerUI_SkillButton : MonoBehaviour { - public CharacterBase linkedCharactor { get; set; } public SkillData skillData; + public GameObject skillImage; + public GameObject lockImage; - public Image lockImage; + [SerializeField] + private SerializableDictionary skillSprite = new SerializableDictionary(); public void Initalize(SkillData skillData) { + Debug.Log($"Initalize :: {skillData.id}"); this.skillData = skillData; - // this.linkedCharactor = linkedCharactor; // 씬에서 캐릭터 찾기 - Debug.Log(linkedCharactor.name); + skillImage.SetActive(true); + skillImage.GetComponent().sprite = skillSprite.GetValueOrDefault(skillData.id, null); + lockImage.SetActive(false); + } - public void OnClickSkillButton() - { - linkedCharactor.SkillAttack(skillData.id); - } + }