From 066b3bc958745c9751183b2df635c9fb2c141092 Mon Sep 17 00:00:00 2001 From: Pasha Bibko <156938226+PashaBibko@users.noreply.github.com> Date: Tue, 5 May 2026 11:21:44 +0100 Subject: [PATCH] Added the unlock menu thing --- Assets/Prefabs/ItemRegistry.prefab | 47 ++ Assets/Prefabs/ItemRegistry.prefab.meta | 7 + Assets/Scenes/GameScene.unity | 116 ++-- Assets/Scenes/UpgradesScene.unity | 716 +++++++++++++++++++++++- Assets/Scripts/UI/BasicUpgradeButton.cs | 26 +- Assets/Scripts/UI/UpgradeInfoBoard.cs | 91 ++- 6 files changed, 934 insertions(+), 69 deletions(-) create mode 100644 Assets/Prefabs/ItemRegistry.prefab create mode 100644 Assets/Prefabs/ItemRegistry.prefab.meta diff --git a/Assets/Prefabs/ItemRegistry.prefab b/Assets/Prefabs/ItemRegistry.prefab new file mode 100644 index 0000000..57070df --- /dev/null +++ b/Assets/Prefabs/ItemRegistry.prefab @@ -0,0 +1,47 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4528292146240613971 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3666462050572962762} + - component: {fileID: 2973243437333469226} + m_Layer: 0 + m_Name: ItemRegistry + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3666462050572962762 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4528292146240613971} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2973243437333469226 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4528292146240613971} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dcb8b502e5b94a72b37a6e77e4770d05, type: 3} + m_Name: + m_EditorClassIdentifier: Fruitomation::Fruitomation.Game.Items.ItemInfoRegistry + SerializedRegistry: {fileID: 11400000, guid: b518751a8b5ee0942af68ec87eeba0c5, type: 2} diff --git a/Assets/Prefabs/ItemRegistry.prefab.meta b/Assets/Prefabs/ItemRegistry.prefab.meta new file mode 100644 index 0000000..6217a0b --- /dev/null +++ b/Assets/Prefabs/ItemRegistry.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ab033116269e1b04a803e8de46580851 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/GameScene.unity b/Assets/Scenes/GameScene.unity index 033b0eb..9fb5281 100644 --- a/Assets/Scenes/GameScene.unity +++ b/Assets/Scenes/GameScene.unity @@ -1815,6 +1815,7 @@ MonoBehaviour: SelectedBuildingToBuild: Name: Requirement: 0 + Type: 0 Prefab: {fileID: 0} FlipCurrentBuilding: 0 --- !u!58 &1330313879 @@ -2157,51 +2158,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1511006084} m_CullTransparentMesh: 1 ---- !u!1 &1618062727 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1618062728} - - component: {fileID: 1618062729} - m_Layer: 0 - m_Name: ItemRegistry - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1618062728 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1618062727} - serializedVersion: 2 - 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_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1618062729 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1618062727} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dcb8b502e5b94a72b37a6e77e4770d05, type: 3} - m_Name: - m_EditorClassIdentifier: Fruitomation::Fruitomation.Game.Items.ItemInfoRegistry - SerializedRegistry: {fileID: 11400000, guid: b518751a8b5ee0942af68ec87eeba0c5, type: 2} --- !u!1 &1740340057 GameObject: m_ObjectHideFlags: 0 @@ -2932,6 +2888,74 @@ MonoBehaviour: MenuItemPrefab: {fileID: 1541142508120997748, guid: 74aff4063df1fab4c954bebfad022ff5, type: 3} BuildingPrefabs: {fileID: 11400000, guid: e6ae3d283005f994da00a3d8835a3cb5, type: 2} +--- !u!1001 &2856219408887410068 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalPosition.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4528292146240613971, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_Name + value: ItemRegistry + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ab033116269e1b04a803e8de46580851, type: 3} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 @@ -2942,4 +2966,4 @@ SceneRoots: - {fileID: 1165634414} - {fileID: 525386540} - {fileID: 1935863238} - - {fileID: 1618062728} + - {fileID: 2856219408887410068} diff --git a/Assets/Scenes/UpgradesScene.unity b/Assets/Scenes/UpgradesScene.unity index 03515c7..d16dadc 100644 --- a/Assets/Scenes/UpgradesScene.unity +++ b/Assets/Scenes/UpgradesScene.unity @@ -119,6 +119,74 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} +--- !u!1001 &3823059 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalPosition.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3666462050572962762, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4528292146240613971, guid: ab033116269e1b04a803e8de46580851, + type: 3} + propertyPath: m_Name + value: ItemRegistry + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ab033116269e1b04a803e8de46580851, type: 3} --- !u!1 &17860577 GameObject: m_ObjectHideFlags: 0 @@ -1060,6 +1128,7 @@ MonoBehaviour: Inputs: 09000000 Outputs: 0a000000 Building: 3 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 306312747} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -1225,6 +1294,7 @@ MonoBehaviour: Inputs: Outputs: 05000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -1424,6 +1494,7 @@ MonoBehaviour: Inputs: 12000000 Outputs: 14000000 Building: 3 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1215656306} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -1704,6 +1775,7 @@ MonoBehaviour: Inputs: 1f000000 Outputs: 21000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 531797809} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -1873,6 +1945,7 @@ MonoBehaviour: Inputs: 07000000 Outputs: 1c000000 Building: 1 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 766041999} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -2117,6 +2190,7 @@ MonoBehaviour: Inputs: 01000000 Outputs: 09000000 Building: 1 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 946556767} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -2218,6 +2292,87 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 321845189} m_CullTransparentMesh: 1 +--- !u!1 &340945370 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 340945371} + - component: {fileID: 340945373} + - component: {fileID: 340945372} + m_Layer: 5 + m_Name: Board + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &340945371 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 340945370} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 803586395} + - {fileID: 1208945895} + - {fileID: 2020387924} + - {fileID: 644691423} + - {fileID: 625278903} + - {fileID: 1436452374} + m_Father: {fileID: 1551399098} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 1500, y: 1000} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &340945372 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 340945370} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image + 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: 21300000, guid: e76da6b4d6427e84097b6d764b9a91bf, type: 3} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 0.1 +--- !u!222 &340945373 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 340945370} + m_CullTransparentMesh: 1 --- !u!1 &391812062 GameObject: m_ObjectHideFlags: 0 @@ -2554,6 +2709,7 @@ MonoBehaviour: Inputs: 02000000 Outputs: 0e000000 Building: 3 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1077588040} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -2915,6 +3071,7 @@ MonoBehaviour: Inputs: 07000000 Outputs: 1d000000 Building: 4 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 766041999} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -3363,6 +3520,7 @@ MonoBehaviour: Inputs: 20000000 Outputs: 22000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 531797809} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -3528,6 +3686,7 @@ MonoBehaviour: Inputs: 06000000 Outputs: 1f00000020000000 Building: 7 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1805700036} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -3992,6 +4151,7 @@ MonoBehaviour: Inputs: 04000000 Outputs: 19000000 Building: 1 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1342376329} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -4255,6 +4415,85 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 598194534} m_CullTransparentMesh: 1 +--- !u!1 &625278902 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 625278903} + - component: {fileID: 625278905} + - component: {fileID: 625278904} + m_Layer: 5 + m_Name: Arrow2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &625278903 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 625278902} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 340945371} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 275, y: 175} + m_SizeDelta: {x: 200, y: 200} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &625278904 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 625278902} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Text + 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_FontData: + m_Font: {fileID: 12800000, guid: 25598a8975ed29243bb850b56f191920, type: 3} + m_FontSize: 200 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 2 + m_MaxSize: 300 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 1 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: -> +--- !u!222 &625278905 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 625278902} + m_CullTransparentMesh: 1 --- !u!1 &627575917 GameObject: m_ObjectHideFlags: 0 @@ -4334,6 +4573,85 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 627575917} m_CullTransparentMesh: 1 +--- !u!1 &644691422 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 644691423} + - component: {fileID: 644691425} + - component: {fileID: 644691424} + m_Layer: 5 + m_Name: Arrow1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &644691423 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 644691422} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 340945371} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -275, y: 175} + m_SizeDelta: {x: 200, y: 200} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &644691424 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 644691422} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Text + 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_FontData: + m_Font: {fileID: 12800000, guid: 25598a8975ed29243bb850b56f191920, type: 3} + m_FontSize: 200 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 2 + m_MaxSize: 300 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 1 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: -> +--- !u!222 &644691425 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 644691422} + m_CullTransparentMesh: 1 --- !u!1 &644778636 GameObject: m_ObjectHideFlags: 0 @@ -4557,6 +4875,7 @@ MonoBehaviour: Inputs: 02000000 Outputs: 0c000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1077588040} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -4761,6 +5080,7 @@ MonoBehaviour: Inputs: 1b0000001c0000001e00000019000000 Outputs: 25000000 Building: 5 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1552666745} - {fileID: 282988162} @@ -5171,6 +5491,7 @@ MonoBehaviour: Inputs: Outputs: 07000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -5336,6 +5657,7 @@ MonoBehaviour: Inputs: 140000001d000000 Outputs: 26000000 Building: 5 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 239945582} - {fileID: 471231064} @@ -5401,6 +5723,81 @@ RectTransform: m_AnchoredPosition: {x: -200, y: 200} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &803586394 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 803586395} + - component: {fileID: 803586397} + - component: {fileID: 803586396} + m_Layer: 5 + m_Name: Building + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &803586395 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 803586394} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 340945371} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 175} + m_SizeDelta: {x: 250, y: 250} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &803586396 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 803586394} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image + 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: 0} + 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 &803586397 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 803586394} + m_CullTransparentMesh: 1 --- !u!1 &819594999 GameObject: m_ObjectHideFlags: 0 @@ -6481,6 +6878,7 @@ MonoBehaviour: Inputs: Outputs: 01000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -6944,6 +7342,7 @@ MonoBehaviour: Inputs: 220000001d000000 Outputs: 27000000 Building: 5 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 528476489} - {fileID: 471231064} @@ -7119,6 +7518,7 @@ MonoBehaviour: Inputs: 15000000 Outputs: 18000000 Building: 6 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1812298575} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -7412,6 +7812,7 @@ MonoBehaviour: Inputs: Outputs: 02000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -7468,6 +7869,66 @@ RectTransform: m_AnchoredPosition: {x: 300, y: -300} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1208945894 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1208945895} + - component: {fileID: 1208945896} + m_Layer: 5 + m_Name: Inputs + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1208945895 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1208945894} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 340945371} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -450, y: 175} + m_SizeDelta: {x: 100, y: 475} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1208945896 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1208945894} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GridLayoutGroup + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 4 + m_StartCorner: 0 + m_StartAxis: 0 + m_CellSize: {x: 100, y: 100} + m_Spacing: {x: 0, y: 25} + m_Constraint: 0 + m_ConstraintCount: 2 --- !u!1 &1213257780 GameObject: m_ObjectHideFlags: 0 @@ -7647,6 +8108,7 @@ MonoBehaviour: Inputs: 03000000 Outputs: 1200000011000000 Building: 0 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1486581294} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -8439,6 +8901,7 @@ MonoBehaviour: Inputs: Outputs: 04000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -8471,6 +8934,7 @@ GameObject: - component: {fileID: 1369132766} - component: {fileID: 1369132768} - component: {fileID: 1369132767} + - component: {fileID: 1369132769} m_Layer: 5 m_Name: Overlay m_TagString: Untagged @@ -8485,12 +8949,12 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369132765} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + 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_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 1719094753} + m_Father: {fileID: 1551399098} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -8535,6 +8999,50 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369132765} m_CullTransparentMesh: 1 +--- !u!114 &1369132769 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1369132765} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button + 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: 0 + 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: 0} + 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: 1369132767} + m_OnClick: + m_PersistentCalls: + m_Calls: [] --- !u!1 &1377362334 GameObject: m_ObjectHideFlags: 0 @@ -8721,6 +9229,7 @@ MonoBehaviour: Inputs: 0c000000 Outputs: 0d000000 Building: 6 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 683605715} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -8778,6 +9287,85 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 500} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1436452373 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1436452374} + - component: {fileID: 1436452376} + - component: {fileID: 1436452375} + m_Layer: 5 + m_Name: SpawnerText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1436452374 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436452373} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 340945371} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -225, y: 175} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1436452375 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436452373} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Text + 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_FontData: + m_Font: {fileID: 12800000, guid: 25598a8975ed29243bb850b56f191920, type: 3} + m_FontSize: 200 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 2 + m_MaxSize: 300 + m_Alignment: 4 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 1 + m_VerticalOverflow: 1 + m_LineSpacing: 1 + m_Text: Spawner +--- !u!222 &1436452376 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1436452373} + m_CullTransparentMesh: 1 --- !u!1 &1449025482 GameObject: m_ObjectHideFlags: 0 @@ -8924,6 +9512,7 @@ MonoBehaviour: Inputs: 05000000 Outputs: 1a000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 218329192} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -9289,6 +9878,7 @@ MonoBehaviour: Inputs: Outputs: 03000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -9590,6 +10180,7 @@ MonoBehaviour: Inputs: 0b0000001a000000 Outputs: 23000000 Building: 5 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1992771926} - {fileID: 1449025487} @@ -9623,6 +10214,43 @@ MonoBehaviour: m_EffectColor: {r: 0.81960785, g: 0.5882353, b: 0.003921569, a: 1} m_EffectDistance: {x: 1, y: -1} m_UseGraphicAlpha: 1 +--- !u!1 &1551399097 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1551399098} + m_Layer: 5 + m_Name: Holder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1551399098 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1551399097} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1369132766} + - {fileID: 340945371} + m_Father: {fileID: 1719094753} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1552666740 GameObject: m_ObjectHideFlags: 0 @@ -9767,6 +10395,7 @@ MonoBehaviour: Inputs: 05000000 Outputs: 1b000000 Building: 1 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 218329192} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -10498,7 +11127,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1369132766} + - {fileID: 1551399098} m_Father: {fileID: 1601651585} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} @@ -10518,7 +11147,15 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e4c6a04234de4d38a0c2efa098d3aed3, type: 3} m_Name: m_EditorClassIdentifier: Fruitomation::Fruitomation.UI.UpgradeInfoBoard - BoardGO: {fileID: 1369132765} + BoardGO: {fileID: 1551399097} + ExitButtons: + - {fileID: 1369132769} + Registry: {fileID: 11400000, guid: e6ae3d283005f994da00a3d8835a3cb5, type: 2} + InputParent: {fileID: 1208945894} + OutputParent: {fileID: 2020387923} + BuildingDisplay: {fileID: 803586394} + LeftArrow: {fileID: 644691422} + SpawnerText: {fileID: 1436452373} --- !u!1 &1721077920 GameObject: m_ObjectHideFlags: 0 @@ -10663,6 +11300,7 @@ MonoBehaviour: Inputs: 08000000 Outputs: 1e000000 Building: 1 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 2128693475} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -10829,6 +11467,7 @@ MonoBehaviour: Inputs: 0a0000000e00000010000000 Outputs: 24000000 Building: 5 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 406517119} - {fileID: 216535976} @@ -11007,6 +11646,7 @@ MonoBehaviour: Inputs: 11000000 Outputs: 13000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1215656306} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -11172,6 +11812,7 @@ MonoBehaviour: Inputs: Outputs: 06000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -11336,6 +11977,7 @@ MonoBehaviour: Inputs: 04000000 Outputs: 1500000016000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1342376329} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -11502,6 +12144,7 @@ MonoBehaviour: Inputs: 16000000 Outputs: 17000000 Building: 4 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1812298575} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -11671,6 +12314,7 @@ MonoBehaviour: Inputs: 0f000000 Outputs: 10000000 Building: 3 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1836886870} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -11837,6 +12481,7 @@ MonoBehaviour: Inputs: 03000000 Outputs: 0f000000 Building: 1 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 1486581294} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -12311,6 +12956,7 @@ MonoBehaviour: Inputs: 01000000 Outputs: 0b000000 Building: 2 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: - {fileID: 946556767} LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} @@ -12337,6 +12983,66 @@ MonoBehaviour: m_EffectColor: {r: 0.81960785, g: 0.5882353, b: 0.003921569, a: 1} m_EffectDistance: {x: 1, y: -1} m_UseGraphicAlpha: 1 +--- !u!1 &2020387923 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2020387924} + - component: {fileID: 2020387925} + m_Layer: 5 + m_Name: Outputs + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2020387924 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2020387923} + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 340945371} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 450, y: 175} + m_SizeDelta: {x: 100, y: 225} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2020387925 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2020387923} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8a8695521f0d02e499659fee002a26c2, type: 3} + m_Name: + m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.GridLayoutGroup + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 4 + m_StartCorner: 0 + m_StartAxis: 0 + m_CellSize: {x: 100, y: 100} + m_Spacing: {x: 0, y: 25} + m_Constraint: 0 + m_ConstraintCount: 2 --- !u!1 &2069879632 GameObject: m_ObjectHideFlags: 0 @@ -12702,6 +13408,7 @@ MonoBehaviour: Inputs: Outputs: 08000000 Building: 8 + UpgradeBoard: {fileID: 1719094754} RequiredUpgrades: [] LineMaterial: {fileID: 2100000, guid: eb8c84c9b7bce8f4ab2641ccf50d239c, type: 2} Lines: [] @@ -13027,3 +13734,4 @@ SceneRoots: - {fileID: 475841624} - {fileID: 1601651585} - {fileID: 1630531059} + - {fileID: 3823059} diff --git a/Assets/Scripts/UI/BasicUpgradeButton.cs b/Assets/Scripts/UI/BasicUpgradeButton.cs index d9b818f..a533260 100644 --- a/Assets/Scripts/UI/BasicUpgradeButton.cs +++ b/Assets/Scripts/UI/BasicUpgradeButton.cs @@ -106,20 +106,15 @@ namespace Fruitomation.UI UpgradeLines = lines.ToArray(); } - private void OnButtonClicked() - { - if (Cost == 0f) - { - Debug.LogWarning("Upgrade Cost has not been set"); - return; - } - - if (MoneyController.CanBuy(Cost)) - { - UpgradeManager.Unlock(Upgrade); - } - } - + private void OnButtonClicked() => UpgradeBoard.Enable + ( + Upgrade, + Inputs, + Outputs, + Building, + Cost + ); + private bool IsUnlockable => RequiredUpgrades.Length == 0 || RequiredUpgrades.All(required => required.IsUnlocked); @@ -170,7 +165,8 @@ namespace Fruitomation.UI State = UpgradeState.Hidden; } - AttachedButton.interactable = State == UpgradeState.Unlockable; + AttachedButton.interactable = + State is UpgradeState.Unlockable or UpgradeState.Unlocked; string cost = Cost == 0f ? "UNAVAILABLE" : $"{Cost:F1}"; diff --git a/Assets/Scripts/UI/UpgradeInfoBoard.cs b/Assets/Scripts/UI/UpgradeInfoBoard.cs index 9719e57..667971b 100644 --- a/Assets/Scripts/UI/UpgradeInfoBoard.cs +++ b/Assets/Scripts/UI/UpgradeInfoBoard.cs @@ -1,22 +1,105 @@ -using UnityEngine; +using System.Collections.Generic; +using Fruitomation.Game.Items; +using Fruitomation.Game; +using UnityEngine.UI; +using UnityEngine; namespace Fruitomation.UI { public class UpgradeInfoBoard : MonoBehaviour { [SerializeField] private GameObject BoardGO; + [SerializeField] private Button[] ExitButtons; + [SerializeField] private BuildingRegistry Registry; + [SerializeField] private GameObject InputParent; + [SerializeField] private GameObject OutputParent; + [SerializeField] private GameObject BuildingDisplay; + [SerializeField] private GameObject LeftArrow; + [SerializeField] private GameObject SpawnerText; + private readonly Dictionary BuildingRegistry = new(); + private readonly List ChildrenToKill = new(); + private void Start() { BoardGO.SetActive(false); + foreach (Button b in ExitButtons) + { + b.onClick.AddListener(Disable); + } + + foreach (BuildingRegistry.BuildingInfo info in Registry.GetBuildings()) + { + if (info.Type != AutomationBuildingType.None) + { + BuildingRegistry.Add(info.Type, info.Prefab); + } + } } - public void Enable() + public void Enable + ( + BasicUpgrade upgrade, + ItemType[] inputs, + ItemType[] outputs, + AutomationBuildingType building, + double cost + ) + // Wow, those function params are horrible { + BoardGO.SetActive(true); + foreach (ItemType input in inputs) + { + ItemInfo info = ItemInfoRegistry.Get(input); + GameObject go = Instantiate(info.Prefab, InputParent.transform); + ChildrenToKill.Add(go); + } + + foreach (ItemType output in outputs) + { + ItemInfo info = ItemInfoRegistry.Get(output); + GameObject go = Instantiate(info.Prefab, OutputParent.transform); + ChildrenToKill.Add(go); + } + + if (building != AutomationBuildingType.Spawner) + { + BuildingDisplay.SetActive(true); + LeftArrow.SetActive(true); + SpawnerText.SetActive(false); + + Sprite sprite = BuildingRegistry[building].GetComponent().Sprite; + BuildingDisplay.GetComponent().sprite = sprite; + + if (building == AutomationBuildingType.HeatExchanger) + { + RectTransform rt = BuildingDisplay.GetComponent(); + rt.sizeDelta = new Vector2(125f, 250f); + } + + else + { + RectTransform rt = BuildingDisplay.GetComponent(); + rt.sizeDelta = new Vector2(250f, 250f); + } + } + + else + { + BuildingDisplay.SetActive(false); + LeftArrow.SetActive(false); + SpawnerText.SetActive(true); + } } - public void Disable() + private void Disable() { + BoardGO.SetActive(false); + foreach (GameObject child in ChildrenToKill) + { + Destroy(child); + } + ChildrenToKill.Clear(); } } -} \ No newline at end of file +}