aboutsummaryrefslogtreecommitdiffstats
path: root/Assets/Scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts')
-rw-r--r--Assets/Scripts/Actors/Actor.cs12
-rw-r--r--Assets/Scripts/Actors/Player.cs6
-rw-r--r--Assets/Scripts/EndLevel.cs15
-rw-r--r--Assets/Scripts/EndLevel.cs.meta11
-rw-r--r--Assets/Scripts/Items/Whip.cs8
-rw-r--r--Assets/Scripts/LevelController.cs11
-rw-r--r--Assets/Scripts/PauseMenu.cs31
-rw-r--r--Assets/Scripts/PauseMenu.cs.meta11
8 files changed, 99 insertions, 6 deletions
diff --git a/Assets/Scripts/Actors/Actor.cs b/Assets/Scripts/Actors/Actor.cs
index 6b82060..30721a5 100644
--- a/Assets/Scripts/Actors/Actor.cs
+++ b/Assets/Scripts/Actors/Actor.cs
@@ -128,6 +128,18 @@ namespace MontanaJohns.Actors
this.grapplePoint = grapplePoint;
}
+ public virtual void Cancel()
+ {
+ if (PauseMenu.isPaused)
+ {
+ PauseMenu.Resume();
+ }
+ else
+ {
+ PauseMenu.Pause();
+ }
+ }
+
public virtual void AddItem(Item item)
{
items.Add(item);
diff --git a/Assets/Scripts/Actors/Player.cs b/Assets/Scripts/Actors/Player.cs
index 8ba1daf..589d661 100644
--- a/Assets/Scripts/Actors/Player.cs
+++ b/Assets/Scripts/Actors/Player.cs
@@ -16,22 +16,24 @@ namespace MontanaJohns.Actors
private Camera _camera;
private PlayerInput playerInput;
- private InputAction use, move, jump, attack;
+ private InputAction use, move, jump, attack, cancel;
protected override void Awake()
{
base.Awake();
_camera = FindObjectOfType<Camera>();
playerInput = GetComponent<PlayerInput>();
+ use = move = jump = attack = cancel = null;
move = playerInput.currentActionMap.FindAction("Move");
jump = playerInput.currentActionMap.FindAction("Jump");
attack = playerInput.currentActionMap.FindAction("Attack");
use = playerInput.currentActionMap.FindAction("Use");
+ cancel = playerInput.currentActionMap.FindAction("Cancel");
jump.started += context => Jump();
-
use.started += context => Use();
attack.started += context => Fire();
+ cancel.started += context => Cancel();
}
protected override void Start()
diff --git a/Assets/Scripts/EndLevel.cs b/Assets/Scripts/EndLevel.cs
new file mode 100644
index 0000000..6b7940c
--- /dev/null
+++ b/Assets/Scripts/EndLevel.cs
@@ -0,0 +1,15 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.SceneManagement;
+
+public class EndLevel : MonoBehaviour
+{
+ private void OnTriggerEnter2D(Collider2D collision)
+ {
+ if(collision.gameObject.tag == "Player")
+ {
+ SceneManager.LoadScene("Final Scene");
+ }
+ }
+}
diff --git a/Assets/Scripts/EndLevel.cs.meta b/Assets/Scripts/EndLevel.cs.meta
new file mode 100644
index 0000000..676312e
--- /dev/null
+++ b/Assets/Scripts/EndLevel.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 85de3120dc690fb4da15e76adf6d467b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Items/Whip.cs b/Assets/Scripts/Items/Whip.cs
index 5e433f3..b826794 100644
--- a/Assets/Scripts/Items/Whip.cs
+++ b/Assets/Scripts/Items/Whip.cs
@@ -41,12 +41,12 @@ namespace MontanaJohns.Items
ropeExists = true;
if (LayerMask.LayerToName(collisionGameObject.layer) == "Grapple")
{
- currentHook = Instantiate(hook, clickLocation, Quaternion.identity);
+ currentHook = Instantiate(hook, collisionGameObject.transform.position, Quaternion.identity);
return clickLocation;
}
else
{
- StartCoroutine(WhipSmack(collisionGameObject, clickLocation));
+ StartCoroutine(WhipSmack(collisionGameObject));
}
}
return null;
@@ -59,9 +59,9 @@ namespace MontanaJohns.Items
}
}
- private IEnumerator WhipSmack(GameObject collisionGameObject, Vector2 clickLocation)
+ private IEnumerator WhipSmack(GameObject collisionGameObject)
{
- currentHook = Instantiate(hookNoSwing, clickLocation, Quaternion.identity);
+ currentHook = Instantiate(hookNoSwing, collisionGameObject.transform.position, Quaternion.identity);
collisionGameObject.GetComponent<Actor>().TakeDamage(player.GetComponent<Player>().stats.damage);
yield return new WaitForSeconds(0.1f);
Destroy(currentHook);
diff --git a/Assets/Scripts/LevelController.cs b/Assets/Scripts/LevelController.cs
index 1b8bd47..7113fe8 100644
--- a/Assets/Scripts/LevelController.cs
+++ b/Assets/Scripts/LevelController.cs
@@ -16,6 +16,17 @@ public class LevelController : MonoBehaviour
SceneManager.LoadScene("Jungle");
}
+ public void QuitGame()
+ {
+ Application.Quit();
+ }
+
+
+ public static void LoadMenu()
+ {
+ SceneManager.LoadScene("Start Scene");
+ }
+
public void ResetLevel()
{
//Destroy
diff --git a/Assets/Scripts/PauseMenu.cs b/Assets/Scripts/PauseMenu.cs
new file mode 100644
index 0000000..ba246c4
--- /dev/null
+++ b/Assets/Scripts/PauseMenu.cs
@@ -0,0 +1,31 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class PauseMenu : MonoBehaviour
+{
+ [SerializeField] private GameObject pauseMenuUI;
+
+ private static GameObject _pauseMenuUI;
+
+ public static bool isPaused;
+
+ private void Awake()
+ {
+ _pauseMenuUI = pauseMenuUI;
+ }
+
+ public static void Resume()
+ {
+ _pauseMenuUI.SetActive(false);
+ Time.timeScale = 1f;
+ isPaused = false;
+ }
+
+ public static void Pause()
+ {
+ _pauseMenuUI.SetActive(true);
+ Time.timeScale = 0f;
+ isPaused = true;
+ }
+}
diff --git a/Assets/Scripts/PauseMenu.cs.meta b/Assets/Scripts/PauseMenu.cs.meta
new file mode 100644
index 0000000..5fb58db
--- /dev/null
+++ b/Assets/Scripts/PauseMenu.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 3685c9ea49084bd47974e64833208e4a
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: