Пример #1
0
        public static ProductionRecipe Get(SandboxTile.TileType type, string name)
        {
            Dictionary <string, ProductionRecipe> recipes = reflectionCache.GetValue <
                Dictionary <string, ProductionRecipe> >($"{type}_Recipes");

            return(recipes[name]);
        }
Пример #2
0
 public static TileSchematic Warehouse(SandboxTile.TileType type, int nextTier)
 {
     return(nextTier switch
     {
         0 => new TileSchematic(type, nextTier)
         {
             kCost = 1000,
             materials = new (string, int)[]
Пример #3
0
        public SandboxTile Build(SandboxTile.TileType type)
        {
            TileSchematic ts   = TileSchematics.GetSchem(type, 0);
            SandboxTile   tile = ts.Build(this);

            tiles.Add(tile);

            return(tile);
        }
Пример #4
0
        public static async Task BuildTile(Player player, SandboxTile.TileType type, ISocketMessageChannel chan)
        {
            House house = await LoadHouse(player, chan);

            Sandbox sb = house.sandbox;

            sb.Build(type);
            await house.Save();

            await SandboxActions.InspectTile(player, sb, "house", sb.tiles.Count - 1, chan);
        }
Пример #5
0
 internal static TileSchematic GetSchem(SandboxTile.TileType type, int tier)
 => reflectionCache.Run <TileSchematic>(type.ToString(), type, tier);