aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Assets/Prefabs/Player.prefab2
-rw-r--r--Assets/Scripts/Actors/Actor.cs11
2 files changed, 10 insertions, 3 deletions
diff --git a/Assets/Prefabs/Player.prefab b/Assets/Prefabs/Player.prefab
index b9d27ee..cccb1c5 100644
--- a/Assets/Prefabs/Player.prefab
+++ b/Assets/Prefabs/Player.prefab
@@ -321,6 +321,7 @@ MonoBehaviour:
groundCheckPoint1: {fileID: 2776418409611166769}
groundCheckPoint2: {fileID: 5336306221325820075}
invulnTime: 2
+ hangTime: 2
stats:
maxHealth: 0
speedMultiplier: 0
@@ -328,7 +329,6 @@ MonoBehaviour:
jumpForce: 0
damage: 0
health: 0
- invuln: 0
projectilePrefab: {fileID: 9063295841416902692, guid: a0ba51ee3fa7d25428dd81d9ee48ace9, type: 3}
firePoint: {fileID: 2776418409812533937}
spawnPoint: {x: 0, y: 0, z: 0}
diff --git a/Assets/Scripts/Actors/Actor.cs b/Assets/Scripts/Actors/Actor.cs
index 3acd51c..96c67c2 100644
--- a/Assets/Scripts/Actors/Actor.cs
+++ b/Assets/Scripts/Actors/Actor.cs
@@ -17,6 +17,7 @@ namespace MontanaJohns.Actors
[SerializeField] protected Transform groundCheckPoint1;
[SerializeField] protected Transform groundCheckPoint2;
[SerializeField] protected float invulnTime = 0f;
+ [SerializeField] protected float hangTime;
protected Rigidbody2D _rigidBody;
protected SpriteRenderer _renderer;
@@ -30,11 +31,12 @@ namespace MontanaJohns.Actors
protected Collection<Item> items;
protected int jumpCount;
protected Vector2 acceleration;
+ protected bool invuln;
+ protected float hangCount;
public Stats stats;
public int health;
- private bool invuln;
protected virtual void Awake()
{
@@ -104,8 +106,13 @@ namespace MontanaJohns.Actors
if(Physics2D.OverlapCircle(groundCheckPoint1.position, 0.2f, groundLayers) || Physics2D.OverlapCircle(groundCheckPoint2.position, 0.2f, groundLayers))
{
jumpCount = stats.maxJumps;
+ hangCount = hangTime;
}
- if (jumpCount > 0)
+ else
+ {
+ hangCount -= Time.deltaTime;
+ }
+ if (jumpCount > 0 && hangCount > 0f)
{
jumpCount--;
_rigidBody.AddForce(Vector2.up * stats.jumpForce);