public Map Create() { Random.InitState(10); var size = _data.GetMapSize(); var map = new Map(size); var maxCreatedObjects = _data.GetMaxObjectsCount(); var walkersBorders = new RectInt(Vector2Int.one, size - 2 * Vector2Int.one); var walkersRouter = new MapWalkersRouter(walkersBorders); _mapObjectsFactory = new MapObjectsFactory(_objects, map); CreateWalkers(walkersRouter, _data.WalkerData, _data.StartPosition, _data.InitWalkersCount); while (maxCreatedObjects > _createdObjects) { UpdateWalkers(map, walkersRouter); } return(map); }
public static bool TryParse(char symbol, out MapObject mapObject) { return(MapObjectsFactory.TryCreateMapObject(symbol, out mapObject)); }