Scriptable Objects + Upgrade Menu

This commit is contained in:
Sewmina
2022-04-05 03:42:52 +05:30
parent c5c5693078
commit 525d1da14a
18 changed files with 1283 additions and 758 deletions

View File

@@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.45073426, g: 0.50068, b: 0.57484144, a: 1}
m_IndirectSpecularColor: {r: 0.44809502, g: 0.49735945, b: 0.5722, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@@ -7067,7 +7067,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b71079c276d1984cd82ae7c982fe5ca7, type: 3}
m_Name:
m_EditorClassIdentifier:
buildingName: Green House
buildingData: {fileID: 11400000, guid: 877632c6c68b29db29d24a00ca56d609, type: 2}
outline: {fileID: 0}
--- !u!114 &86460255
MonoBehaviour:
@@ -11361,7 +11361,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b71079c276d1984cd82ae7c982fe5ca7, type: 3}
m_Name:
m_EditorClassIdentifier:
buildingName: Green House
buildingData: {fileID: 11400000, guid: 877632c6c68b29db29d24a00ca56d609, type: 2}
outline: {fileID: 0}
--- !u!114 &126845492
MonoBehaviour:
@@ -14722,7 +14722,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b71079c276d1984cd82ae7c982fe5ca7, type: 3}
m_Name:
m_EditorClassIdentifier:
buildingName: Research Facility
buildingData: {fileID: 11400000, guid: a6aea54cb5f332beba1de43509d49476, type: 2}
outline: {fileID: 0}
--- !u!114 &169492417
MonoBehaviour:
@@ -39004,7 +39004,19 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 1377611198}
m_OnClick:
m_PersistentCalls:
m_Calls: []
m_Calls:
- m_Target: {fileID: 1520608584}
m_TargetAssemblyTypeName: UnityEngine.GameObject, UnityEngine
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &476482849
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -58357,7 +58369,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b71079c276d1984cd82ae7c982fe5ca7, type: 3}
m_Name:
m_EditorClassIdentifier:
buildingName: Communication Center
buildingData: {fileID: 11400000, guid: 3f14a9fbb66d4461eabb30a42aa5007a, type: 2}
outline: {fileID: 0}
--- !u!114 &735782556
MonoBehaviour:
@@ -62372,6 +62384,85 @@ PrefabInstance:
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 4ff40d720daca1343be2d17c79b68285, type: 3}
--- !u!1 &782802644
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 782802645}
- component: {fileID: 782802647}
- component: {fileID: 782802646}
m_Layer: 5
m_Name: Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &782802645
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 782802644}
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: 1992627680}
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 &782802646
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 782802644}
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: 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: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 13
m_FontStyle: 1
m_BestFit: 0
m_MinSize: 10
m_MaxSize: 40
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: UPGRADE
--- !u!222 &782802647
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 782802644}
m_CullTransparentMesh: 1
--- !u!1001 &782940793
PrefabInstance:
m_ObjectHideFlags: 0
@@ -101057,7 +101148,19 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 1146292284}
m_OnClick:
m_PersistentCalls:
m_Calls: []
m_Calls:
- m_Target: {fileID: 1218845502}
m_TargetAssemblyTypeName: UnityEngine.GameObject, UnityEngine
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1259037935
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -101112,13 +101215,14 @@ GameObject:
- component: {fileID: 1259426725}
- component: {fileID: 1259426727}
- component: {fileID: 1259426726}
- component: {fileID: 1259426728}
m_Layer: 5
m_Name: Selected Item
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
m_IsActive: 1
--- !u!224 &1259426725
RectTransform:
m_ObjectHideFlags: 0
@@ -101131,6 +101235,7 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 1480392898}
- {fileID: 1992627680}
m_Father: {fileID: 1669511118}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -101177,6 +101282,30 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1259426724}
m_CullTransparentMesh: 1
--- !u!114 &1259426728
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1259426724}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6abc3c74e694775039c22bf2106e989e, type: 3}
m_Name:
m_EditorClassIdentifier:
nameTxt: {fileID: 1480392899}
upgradeBtn: {fileID: 1992627681}
menus:
- menuObject: {fileID: 1218845502}
relatedBuildings:
- {fileID: 11400000, guid: 3f14a9fbb66d4461eabb30a42aa5007a, type: 2}
- menuObject: {fileID: 1520608584}
relatedBuildings:
- {fileID: 11400000, guid: a6aea54cb5f332beba1de43509d49476, type: 2}
- menuObject: {fileID: 788098224}
relatedBuildings:
- {fileID: 11400000, guid: 877632c6c68b29db29d24a00ca56d609, type: 2}
--- !u!4 &1259898503 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4322694313257492, guid: 5b7c91a625e35744c9263b8194bb306c, type: 3}
@@ -145027,7 +145156,19 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 60551409}
m_OnClick:
m_PersistentCalls:
m_Calls: []
m_Calls:
- m_Target: {fileID: 788098224}
m_TargetAssemblyTypeName: UnityEngine.GameObject, UnityEngine
m_MethodName: SetActive
m_Mode: 6
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1852250967
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -155573,6 +155714,127 @@ PrefabInstance:
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: a4c38c065f2dc8a4b85aca89ac86b15e, type: 3}
--- !u!1 &1992627679
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1992627680}
- component: {fileID: 1992627683}
- component: {fileID: 1992627682}
- component: {fileID: 1992627681}
m_Layer: 5
m_Name: UpgradeBtn
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1992627680
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1992627679}
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: 782802645}
m_Father: {fileID: 1259426725}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 1, y: 0}
m_AnchorMax: {x: 1, y: 0}
m_AnchoredPosition: {x: -58.2, y: 21.7}
m_SizeDelta: {x: 95.8, y: 30}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1992627681
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1992627679}
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: 1
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: 1992627682}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!114 &1992627682
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1992627679}
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: 0.30347908, g: 0.6415094, b: 0.2753649, 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: 10905, guid: 0000000000000000f000000000000000, type: 0}
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: 1
--- !u!222 &1992627683
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1992627679}
m_CullTransparentMesh: 1
--- !u!1001 &1993033666
PrefabInstance:
m_ObjectHideFlags: 0

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f7c303ff2b548ed11b2cf1d10a7b2187
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f0b47dea2cdff1a7f8ceb414b9011549
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,15 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0f0adcd9d9fe1cd78b1cc91fd454aa46, type: 3}
m_Name: Communication Center
m_EditorClassIdentifier:
buildingName: Communication Center

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3f14a9fbb66d4461eabb30a42aa5007a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,15 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0f0adcd9d9fe1cd78b1cc91fd454aa46, type: 3}
m_Name: Greenhouse
m_EditorClassIdentifier:
buildingName: Greenhouse

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 877632c6c68b29db29d24a00ca56d609
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,15 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0f0adcd9d9fe1cd78b1cc91fd454aa46, type: 3}
m_Name: Research Facility
m_EditorClassIdentifier:
buildingName: Research Facility

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a6aea54cb5f332beba1de43509d49476
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -4,7 +4,7 @@ using UnityEngine;
public class Building : MonoBehaviour
{
public string buildingName;
public BuildingData buildingData;
public Outline outline;
void Awake(){
@@ -17,21 +17,8 @@ public class Building : MonoBehaviour
if(Selector.selectedBuilding == null){outline.enabled=false; return;}
outline.enabled = Selector.selectedBuilding == this;
Debug.Log(buildingName); // this function debugs 4 names and not always the one u clicked.
// SetRightUpgradeButton(); // function to let the button know what menu to open, also runs 4+ times.
// Debug.Log(buildingName);
}
/* void SetRightUpgradeButton(){
switch (buildingName)
{
case "Research Facility":
Debug.Log("research facility menu");
break;
case "Green House":
Debug.Log("green house menu");
break;
}
} */
/* */
}

