コード例 #1
0
        public static bool PryTile(this EntityCoordinates coordinates, IEntityManager?entityManager = null,
                                   IMapManager?mapManager = null)
        {
            entityManager ??= IoCManager.Resolve <IEntityManager>();
            mapManager ??= IoCManager.Resolve <IMapManager>();

            return(coordinates.ToMapIndices(entityManager, mapManager).PryTile(coordinates.GetGridId(entityManager)));
        }
コード例 #2
0
        public static TileRef?GetTileRef(this EntityCoordinates coordinates, IEntityManager?entityManager = null, IMapManager?mapManager = null)
        {
            entityManager ??= IoCManager.Resolve <IEntityManager>();

            if (!coordinates.IsValid(entityManager))
            {
                return(null);
            }

            mapManager ??= IoCManager.Resolve <IMapManager>();

            if (!mapManager.TryGetGrid(coordinates.GetGridId(entityManager), out var grid))
            {
                return(null);
            }

            if (!grid.TryGetTileRef(coordinates.ToMapIndices(entityManager, mapManager), out var tile))
            {
                return(null);
            }

            return(tile);
        }
コード例 #3
0
 public virtual TileAtmosphere?GetTile(EntityCoordinates coordinates, bool createSpace = true)
 {
     return(GetTile(coordinates.ToMapIndices(_serverEntityManager, _mapManager), createSpace));
 }