summaryrefslogtreecommitdiff
path: root/Thronefall_1_0/Decompile/SuspendPlayerCollisionUntilNoOverlap.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Thronefall_1_0/Decompile/SuspendPlayerCollisionUntilNoOverlap.cs')
-rw-r--r--Thronefall_1_0/Decompile/SuspendPlayerCollisionUntilNoOverlap.cs96
1 files changed, 0 insertions, 96 deletions
diff --git a/Thronefall_1_0/Decompile/SuspendPlayerCollisionUntilNoOverlap.cs b/Thronefall_1_0/Decompile/SuspendPlayerCollisionUntilNoOverlap.cs
deleted file mode 100644
index a822b9e..0000000
--- a/Thronefall_1_0/Decompile/SuspendPlayerCollisionUntilNoOverlap.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-using System.Collections.Generic;
-using UnityEngine;
-
-public class SuspendPlayerCollisionUntilNoOverlap : MonoBehaviour
-{
- public bool triggerOnEnable = true;
-
- public LayerMask scanLayer;
-
- private List<Collider> targetColliders = new List<Collider>();
-
- private Collider[] overlaps;
-
- private bool suspended;
-
- private CharacterController trackedTarget;
-
- private void Awake()
- {
- targetColliders.AddRange(GetComponentsInChildren<Collider>());
- for (int num = targetColliders.Count - 1; num >= 0; num--)
- {
- if (targetColliders[num].isTrigger)
- {
- targetColliders.RemoveAt(num);
- }
- }
- }
-
- private void OnEnable()
- {
- if (triggerOnEnable)
- {
- Trigger();
- }
- }
-
- public void Trigger()
- {
- if (!PlayerManager.Instance)
- {
- return;
- }
- suspended = true;
- PlayerMovement closestPlayer = PlayerManager.GetClosestPlayer(base.transform.position);
- if ((bool)closestPlayer)
- {
- trackedTarget = closestPlayer.GetComponent<CharacterController>();
- }
- foreach (Collider targetCollider in targetColliders)
- {
- targetCollider.isTrigger = true;
- }
- }
-
- private void SwitchBack()
- {
- suspended = false;
- foreach (Collider targetCollider in targetColliders)
- {
- targetCollider.isTrigger = false;
- }
- }
-
- private void Update()
- {
- if (!suspended)
- {
- return;
- }
- if ((bool)trackedTarget)
- {
- float num = trackedTarget.height / 2f;
- Vector3 point = trackedTarget.transform.position + Vector3.down * num;
- Vector3 point2 = trackedTarget.transform.position + Vector3.up * num;
- overlaps = Physics.OverlapCapsule(point, point2, trackedTarget.radius, scanLayer, QueryTriggerInteraction.Collide);
- bool flag = true;
- Collider[] array = overlaps;
- foreach (Collider item in array)
- {
- if (targetColliders.Contains(item))
- {
- flag = false;
- }
- }
- if (flag)
- {
- SwitchBack();
- }
- }
- else
- {
- SwitchBack();
- }
- }
-}