View File

@@ -0,0 +1,7 @@
using UnityEngine;
[CreateAssetMenu(fileName = "Building01", menuName = "GameData/BuildingData", order = 1)]
public class BuildingData : ScriptableObject
{
public string buildingName;
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0f0adcd9d9fe1cd78b1cc91fd454aa46
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,31 @@
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SelectedItemMenu : MonoBehaviour
{
public Text nameTxt;
public Button upgradeBtn;
public UpgradeMenuItem[] menus;
void Start()
{
upgradeBtn.onClick.AddListener(OnUpgradeClicked);
}
void OnUpgradeClicked(){
//int relatedMenuIndex = -1;
for(int i = 0; i < menus.Length; i++){
menus[i].menuObject.SetActive(menus[i].relatedBuildings.Contains(Selector.selectedBuilding.buildingData));
}
}
}
[System.Serializable]
public class UpgradeMenuItem{
public GameObject menuObject;
public List<BuildingData> relatedBuildings;
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6abc3c74e694775039c22bf2106e989e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -18,7 +18,7 @@ public class WorldItemSelector : MonoBehaviour
if(Physics.Raycast(ray,out hit, Mathf.Infinity, layerMask)){
Building selectedB = hit.collider.GetComponent<Building>();
if(selectedB!=null){
Debug.Log("Selected building : " + selectedB.buildingName);
Debug.Log("Selected building : " + selectedB.buildingData.buildingName);
Selector.selectBuilding(selectedB);
}else{
Debug.Log("No target here, Unselecting");
@@ -32,8 +32,20 @@ public class WorldItemSelector : MonoBehaviour
public void RefreshUI(){
selectedItemUI.gameObject.SetActive(Selector.selectedBuilding !=null);
if(Selector.selectedBuilding!=null){
selectedItemUI.GetChild(0).GetComponent<Text>().text = Selector.selectedBuilding.buildingName;
selectedItemUI.GetChild(0).GetComponent<Text>().text = Selector.selectedBuilding.buildingData.buildingName;
}
// switch (Selector.selectedBuilding.buildingData.buildingName)
// {
// case "Research Facility":
// Debug.Log("research facility menu");
// break;
// case "Green House":
// Debug.Log("green house menu");
// break;
// }
}