anchor.diff:  	}
   	
   	@override
  -	bool canMakeOn(Tile tile) => tile.underground;
  +	bool canMakeOn(Tile tile) => tile is TileMineshaft;
   }
   
   /*
  
positive.code: 	new RecipeHut(),
  	new RecipeCraftingTable(),
  	new RecipeMineshaft(),
  	new RecipeTunnel(),
  	new RecipeTorches(),
  ];
negative.code: 	TileMineshaft innerTile;
  	
  	FeatureMineshaft(Tile tile) : super(tile) {
  		space = tile is TileMineshaft ? 5 : 10;
  		
  		innerTile = new TileMineshaft(this);
  	}
  	
  	String get name => "Mineshaft";
  	ConsoleColor get color => ConsoleColor.GREY;
  	String get desc => (tile is TileMineshaft ? "This is a shaft leading deeper underground." : "This is a hole, leading to somewhere underground.");
  	
  	@override
  	void drawPicture(Console c, int x, int y, int w, int h) {
  		if (w <= 1 || h <= 1) {return;}
  		
  		Random rng = new Random(hashCode);
  		
  		if (tile is TileMineshaft) {
  			int ladderX = x + rng.nextInt(w-5)+2;
  			
  			for (int i = y + h - 2; i < y + h; i++) {
  				c.labels.add(new ConsoleLabel(ladderX, i, "|-|", ConsoleColor.MAROON));
  			}
  		} else {
  			int drawX = rng.nextInt(w-6) - (w-6)~/2;
  			int drawY = rng.nextInt(h~/2);
  			
  			for (int i = 0; i < 4; i++) {
  				int realX = x + w~/2 + drawX;
  				int realY = y + h~/2 + drawY + i;
  				
  				if (realX >= x && realX < x + w && realY >= y && realY < y + h) {
  					switch (i) {
  						case 0:
  							c.labels.add(new ConsoleLabel(realX, realY, "+", ConsoleColor.GREY));
  							c.labels.add(new ConsoleLabel(realX+1, realY, "|-|", ConsoleColor.MAROON));
  							c.labels.add(new ConsoleLabel(realX+4, realY, "+", ConsoleColor.GREY));
  							break;
  						case 1:
  							c.labels.add(new ConsoleLabel(realX, realY, "|", ConsoleColor.GREY));
  							c.labels.add(new ConsoleLabel(realX+1, realY, "|-|", ConsoleColor.MAROON));
  							c.labels.add(new ConsoleLabel(realX+4, realY, "|", ConsoleColor.GREY));
  							break;
  						case 2:
  							c.labels.add(new ConsoleLabel(realX, realY, "+---+", ConsoleColor.GREY));
  							break;
  					}
  				}
  			}
  		}
  