void Awake()
{
collisionData = new List<SuperCollision>();
TemporaryLayerIndex = LayerMask.NameToLayer(TemporaryLayer);
ignoredColliders = new List<Collider>();
ignoredColliderStack = new List<IgnoredCollider>();
currentlyClampedTo = null;
fixedDeltaTime = 1.0f / fixedUpdatesPerSecond;
heightScale = 1.0f;
if (ownCollider)
IgnoreCollider(ownCollider);
foreach (var sphere in spheres)
{
if (sphere.isFeet)
feet = sphere;
if (sphere.isHead)
head = sphere;
}
if (feet == null)
Debug.LogError("[SuperCharacterController] Feet not found on controller");
if (head == null)
Debug.LogError("[SuperCharacterController] Head not found on controller");
if (defaultCollisionType == null)
defaultCollisionType = new GameObject("DefaultSuperCollisionType", typeof(SuperCollisionType)).GetComponent<SuperCollisionType>();
currentGround = new SuperGround(Walkable, this, triggerInteraction);
manualUpdateOnly = false;
gameObject.SendMessage("SuperStart", SendMessageOptions.DontRequireReceiver);
}