From 64ddab4c1f7dc8018f6d7b8db2a3571fefdee1e7 Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Sat, 21 Apr 2018 14:09:09 +0200 Subject: [PATCH] Add basic tower --- Assembly-CSharp.csproj | 1 + Assets/Scenes/SampleScene.unity | 13 +++ Assets/Scripts/InstantiateOnClick.cs | 3 +- Assets/Scripts/TowerPlacer.cs | 37 +++++++ Assets/Scripts/TowerPlacer.cs.meta | 11 +++ Assets/Sprites/placeholderCircle.png | Bin 0 -> 360 bytes Assets/Sprites/placeholderCircle.png.meta | 97 ++++++++++++++++++ Assets/Sprites/placeholderSquare.png | Bin 0 -> 126 bytes Assets/Sprites/placeholderSquare.png.meta | 97 ++++++++++++++++++ Assets/Tower.prefab | 114 ++++++++++++++++++++++ Assets/Tower.prefab.meta | 8 ++ ProjectSettings/ProjectSettings.asset | 4 +- 12 files changed, 382 insertions(+), 3 deletions(-) create mode 100644 Assets/Scripts/TowerPlacer.cs create mode 100644 Assets/Scripts/TowerPlacer.cs.meta create mode 100644 Assets/Sprites/placeholderCircle.png create mode 100644 Assets/Sprites/placeholderCircle.png.meta create mode 100644 Assets/Sprites/placeholderSquare.png create mode 100644 Assets/Sprites/placeholderSquare.png.meta create mode 100644 Assets/Tower.prefab create mode 100644 Assets/Tower.prefab.meta diff --git a/Assembly-CSharp.csproj b/Assembly-CSharp.csproj index 1fd1a47..b501c89 100644 --- a/Assembly-CSharp.csproj +++ b/Assembly-CSharp.csproj @@ -62,6 +62,7 @@ + C:/Users/stepi/Code/ld41/Library/ScriptAssemblies/UnityEditor.StandardEvents.dll diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 089c295..1f7d5b0 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -124,6 +124,7 @@ GameObject: - component: {fileID: 505484107} - component: {fileID: 505484109} - component: {fileID: 505484110} + - component: {fileID: 505484111} m_Layer: 0 m_Name: Cursor m_TagString: Untagged @@ -212,6 +213,18 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 2a21dfc8c9bdaec4c962368a99c026a1, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!114 &505484111 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 505484106} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 081ef29388dfb6347a06f44d55a176d8, type: 3} + m_Name: + m_EditorClassIdentifier: + original: {fileID: 1775685083512922, guid: 1753708d09b3fb1458f2fc84f14004cd, type: 2} --- !u!1 &519420028 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/InstantiateOnClick.cs b/Assets/Scripts/InstantiateOnClick.cs index 43fdc0b..d66aff9 100644 --- a/Assets/Scripts/InstantiateOnClick.cs +++ b/Assets/Scripts/InstantiateOnClick.cs @@ -11,7 +11,8 @@ public class InstantiateOnClick : MonoBehaviour { if (original != null) { - Instantiate(original, transform.position, transform.rotation); + Vector3 position = new Vector3(transform.position.x, transform.position.y, 0); + Instantiate(original, position, transform.rotation); } } } diff --git a/Assets/Scripts/TowerPlacer.cs b/Assets/Scripts/TowerPlacer.cs new file mode 100644 index 0000000..3bbb261 --- /dev/null +++ b/Assets/Scripts/TowerPlacer.cs @@ -0,0 +1,37 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class TowerPlacer : MonoBehaviour +{ + public GameObject selected = null; + SpriteRenderer cursorSprite; + + void Start() + { + cursorSprite = gameObject.GetComponent(); + } + + void Update () { + //Check if there's nothing else under the cursor + Collider2D collider = Physics2D.OverlapPoint(transform.position); + if (collider == null) + { + cursorSprite.color = Color.white; + } + else + { + cursorSprite.color = Color.red; + } + if (Input.GetMouseButtonDown(0)) + { + //Check if something is selected + if (selected == null) return; + //Ensure there is nothing below + if (collider != null) return; + //Place the item + Vector3 position = new Vector3(transform.position.x, transform.position.y, 0); + Instantiate(selected, position, transform.rotation); + } + } +} diff --git a/Assets/Scripts/TowerPlacer.cs.meta b/Assets/Scripts/TowerPlacer.cs.meta new file mode 100644 index 0000000..54a652f --- /dev/null +++ b/Assets/Scripts/TowerPlacer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7c032f99ed9e86f429881bf290ce3c57 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/placeholderCircle.png b/Assets/Sprites/placeholderCircle.png new file mode 100644 index 0000000000000000000000000000000000000000..371c5efc9eec6159598e5e0d79103165eac1f9bc GIT binary patch literal 360 zcmV-u0hj)XP)kYy%420W>ScM5-Hkg1_m;2kxGWeM0kP#ld;wVT z5fEwve=!|z02_9@u(Gu>3)vb76!TqfWSJ{TlNx14k!~j%6%zjJv0@fgVV%iC5AMMynLyzZP$D;=lgcuPm}dXGMA}Ujrf%7p?tX%`mi^T~59Hj=r8h0Ti|?uu(yX@&Et;07*qoM6N<$ Gf&c(k9*