plantilla base para movimiento básico
This commit is contained in:
Robii Aragon
2026-02-05 05:07:55 -08:00
parent 195b696771
commit 779f2c8b20
14443 changed files with 23840465 additions and 452 deletions

View File

@@ -0,0 +1,76 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ignoreCollisionSystem : MonoBehaviour
{
[Header ("Main Settings")]
[Space]
public bool ignoreCollisionEnabled = true;
public bool useColliderList;
public List<Collider> colliderList = new List<Collider> ();
[Space]
public bool activateCheckOnStart;
public Collider colliderToIgnore;
public bool forceIgnoreCollisionInBetweenObjectsOnColliderList;
[Space]
[Header ("Components")]
[Space]
public Collider mainCollider;
void Start ()
{
if (activateCheckOnStart) {
activateIgnoreCollision (colliderToIgnore);
}
}
public void activateIgnoreCollision (Collider objectToIgnore)
{
if (ignoreCollisionEnabled) {
if (useColliderList) {
if (objectToIgnore != null) {
ignoreCollisionOnCollider (objectToIgnore);
}
if (forceIgnoreCollisionInBetweenObjectsOnColliderList) {
int colliderListCount = colliderList.Count;
for (int i = 0; i < colliderListCount; i++) {
ignoreCollisionOnCollider (colliderList [i]);
}
}
} else {
if (objectToIgnore == null) {
return;
}
if (mainCollider != null) {
Physics.IgnoreCollision (objectToIgnore, mainCollider, true);
}
}
}
}
void ignoreCollisionOnCollider (Collider newCollider)
{
int colliderListCount = colliderList.Count;
for (int i = 0; i < colliderListCount; i++) {
if (colliderList [i] != null && colliderList [i] != newCollider) {
Physics.IgnoreCollision (newCollider, colliderList [i], true);
}
}
}
}