diff --git a/Assets/Buildings.meta b/Assets/Buildings.meta new file mode 100644 index 0000000..b7c2510 --- /dev/null +++ b/Assets/Buildings.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fce3eeaed7a7dca4c9d070d0898a53b7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Buildings.meta b/Assets/Buildings/Prefabs.meta similarity index 100% rename from Assets/Prefabs/Buildings.meta rename to Assets/Buildings/Prefabs.meta diff --git a/Assets/Prefabs/Buildings/House.prefab b/Assets/Buildings/Prefabs/House Building.prefab similarity index 88% rename from Assets/Prefabs/Buildings/House.prefab rename to Assets/Buildings/Prefabs/House Building.prefab index 7692ce4..3069a7d 100644 --- a/Assets/Prefabs/Buildings/House.prefab +++ b/Assets/Buildings/Prefabs/House Building.prefab @@ -12,7 +12,6 @@ GameObject: - component: {fileID: 5984078921890859602} - component: {fileID: 3215530432599005050} - component: {fileID: 4737916247134474313} - - component: {fileID: 4552884677486152052} m_Layer: 7 m_Name: HouseCube m_TagString: Untagged @@ -97,22 +96,6 @@ BoxCollider: serializedVersion: 2 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} ---- !u!54 &4552884677486152052 -Rigidbody: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1795195828905777770} - serializedVersion: 2 - m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 - m_UseGravity: 1 - m_IsKinematic: 0 - m_Interpolate: 0 - m_Constraints: 126 - m_CollisionDetection: 0 --- !u!1 &3752104966216439849 GameObject: m_ObjectHideFlags: 0 @@ -232,9 +215,8 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 494189295979627311} - - component: {fileID: 7337432708349338768} m_Layer: 0 - m_Name: House + m_Name: House Building m_TagString: Building m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -256,18 +238,3 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &7337432708349338768 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5179206290616997027} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 255558bfba6648641822c24b4555e7db, type: 3} - m_Name: - m_EditorClassIdentifier: - title: House - description: A place for people to live in. - buildingType: 0 diff --git a/Assets/Prefabs/Buildings/House.prefab.meta b/Assets/Buildings/Prefabs/House Building.prefab.meta similarity index 100% rename from Assets/Prefabs/Buildings/House.prefab.meta rename to Assets/Buildings/Prefabs/House Building.prefab.meta diff --git a/Assets/Buildings/Prefabs/House.prefab b/Assets/Buildings/Prefabs/House.prefab new file mode 100644 index 0000000..898b016 --- /dev/null +++ b/Assets/Buildings/Prefabs/House.prefab @@ -0,0 +1,50 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4901317751200666248 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4901317751200666250} + - component: {fileID: 4901317751200666251} + m_Layer: 0 + m_Name: House + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4901317751200666250 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4901317751200666248} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 51.932487, y: -38.20021, z: 101.11867} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4901317751200666251 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4901317751200666248} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 255558bfba6648641822c24b4555e7db, type: 3} + m_Name: + m_EditorClassIdentifier: + title: New Building + description: A cool new building + buildingPrefab: {fileID: 5179206290616997027, guid: 613866d46c759a848b2a462973745a74, type: 3} + blueprintPrefab: {fileID: 194332003443584216, guid: 1c0b2ac83b1c14641b7e9eee6c5776b3, type: 3} + buildingType: 0 diff --git a/Assets/Scripts/Building/TestHouse.prefab.meta b/Assets/Buildings/Prefabs/House.prefab.meta similarity index 74% rename from Assets/Scripts/Building/TestHouse.prefab.meta rename to Assets/Buildings/Prefabs/House.prefab.meta index a978582..578ceb9 100644 --- a/Assets/Scripts/Building/TestHouse.prefab.meta +++ b/Assets/Buildings/Prefabs/House.prefab.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: bfe47c8c98918254086591539306d4fa +guid: f252be72396a4f44eab8293961433834 PrefabImporter: externalObjects: {} userData: diff --git a/Assets/Prefabs/Buildings/HouseBlueprint.prefab b/Assets/Buildings/Prefabs/HouseBlueprint.prefab similarity index 91% rename from Assets/Prefabs/Buildings/HouseBlueprint.prefab rename to Assets/Buildings/Prefabs/HouseBlueprint.prefab index 64b1936..bf87f30 100644 --- a/Assets/Prefabs/Buildings/HouseBlueprint.prefab +++ b/Assets/Buildings/Prefabs/HouseBlueprint.prefab @@ -9,8 +9,9 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 4866682319586851668} - - component: {fileID: 3311111595986389378} - component: {fileID: 4142088092775269754} + - component: {fileID: 4219964456720474220} + - component: {fileID: 3908476914609466742} m_Layer: 9 m_Name: HouseBlueprint m_TagString: Building @@ -34,22 +35,6 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &3311111595986389378 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 194332003443584216} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6d49e2868fa536c4fac8ec278501f38b, type: 3} - m_Name: - m_EditorClassIdentifier: - isColliding: 0 - constructionPrefab: {fileID: 4975262029746308050, guid: f33a8569297837340a0e2ff7f85847a8, type: 3} - collisionMat: {fileID: 2100000, guid: a1e8fb1ea637c0e45bed70dd7d1feaab, type: 2} - blueprintMat: {fileID: 2100000, guid: 78d3985cb7b88204b930cd05567c0c61, type: 2} --- !u!65 &4142088092775269754 BoxCollider: m_ObjectHideFlags: 0 @@ -58,11 +43,41 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 194332003443584216} m_Material: {fileID: 0} - m_IsTrigger: 0 + m_IsTrigger: 1 m_Enabled: 1 serializedVersion: 2 m_Size: {x: 65.011826, y: 40.389984, z: 21.721184} m_Center: {x: 0.12955377, y: 1.3417872, z: -0.1813599} +--- !u!114 &4219964456720474220 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 194332003443584216} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76f9b3b57e22ab047b8f95bcb552289a, type: 3} + m_Name: + m_EditorClassIdentifier: + collisionMat: {fileID: 2100000, guid: a1e8fb1ea637c0e45bed70dd7d1feaab, type: 2} + blueprintMat: {fileID: 2100000, guid: 78d3985cb7b88204b930cd05567c0c61, type: 2} +--- !u!54 &3908476914609466742 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 194332003443584216} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 1 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 126 + m_CollisionDetection: 0 --- !u!1 &6754144191350989329 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Prefabs/Buildings/HouseBlueprint.prefab.meta b/Assets/Buildings/Prefabs/HouseBlueprint.prefab.meta similarity index 100% rename from Assets/Prefabs/Buildings/HouseBlueprint.prefab.meta rename to Assets/Buildings/Prefabs/HouseBlueprint.prefab.meta diff --git a/Assets/Prefabs/Buildings/HouseConstruction.prefab b/Assets/Buildings/Prefabs/HouseConstruction.prefab similarity index 100% rename from Assets/Prefabs/Buildings/HouseConstruction.prefab rename to Assets/Buildings/Prefabs/HouseConstruction.prefab diff --git a/Assets/Prefabs/Buildings/HouseConstruction.prefab.meta b/Assets/Buildings/Prefabs/HouseConstruction.prefab.meta similarity index 100% rename from Assets/Prefabs/Buildings/HouseConstruction.prefab.meta rename to Assets/Buildings/Prefabs/HouseConstruction.prefab.meta diff --git a/Assets/Prefabs/Buildings/Warehouse.meta b/Assets/Buildings/Prefabs/Warehouse.meta similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse.meta rename to Assets/Buildings/Prefabs/Warehouse.meta diff --git a/Assets/Prefabs/Buildings/Warehouse/Warehouse_1_building.prefab b/Assets/Buildings/Prefabs/Warehouse/Warehouse_1_building.prefab similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse/Warehouse_1_building.prefab rename to Assets/Buildings/Prefabs/Warehouse/Warehouse_1_building.prefab diff --git a/Assets/Prefabs/Buildings/Warehouse/Warehouse_1_building.prefab.meta b/Assets/Buildings/Prefabs/Warehouse/Warehouse_1_building.prefab.meta similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse/Warehouse_1_building.prefab.meta rename to Assets/Buildings/Prefabs/Warehouse/Warehouse_1_building.prefab.meta diff --git a/Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_blueprint.prefab b/Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_blueprint.prefab similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_blueprint.prefab rename to Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_blueprint.prefab diff --git a/Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_blueprint.prefab.meta b/Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_blueprint.prefab.meta similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_blueprint.prefab.meta rename to Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_blueprint.prefab.meta diff --git a/Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_construction.prefab b/Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_construction.prefab similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_construction.prefab rename to Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_construction.prefab diff --git a/Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_construction.prefab.meta b/Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_construction.prefab.meta similarity index 100% rename from Assets/Prefabs/Buildings/Warehouse/Warehouse_level_1_construction.prefab.meta rename to Assets/Buildings/Prefabs/Warehouse/Warehouse_level_1_construction.prefab.meta diff --git a/Assets/Scripts/Building.meta b/Assets/Buildings/Scripts.meta similarity index 100% rename from Assets/Scripts/Building.meta rename to Assets/Buildings/Scripts.meta diff --git a/Assets/Buildings/Scripts/Building.cs b/Assets/Buildings/Scripts/Building.cs new file mode 100644 index 0000000..2f15c7c --- /dev/null +++ b/Assets/Buildings/Scripts/Building.cs @@ -0,0 +1,39 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public abstract class Building : MonoBehaviour +{ + public string title = "New Building"; + public string description = "A cool new building"; + [SerializeField] private GameObject buildingPrefab; + [SerializeField] private GameObject blueprintPrefab; + + + public abstract void OnStartUp(); + public enum BuildingType + { + Housing, + Storage, + Decoration + } + + public BuildingType buildingType; + + private void Start() + { + GameObject blueprint = Instantiate(blueprintPrefab); + blueprint.transform.parent = gameObject.transform; + + OnStartUp(); + } + + public void Place(Transform t) + { + GameObject building = Instantiate(buildingPrefab); + building.transform.position = t.position; + building.transform.rotation = t.rotation; + building.transform.parent = gameObject.transform; + } + +} diff --git a/Assets/Scripts/Building/Building.cs.meta b/Assets/Buildings/Scripts/Building.cs.meta similarity index 100% rename from Assets/Scripts/Building/Building.cs.meta rename to Assets/Buildings/Scripts/Building.cs.meta diff --git a/Assets/Scripts/Building/BuildingBlueprint.cs b/Assets/Buildings/Scripts/BuildingBlueprint.cs similarity index 80% rename from Assets/Scripts/Building/BuildingBlueprint.cs rename to Assets/Buildings/Scripts/BuildingBlueprint.cs index 0e6c30f..b6331f0 100644 --- a/Assets/Scripts/Building/BuildingBlueprint.cs +++ b/Assets/Buildings/Scripts/BuildingBlueprint.cs @@ -32,7 +32,7 @@ public class BuildingBlueprint : MonoBehaviour if (isColliding) { Debug.Log("Collision"); - MeshRenderer[] mr = gameObject.GetComponent().FindChildByTag("Blueprint").GetComponentsInChildren(); + MeshRenderer[] mr = gameObject.GetComponentsInChildren(); foreach (MeshRenderer r in mr) { r.material = collisionMat; @@ -41,7 +41,7 @@ public class BuildingBlueprint : MonoBehaviour } else { - MeshRenderer[] mr = gameObject.GetComponent().FindChildByTag("Blueprint").GetComponentsInChildren(); + MeshRenderer[] mr = gameObject.GetComponentsInChildren(); foreach (MeshRenderer r in mr) { r.material = blueprintMat; @@ -52,14 +52,16 @@ public class BuildingBlueprint : MonoBehaviour //PLACE if (Input.GetMouseButtonDown(0) && !isColliding) { - gameObject.GetComponent().EndBlueprint(true); + gameObject.transform.parent.gameObject.GetComponent().Place(transform); hud.enabled = true; + Destroy(gameObject); + } if (Input.GetButtonDown("Build")) { - gameObject.GetComponent().EndBlueprint(false); hud.enabled = true; + Destroy(gameObject); } } @@ -114,17 +116,27 @@ public class BuildingBlueprint : MonoBehaviour //Collision public void OnTriggerEnter(Collider other) { - isColliding = true; + if(!(other.transform.tag == "Terrain")) + { + isColliding = true; + } + Debug.Log("Colliding True"); } public void OnTriggerStay(Collider other) { - isColliding = true; + if (!(other.transform.tag == "Terrain")) + { + isColliding = true; + } Debug.Log("Colliding True"); } public void OnTriggerExit(Collider other) { - isColliding = false; + if (!(other.transform.tag == "Terrain")) + { + isColliding = false; + } Debug.Log("Colliding False"); } } diff --git a/Assets/Scripts/Building/BuildingBlueprint.cs.meta b/Assets/Buildings/Scripts/BuildingBlueprint.cs.meta similarity index 100% rename from Assets/Scripts/Building/BuildingBlueprint.cs.meta rename to Assets/Buildings/Scripts/BuildingBlueprint.cs.meta diff --git a/Assets/Scripts/Building/BuildingConstruction.cs b/Assets/Buildings/Scripts/BuildingConstruction.cs similarity index 100% rename from Assets/Scripts/Building/BuildingConstruction.cs rename to Assets/Buildings/Scripts/BuildingConstruction.cs diff --git a/Assets/Scripts/Building/BuildingConstruction.cs.meta b/Assets/Buildings/Scripts/BuildingConstruction.cs.meta similarity index 100% rename from Assets/Scripts/Building/BuildingConstruction.cs.meta rename to Assets/Buildings/Scripts/BuildingConstruction.cs.meta diff --git a/Assets/Scripts/Building/BuildingPlacement.cs b/Assets/Buildings/Scripts/BuildingPlacement.cs similarity index 100% rename from Assets/Scripts/Building/BuildingPlacement.cs rename to Assets/Buildings/Scripts/BuildingPlacement.cs diff --git a/Assets/Scripts/Building/BuildingPlacement.cs.meta b/Assets/Buildings/Scripts/BuildingPlacement.cs.meta similarity index 100% rename from Assets/Scripts/Building/BuildingPlacement.cs.meta rename to Assets/Buildings/Scripts/BuildingPlacement.cs.meta diff --git a/Assets/Scripts/Building/Buildings.meta b/Assets/Buildings/Scripts/Buildings.meta similarity index 100% rename from Assets/Scripts/Building/Buildings.meta rename to Assets/Buildings/Scripts/Buildings.meta diff --git a/Assets/Scripts/Building/Buildings/House.meta b/Assets/Buildings/Scripts/Buildings/House.meta similarity index 100% rename from Assets/Scripts/Building/Buildings/House.meta rename to Assets/Buildings/Scripts/Buildings/House.meta diff --git a/Assets/Scripts/Building/Buildings/House/HouseBuildingScript.cs b/Assets/Buildings/Scripts/Buildings/House/HouseBuildingScript.cs similarity index 100% rename from Assets/Scripts/Building/Buildings/House/HouseBuildingScript.cs rename to Assets/Buildings/Scripts/Buildings/House/HouseBuildingScript.cs diff --git a/Assets/Scripts/Building/Buildings/House/HouseBuildingScript.cs.meta b/Assets/Buildings/Scripts/Buildings/House/HouseBuildingScript.cs.meta similarity index 100% rename from Assets/Scripts/Building/Buildings/House/HouseBuildingScript.cs.meta rename to Assets/Buildings/Scripts/Buildings/House/HouseBuildingScript.cs.meta diff --git a/Assets/Scripts/Building/Buildings/House/HouseConstruction.cs b/Assets/Buildings/Scripts/Buildings/House/HouseConstruction.cs similarity index 100% rename from Assets/Scripts/Building/Buildings/House/HouseConstruction.cs rename to Assets/Buildings/Scripts/Buildings/House/HouseConstruction.cs diff --git a/Assets/Scripts/Building/Buildings/House/HouseConstruction.cs.meta b/Assets/Buildings/Scripts/Buildings/House/HouseConstruction.cs.meta similarity index 100% rename from Assets/Scripts/Building/Buildings/House/HouseConstruction.cs.meta rename to Assets/Buildings/Scripts/Buildings/House/HouseConstruction.cs.meta diff --git a/Assets/Scripts/Building/Buildings/Warehouse.meta b/Assets/Buildings/Scripts/Buildings/Warehouse.meta similarity index 100% rename from Assets/Scripts/Building/Buildings/Warehouse.meta rename to Assets/Buildings/Scripts/Buildings/Warehouse.meta diff --git a/Assets/Scripts/Building/Buildings/Warehouse/WarehouseBuilding.cs b/Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseBuilding.cs similarity index 100% rename from Assets/Scripts/Building/Buildings/Warehouse/WarehouseBuilding.cs rename to Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseBuilding.cs diff --git a/Assets/Scripts/Building/Buildings/Warehouse/WarehouseBuilding.cs.meta b/Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseBuilding.cs.meta similarity index 100% rename from Assets/Scripts/Building/Buildings/Warehouse/WarehouseBuilding.cs.meta rename to Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseBuilding.cs.meta diff --git a/Assets/Scripts/Building/Buildings/Warehouse/WarehouseConstruction.cs b/Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseConstruction.cs similarity index 100% rename from Assets/Scripts/Building/Buildings/Warehouse/WarehouseConstruction.cs rename to Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseConstruction.cs diff --git a/Assets/Scripts/Building/Buildings/Warehouse/WarehouseConstruction.cs.meta b/Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseConstruction.cs.meta similarity index 100% rename from Assets/Scripts/Building/Buildings/Warehouse/WarehouseConstruction.cs.meta rename to Assets/Buildings/Scripts/Buildings/Warehouse/WarehouseConstruction.cs.meta diff --git a/Assets/Scripts/Building/InfoSign.cs b/Assets/Buildings/Scripts/InfoSign.cs similarity index 100% rename from Assets/Scripts/Building/InfoSign.cs rename to Assets/Buildings/Scripts/InfoSign.cs diff --git a/Assets/Scripts/Building/InfoSign.cs.meta b/Assets/Buildings/Scripts/InfoSign.cs.meta similarity index 100% rename from Assets/Scripts/Building/InfoSign.cs.meta rename to Assets/Buildings/Scripts/InfoSign.cs.meta diff --git a/Assets/Scripts/Building/Types.meta b/Assets/Buildings/Scripts/Types.meta similarity index 100% rename from Assets/Scripts/Building/Types.meta rename to Assets/Buildings/Scripts/Types.meta diff --git a/Assets/Scripts/Building/Types/StorageBuilding.cs b/Assets/Buildings/Scripts/Types/StorageBuilding.cs similarity index 100% rename from Assets/Scripts/Building/Types/StorageBuilding.cs rename to Assets/Buildings/Scripts/Types/StorageBuilding.cs diff --git a/Assets/Scripts/Building/Types/StorageBuilding.cs.meta b/Assets/Buildings/Scripts/Types/StorageBuilding.cs.meta similarity index 100% rename from Assets/Scripts/Building/Types/StorageBuilding.cs.meta rename to Assets/Buildings/Scripts/Types/StorageBuilding.cs.meta diff --git a/Assets/Scripts/Building/Building.cs b/Assets/Scripts/Building/Building.cs deleted file mode 100644 index a9eff5c..0000000 --- a/Assets/Scripts/Building/Building.cs +++ /dev/null @@ -1,62 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public abstract class Building : MonoBehaviour -{ - public string title = "New Building"; - public string description = "A cool new building"; - public Material blueprintMat; - public Material collisionMat; - - - public abstract void OnStartUp(); - public enum BuildingType - { - Housing, - Storage, - Decoration - } - - public BuildingType buildingType; - - private void Start() - { - gameObject.AddComponent(); - - gameObject.GetComponent().blueprintMat = blueprintMat; - gameObject.GetComponent().collisionMat = collisionMat; - - FindChildByTag("Building").SetActive(false); - FindChildByTag("Blueprint").SetActive(true); - - OnStartUp(); - } - - public void EndBlueprint(bool place = false) - { - if (place) - { - FindChildByTag("Blueprint").SetActive(false); - FindChildByTag("Building").SetActive(true); - Destroy(gameObject.GetComponent()); - } - else - { - Destroy(gameObject); - } - } - - public GameObject FindChildByTag(string tag) - { - foreach(Transform child in gameObject.transform) - { - if(child.tag == tag) - { - return child.gameObject; - } - } - - return null; - } -} diff --git a/Assets/Scripts/Building/TestHouse.prefab b/Assets/Scripts/Building/TestHouse.prefab deleted file mode 100644 index d75616d..0000000 --- a/Assets/Scripts/Building/TestHouse.prefab +++ /dev/null @@ -1,517 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &5360703792772738077 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703792772738076} - - component: {fileID: 5360703792772738078} - - component: {fileID: 5360703792772738079} - m_Layer: 9 - m_Name: HouseCube - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703792772738076 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703792772738077} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 64.59468, y: 44, z: 20.101233} - m_Children: [] - m_Father: {fileID: 5360703793539700796} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &5360703792772738078 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703792772738077} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &5360703792772738079 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703792772738077} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: 78d3985cb7b88204b930cd05567c0c61, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!1 &5360703793236804447 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703793236804446} - - component: {fileID: 5360703793236804450} - - component: {fileID: 5360703793236804451} - m_Layer: 7 - m_Name: HouseCube - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703793236804446 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793236804447} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 64.59468, y: 44, z: 20.101233} - m_Children: [] - m_Father: {fileID: 5360703794001325739} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &5360703793236804450 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793236804447} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &5360703793236804451 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793236804447} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!1 &5360703793423176871 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703793423176870} - - component: {fileID: 5360703793423176874} - - component: {fileID: 5360703793423176875} - - component: {fileID: 5360703793423176872} - - component: {fileID: 5360703793423176873} - m_Layer: 0 - m_Name: Sign - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703793423176870 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793423176871} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 32.34, y: 10, z: 6.38} - m_LocalScale: {x: 0.61721, y: 1.3248, z: 2.108} - m_Children: [] - m_Father: {fileID: 5360703794001325739} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &5360703793423176874 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793423176871} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &5360703793423176875 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793423176871} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: 1fae3d354d8f44b438d51fbc992ccae4, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!65 &5360703793423176872 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793423176871} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Size: {x: 1, y: 1, z: 1} - m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &5360703793423176873 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793423176871} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0b83755523bca294c8ebaacb9bfd6f02, type: 3} - m_Name: - m_EditorClassIdentifier: - interactionType: 0 ---- !u!1 &5360703793539700797 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703793539700796} - - component: {fileID: 1517405387498435762} - m_Layer: 9 - m_Name: HouseBlueprint - m_TagString: Blueprint - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703793539700796 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793539700797} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0.5113401, y: 0.64607, z: 0.70913} - m_Children: - - {fileID: 5360703792772738076} - - {fileID: 5360703794877200717} - m_Father: {fileID: 5360703794841841444} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!65 &1517405387498435762 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703793539700797} - m_Material: {fileID: 0} - m_IsTrigger: 1 - m_Enabled: 1 - serializedVersion: 2 - m_Size: {x: 92.57468, y: 48.040638, z: 29.317003} - m_Center: {x: -4.6876817, y: 0.38128814, z: -0.8356206} ---- !u!1 &5360703794001325736 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703794001325739} - - component: {fileID: 5360703794001325738} - - component: {fileID: 3042064361800759033} - m_Layer: 0 - m_Name: House - m_TagString: Building - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703794001325739 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794001325736} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0.5113401, y: 0.64607, z: 0.70913} - m_Children: - - {fileID: 5360703793236804446} - - {fileID: 5360703793423176870} - m_Father: {fileID: 5360703794841841444} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!54 &5360703794001325738 -Rigidbody: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794001325736} - serializedVersion: 2 - m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 - m_UseGravity: 1 - m_IsKinematic: 0 - m_Interpolate: 0 - m_Constraints: 126 - m_CollisionDetection: 0 ---- !u!65 &3042064361800759033 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794001325736} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Size: {x: 80, y: 40, z: 30} - m_Center: {x: 0, y: 0, z: 0} ---- !u!1 &5360703794841841442 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703794841841444} - - component: {fileID: 5360703794841841445} - m_Layer: 0 - m_Name: TestHouse - m_TagString: Building - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703794841841444 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794841841442} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 4.299156, y: 27.5, z: 53.029934} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 5360703794001325739} - - {fileID: 5360703793539700796} - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &5360703794841841445 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794841841442} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 255558bfba6648641822c24b4555e7db, type: 3} - m_Name: - m_EditorClassIdentifier: - title: New Building - description: A cool new building - blueprintMat: {fileID: 2100000, guid: 78d3985cb7b88204b930cd05567c0c61, type: 2} - collisionMat: {fileID: 2100000, guid: a1e8fb1ea637c0e45bed70dd7d1feaab, type: 2} - buildingType: 0 ---- !u!1 &5360703794877200714 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5360703794877200717} - - component: {fileID: 5360703794877200719} - - component: {fileID: 5360703794877200716} - m_Layer: 9 - m_Name: Sign - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5360703794877200717 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794877200714} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 32.34, y: 10, z: 6.38} - m_LocalScale: {x: 0.61721, y: 1.3248, z: 2.108} - m_Children: [] - m_Father: {fileID: 5360703793539700796} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &5360703794877200719 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794877200714} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &5360703794877200716 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5360703794877200714} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: 78d3985cb7b88204b930cd05567c0c61, type: 2} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0}