public void Add(IMsbModel item) { var m = (Model)item; switch (m.Type) { case ModelType.MapPiece: MapPieces.Add(m); break; case ModelType.Object: Objects.Add(m); break; case ModelType.Collision: Collisions.Add(m); break; case ModelType.Navmesh: Navmeshes.Add(m); break; default: throw new ArgumentException( message: "Item is not recognized", paramName: nameof(item)); } }
public void Add(IMsbModel item) { switch (item) { case Model.MapPiece m: MapPieces.Add(m); break; case Model.Object m: Objects.Add(m); break; case Model.Enemy m: Enemies.Add(m); break; case Model.Player m: Players.Add(m); break; case Model.Collision m: Collisions.Add(m); break; case Model.Other m: Others.Add(m); break; default: throw new ArgumentException( message: "Item is not recognized", paramName: nameof(item)); } }
IMsbModel IMsbParam <IMsbModel> .Add(IMsbModel item) => Add((Model)item);
public void Add(IMsbModel item) { throw new NotImplementedException(); }