private void AddCollision(ctxs.general.delay.systems.GameEntity entity, int targetId) { var collisions = new List <int>(); if (entity.hasCollision) { collisions = entity.collision.collisions; } if (collisions.IndexOf(targetId) == -1) { collisions.Add(targetId); } entity.ReplaceCollision(collisions); }
public void RemoveCollision(ctxs.general.delay.systems.GameEntity entity, int targetId) { if (entity.hasCollision == false) { Debug.LogError("RemoveCollision::Tried to remove collision but Entity has no collisions"); return; } var collisions = entity.collision.collisions; var index = collisions.IndexOf(targetId); if (index == -1) { Debug.LogError("RemoveCollision [Entity Id: " + entity.id.value + "]::Tried to remove collision that doesnt exist"); } collisions.RemoveAt(index); entity.ReplaceCollision(collisions); }