/// <summary> /// Checks player (and pill) AABB against every platform AABB. /// </summary> void PlatformCollision() { foreach (PetzakAABB platform in _platforms) { if (_player.CollidesWith(platform)) { Vector3 fix = _player.FindFix(platform); _player.BroadcastMessage("ApplyFix", fix); } LifePillCollision(platform); } }
/// <summary> /// Stop pill from falling when it collides with an AABB /// </summary> /// <param name="other"></param> public void LifePillCollision(PetzakAABB other) { if (lifePill.CollidesWith(other)) { pill.isFalling = false; Vector3 fix = lifePill.FindFix(other); lifePill.BroadcastMessage("ApplyFix", fix); } }