캐릭터 레벨에 맞게끔 컨트롤러 내 스킬 세팅 되도록 수정
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"id": "K0001",
|
"id": "K0001",
|
||||||
"name": "fireball",
|
"name": "FireBall",
|
||||||
"mpConsumption": 10,
|
"mpConsumption": 10,
|
||||||
"damage": 1.2,
|
"damage": 1.2,
|
||||||
"coolDown": 5,
|
"coolDown": 5,
|
||||||
@@ -10,20 +10,65 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "K0002",
|
"id": "K0002",
|
||||||
"name": "iceball",
|
"name": "IceBall",
|
||||||
"mpConsumption": 15,
|
"mpConsumption": 12,
|
||||||
"damage": 1.45,
|
"damage": 1.3,
|
||||||
"coolDown": 15,
|
"coolDown": 6,
|
||||||
"slotNumber": 2,
|
"slotNumber": 2,
|
||||||
"requiredLevel": 6
|
"requiredLevel": 3
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "K0003",
|
"id": "K0003",
|
||||||
"name": "darknessball",
|
"name": "Leaf Shuriken",
|
||||||
"mpConsumption": 15,
|
"mpConsumption": 7,
|
||||||
"damage": 1.7,
|
"damage": 1.15,
|
||||||
"coolDown": 10,
|
"coolDown": 3,
|
||||||
"slotNumber": 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
|
"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
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 7f440ab5670a24b44914393fc49d44dd
|
guid: 920b9bd3800ac08409e79255edb991e3
|
||||||
TextScriptImporter:
|
TextScriptImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ GameObject:
|
|||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
m_IsActive: 1
|
m_IsActive: 0
|
||||||
--- !u!224 &6576729596631844278
|
--- !u!224 &6576729596631844278
|
||||||
RectTransform:
|
RectTransform:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -319,13 +319,13 @@ MonoBehaviour:
|
|||||||
m_OnClick:
|
m_OnClick:
|
||||||
m_PersistentCalls:
|
m_PersistentCalls:
|
||||||
m_Calls:
|
m_Calls:
|
||||||
- m_Target: {fileID: 5127688379423261843}
|
- m_Target: {fileID: -4577297331876422106, guid: dfba43d4c3ff3d4439db025ccd05e6eb, type: 3}
|
||||||
m_TargetAssemblyTypeName: TON.ControllerUI_SkillButton, Assembly-CSharp
|
m_TargetAssemblyTypeName: TON.ControllerUI, Assembly-CSharp
|
||||||
m_MethodName: OnClickSkillButton
|
m_MethodName: OnClickSkillButton
|
||||||
m_Mode: 1
|
m_Mode: 2
|
||||||
m_Arguments:
|
m_Arguments:
|
||||||
m_ObjectArgument: {fileID: 0}
|
m_ObjectArgument: {fileID: 5127688379423261843}
|
||||||
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
|
m_ObjectArgumentAssemblyTypeName: TON.ControllerUI_SkillButton, Assembly-CSharp
|
||||||
m_IntArgument: 0
|
m_IntArgument: 0
|
||||||
m_FloatArgument: 0
|
m_FloatArgument: 0
|
||||||
m_StringArgument:
|
m_StringArgument:
|
||||||
@@ -351,7 +351,27 @@ MonoBehaviour:
|
|||||||
coolDown: 0
|
coolDown: 0
|
||||||
slotNumber: 0
|
slotNumber: 0
|
||||||
requiredLevel: 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
|
--- !u!1 &9104780789004064627
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -387,7 +407,7 @@ RectTransform:
|
|||||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
m_AnchoredPosition: {x: 0, y: 0}
|
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}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!222 &3911793054694365059
|
--- !u!222 &3911793054694365059
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
|
|||||||
@@ -682,10 +682,6 @@ PrefabInstance:
|
|||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TransformParent: {fileID: 2009939342780089657}
|
m_TransformParent: {fileID: 2009939342780089657}
|
||||||
m_Modifications:
|
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}
|
- target: {fileID: 3622686016877026920, guid: f023329ca96ab444ca7c60781e310d59, type: 3}
|
||||||
propertyPath: m_Pivot.x
|
propertyPath: m_Pivot.x
|
||||||
value: 1
|
value: 1
|
||||||
@@ -774,6 +770,10 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Skill Button
|
value: Skill Button
|
||||||
objectReference: {fileID: 0}
|
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_RemovedComponents: []
|
||||||
m_RemovedGameObjects: []
|
m_RemovedGameObjects: []
|
||||||
m_AddedGameObjects: []
|
m_AddedGameObjects: []
|
||||||
@@ -1061,6 +1061,10 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Skill Button
|
value: Skill Button
|
||||||
objectReference: {fileID: 0}
|
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_RemovedComponents: []
|
||||||
m_RemovedGameObjects: []
|
m_RemovedGameObjects: []
|
||||||
m_AddedGameObjects: []
|
m_AddedGameObjects: []
|
||||||
@@ -1101,10 +1105,6 @@ PrefabInstance:
|
|||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TransformParent: {fileID: 2009939342780089657}
|
m_TransformParent: {fileID: 2009939342780089657}
|
||||||
m_Modifications:
|
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}
|
- target: {fileID: 3622686016877026920, guid: f023329ca96ab444ca7c60781e310d59, type: 3}
|
||||||
propertyPath: m_Pivot.x
|
propertyPath: m_Pivot.x
|
||||||
value: 1
|
value: 1
|
||||||
@@ -1189,6 +1189,10 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Skill Button
|
value: Skill Button
|
||||||
objectReference: {fileID: 0}
|
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_RemovedComponents: []
|
||||||
m_RemovedGameObjects: []
|
m_RemovedGameObjects: []
|
||||||
m_AddedGameObjects: []
|
m_AddedGameObjects: []
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ namespace TON
|
|||||||
|
|
||||||
if (skillDatas != null)
|
if (skillDatas != null)
|
||||||
{
|
{
|
||||||
Debug.Log("characterLevel ::: " + characterLevel);
|
|
||||||
// 사용 가능한 스킬 필터링 (캐릭터 레벨보다 필요 레벨이 낮거나 같은 것만)
|
// 사용 가능한 스킬 필터링 (캐릭터 레벨보다 필요 레벨이 낮거나 같은 것만)
|
||||||
List<SkillData> availableSkills = skillDatas
|
List<SkillData> availableSkills = skillDatas
|
||||||
.Where(skill => skill.requiredLevel <= characterLevel)
|
.Where(skill => skill.requiredLevel <= characterLevel)
|
||||||
@@ -37,26 +36,18 @@ namespace TON
|
|||||||
.Take(3) // 최대 3개 선택
|
.Take(3) // 최대 3개 선택
|
||||||
.ToList();
|
.ToList();
|
||||||
|
|
||||||
Debug.Log(availableSkills.Count);
|
|
||||||
// availableSkills
|
|
||||||
|
|
||||||
// 버튼 설정
|
// 버튼 설정
|
||||||
for (int i = 0; i < buttons.Length; i++)
|
for (int i = 0; i < buttons.Length; i++)
|
||||||
{
|
{
|
||||||
if (i < availableSkills.Count)
|
if (i < availableSkills.Count)
|
||||||
{
|
{
|
||||||
buttons[i].interactable = true; // 사용 가능
|
buttons[i].interactable = true; // 사용 가능
|
||||||
|
SkillData skillData = skillDatas.Find(skill => skill.slotNumber == i + 1);
|
||||||
SkillData skillData = skillDatas.Find(skill => skill.slotNumber == i);
|
|
||||||
|
|
||||||
skillButtons[i].linkedCharactor = linkedCharactor;
|
|
||||||
skillButtons[i].Initalize(skillData);
|
skillButtons[i].Initalize(skillData);
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
buttons[i].interactable = false; // 사용 불가
|
buttons[i].interactable = false; // 사용 불가
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -78,9 +69,10 @@ namespace TON
|
|||||||
linkedCharactor.Attack();
|
linkedCharactor.Attack();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnClickSkillButton(string skill)
|
public void OnClickSkillButton(ControllerUI_SkillButton skill)
|
||||||
{
|
{
|
||||||
linkedCharactor.SkillAttack(skill);
|
|
||||||
|
linkedCharactor.SkillAttack(skill.skillData.name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,23 +7,25 @@ namespace TON
|
|||||||
{
|
{
|
||||||
public class ControllerUI_SkillButton : MonoBehaviour
|
public class ControllerUI_SkillButton : MonoBehaviour
|
||||||
{
|
{
|
||||||
public CharacterBase linkedCharactor { get; set; }
|
|
||||||
|
|
||||||
public SkillData skillData;
|
public SkillData skillData;
|
||||||
|
public GameObject skillImage;
|
||||||
|
public GameObject lockImage;
|
||||||
|
|
||||||
public Image lockImage;
|
[SerializeField]
|
||||||
|
private SerializableDictionary<string, Sprite> skillSprite = new SerializableDictionary<string, Sprite>();
|
||||||
|
|
||||||
public void Initalize(SkillData skillData)
|
public void Initalize(SkillData skillData)
|
||||||
{
|
{
|
||||||
|
Debug.Log($"Initalize :: {skillData.id}");
|
||||||
this.skillData = skillData;
|
this.skillData = skillData;
|
||||||
// this.linkedCharactor = linkedCharactor; // 씬에서 캐릭터 찾기
|
skillImage.SetActive(true);
|
||||||
Debug.Log(linkedCharactor.name);
|
skillImage.GetComponent<Image>().sprite = skillSprite.GetValueOrDefault(skillData.id, null);
|
||||||
}
|
lockImage.SetActive(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void OnClickSkillButton()
|
|
||||||
{
|
|
||||||
linkedCharactor.SkillAttack(skillData.id);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user