GroundChecker Improvements
This commit is contained in:
@@ -1,34 +1,19 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Syntriax.Modules.Movement.ColliderTrigger
|
||||
{
|
||||
public class TwoDimensionalBoxChildColliderTrigger : MonoBehaviour, IColliderTrigger
|
||||
|
||||
public class Box2DColliderTrigger : Trigger, IColliderTrigger
|
||||
{
|
||||
[SerializeField] private LayerMask colliderMask = 0;
|
||||
private bool _isTrigerred = false;
|
||||
private Collider2D[] results = new Collider2D[8];
|
||||
|
||||
public LayerMask ColliderMask { get => colliderMask; set => colliderMask = value; }
|
||||
|
||||
public Action<bool> OnTriggered { get; set; } = null;
|
||||
public bool IsTrigerred
|
||||
{
|
||||
get => _isTrigerred;
|
||||
protected set
|
||||
{
|
||||
bool isNewValue = _isTrigerred != value;
|
||||
|
||||
_isTrigerred = value;
|
||||
|
||||
if (isNewValue)
|
||||
OnTriggered.Invoke(value);
|
||||
}
|
||||
}
|
||||
[SerializeField] private LayerMask colliderMask = 0;
|
||||
|
||||
protected void FixedUpdate()
|
||||
=> IsTrigerred = Physics2D.OverlapBoxNonAlloc(transform.position, transform.localScale, 0, results, ColliderMask) > 0;
|
||||
|
||||
|
||||
#if UNITY_EDITOR
|
||||
private void OnDrawGizmosSelected()
|
||||
{
|
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: df412a9878b7d5b43ab34aef7261ec3a
|
||||
guid: 20a6baf9a256917448a4d7ad09d0c51a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
4
ColliderCheck/Ground/Box2DGroundTrigger.cs
Normal file
4
ColliderCheck/Ground/Box2DGroundTrigger.cs
Normal file
@@ -0,0 +1,4 @@
|
||||
namespace Syntriax.Modules.Movement.ColliderTrigger
|
||||
{
|
||||
public class Box2DGroundTrigger : Box2DColliderTrigger, IGroundTrigger { }
|
||||
}
|
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cbd3633509c80ca49b6ae013c990bdbe
|
||||
guid: 7804f3e8384c7a54482f585b4f43264a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
@@ -1,4 +0,0 @@
|
||||
namespace Syntriax.Modules.Movement.ColliderTrigger
|
||||
{
|
||||
public class TwoDimensionalBoxChildGroundTrigger : TwoDimensionalBoxChildColliderTrigger, IGroundTrigger { }
|
||||
}
|
Reference in New Issue
Block a user