summaryrefslogtreecommitdiff
path: root/AlienSurvival/Assets/Scripts/Test/TestTopDown2DTransform.cs
diff options
context:
space:
mode:
Diffstat (limited to 'AlienSurvival/Assets/Scripts/Test/TestTopDown2DTransform.cs')
-rw-r--r--AlienSurvival/Assets/Scripts/Test/TestTopDown2DTransform.cs78
1 files changed, 78 insertions, 0 deletions
diff --git a/AlienSurvival/Assets/Scripts/Test/TestTopDown2DTransform.cs b/AlienSurvival/Assets/Scripts/Test/TestTopDown2DTransform.cs
new file mode 100644
index 0000000..acfac68
--- /dev/null
+++ b/AlienSurvival/Assets/Scripts/Test/TestTopDown2DTransform.cs
@@ -0,0 +1,78 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class TestTopDown2DTransform : MonoBehaviour
+{
+ public bool useGravity = false;
+
+ public Vector3 position // x, y, h
+ {
+ get
+ {
+ Vector3 topdownPos = transform.position;
+ topdownPos.y -= h;
+ topdownPos.z = h;
+ return topdownPos;
+ }
+ set
+ {
+ h = value.z;
+ Vector3 realPos = transform.position;
+ realPos.y = value.y + h;
+ transform.position = realPos;
+ }
+ }
+
+ public float x
+ {
+ get
+ {
+ return position.x;
+ }
+ }
+
+ public float y
+ {
+ get
+ {
+ return position.y;
+ }
+ }
+
+ public float h = 0;
+
+ public float z
+ {
+ get
+ {
+ return transform.position.z;
+ }
+ }
+
+ public float depth
+ {
+ get
+ {
+ return this.z;
+ }
+ }
+
+ private float vy = 0;
+
+ private void Update()
+ {
+ if (useGravity)
+ {
+ Vector3 pos = position;
+ vy += -9.8f * Time.deltaTime;
+ pos.z = Mathf.Max(pos.z + vy * Time.deltaTime, 0f);
+ if(pos.z == 0)
+ {
+ vy = 0;
+ }
+ position = pos;
+ }
+ }
+
+}