diff --git a/.idea/.idea.proto_turn_based_rpg/.idea/indexLayout.xml b/.idea/.idea.proto_turn_based_rpg/.idea/indexLayout.xml
index e47d5b0..b22f1e8 100644
--- a/.idea/.idea.proto_turn_based_rpg/.idea/indexLayout.xml
+++ b/.idea/.idea.proto_turn_based_rpg/.idea/indexLayout.xml
@@ -22,6 +22,7 @@
ProjectSettings
+ .git
.idea
Library
Logs
diff --git a/.idea/.idea.proto_turn_based_rpg/.idea/vcs.xml b/.idea/.idea.proto_turn_based_rpg/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/.idea.proto_turn_based_rpg/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity
index 0fc62b7..89a60f9 100644
--- a/Assets/Scenes/SampleScene.unity
+++ b/Assets/Scenes/SampleScene.unity
@@ -218,6 +218,9 @@ RectTransform:
- {fileID: 1700659786}
- {fileID: 2003127417}
- {fileID: 2122497092}
+ - {fileID: 137837623}
+ - {fileID: 829062269}
+ - {fileID: 251530422}
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -239,8 +242,435 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
attackButton: {fileID: 1700659787}
+ bloodCounterButton: {fileID: 829062266}
+ counterButton: {fileID: 251530419}
+ defendButton: {fileID: 137837620}
userHealth: {fileID: 2003127418}
enemyHealth: {fileID: 2122497093}
+--- !u!1 &137837619
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 137837623}
+ - component: {fileID: 137837622}
+ - component: {fileID: 137837621}
+ - component: {fileID: 137837620}
+ m_Layer: 5
+ m_Name: Defend
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &137837620
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 137837619}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Navigation:
+ m_Mode: 3
+ m_WrapAround: 0
+ m_SelectOnUp: {fileID: 0}
+ m_SelectOnDown: {fileID: 0}
+ m_SelectOnLeft: {fileID: 0}
+ m_SelectOnRight: {fileID: 0}
+ m_Transition: 2
+ m_Colors:
+ m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+ m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+ m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+ m_ColorMultiplier: 1
+ m_FadeDuration: 0.1
+ m_SpriteState:
+ m_HighlightedSprite: {fileID: 0}
+ m_PressedSprite: {fileID: 5437299029774813188, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_SelectedSprite: {fileID: 0}
+ m_DisabledSprite: {fileID: 0}
+ m_AnimationTriggers:
+ m_NormalTrigger: Normal
+ m_HighlightedTrigger: Highlighted
+ m_PressedTrigger: Pressed
+ m_SelectedTrigger: Selected
+ m_DisabledTrigger: Disabled
+ m_Interactable: 1
+ m_TargetGraphic: {fileID: 137837621}
+ m_OnClick:
+ m_PersistentCalls:
+ m_Calls:
+ - m_Target: {fileID: 24251070}
+ m_TargetAssemblyTypeName:
+ m_MethodName:
+ m_Mode: 1
+ m_Arguments:
+ m_ObjectArgument: {fileID: 0}
+ m_ObjectArgumentAssemblyTypeName:
+ m_IntArgument: 0
+ m_FloatArgument: 0
+ m_StringArgument:
+ m_BoolArgument: 0
+ m_CallState: 2
+--- !u!114 &137837621
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 137837619}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 8047949451544522013, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_Type: 0
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!222 &137837622
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 137837619}
+ m_CullTransparentMesh: 1
+--- !u!224 &137837623
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 137837619}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children:
+ - {fileID: 816304657}
+ m_Father: {fileID: 24251074}
+ m_RootOrder: 3
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 125, y: 40}
+ m_SizeDelta: {x: 80, y: 60}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &228826172
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 228826173}
+ - component: {fileID: 228826175}
+ - component: {fileID: 228826174}
+ m_Layer: 5
+ m_Name: Text
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &228826173
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 228826172}
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children: []
+ m_Father: {fileID: 251530422}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &228826174
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 228826172}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_FontData:
+ m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+ m_FontSize: 18
+ m_FontStyle: 0
+ m_BestFit: 0
+ m_MinSize: 1
+ m_MaxSize: 40
+ m_Alignment: 4
+ m_AlignByGeometry: 0
+ m_RichText: 1
+ m_HorizontalOverflow: 0
+ m_VerticalOverflow: 0
+ m_LineSpacing: 1
+ m_Text: Counter
+--- !u!222 &228826175
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 228826172}
+ m_CullTransparentMesh: 1
+--- !u!1 &251530418
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 251530422}
+ - component: {fileID: 251530421}
+ - component: {fileID: 251530420}
+ - component: {fileID: 251530419}
+ m_Layer: 5
+ m_Name: Counter
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!114 &251530419
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 251530418}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Navigation:
+ m_Mode: 3
+ m_WrapAround: 0
+ m_SelectOnUp: {fileID: 0}
+ m_SelectOnDown: {fileID: 0}
+ m_SelectOnLeft: {fileID: 0}
+ m_SelectOnRight: {fileID: 0}
+ m_Transition: 2
+ m_Colors:
+ m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+ m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+ m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+ m_ColorMultiplier: 1
+ m_FadeDuration: 0.1
+ m_SpriteState:
+ m_HighlightedSprite: {fileID: 0}
+ m_PressedSprite: {fileID: 5437299029774813188, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_SelectedSprite: {fileID: 0}
+ m_DisabledSprite: {fileID: 0}
+ m_AnimationTriggers:
+ m_NormalTrigger: Normal
+ m_HighlightedTrigger: Highlighted
+ m_PressedTrigger: Pressed
+ m_SelectedTrigger: Selected
+ m_DisabledTrigger: Disabled
+ m_Interactable: 1
+ m_TargetGraphic: {fileID: 251530420}
+ m_OnClick:
+ m_PersistentCalls:
+ m_Calls:
+ - m_Target: {fileID: 24251070}
+ m_TargetAssemblyTypeName:
+ m_MethodName:
+ m_Mode: 1
+ m_Arguments:
+ m_ObjectArgument: {fileID: 0}
+ m_ObjectArgumentAssemblyTypeName:
+ m_IntArgument: 0
+ m_FloatArgument: 0
+ m_StringArgument:
+ m_BoolArgument: 0
+ m_CallState: 2
+--- !u!114 &251530420
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 251530418}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 8047949451544522013, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_Type: 0
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!222 &251530421
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 251530418}
+ m_CullTransparentMesh: 1
+--- !u!224 &251530422
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 251530418}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children:
+ - {fileID: 228826173}
+ m_Father: {fileID: 24251074}
+ m_RootOrder: 5
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 210, y: 40}
+ m_SizeDelta: {x: 80, y: 60}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &393001464
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 393001465}
+ - component: {fileID: 393001467}
+ - component: {fileID: 393001466}
+ m_Layer: 5
+ m_Name: Text
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &393001465
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 393001464}
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children: []
+ m_Father: {fileID: 829062269}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &393001466
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 393001464}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_FontData:
+ m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+ m_FontSize: 18
+ m_FontStyle: 0
+ m_BestFit: 0
+ m_MinSize: 1
+ m_MaxSize: 40
+ m_Alignment: 4
+ m_AlignByGeometry: 0
+ m_RichText: 1
+ m_HorizontalOverflow: 0
+ m_VerticalOverflow: 0
+ m_LineSpacing: 1
+ m_Text: Blood Counter
+--- !u!222 &393001467
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 393001464}
+ m_CullTransparentMesh: 1
--- !u!1 &519420028
GameObject:
m_ObjectHideFlags: 0
@@ -324,6 +754,218 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &816304656
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 816304657}
+ - component: {fileID: 816304659}
+ - component: {fileID: 816304658}
+ m_Layer: 5
+ m_Name: Text
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &816304657
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 816304656}
+ m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children: []
+ m_Father: {fileID: 137837623}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &816304658
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 816304656}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_FontData:
+ m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+ m_FontSize: 18
+ m_FontStyle: 0
+ m_BestFit: 0
+ m_MinSize: 1
+ m_MaxSize: 40
+ m_Alignment: 4
+ m_AlignByGeometry: 0
+ m_RichText: 1
+ m_HorizontalOverflow: 0
+ m_VerticalOverflow: 0
+ m_LineSpacing: 1
+ m_Text: Defend
+--- !u!222 &816304659
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 816304656}
+ m_CullTransparentMesh: 1
+--- !u!1 &829062265
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 829062269}
+ - component: {fileID: 829062268}
+ - component: {fileID: 829062267}
+ - component: {fileID: 829062266}
+ m_Layer: 5
+ m_Name: BloodCounter
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 0
+--- !u!114 &829062266
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 829062265}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Navigation:
+ m_Mode: 3
+ m_WrapAround: 0
+ m_SelectOnUp: {fileID: 0}
+ m_SelectOnDown: {fileID: 0}
+ m_SelectOnLeft: {fileID: 0}
+ m_SelectOnRight: {fileID: 0}
+ m_Transition: 2
+ m_Colors:
+ m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+ m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+ m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+ m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+ m_ColorMultiplier: 1
+ m_FadeDuration: 0.1
+ m_SpriteState:
+ m_HighlightedSprite: {fileID: 0}
+ m_PressedSprite: {fileID: 5437299029774813188, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_SelectedSprite: {fileID: 0}
+ m_DisabledSprite: {fileID: 0}
+ m_AnimationTriggers:
+ m_NormalTrigger: Normal
+ m_HighlightedTrigger: Highlighted
+ m_PressedTrigger: Pressed
+ m_SelectedTrigger: Selected
+ m_DisabledTrigger: Disabled
+ m_Interactable: 1
+ m_TargetGraphic: {fileID: 829062267}
+ m_OnClick:
+ m_PersistentCalls:
+ m_Calls:
+ - m_Target: {fileID: 24251070}
+ m_TargetAssemblyTypeName:
+ m_MethodName:
+ m_Mode: 1
+ m_Arguments:
+ m_ObjectArgument: {fileID: 0}
+ m_ObjectArgumentAssemblyTypeName:
+ m_IntArgument: 0
+ m_FloatArgument: 0
+ m_StringArgument:
+ m_BoolArgument: 0
+ m_CallState: 2
+--- !u!114 &829062267
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 829062265}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 8047949451544522013, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_Type: 0
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!222 &829062268
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 829062265}
+ m_CullTransparentMesh: 1
+--- !u!224 &829062269
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 829062265}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children:
+ - {fileID: 393001465}
+ m_Father: {fileID: 24251074}
+ m_RootOrder: 4
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 0, y: 0}
+ m_AnchoredPosition: {x: 295, y: 40}
+ m_SizeDelta: {x: 80, y: 60}
+ m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &885956096
GameObject:
m_ObjectHideFlags: 0
@@ -449,10 +1091,10 @@ MonoBehaviour:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
- m_FontSize: 14
+ m_FontSize: 18
m_FontStyle: 0
m_BestFit: 0
- m_MinSize: 10
+ m_MinSize: 1
m_MaxSize: 40
m_Alignment: 4
m_AlignByGeometry: 0
@@ -505,8 +1147,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
- m_AnchoredPosition: {x: 80, y: 60}
- m_SizeDelta: {x: 160, y: 30}
+ m_AnchoredPosition: {x: 40, y: 40}
+ m_SizeDelta: {x: 80, y: 60}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1700659787
MonoBehaviour:
@@ -527,7 +1169,7 @@ MonoBehaviour:
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
- m_Transition: 1
+ m_Transition: 2
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
@@ -538,7 +1180,7 @@ MonoBehaviour:
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
- m_PressedSprite: {fileID: 0}
+ m_PressedSprite: {fileID: 5437299029774813188, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
@@ -584,8 +1226,8 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
- m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
- m_Type: 1
+ m_Sprite: {fileID: 8047949451544522013, guid: 4880d72e2864aa54389378d2e1821522, type: 3}
+ m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
diff --git a/Assets/Scripts/BattleMenu.cs b/Assets/Scripts/BattleMenu.cs
index f789d14..8618766 100644
--- a/Assets/Scripts/BattleMenu.cs
+++ b/Assets/Scripts/BattleMenu.cs
@@ -1,90 +1,143 @@
-using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class BattleMenu : MonoBehaviour
-{
- private class Player
- {
- public int Health;
- public int Damage;
-
- public Action UpdateHealth;
- }
-
- private Player _user;
- private Player _enemy;
+{
private EnemyAi _enemyLogic;
- private readonly List _turnOrder = new List();
- private int _currentTurnIndex = 0;
+ private readonly List _players = new List();
+ private int _currentPlayerIndex;
+
+ private Player CurrentPlayer => _players[_currentPlayerIndex];
public Button attackButton;
+ public Button bloodCounterButton;
+ public Button counterButton;
+ public Button defendButton;
public Text userHealth;
public Text enemyHealth;
private void Awake()
{
- _user = new Player {Health = 10, Damage = 1, UpdateHealth = UpdateUserHealth};
- _enemy = new Player {Health = 10, Damage = 1, UpdateHealth = UpdateEnemyHealth};
+ _players.Add(new Player {health = 100, damage = 5, updateHealth = UpdateUserHealth, isHumanControlled = true});
+ _players.Add(new Player {health = 100, damage = 5, updateHealth = UpdateEnemyHealth, isHumanControlled = false});
+
_enemyLogic = new EnemyAi();
- _enemyLogic.AttackCallback += EnemyAttack;
+ _enemyLogic.attackCallback += Attack;
+ _enemyLogic.defendCallback += Defend;
+ _enemyLogic.counterCallback += Counter;
}
private void Start()
{
- attackButton.onClick.AddListener(PlayerAttack);
+ attackButton.onClick.AddListener(Attack);
+ bloodCounterButton.onClick.AddListener(BloodCounter);
+ defendButton.onClick.AddListener(Defend);
+ counterButton.onClick.AddListener(Counter);
+
+ foreach (var player in _players)
+ {
+ player.updateHealth(player.health);
+ }
- _turnOrder.Add(UserTakeTurn);
- _turnOrder.Add(_enemyLogic.TakeTurn);
-
- _turnOrder[_currentTurnIndex]();
-
- UpdateUserHealth();
- UpdateEnemyHealth();
+ Debug.Log(CurrentPlayer.isHumanControlled ? "Start user turn" : "Start enemy turn");
+ StartTurn();
}
- private void UpdateUserHealth()
+ private void UpdateUserHealth(int health)
{
- userHealth.text = $"Health: {_user.Health}";
+ userHealth.text = $"Health: {health}";
}
- private void UpdateEnemyHealth()
+ private void UpdateEnemyHealth(int health)
{
- enemyHealth.text = $"Health: {_enemy.Health}";
+ enemyHealth.text = $"Health: {health}";
}
-
+
private void FinishTurn()
{
- _currentTurnIndex = ++_currentTurnIndex % _turnOrder.Count;
- _turnOrder[_currentTurnIndex]();
- }
-
- private void PlayerAttack()
- {
- Attack(_user, _enemy);
// TODO: disable hud
- attackButton.interactable = false;
+ attackButton.interactable = !CurrentPlayer.isHumanControlled;
+ bloodCounterButton.interactable = !CurrentPlayer.isHumanControlled;
+ defendButton.interactable = !CurrentPlayer.isHumanControlled;
+ counterButton.interactable = !CurrentPlayer.isHumanControlled;
+
+ _currentPlayerIndex = ++_currentPlayerIndex % _players.Count;
+ StartTurn();
+ }
+
+ private void Attack()
+ {
+ // TODO: when target selection is a thing this will need to be changed.
+ var victimIndex = (_currentPlayerIndex + 1) % _players.Count;
+ Attack(CurrentPlayer, _players[victimIndex]);
FinishTurn();
}
- private void EnemyAttack()
+ private void BloodCounter()
{
- Attack(_enemy, _user);
+ CurrentPlayer.isBloodCounter = true;
FinishTurn();
}
- private void UserTakeTurn()
+ private void Defend()
{
+ CurrentPlayer.damageReduction = 0.4f;
+ CurrentPlayer.startTurnEffects = ResetDamageReduction;
+ FinishTurn();
+ }
+
+ private void Counter()
+ {
+ CurrentPlayer.isCounter = true;
+ FinishTurn();
+ }
+
+ private void StartTurn()
+ {
+ CurrentPlayer.isCounter = false;
+ if (CurrentPlayer.isStunned)
+ {
+ Debug.Log("stunned, skipping turn");
+ CurrentPlayer.isStunned = false;
+ FinishTurn();
+ return;
+ }
+
// TODO: enable hud.
- attackButton.interactable = true;
+ attackButton.interactable = CurrentPlayer.isHumanControlled;
+ bloodCounterButton.interactable = CurrentPlayer.isHumanControlled;
+ defendButton.interactable = CurrentPlayer.isHumanControlled;
+ counterButton.interactable = CurrentPlayer.isHumanControlled;
+
+ CurrentPlayer.startTurnEffects?.Invoke(CurrentPlayer);
+ CurrentPlayer.startTurnEffects = null;
+
+ // TODO: controller.
+ if (!CurrentPlayer.isHumanControlled)
+ {
+ _enemyLogic.TakeTurn();
+ }
+ }
+
+ private void ResetDamageReduction(Player p)
+ {
+ p.damageReduction = 1f;
}
private void Attack(Player attacker, Player victim)
{
- victim.Health -= attacker.Damage;
- victim.UpdateHealth();
- if (victim.Health <= 0)
+ if (victim.isCounter)
+ {
+ attacker.isStunned = true;
+ Debug.Log("COUNTER");
+ return;
+ }
+ victim.TakeDamage((int)(attacker.damage * attacker.damageModification));
+ // damage mod is spent whenever they attack.
+ attacker.damageModification = 1;
+ attacker.isBloodCounter = false;
+ if (victim.health <= 0)
{
Debug.Log("The victim died!");
}
diff --git a/Assets/Scripts/EnemyAi.cs b/Assets/Scripts/EnemyAi.cs
index 774aca1..2f1d6c9 100644
--- a/Assets/Scripts/EnemyAi.cs
+++ b/Assets/Scripts/EnemyAi.cs
@@ -1,11 +1,39 @@
using System;
+using UnityEngine;
+using Random = System.Random;
public class EnemyAi
{
- public Action AttackCallback;
+ public Action attackCallback;
+ public Action defendCallback;
+ public Action counterCallback;
+
+ private Random rng;
+
+ public EnemyAi()
+ {
+ rng = new Random(1337);
+ }
+ // TODO: will need more information, not sure what info should be exposed.
public void TakeTurn()
{
- AttackCallback();
+ var number = rng.Next(1, 4);
+ Debug.Log($"enemy rolled {number}");
+ switch (number)
+ {
+ case 1:
+ attackCallback();
+ break;
+ case 2:
+ defendCallback();
+ break;
+ case 3:
+ counterCallback();
+ break;
+ default:
+ Debug.LogWarning($"Enemy rolled something that it can't do {number}");
+ break;
+ }
}
}
diff --git a/Assets/Scripts/Player.cs b/Assets/Scripts/Player.cs
new file mode 100644
index 0000000..03d6994
--- /dev/null
+++ b/Assets/Scripts/Player.cs
@@ -0,0 +1,29 @@
+using System;
+
+public class Player
+{
+ public int health;
+ public int damage;
+ public float damageReduction = 1.0f;
+ public float damageModification = 1.0f;
+ public bool isBloodCounter;
+ public bool isCounter;
+ public bool isStunned;
+ public bool isHumanControlled;
+
+ public Action updateHealth;
+ public Action startTurnEffects;
+
+ public void TakeDamage(int incomingDamage)
+ {
+ var modifiedDamage = (int) (incomingDamage * damageReduction);
+ // Not sure if blood counter should negate damage or not...
+ if (isBloodCounter)
+ {
+ damageModification += (modifiedDamage * 0.15F);
+ }
+ health -= modifiedDamage;
+
+ updateHealth(health);
+ }
+}
\ No newline at end of file
diff --git a/Assets/Scripts/Player.cs.meta b/Assets/Scripts/Player.cs.meta
new file mode 100644
index 0000000..b3ed734
--- /dev/null
+++ b/Assets/Scripts/Player.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 374046a0afc221d459f369d95fc41b42
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Spritesheets.meta b/Assets/Spritesheets.meta
new file mode 100644
index 0000000..26d8153
--- /dev/null
+++ b/Assets/Spritesheets.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6102af983b4288d43986464bb29c3e7c
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Spritesheets/uipack_rpg_sheet.png b/Assets/Spritesheets/uipack_rpg_sheet.png
new file mode 100644
index 0000000..740afe1
Binary files /dev/null and b/Assets/Spritesheets/uipack_rpg_sheet.png differ
diff --git a/Assets/Spritesheets/uipack_rpg_sheet.png.meta b/Assets/Spritesheets/uipack_rpg_sheet.png.meta
new file mode 100644
index 0000000..cdae0b4
--- /dev/null
+++ b/Assets/Spritesheets/uipack_rpg_sheet.png.meta
@@ -0,0 +1,2196 @@
+fileFormatVersion: 2
+guid: 4880d72e2864aa54389378d2e1821522
+TextureImporter:
+ internalIDToNameTable:
+ - first:
+ 213: -3065845115110258923
+ second: arrowBeige_left.png
+ - first:
+ 213: -876916113671692908
+ second: arrowBeige_right.png
+ - first:
+ 213: -3199050045481761375
+ second: arrowBlue_left.png
+ - first:
+ 213: 91069135266465237
+ second: arrowBlue_right.png
+ - first:
+ 213: -243706425301756804
+ second: arrowBrown_left.png
+ - first:
+ 213: -7707906182408999357
+ second: arrowBrown_right.png
+ - first:
+ 213: 7640529539919425555
+ second: arrowSilver_left.png
+ - first:
+ 213: -440148442306511084
+ second: arrowSilver_right.png
+ - first:
+ 213: 5741791383268150795
+ second: barBack_horizontalLeft.png
+ - first:
+ 213: 4110012939401715177
+ second: barBack_horizontalMid.png
+ - first:
+ 213: 936862776637027205
+ second: barBack_horizontalRight.png
+ - first:
+ 213: -1569847276214523418
+ second: barBack_verticalBottom.png
+ - first:
+ 213: -7091332126032253562
+ second: barBack_verticalMid.png
+ - first:
+ 213: 7186829677185908364
+ second: barBack_verticalTop.png
+ - first:
+ 213: 733584220257985254
+ second: barBlue_horizontalBlue.png
+ - first:
+ 213: 2879881502684800515
+ second: barBlue_horizontalLeft.png
+ - first:
+ 213: 5218899492203918591
+ second: barBlue_horizontalRight.png
+ - first:
+ 213: 7109168866638171205
+ second: barBlue_verticalBottom.png
+ - first:
+ 213: 8349698072535737256
+ second: barBlue_verticalMid.png
+ - first:
+ 213: -7780427158427965587
+ second: barBlue_verticalTop.png
+ - first:
+ 213: -3344875544598875602
+ second: barGreen_horizontalLeft.png
+ - first:
+ 213: -7904214316921149014
+ second: barGreen_horizontalMid.png
+ - first:
+ 213: -6034670552469499588
+ second: barGreen_horizontalRight.png
+ - first:
+ 213: 1834998612420506070
+ second: barGreen_verticalBottom.png
+ - first:
+ 213: -2755453101209018879
+ second: barGreen_verticalMid.png
+ - first:
+ 213: -4213352910743148662
+ second: barGreen_verticalTop.png
+ - first:
+ 213: -5977699597387766232
+ second: barRed_horizontalLeft.png
+ - first:
+ 213: -3369414919916728018
+ second: barRed_horizontalMid.png
+ - first:
+ 213: 6188094661579950931
+ second: barRed_horizontalRight.png
+ - first:
+ 213: 2810553331800553670
+ second: barRed_verticalBottom.png
+ - first:
+ 213: 8461753039342037233
+ second: barRed_verticalMid.png
+ - first:
+ 213: -3308328016718208261
+ second: barRed_verticalTop.png
+ - first:
+ 213: 1917657991484293299
+ second: barYellow_horizontalLeft.png
+ - first:
+ 213: 645092453454402935
+ second: barYellow_horizontalMid.png
+ - first:
+ 213: -5766303750328084760
+ second: barYellow_horizontalRight.png
+ - first:
+ 213: -5605363782295744499
+ second: barYellow_verticalBottom.png
+ - first:
+ 213: -5355005803999219697
+ second: barYellow_verticalMid.png
+ - first:
+ 213: 3239843093637664104
+ second: barYellow_verticalTop.png
+ - first:
+ 213: 7825250829889082930
+ second: buttonLong_beige.png
+ - first:
+ 213: 8253030867335237739
+ second: buttonLong_beige_pressed.png
+ - first:
+ 213: -3985811117541366512
+ second: buttonLong_blue.png
+ - first:
+ 213: 8992257282699874409
+ second: buttonLong_blue_pressed.png
+ - first:
+ 213: -861143203771653310
+ second: buttonLong_brown.png
+ - first:
+ 213: -4104176793228889392
+ second: buttonLong_brown_pressed.png
+ - first:
+ 213: -8169026919483231335
+ second: buttonLong_grey.png
+ - first:
+ 213: 8512830025971384357
+ second: buttonLong_grey_pressed.png
+ - first:
+ 213: -2258374320120644838
+ second: buttonRound_beige.png
+ - first:
+ 213: -6625052740406624021
+ second: buttonRound_blue.png
+ - first:
+ 213: -8635304914333653394
+ second: buttonRound_brown.png
+ - first:
+ 213: -2051775029143062000
+ second: buttonRound_grey.png
+ - first:
+ 213: 7067577018730115286
+ second: buttonSquare_beige.png
+ - first:
+ 213: 4497485657247042444
+ second: buttonSquare_beige_pressed.png
+ - first:
+ 213: -2735075395936164667
+ second: buttonSquare_blue.png
+ - first:
+ 213: 3879586902925579997
+ second: buttonSquare_blue_pressed.png
+ - first:
+ 213: 8047949451544522013
+ second: buttonSquare_brown.png
+ - first:
+ 213: 5437299029774813188
+ second: buttonSquare_brown_pressed.png
+ - first:
+ 213: 2329619694263455062
+ second: buttonSquare_grey.png
+ - first:
+ 213: 2823825819002273684
+ second: buttonSquare_grey_pressed.png
+ - first:
+ 213: -5591692054918224611
+ second: cursorGauntlet_blue.png
+ - first:
+ 213: 1135579071110884410
+ second: cursorGauntlet_bronze.png
+ - first:
+ 213: 3548154222282398596
+ second: cursorGauntlet_grey.png
+ - first:
+ 213: 2933387467584884181
+ second: cursorHand_beige.png
+ - first:
+ 213: 8801855715008105287
+ second: cursorHand_blue.png
+ - first:
+ 213: 543474438185336381
+ second: cursorHand_grey.png
+ - first:
+ 213: -1281719886287688372
+ second: cursorSword_bronze.png
+ - first:
+ 213: -113328550142869694
+ second: cursorSword_gold.png
+ - first:
+ 213: -5733998262458994484
+ second: cursorSword_silver.png
+ - first:
+ 213: 7215279896600887633
+ second: iconCheck_beige.png
+ - first:
+ 213: -8561850954222213945
+ second: iconCheck_blue.png
+ - first:
+ 213: 3522341663598534631
+ second: iconCheck_bronze.png
+ - first:
+ 213: -5216927348275734057
+ second: iconCheck_grey.png
+ - first:
+ 213: 6820754018416556629
+ second: iconCircle_beige.png
+ - first:
+ 213: 2919071832950625210
+ second: iconCircle_blue.png
+ - first:
+ 213: 9017043938630672815
+ second: iconCircle_brown.png
+ - first:
+ 213: 7524690137840758341
+ second: iconCircle_grey.png
+ - first:
+ 213: -4626611290844866245
+ second: iconCross_beige.png
+ - first:
+ 213: -1245058833516092737
+ second: iconCross_blue.png
+ - first:
+ 213: 6831320113791551198
+ second: iconCross_brown.png
+ - first:
+ 213: 611582470095337371
+ second: iconCross_grey.png
+ - first:
+ 213: 923997641766589172
+ second: panelInset_beige.png
+ - first:
+ 213: -5794796869342371381
+ second: panelInset_beigeLight.png
+ - first:
+ 213: -8297243822185179047
+ second: panelInset_blue.png
+ - first:
+ 213: -8644997448959572577
+ second: panelInset_brown.png
+ - first:
+ 213: 1695822802525721143
+ second: panel_beige.png
+ - first:
+ 213: -1954158942528770799
+ second: panel_beigeLight.png
+ - first:
+ 213: -6789483784463679010
+ second: panel_blue.png
+ - first:
+ 213: -1871147257634247708
+ second: panel_brown.png
+ externalObjects: {}
+ serializedVersion: 11
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 0
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 0
+ aniso: -1
+ mipBias: -100
+ wrapU: 1
+ wrapV: 1
+ wrapW: 1
+ nPOTScale: 0
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 2
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 128
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 8
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: 4
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: 4
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites:
+ - serializedVersion: 2
+ name: arrowBeige_left.png
+ rect:
+ serializedVersion: 2
+ x: 303
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 5178c718c1ee375d0800000000000000
+ internalID: -3065845115110258923
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowBeige_right.png
+ rect:
+ serializedVersion: 2
+ x: 171
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 49d58c2d07194d3f0800000000000000
+ internalID: -876916113671692908
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowBlue_left.png
+ rect:
+ serializedVersion: 2
+ x: 193
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 1a5cc54dee0ba93d0800000000000000
+ internalID: -3199050045481761375
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowBlue_right.png
+ rect:
+ serializedVersion: 2
+ x: 215
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 5d54f8165ea834100800000000000000
+ internalID: 91069135266465237
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowBrown_left.png
+ rect:
+ serializedVersion: 2
+ x: 237
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: c7498622c4e2e9cf0800000000000000
+ internalID: -243706425301756804
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowBrown_right.png
+ rect:
+ serializedVersion: 2
+ x: 325
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 34e69735a24080590800000000000000
+ internalID: -7707906182408999357
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowSilver_left.png
+ rect:
+ serializedVersion: 2
+ x: 281
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 310b6c2a22d980a60800000000000000
+ internalID: 7640529539919425555
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: arrowSilver_right.png
+ rect:
+ serializedVersion: 2
+ x: 259
+ y: 5
+ width: 22
+ height: 21
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 41ff0efd25744e9f0800000000000000
+ internalID: -440148442306511084
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBack_horizontalLeft.png
+ rect:
+ serializedVersion: 2
+ x: 372
+ y: 164
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: b0ec81e77d0feaf40800000000000000
+ internalID: 5741791383268150795
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBack_horizontalMid.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 108
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 9ed5c4b1ef2b90930800000000000000
+ internalID: 4110012939401715177
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBack_horizontalRight.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 200
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 5837cbc4bb7600d00800000000000000
+ internalID: 936862776637027205
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBack_verticalBottom.png
+ rect:
+ serializedVersion: 2
+ x: 290
+ y: 314
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 6e96e9d3838c63ae0800000000000000
+ internalID: -1569847276214523418
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBack_verticalMid.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 90
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 68d288bb007869d90800000000000000
+ internalID: -7091332126032253562
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBack_verticalTop.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 63
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: c8eb6e1938fbcb360800000000000000
+ internalID: 7186829677185908364
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBlue_horizontalBlue.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 63
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 6e22f4d26f63e2a00800000000000000
+ internalID: 733584220257985254
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBlue_horizontalLeft.png
+ rect:
+ serializedVersion: 2
+ x: 372
+ y: 200
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 306eebae7f467f720800000000000000
+ internalID: 2879881502684800515
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBlue_horizontalRight.png
+ rect:
+ serializedVersion: 2
+ x: 372
+ y: 182
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: ff4f74fef614d6840800000000000000
+ internalID: 5218899492203918591
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBlue_verticalBottom.png
+ rect:
+ serializedVersion: 2
+ x: 344
+ y: 314
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 54c0c301b67d8a260800000000000000
+ internalID: 7109168866638171205
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBlue_verticalMid.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 108
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 8a3a14b882610e370800000000000000
+ internalID: 8349698072535737256
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barBlue_verticalTop.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 99
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: d67691dc8be560490800000000000000
+ internalID: -7780427158427965587
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barGreen_horizontalLeft.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 386
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: e22fa420a6d9491d0800000000000000
+ internalID: -3344875544598875602
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barGreen_horizontalMid.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 126
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: aa9ab5305f69e4290800000000000000
+ internalID: -7904214316921149014
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barGreen_horizontalRight.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 182
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: c319b870b1b804ca0800000000000000
+ internalID: -6034670552469499588
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barGreen_verticalBottom.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 36
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 6d1b8a80489377910800000000000000
+ internalID: 1834998612420506070
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barGreen_verticalMid.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 81
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 10e1033e00aa2c9d0800000000000000
+ internalID: -2755453101209018879
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barGreen_verticalTop.png
+ rect:
+ serializedVersion: 2
+ x: 171
+ y: 27
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: a87ebc9d9d92785c0800000000000000
+ internalID: -4213352910743148662
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barRed_horizontalLeft.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 404
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 826e4bb23e1fa0da0800000000000000
+ internalID: -5977699597387766232
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barRed_horizontalMid.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 126
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: e2156757bfe6d31d0800000000000000
+ internalID: -3369414919916728018
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barRed_horizontalRight.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 146
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 35bc6fb0f4780e550800000000000000
+ internalID: 6188094661579950931
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barRed_verticalBottom.png
+ rect:
+ serializedVersion: 2
+ x: 347
+ y: 0
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 6c833444d57110720800000000000000
+ internalID: 2810553331800553670
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barRed_verticalMid.png
+ rect:
+ serializedVersion: 2
+ x: 347
+ y: 9
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 1f860179e8f2e6570800000000000000
+ internalID: 8461753039342037233
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barRed_verticalTop.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 27
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: bf2e90372357612d0800000000000000
+ internalID: -3308328016718208261
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barYellow_horizontalLeft.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 368
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 3b04c1778c3ec9a10800000000000000
+ internalID: 1917657991484293299
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barYellow_horizontalMid.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 45
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 7755f672b24d3f800800000000000000
+ internalID: 645092453454402935
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barYellow_horizontalRight.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 164
+ width: 9
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 8e611be4a49f9ffa0800000000000000
+ internalID: -5766303750328084760
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barYellow_verticalBottom.png
+ rect:
+ serializedVersion: 2
+ x: 326
+ y: 314
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: d001c67a65fb532b0800000000000000
+ internalID: -5605363782295744499
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barYellow_verticalMid.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 72
+ width: 18
+ height: 18
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: f00b872e7923fa5b0800000000000000
+ internalID: -5355005803999219697
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: barYellow_verticalTop.png
+ rect:
+ serializedVersion: 2
+ x: 308
+ y: 314
+ width: 18
+ height: 9
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 86d8644d02c36fc20800000000000000
+ internalID: 3239843093637664104
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_beige.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 181
+ width: 190
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 2369ed97b20e89c60800000000000000
+ internalID: 7825250829889082930
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_beige_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 230
+ width: 190
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: b60d9dfe8d7a88270800000000000000
+ internalID: 8253030867335237739
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_blue.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 275
+ width: 190
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 015e42508ed8fa8c0800000000000000
+ internalID: -3985811117541366512
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_blue_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 324
+ width: 190
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 960de380b5aeacc70800000000000000
+ internalID: 8992257282699874409
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_brown.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 414
+ width: 190
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 243e27691da9c04f0800000000000000
+ internalID: -861143203771653310
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_brown_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 369
+ width: 190
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 0d2b03093f80b07c0800000000000000
+ internalID: -4104176793228889392
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_grey.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 463
+ width: 190
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 993399f4c49c1ae80800000000000000
+ internalID: -8169026919483231335
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonLong_grey_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 136
+ width: 190
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 520cd434ec5a32670800000000000000
+ internalID: 8512830025971384357
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonRound_beige.png
+ rect:
+ serializedVersion: 2
+ x: 335
+ y: 398
+ width: 35
+ height: 38
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: a1b385f6584a8a0e0800000000000000
+ internalID: -2258374320120644838
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonRound_blue.png
+ rect:
+ serializedVersion: 2
+ x: 335
+ y: 436
+ width: 35
+ height: 38
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: be0c5d532a51f04a0800000000000000
+ internalID: -6625052740406624021
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonRound_brown.png
+ rect:
+ serializedVersion: 2
+ x: 335
+ y: 360
+ width: 35
+ height: 38
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: e6625f5aeeb392880800000000000000
+ internalID: -8635304914333653394
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonRound_grey.png
+ rect:
+ serializedVersion: 2
+ x: 335
+ y: 474
+ width: 35
+ height: 38
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 01a39e45b71a683e0800000000000000
+ internalID: -2051775029143062000
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_beige.png
+ rect:
+ serializedVersion: 2
+ x: 293
+ y: 169
+ width: 45
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 6d07f185ad3151260800000000000000
+ internalID: 7067577018730115286
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_beige_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 290
+ y: 373
+ width: 45
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: c8bcf9660674a6e30800000000000000
+ internalID: 4497485657247042444
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_blue.png
+ rect:
+ serializedVersion: 2
+ x: 290
+ y: 463
+ width: 45
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 5c4605f1b6f0b0ad0800000000000000
+ internalID: -2735075395936164667
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_blue_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 290
+ y: 328
+ width: 45
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: dd61328bbbf07d530800000000000000
+ internalID: 3879586902925579997
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_brown.png
+ rect:
+ serializedVersion: 2
+ x: 293
+ y: 120
+ width: 45
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: d1d6c95e26f00bf60800000000000000
+ internalID: 8047949451544522013
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_brown_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 293
+ y: 75
+ width: 45
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 408cd47d8aa257b40800000000000000
+ internalID: 5437299029774813188
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_grey.png
+ rect:
+ serializedVersion: 2
+ x: 293
+ y: 26
+ width: 45
+ height: 49
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 65dc352e4c8745020800000000000000
+ internalID: 2329619694263455062
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: buttonSquare_grey_pressed.png
+ rect:
+ serializedVersion: 2
+ x: 290
+ y: 418
+ width: 45
+ height: 45
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 49ff4310f9e303720800000000000000
+ internalID: 2823825819002273684
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorGauntlet_blue.png
+ rect:
+ serializedVersion: 2
+ x: 30
+ y: 0
+ width: 30
+ height: 30
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: d15a93db3b15662b0800000000000000
+ internalID: -5591692054918224611
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorGauntlet_bronze.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 0
+ width: 30
+ height: 30
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: a3caeeb062362cf00800000000000000
+ internalID: 1135579071110884410
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorGauntlet_grey.png
+ rect:
+ serializedVersion: 2
+ x: 60
+ y: 0
+ width: 30
+ height: 30
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 48bd17b57739d3130800000000000000
+ internalID: 3548154222282398596
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorHand_beige.png
+ rect:
+ serializedVersion: 2
+ x: 90
+ y: 2
+ width: 27
+ height: 28
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 5ddcaf92c5c75b820800000000000000
+ internalID: 2933387467584884181
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorHand_blue.png
+ rect:
+ serializedVersion: 2
+ x: 117
+ y: 2
+ width: 27
+ height: 28
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 74bcc497329762a70800000000000000
+ internalID: 8801855715008105287
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorHand_grey.png
+ rect:
+ serializedVersion: 2
+ x: 144
+ y: 2
+ width: 27
+ height: 28
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: d3eba804f1fca8700800000000000000
+ internalID: 543474438185336381
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorSword_bronze.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 144
+ width: 34
+ height: 37
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: c4da444ed8a663ee0800000000000000
+ internalID: -1281719886287688372
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorSword_gold.png
+ rect:
+ serializedVersion: 2
+ x: 338
+ y: 181
+ width: 34
+ height: 37
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 24ff2d9b8406d6ef0800000000000000
+ internalID: -113328550142869694
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: cursorSword_silver.png
+ rect:
+ serializedVersion: 2
+ x: 335
+ y: 323
+ width: 34
+ height: 37
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: cc0bc67d5febc60b0800000000000000
+ internalID: -5733998262458994484
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCheck_beige.png
+ rect:
+ serializedVersion: 2
+ x: 369
+ y: 313
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 151c9e776d2d12460800000000000000
+ internalID: 7215279896600887633
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCheck_blue.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 467
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 7c4eeb57be13e2980800000000000000
+ internalID: -8561850954222213945
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCheck_bronze.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 452
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 7ef5954b41fd1e030800000000000000
+ internalID: 3522341663598534631
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCheck_grey.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 422
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 7d9110b9730c997b0800000000000000
+ internalID: -5216927348275734057
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCircle_beige.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 29
+ width: 17
+ height: 17
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 55a790054af28ae50800000000000000
+ internalID: 6820754018416556629
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCircle_blue.png
+ rect:
+ serializedVersion: 2
+ x: 365
+ y: 12
+ width: 17
+ height: 17
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: ab3dedcbd50a28820800000000000000
+ internalID: 2919071832950625210
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCircle_brown.png
+ rect:
+ serializedVersion: 2
+ x: 369
+ y: 343
+ width: 17
+ height: 17
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: fa1ab2610b9f22d70800000000000000
+ internalID: 9017043938630672815
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCircle_grey.png
+ rect:
+ serializedVersion: 2
+ x: 356
+ y: 46
+ width: 17
+ height: 17
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 54e22e610d11d6860800000000000000
+ internalID: 7524690137840758341
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCross_beige.png
+ rect:
+ serializedVersion: 2
+ x: 369
+ y: 328
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: b3951673b89facfb0800000000000000
+ internalID: -4626611290844866245
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCross_blue.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 482
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: fb2afc76699a8bee0800000000000000
+ internalID: -1245058833516092737
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCross_brown.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 497
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: ed6c6891379bdce50800000000000000
+ internalID: 6831320113791551198
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: iconCross_grey.png
+ rect:
+ serializedVersion: 2
+ x: 370
+ y: 437
+ width: 16
+ height: 15
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: b9773e82407cc7800800000000000000
+ internalID: 611582470095337371
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panelInset_beige.png
+ rect:
+ serializedVersion: 2
+ x: 200
+ y: 124
+ width: 93
+ height: 94
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 4f2dbcaa5f2b2dc00800000000000000
+ internalID: 923997641766589172
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panelInset_beigeLight.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 218
+ width: 93
+ height: 94
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: bc16d4113feb49fa0800000000000000
+ internalID: -5794796869342371381
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panelInset_blue.png
+ rect:
+ serializedVersion: 2
+ x: 200
+ y: 30
+ width: 93
+ height: 94
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 95819d354b44adc80800000000000000
+ internalID: -8297243822185179047
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panelInset_brown.png
+ rect:
+ serializedVersion: 2
+ x: 283
+ y: 218
+ width: 93
+ height: 94
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: f954b929f9cc60880800000000000000
+ internalID: -8644997448959572577
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panel_beige.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 312
+ width: 100
+ height: 100
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 7329d82aad5c88710800000000000000
+ internalID: 1695822802525721143
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panel_beigeLight.png
+ rect:
+ serializedVersion: 2
+ x: 100
+ y: 36
+ width: 100
+ height: 100
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 11d6beb9bce61e4e0800000000000000
+ internalID: -1954158942528770799
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panel_blue.png
+ rect:
+ serializedVersion: 2
+ x: 190
+ y: 412
+ width: 100
+ height: 100
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: ed184c26878e6c1a0800000000000000
+ internalID: -6789483784463679010
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: panel_brown.png
+ rect:
+ serializedVersion: 2
+ x: 0
+ y: 36
+ width: 100
+ height: 100
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: -1
+ bones: []
+ spriteID: 4eba342ab795806e0800000000000000
+ internalID: -1871147257634247708
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID: 5e97eb03825dee720800000000000000
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Spritesheets/uipack_rpg_sheet.xml b/Assets/Spritesheets/uipack_rpg_sheet.xml
new file mode 100644
index 0000000..09aeee4
--- /dev/null
+++ b/Assets/Spritesheets/uipack_rpg_sheet.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assets/Spritesheets/uipack_rpg_sheet.xml.meta b/Assets/Spritesheets/uipack_rpg_sheet.xml.meta
new file mode 100644
index 0000000..46baa4e
--- /dev/null
+++ b/Assets/Spritesheets/uipack_rpg_sheet.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: eb81e257b5879c4479ed1e2a1874505f
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TextureAtlasSlicer.meta b/Assets/TextureAtlasSlicer.meta
new file mode 100644
index 0000000..d901a50
--- /dev/null
+++ b/Assets/TextureAtlasSlicer.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 575a86d4fe7d22f4f915b9d1c09778e9
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TextureAtlasSlicer/Editor.meta b/Assets/TextureAtlasSlicer/Editor.meta
new file mode 100644
index 0000000..8509ee6
--- /dev/null
+++ b/Assets/TextureAtlasSlicer/Editor.meta
@@ -0,0 +1,9 @@
+fileFormatVersion: 2
+guid: 23aa647f2fb21bf46b850587506ba4a2
+folderAsset: yes
+timeCreated: 1430572177
+licenseType: Store
+DefaultImporter:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TextureAtlasSlicer/Editor/TextureAtlasSlicer.cs b/Assets/TextureAtlasSlicer/Editor/TextureAtlasSlicer.cs
new file mode 100644
index 0000000..a738c29
--- /dev/null
+++ b/Assets/TextureAtlasSlicer/Editor/TextureAtlasSlicer.cs
@@ -0,0 +1,281 @@
+using System;
+using System.IO;
+using System.Linq;
+using System.Xml;
+using UnityEditor;
+using UnityEngine;
+
+public class TextureAtlasSlicer : EditorWindow {
+ [MenuItem("CONTEXT/TextureImporter/Slice Sprite Using XML")]
+ public static void SliceUsingXML(MenuCommand command) {
+ var textureImporter = command.context as TextureImporter;
+
+ var window = CreateInstance();
+
+ window.importer = textureImporter;
+
+ window.ShowUtility();
+ }
+
+ [MenuItem("Assets/Slice Sprite Using XML")]
+ public static void TextureAtlasSlicerWindow() {
+ var window = CreateInstance();
+
+ window.Show();
+ }
+
+ [MenuItem("CONTEXT/TextureImporter/Slice Sprite Using XML", true)]
+ public static bool ValidateSliceUsingXML(MenuCommand command) {
+ var textureImporter = command.context as TextureImporter;
+
+ //valid only if the texture type is 'sprite' or 'advanced'.
+ return textureImporter && textureImporter.textureType == TextureImporterType.Sprite ||
+ textureImporter.textureType == TextureImporterType.Default;
+ }
+
+ public TextureImporter importer;
+
+ public TextureAtlasSlicer() {
+ titleContent = new GUIContent("XML Slicer");
+ }
+
+
+ [SerializeField]
+ private TextAsset xmlAsset;
+
+ public SpriteAlignment spriteAlignment = SpriteAlignment.Center;
+
+ public Vector2 customOffset = new Vector2(0.5f, 0.5f);
+
+ public void OnSelectionChange() {
+ UseSelectedTexture();
+ }
+
+ private Texture2D selectedTexture;
+
+ private void UseSelectedTexture() {
+ if (Selection.objects.Length > 1) {
+ selectedTexture = null;
+ } else {
+ selectedTexture = Selection.activeObject as Texture2D;
+ }
+
+ if (selectedTexture != null) {
+ var assetPath = AssetDatabase.GetAssetPath(selectedTexture);
+
+ importer = AssetImporter.GetAtPath(assetPath) as TextureImporter;
+
+ if (importer) {
+ var extension = Path.GetExtension(assetPath);
+ var pathWithoutExtension = assetPath.Remove(assetPath.Length - extension.Length, extension.Length);
+
+ var xmlPath = pathWithoutExtension + ".xml";
+
+ var textAsset = AssetDatabase.LoadAssetAtPath(xmlPath, typeof (TextAsset));
+
+ if (textAsset != null) {
+ xmlAsset = textAsset as TextAsset;
+ } else {
+ xmlAsset = null;
+ subTextures = null;
+ }
+
+ ParseXML();
+ } else {
+ xmlAsset = null;
+ subTextures = null;
+ }
+ } else {
+ importer = null;
+ xmlAsset = null;
+ subTextures = null;
+ }
+
+ Repaint();
+ }
+
+ private SubTexture[] subTextures;
+ private int wantedWidth, wantedHeight;
+
+ private void ParseXML() {
+ try {
+ var document = new XmlDocument();
+ document.LoadXml(xmlAsset.text);
+
+ var root = document.DocumentElement;
+ if (root == null || root.Name != "TextureAtlas") {
+ return;
+ }
+
+ subTextures = root.ChildNodes
+ .Cast()
+ .Where(childNode => childNode.Name == "SubTexture")
+ .Select(childNode => new SubTexture {
+ width = Convert.ToInt32(childNode.Attributes["width"].Value),
+ height = Convert.ToInt32(childNode.Attributes["height"].Value),
+ x = Convert.ToInt32(childNode.Attributes["x"].Value),
+ y = Convert.ToInt32(childNode.Attributes["y"].Value),
+ name = childNode.Attributes["name"].Value
+ }).ToArray();
+
+ wantedWidth = 0;
+ wantedHeight = 0;
+
+ foreach (var subTexture in subTextures) {
+ var right = subTexture.x + subTexture.width;
+ var bottom = subTexture.y + subTexture.height;
+
+ wantedWidth = Mathf.Max(wantedWidth, right);
+ wantedHeight = Mathf.Max(wantedHeight, bottom);
+ }
+ } catch (Exception) {
+ subTextures = null;
+ }
+ }
+
+ public void OnEnable() {
+ UseSelectedTexture();
+ }
+
+ public void OnGUI() {
+ if (importer == null) {
+ EditorGUILayout.LabelField("Please select a texture to slice.");
+ return;
+ }
+ EditorGUI.BeginDisabledGroup(focusedWindow != this);
+ {
+ EditorGUI.BeginDisabledGroup(true);
+ EditorGUILayout.ObjectField("Texture", Selection.activeObject, typeof (Texture), false);
+ EditorGUI.EndDisabledGroup();
+
+ if (importer.textureType != TextureImporterType.Sprite &&
+ importer.textureType != TextureImporterType.Default) {
+ EditorGUILayout.LabelField("The Texture Type needs to be Sprite or Advanced!");
+ }
+
+ EditorGUI.BeginDisabledGroup((importer.textureType != TextureImporterType.Sprite &&
+ importer.textureType != TextureImporterType.Default));
+ {
+ EditorGUI.BeginChangeCheck();
+ xmlAsset = EditorGUILayout.ObjectField("XML Source", xmlAsset, typeof (TextAsset), false) as TextAsset;
+ if (EditorGUI.EndChangeCheck()) {
+ ParseXML();
+ }
+
+ spriteAlignment = (SpriteAlignment) EditorGUILayout.EnumPopup("Pivot", spriteAlignment);
+
+ EditorGUI.BeginDisabledGroup(spriteAlignment != SpriteAlignment.Custom);
+ EditorGUILayout.Vector2Field("Custom Offset", customOffset);
+ EditorGUI.EndDisabledGroup();
+
+ var needsToResizeTexture = wantedWidth > selectedTexture.width || wantedHeight > selectedTexture.height;
+
+ if (xmlAsset != null && needsToResizeTexture) {
+ EditorGUILayout.LabelField(
+ string.Format("Texture size too small."
+ + " It needs to be at least {0} by {1} pixels!",
+ wantedWidth,
+ wantedHeight));
+ EditorGUILayout.LabelField("Try changing the Max Size property in the importer.");
+ }
+
+ if (subTextures == null || subTextures.Length == 0) {
+ EditorGUILayout.LabelField("Could not find any SubTextures in XML.");
+ }
+
+ EditorGUI.BeginDisabledGroup(xmlAsset == null || needsToResizeTexture || subTextures == null ||
+ subTextures.Length == 0);
+ if (GUILayout.Button("Slice")) {
+ PerformSlice();
+ }
+ EditorGUI.EndDisabledGroup();
+ }
+ EditorGUI.EndDisabledGroup();
+ }
+ EditorGUI.EndDisabledGroup();
+ }
+
+ private struct SubTexture {
+ public int width;
+ public int height;
+ public int x;
+ public int y;
+ public string name;
+ }
+
+ private void PerformSlice() {
+ if (importer == null) {
+ return;
+ }
+
+ var textureHeight = selectedTexture.height;
+
+ var needsUpdate = false;
+
+ if (importer.spriteImportMode != SpriteImportMode.Multiple) {
+ needsUpdate = true;
+ importer.spriteImportMode = SpriteImportMode.Multiple;
+ }
+
+ var wantedSpriteSheet = (from subTexture in subTextures
+ let actualY = textureHeight - (subTexture.y + subTexture.height)
+ select new SpriteMetaData {
+ alignment = (int) spriteAlignment,
+ border = new Vector4(),
+ name = subTexture.name,
+ pivot = GetPivotValue(spriteAlignment, customOffset),
+ rect = new Rect(subTexture.x, actualY, subTexture.width, subTexture.height)
+ }).ToArray();
+ if (!needsUpdate && !importer.spritesheet.SequenceEqual(wantedSpriteSheet)) {
+ needsUpdate = true;
+ importer.spritesheet = wantedSpriteSheet;
+ }
+
+ if (needsUpdate) {
+ EditorUtility.SetDirty(importer);
+
+ try {
+ AssetDatabase.StartAssetEditing();
+ AssetDatabase.ImportAsset(importer.assetPath);
+
+ EditorUtility.DisplayDialog("Success!", "The sprite was sliced successfully.", "OK");
+ } catch (Exception exception) {
+ Debug.LogException(exception);
+ EditorUtility.DisplayDialog("Error", "There was an exception while trying to reimport the image." +
+ "\nPlease check the console log for details.", "OK");
+ } finally {
+ AssetDatabase.StopAssetEditing();
+ }
+ } else {
+ EditorUtility.DisplayDialog("Nope!", "The sprite is already sliced according to this XML file.", "OK");
+ }
+ }
+
+ //SpriteEditorUtility
+ public static Vector2 GetPivotValue(SpriteAlignment alignment, Vector2 customOffset) {
+ switch (alignment) {
+ case SpriteAlignment.Center:
+ return new Vector2(0.5f, 0.5f);
+ case SpriteAlignment.TopLeft:
+ return new Vector2(0.0f, 1f);
+ case SpriteAlignment.TopCenter:
+ return new Vector2(0.5f, 1f);
+ case SpriteAlignment.TopRight:
+ return new Vector2(1f, 1f);
+ case SpriteAlignment.LeftCenter:
+ return new Vector2(0.0f, 0.5f);
+ case SpriteAlignment.RightCenter:
+ return new Vector2(1f, 0.5f);
+ case SpriteAlignment.BottomLeft:
+ return new Vector2(0.0f, 0.0f);
+ case SpriteAlignment.BottomCenter:
+ return new Vector2(0.5f, 0.0f);
+ case SpriteAlignment.BottomRight:
+ return new Vector2(1f, 0.0f);
+ case SpriteAlignment.Custom:
+ return customOffset;
+ default:
+ return Vector2.zero;
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/TextureAtlasSlicer/Editor/TextureAtlasSlicer.cs.meta b/Assets/TextureAtlasSlicer/Editor/TextureAtlasSlicer.cs.meta
new file mode 100644
index 0000000..f6484df
--- /dev/null
+++ b/Assets/TextureAtlasSlicer/Editor/TextureAtlasSlicer.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 2067bd0762faf2c48910fee768c92901
+timeCreated: 1430572201
+licenseType: Store
+MonoImporter:
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TextureAtlasSlicer/README.md b/Assets/TextureAtlasSlicer/README.md
new file mode 100644
index 0000000..5c2b2fc
--- /dev/null
+++ b/Assets/TextureAtlasSlicer/README.md
@@ -0,0 +1,17 @@
+# Unity3D-TextureAtlasSlicer
+Simple and fast tool to import XML spritesheets (TextureAtlas) into Unity3D!
+
+![Preview Image](https://i.imgur.com/LhmcMjX.png)
+
+Works very well to import [Kenney's sprite assets](http://opengameart.org/users/kenney)!
+
+## Usage
+- Copy this folder to your project's assets directory, or just use the latest .unitypackage file from the [Github project's releases](https://github.com/toxicFork/Unity3D-TextureAtlasSlicer/releases), or the [Unity3D asset store](https://www.assetstore.unity3d.com/en/#!/content/36103)!
+- You can now use the Assets/Slice Sprite Using XML button!
+- This will open a window.
+- Select any sprite asset in your Project window
+- If it has a XML file with the same name next to it, that XML file will automatically be selected
+- Otherwise, drag-drop the XML file reference onto the XML Source field in the Texture Atlas Slicer window
+- Configure the pivot settings
+- Hit Slice!
+- Enjoy! :D
diff --git a/Assets/TextureAtlasSlicer/README.md.meta b/Assets/TextureAtlasSlicer/README.md.meta
new file mode 100644
index 0000000..ebeb99b
--- /dev/null
+++ b/Assets/TextureAtlasSlicer/README.md.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 463e84607d141d645b70834aa062a0d1
+timeCreated: 1430859603
+licenseType: Store
+DefaultImporter:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset
index 43a0eae..fe6e2f1 100644
--- a/ProjectSettings/ProjectSettings.asset
+++ b/ProjectSettings/ProjectSettings.asset
@@ -145,7 +145,8 @@ PlayerSettings:
resolutionScalingMode: 0
androidSupportedAspectRatio: 1
androidMaxAspectRatio: 2.1
- applicationIdentifier: {}
+ applicationIdentifier:
+ Standalone: com.DefaultCompany.prototurnbasedrpg
buildNumber:
Standalone: 0
iPhone: 0
diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt
index 78a3249..833e6ef 100644
--- a/ProjectSettings/ProjectVersion.txt
+++ b/ProjectSettings/ProjectVersion.txt
@@ -1,2 +1,2 @@
-m_EditorVersion: 2020.2.3f1
-m_EditorVersionWithRevision: 2020.2.3f1 (8ff31bc5bf5b)
+m_EditorVersion: 2020.2.4f1
+m_EditorVersionWithRevision: 2020.2.4f1 (becced5a802b)
diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset
index d24eb10..2b39c51 100644
--- a/ProjectSettings/QualitySettings.asset
+++ b/ProjectSettings/QualitySettings.asset
@@ -4,7 +4,7 @@
QualitySettings:
m_ObjectHideFlags: 0
serializedVersion: 5
- m_CurrentQuality: 5
+ m_CurrentQuality: 3
m_QualitySettings:
- serializedVersion: 2
name: Very Low
@@ -165,7 +165,7 @@ QualitySettings:
skinWeights: 4
textureQuality: 0
anisotropicTextures: 2
- antiAliasing: 2
+ antiAliasing: 0
softParticles: 1
softVegetation: 1
realtimeReflectionProbes: 1
@@ -201,7 +201,7 @@ QualitySettings:
skinWeights: 255
textureQuality: 0
anisotropicTextures: 2
- antiAliasing: 2
+ antiAliasing: 0
softParticles: 1
softVegetation: 1
realtimeReflectionProbes: 1