Loading

Paste #pfxnncvsd

  1. /* ******************************************************************
  2.  * Definition of the industry tile, its callbacks, and graphics chain
  3.  * ******************************************************************/
  4.             spriteset(limestone_mine_spriteset_0_0) {
  5.                         [10, 310, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  6.                         [80, 310, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  7.                         [150, 310, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  8.             }
  9.             spriteset(limestone_mine_spriteset_0_0_snow) {
  10.                             [10, 310, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  11.                             [80, 310, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  12.                             [150, 310, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  13.             }
  14.             spriteset(limestone_mine_spriteset_1_0) {
  15.                         [10, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  16.                         [80, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  17.                         [150, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  18.                         [220, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  19.                         [290, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  20.                         [360, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  21.                         [430, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  22.                         [500, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  23.                         [500, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  24.                         [570, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  25.                         [570, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  26.                         [640, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  27.                         [640, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  28.                         [710, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  29.                         [780, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  30.                         [850, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  31.                         [920, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  32.                         [990, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  33.                         [1060, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  34.             }
  35.             spriteset(limestone_mine_spriteset_1_0_snow) {
  36.                             [10, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  37.                             [80, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  38.                             [150, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  39.                             [220, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  40.                             [290, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  41.                             [360, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  42.                             [430, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  43.                             [500, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  44.                             [500, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  45.                             [570, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  46.                             [570, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  47.                             [640, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  48.                             [640, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  49.                             [710, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  50.                             [780, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  51.                             [850, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  52.                             [920, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  53.                             [990, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  54.                             [1060, 160, 64, 122, -31, -88, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  55.             }
  56.             spriteset(limestone_mine_spriteset_2_0) {
  57.                         [10, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  58.             }
  59.             spriteset(limestone_mine_spriteset_2_0_snow) {
  60.                             [10, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  61.             }
  62.             spriteset(limestone_mine_spriteset_3_0) {
  63.                         [80, 10, 64, 122, -31, -74, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  64.             }
  65.             spriteset(limestone_mine_spriteset_3_0_snow) {
  66.                             [80, 10, 64, 122, -31, -74, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  67.             }
  68.             spriteset(limestone_mine_spriteset_4_0) {
  69.                         [150, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  70.             }
  71.             spriteset(limestone_mine_spriteset_4_0_snow) {
  72.                             [150, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  73.             }
  74.             spriteset(limestone_mine_spriteset_5_0) {
  75.                         [220, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  76.             }
  77.             spriteset(limestone_mine_spriteset_5_0_snow) {
  78.                             [220, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  79.             }
  80.             spriteset(limestone_mine_spriteset_6_0) {
  81.                         [290, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  82.             }
  83.             spriteset(limestone_mine_spriteset_6_0_snow) {
  84.                             [290, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  85.             }
  86.             spriteset(limestone_mine_spriteset_7_0) {
  87.                         [360, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  88.             }
  89.             spriteset(limestone_mine_spriteset_7_0_snow) {
  90.                             [360, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  91.             }
  92.             spriteset(limestone_mine_spriteset_8_0) {
  93.                         [430, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1.png"]
  94.             }
  95.             spriteset(limestone_mine_spriteset_8_0_snow) {
  96.                             [430, 10, 64, 122, -31, -90, ANIM | NOCROP, "src/graphics/industries/limestone_mine_1_snow.png"]
  97.             }
  98.         spritelayout limestone_mine_spritelayout_tile_empty {
  99.             // Industry-specific ground (snow aware)
  100.             // non-snow
  101.             childsprite {
  102.                 sprite: 2022;
  103.                 recolour_mode: RECOLOUR_REMAP;
  104.                 palette: PALETTE_USE_DEFAULT;
  105.                 hide_sprite: (LOAD_TEMP(13));
  106.                 always_draw: 1;
  107.             }
  108.             childsprite {
  109.                 sprite: 2022;
  110.                 recolour_mode: RECOLOUR_REMAP;
  111.                 palette: PALETTE_USE_DEFAULT;
  112.                 hide_sprite: (LOAD_TEMP(13));
  113.                 always_draw: 1;
  114.             }
  115.             // snow
  116.             childsprite {
  117.                 sprite: 2022;
  118.                 recolour_mode: RECOLOUR_REMAP;
  119.                 palette: PALETTE_USE_DEFAULT;
  120.                 hide_sprite: (!LOAD_TEMP(13));
  121.                 always_draw: 1;
  122.             }
  123.             childsprite {
  124.                 sprite: 2022;
  125.                 recolour_mode: RECOLOUR_REMAP;
  126.                 palette: PALETTE_USE_DEFAULT;
  127.                 hide_sprite: (!LOAD_TEMP(13));
  128.                 always_draw: 1;
  129.             }
  130.         }
  131.         spritelayout limestone_mine_spritelayout_headgear_animated {
  132.             // Industry-specific ground (snow aware)
  133.             // non-snow
  134.             childsprite {
  135.                 sprite: 2022;
  136.                 recolour_mode: RECOLOUR_REMAP;
  137.                 palette: PALETTE_USE_DEFAULT;
  138.                 hide_sprite: (LOAD_TEMP(13));
  139.                 always_draw: 1;
  140.             }
  141.             childsprite {
  142.                 sprite: 2022;
  143.                 recolour_mode: RECOLOUR_REMAP;
  144.                 palette: PALETTE_USE_DEFAULT;
  145.                 hide_sprite: (LOAD_TEMP(13));
  146.                 always_draw: 1;
  147.             }
  148.             // snow
  149.             childsprite {
  150.                 sprite: 2022;
  151.                 recolour_mode: RECOLOUR_REMAP;
  152.                 palette: PALETTE_USE_DEFAULT;
  153.                 hide_sprite: (!LOAD_TEMP(13));
  154.                 always_draw: 1;
  155.             }
  156.             childsprite {
  157.                 sprite: 2022;
  158.                 recolour_mode: RECOLOUR_REMAP;
  159.                 palette: PALETTE_USE_DEFAULT;
  160.                 hide_sprite: (!LOAD_TEMP(13));
  161.                 always_draw: 1;
  162.             }
  163.                     // buildings (snow aware)
  164.                     building {
  165.                         sprite: limestone_mine_spriteset_0_0(1*(animation_frame % 3));
  166.                         recolour_mode: RECOLOUR_REMAP;
  167.                         palette: PALETTE_USE_DEFAULT;
  168.                         xoffset: 0;
  169.                         yoffset: 0;
  170.                         zoffset: 0;
  171.                         xextent: 16;
  172.                         yextent: 16;
  173.                         zextent: 32;
  174.                         always_draw: 0;
  175.                         hide_sprite: (LOAD_TEMP(255));
  176.                     }
  177.                     building {
  178.                         sprite: limestone_mine_spriteset_0_0_snow(1*(animation_frame % 3));
  179.                         recolour_mode: RECOLOUR_REMAP;
  180.                         palette: PALETTE_USE_DEFAULT;
  181.                         xoffset: 0;
  182.                         yoffset: 0;
  183.                         zoffset: 0;
  184.                         xextent: 16;
  185.                         yextent: 16;
  186.                         zextent: 32;
  187.                         always_draw: 0;
  188.                         hide_sprite: (LOAD_TEMP(245));
  189.                     }
  190.         }
  191.         spritelayout limestone_mine_spritelayout_exit_trestle_animated {
  192.             // Industry-specific ground (snow aware)
  193.             // non-snow
  194.             childsprite {
  195.                 sprite: 2022;
  196.                 recolour_mode: RECOLOUR_REMAP;
  197.                 palette: PALETTE_USE_DEFAULT;
  198.                 hide_sprite: (LOAD_TEMP(13));
  199.                 always_draw: 1;
  200.             }
  201.             childsprite {
  202.                 sprite: 2022;
  203.                 recolour_mode: RECOLOUR_REMAP;
  204.                 palette: PALETTE_USE_DEFAULT;
  205.                 hide_sprite: (LOAD_TEMP(13));
  206.                 always_draw: 1;
  207.             }
  208.             // snow
  209.             childsprite {
  210.                 sprite: 2022;
  211.                 recolour_mode: RECOLOUR_REMAP;
  212.                 palette: PALETTE_USE_DEFAULT;
  213.                 hide_sprite: (!LOAD_TEMP(13));
  214.                 always_draw: 1;
  215.             }
  216.             childsprite {
  217.                 sprite: 2022;
  218.                 recolour_mode: RECOLOUR_REMAP;
  219.                 palette: PALETTE_USE_DEFAULT;
  220.                 hide_sprite: (!LOAD_TEMP(13));
  221.                 always_draw: 1;
  222.             }
  223.                     // buildings (snow aware)
  224.                     building {
  225.                         sprite: limestone_mine_spriteset_1_0(1* (animation_frame));
  226.                         recolour_mode: RECOLOUR_REMAP;
  227.                         palette: PALETTE_USE_DEFAULT;
  228.                         xoffset: 0;
  229.                         yoffset: 0;
  230.                         zoffset: 0;
  231.                         xextent: 16;
  232.                         yextent: 16;
  233.                         zextent: 32;
  234.                         always_draw: 0;
  235.                         hide_sprite: (LOAD_TEMP(255));
  236.                     }
  237.                     building {
  238.                         sprite: limestone_mine_spriteset_1_0_snow(1* (animation_frame));
  239.                         recolour_mode: RECOLOUR_REMAP;
  240.                         palette: PALETTE_USE_DEFAULT;
  241.                         xoffset: 0;
  242.                         yoffset: 0;
  243.                         zoffset: 0;
  244.                         xextent: 16;
  245.                         yextent: 16;
  246.                         zextent: 32;
  247.                         always_draw: 0;
  248.                         hide_sprite: (LOAD_TEMP(245));
  249.                     }
  250.         }
  251.         spritelayout limestone_mine_spritelayout_crusher_front_part {
  252.             // Industry-specific ground (snow aware)
  253.             // non-snow
  254.             childsprite {
  255.                 sprite: 2022;
  256.                 recolour_mode: RECOLOUR_REMAP;
  257.                 palette: PALETTE_USE_DEFAULT;
  258.                 hide_sprite: (LOAD_TEMP(13));
  259.                 always_draw: 1;
  260.             }
  261.             childsprite {
  262.                 sprite: 2022;
  263.                 recolour_mode: RECOLOUR_REMAP;
  264.                 palette: PALETTE_USE_DEFAULT;
  265.                 hide_sprite: (LOAD_TEMP(13));
  266.                 always_draw: 1;
  267.             }
  268.             // snow
  269.             childsprite {
  270.                 sprite: 2022;
  271.                 recolour_mode: RECOLOUR_REMAP;
  272.                 palette: PALETTE_USE_DEFAULT;
  273.                 hide_sprite: (!LOAD_TEMP(13));
  274.                 always_draw: 1;
  275.             }
  276.             childsprite {
  277.                 sprite: 2022;
  278.                 recolour_mode: RECOLOUR_REMAP;
  279.                 palette: PALETTE_USE_DEFAULT;
  280.                 hide_sprite: (!LOAD_TEMP(13));
  281.                 always_draw: 1;
  282.             }
  283.                     // buildings (snow aware)
  284.                     building {
  285.                         sprite: limestone_mine_spriteset_2_0(0);
  286.                         recolour_mode: RECOLOUR_REMAP;
  287.                         palette: PALETTE_USE_DEFAULT;
  288.                         xoffset: 0;
  289.                         yoffset: 0;
  290.                         zoffset: 0;
  291.                         xextent: 16;
  292.                         yextent: 16;
  293.                         zextent: 32;
  294.                         always_draw: 0;
  295.                         hide_sprite: (LOAD_TEMP(255));
  296.                     }
  297.                     building {
  298.                         sprite: limestone_mine_spriteset_2_0_snow(0);
  299.                         recolour_mode: RECOLOUR_REMAP;
  300.                         palette: PALETTE_USE_DEFAULT;
  301.                         xoffset: 0;
  302.                         yoffset: 0;
  303.                         zoffset: 0;
  304.                         xextent: 16;
  305.                         yextent: 16;
  306.                         zextent: 32;
  307.                         always_draw: 0;
  308.                         hide_sprite: (LOAD_TEMP(245));
  309.                     }
  310.         }
  311.         spritelayout limestone_mine_spritelayout_crusher_rear_part {
  312.             // Industry-specific ground (snow aware)
  313.             // non-snow
  314.             childsprite {
  315.                 sprite: 2022;
  316.                 recolour_mode: RECOLOUR_REMAP;
  317.                 palette: PALETTE_USE_DEFAULT;
  318.                 hide_sprite: (LOAD_TEMP(13));
  319.                 always_draw: 1;
  320.             }
  321.             childsprite {
  322.                 sprite: 2022;
  323.                 recolour_mode: RECOLOUR_REMAP;
  324.                 palette: PALETTE_USE_DEFAULT;
  325.                 hide_sprite: (LOAD_TEMP(13));
  326.                 always_draw: 1;
  327.             }
  328.             // snow
  329.             childsprite {
  330.                 sprite: 2022;
  331.                 recolour_mode: RECOLOUR_REMAP;
  332.                 palette: PALETTE_USE_DEFAULT;
  333.                 hide_sprite: (!LOAD_TEMP(13));
  334.                 always_draw: 1;
  335.             }
  336.             childsprite {
  337.                 sprite: 2022;
  338.                 recolour_mode: RECOLOUR_REMAP;
  339.                 palette: PALETTE_USE_DEFAULT;
  340.                 hide_sprite: (!LOAD_TEMP(13));
  341.                 always_draw: 1;
  342.             }
  343.                     // buildings (snow aware)
  344.                     building {
  345.                         sprite: limestone_mine_spriteset_3_0(0);
  346.                         recolour_mode: RECOLOUR_REMAP;
  347.                         palette: PALETTE_USE_DEFAULT;
  348.                         xoffset: 0;
  349.                         yoffset: 0;
  350.                         zoffset: 0;
  351.                         xextent: 16;
  352.                         yextent: 16;
  353.                         zextent: 32;
  354.                         always_draw: 0;
  355.                         hide_sprite: (LOAD_TEMP(255));
  356.                     }
  357.                     building {
  358.                         sprite: limestone_mine_spriteset_3_0_snow(0);
  359.                         recolour_mode: RECOLOUR_REMAP;
  360.                         palette: PALETTE_USE_DEFAULT;
  361.                         xoffset: 0;
  362.                         yoffset: 0;
  363.                         zoffset: 0;
  364.                         xextent: 16;
  365.                         yextent: 16;
  366.                         zextent: 32;
  367.                         always_draw: 0;
  368.                         hide_sprite: (LOAD_TEMP(245));
  369.                     }
  370.         }
  371.         spritelayout limestone_mine_spritelayout_hut_vents {
  372.             // Industry-specific ground (snow aware)
  373.             // non-snow
  374.             childsprite {
  375.                 sprite: 2022;
  376.                 recolour_mode: RECOLOUR_REMAP;
  377.                 palette: PALETTE_USE_DEFAULT;
  378.                 hide_sprite: (LOAD_TEMP(13));
  379.                 always_draw: 1;
  380.             }
  381.             childsprite {
  382.                 sprite: 2022;
  383.                 recolour_mode: RECOLOUR_REMAP;
  384.                 palette: PALETTE_USE_DEFAULT;
  385.                 hide_sprite: (LOAD_TEMP(13));
  386.                 always_draw: 1;
  387.             }
  388.             // snow
  389.             childsprite {
  390.                 sprite: 2022;
  391.                 recolour_mode: RECOLOUR_REMAP;
  392.                 palette: PALETTE_USE_DEFAULT;
  393.                 hide_sprite: (!LOAD_TEMP(13));
  394.                 always_draw: 1;
  395.             }
  396.             childsprite {
  397.                 sprite: 2022;
  398.                 recolour_mode: RECOLOUR_REMAP;
  399.                 palette: PALETTE_USE_DEFAULT;
  400.                 hide_sprite: (!LOAD_TEMP(13));
  401.                 always_draw: 1;
  402.             }
  403.                     // buildings (snow aware)
  404.                     building {
  405.                         sprite: limestone_mine_spriteset_4_0(0);
  406.                         recolour_mode: RECOLOUR_REMAP;
  407.                         palette: PALETTE_USE_DEFAULT;
  408.                         xoffset: 0;
  409.                         yoffset: 0;
  410.                         zoffset: 0;
  411.                         xextent: 16;
  412.                         yextent: 16;
  413.                         zextent: 32;
  414.                         always_draw: 0;
  415.                         hide_sprite: (LOAD_TEMP(255));
  416.                     }
  417.                     building {
  418.                         sprite: limestone_mine_spriteset_4_0_snow(0);
  419.                         recolour_mode: RECOLOUR_REMAP;
  420.                         palette: PALETTE_USE_DEFAULT;
  421.                         xoffset: 0;
  422.                         yoffset: 0;
  423.                         zoffset: 0;
  424.                         xextent: 16;
  425.                         yextent: 16;
  426.                         zextent: 32;
  427.                         always_draw: 0;
  428.                         hide_sprite: (LOAD_TEMP(245));
  429.                     }
  430.         }
  431.         spritelayout limestone_mine_spritelayout_ore_1 {
  432.             // Industry-specific ground (snow aware)
  433.             // non-snow
  434.             childsprite {
  435.                 sprite: 2022;
  436.                 recolour_mode: RECOLOUR_REMAP;
  437.                 palette: PALETTE_USE_DEFAULT;
  438.                 hide_sprite: (LOAD_TEMP(13));
  439.                 always_draw: 1;
  440.             }
  441.             childsprite {
  442.                 sprite: 2022;
  443.                 recolour_mode: RECOLOUR_REMAP;
  444.                 palette: PALETTE_USE_DEFAULT;
  445.                 hide_sprite: (LOAD_TEMP(13));
  446.                 always_draw: 1;
  447.             }
  448.             // snow
  449.             childsprite {
  450.                 sprite: 2022;
  451.                 recolour_mode: RECOLOUR_REMAP;
  452.                 palette: PALETTE_USE_DEFAULT;
  453.                 hide_sprite: (!LOAD_TEMP(13));
  454.                 always_draw: 1;
  455.             }
  456.             childsprite {
  457.                 sprite: 2022;
  458.                 recolour_mode: RECOLOUR_REMAP;
  459.                 palette: PALETTE_USE_DEFAULT;
  460.                 hide_sprite: (!LOAD_TEMP(13));
  461.                 always_draw: 1;
  462.             }
  463.                     // buildings (snow aware)
  464.                     building {
  465.                         sprite: limestone_mine_spriteset_5_0(0);
  466.                         recolour_mode: RECOLOUR_REMAP;
  467.                         palette: PALETTE_USE_DEFAULT;
  468.                         xoffset: 0;
  469.                         yoffset: 0;
  470.                         zoffset: 0;
  471.                         xextent: 16;
  472.                         yextent: 16;
  473.                         zextent: 32;
  474.                         always_draw: 0;
  475.                         hide_sprite: (LOAD_TEMP(255));
  476.                     }
  477.                     building {
  478.                         sprite: limestone_mine_spriteset_5_0_snow(0);
  479.                         recolour_mode: RECOLOUR_REMAP;
  480.                         palette: PALETTE_USE_DEFAULT;
  481.                         xoffset: 0;
  482.                         yoffset: 0;
  483.                         zoffset: 0;
  484.                         xextent: 16;
  485.                         yextent: 16;
  486.                         zextent: 32;
  487.                         always_draw: 0;
  488.                         hide_sprite: (LOAD_TEMP(245));
  489.                     }
  490.         }
  491.         spritelayout limestone_mine_spritelayout_ore_2 {
  492.             // Industry-specific ground (snow aware)
  493.             // non-snow
  494.             childsprite {
  495.                 sprite: 2022;
  496.                 recolour_mode: RECOLOUR_REMAP;
  497.                 palette: PALETTE_USE_DEFAULT;
  498.                 hide_sprite: (LOAD_TEMP(13));
  499.                 always_draw: 1;
  500.             }
  501.             childsprite {
  502.                 sprite: 2022;
  503.                 recolour_mode: RECOLOUR_REMAP;
  504.                 palette: PALETTE_USE_DEFAULT;
  505.                 hide_sprite: (LOAD_TEMP(13));
  506.                 always_draw: 1;
  507.             }
  508.             // snow
  509.             childsprite {
  510.                 sprite: 2022;
  511.                 recolour_mode: RECOLOUR_REMAP;
  512.                 palette: PALETTE_USE_DEFAULT;
  513.                 hide_sprite: (!LOAD_TEMP(13));
  514.                 always_draw: 1;
  515.             }
  516.             childsprite {
  517.                 sprite: 2022;
  518.                 recolour_mode: RECOLOUR_REMAP;
  519.                 palette: PALETTE_USE_DEFAULT;
  520.                 hide_sprite: (!LOAD_TEMP(13));
  521.                 always_draw: 1;
  522.             }
  523.                     // buildings (snow aware)
  524.                     building {
  525.                         sprite: limestone_mine_spriteset_6_0(0);
  526.                         recolour_mode: RECOLOUR_REMAP;
  527.                         palette: PALETTE_USE_DEFAULT;
  528.                         xoffset: 0;
  529.                         yoffset: 0;
  530.                         zoffset: 0;
  531.                         xextent: 16;
  532.                         yextent: 16;
  533.                         zextent: 32;
  534.                         always_draw: 0;
  535.                         hide_sprite: (LOAD_TEMP(255));
  536.                     }
  537.                     building {
  538.                         sprite: limestone_mine_spriteset_6_0_snow(0);
  539.                         recolour_mode: RECOLOUR_REMAP;
  540.                         palette: PALETTE_USE_DEFAULT;
  541.                         xoffset: 0;
  542.                         yoffset: 0;
  543.                         zoffset: 0;
  544.                         xextent: 16;
  545.                         yextent: 16;
  546.                         zextent: 32;
  547.                         always_draw: 0;
  548.                         hide_sprite: (LOAD_TEMP(245));
  549.                     }
  550.         }
  551.         spritelayout limestone_mine_spritelayout_winding_house {
  552.             // Industry-specific ground (snow aware)
  553.             // non-snow
  554.             childsprite {
  555.                 sprite: 2022;
  556.                 recolour_mode: RECOLOUR_REMAP;
  557.                 palette: PALETTE_USE_DEFAULT;
  558.                 hide_sprite: (LOAD_TEMP(13));
  559.                 always_draw: 1;
  560.             }
  561.             childsprite {
  562.                 sprite: 2022;
  563.                 recolour_mode: RECOLOUR_REMAP;
  564.                 palette: PALETTE_USE_DEFAULT;
  565.                 hide_sprite: (LOAD_TEMP(13));
  566.                 always_draw: 1;
  567.             }
  568.             // snow
  569.             childsprite {
  570.                 sprite: 2022;
  571.                 recolour_mode: RECOLOUR_REMAP;
  572.                 palette: PALETTE_USE_DEFAULT;
  573.                 hide_sprite: (!LOAD_TEMP(13));
  574.                 always_draw: 1;
  575.             }
  576.             childsprite {
  577.                 sprite: 2022;
  578.                 recolour_mode: RECOLOUR_REMAP;
  579.                 palette: PALETTE_USE_DEFAULT;
  580.                 hide_sprite: (!LOAD_TEMP(13));
  581.                 always_draw: 1;
  582.             }
  583.                     // buildings (snow aware)
  584.                     building {
  585.                         sprite: limestone_mine_spriteset_7_0(0);
  586.                         recolour_mode: RECOLOUR_REMAP;
  587.                         palette: PALETTE_USE_DEFAULT;
  588.                         xoffset: 0;
  589.                         yoffset: 0;
  590.                         zoffset: 0;
  591.                         xextent: 16;
  592.                         yextent: 16;
  593.                         zextent: 32;
  594.                         always_draw: 0;
  595.                         hide_sprite: (LOAD_TEMP(255));
  596.                     }
  597.                     building {
  598.                         sprite: limestone_mine_spriteset_7_0_snow(0);
  599.                         recolour_mode: RECOLOUR_REMAP;
  600.                         palette: PALETTE_USE_DEFAULT;
  601.                         xoffset: 0;
  602.                         yoffset: 0;
  603.                         zoffset: 0;
  604.                         xextent: 16;
  605.                         yextent: 16;
  606.                         zextent: 32;
  607.                         always_draw: 0;
  608.                         hide_sprite: (LOAD_TEMP(245));
  609.                     }
  610.                 // smoke sprites
  611.                 building {
  612.                     sprite: 2040 + (animation_frame / 4);
  613.                     recolour_mode: RECOLOUR_REMAP;
  614.                     palette: PALETTE_USE_DEFAULT;
  615.                     xoffset: -1;
  616.                     yoffset: 2;
  617.                     zoffset: 38+ animation_frame;
  618.                     xextent: 11;
  619.                     yextent: 16;
  620.                     zextent: 7;
  621.                     hide_sprite: animation_frame > 19;
  622.                 }
  623.                 // smoke sprites
  624.                 building {
  625.                     sprite: 2040 + (animation_frame / 4);
  626.                     recolour_mode: RECOLOUR_REMAP;
  627.                     palette: PALETTE_USE_DEFAULT;
  628.                     xoffset: -1;
  629.                     yoffset: 6;
  630.                     zoffset: 38+ animation_frame;
  631.                     xextent: 11;
  632.                     yextent: 16;
  633.                     zextent: 7;
  634.                     hide_sprite: animation_frame > 19;
  635.                 }
  636.         }
  637.         spritelayout limestone_mine_spritelayout_exit_shed_rear {
  638.             // Industry-specific ground (snow aware)
  639.             // non-snow
  640.             childsprite {
  641.                 sprite: 2022;
  642.                 recolour_mode: RECOLOUR_REMAP;
  643.                 palette: PALETTE_USE_DEFAULT;
  644.                 hide_sprite: (LOAD_TEMP(13));
  645.                 always_draw: 1;
  646.             }
  647.             childsprite {
  648.                 sprite: 2022;
  649.                 recolour_mode: RECOLOUR_REMAP;
  650.                 palette: PALETTE_USE_DEFAULT;
  651.                 hide_sprite: (LOAD_TEMP(13));
  652.                 always_draw: 1;
  653.             }
  654.             // snow
  655.             childsprite {
  656.                 sprite: 2022;
  657.                 recolour_mode: RECOLOUR_REMAP;
  658.                 palette: PALETTE_USE_DEFAULT;
  659.                 hide_sprite: (!LOAD_TEMP(13));
  660.                 always_draw: 1;
  661.             }
  662.             childsprite {
  663.                 sprite: 2022;
  664.                 recolour_mode: RECOLOUR_REMAP;
  665.                 palette: PALETTE_USE_DEFAULT;
  666.                 hide_sprite: (!LOAD_TEMP(13));
  667.                 always_draw: 1;
  668.             }
  669.                     // buildings (snow aware)
  670.                     building {
  671.                         sprite: limestone_mine_spriteset_8_0(0);
  672.                         recolour_mode: RECOLOUR_REMAP;
  673.                         palette: PALETTE_USE_DEFAULT;
  674.                         xoffset: 0;
  675.                         yoffset: 0;
  676.                         zoffset: 0;
  677.                         xextent: 16;
  678.                         yextent: 16;
  679.                         zextent: 32;
  680.                         always_draw: 0;
  681.                         hide_sprite: (LOAD_TEMP(255));
  682.                     }
  683.                     building {
  684.                         sprite: limestone_mine_spriteset_8_0_snow(0);
  685.                         recolour_mode: RECOLOUR_REMAP;
  686.                         palette: PALETTE_USE_DEFAULT;
  687.                         xoffset: 0;
  688.                         yoffset: 0;
  689.                         zoffset: 0;
  690.                         xextent: 16;
  691.                         yextent: 16;
  692.                         zextent: 32;
  693.                         always_draw: 0;
  694.                         hide_sprite: (LOAD_TEMP(245));
  695.                     }
  696.         }
  697.         switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_industry_layout_1_graphics_switch, relative_pos) {
  698.                 relative_coord(0, 1): limestone_mine_spritelayout_headgear_animated;
  699.                 relative_coord(0, 2): limestone_mine_spritelayout_winding_house;
  700.                 relative_coord(1, 0): limestone_mine_spritelayout_crusher_rear_part;
  701.                 relative_coord(1, 1): limestone_mine_spritelayout_exit_shed_rear;
  702.                 relative_coord(1, 2): limestone_mine_spritelayout_hut_vents;
  703.                 relative_coord(2, 0): limestone_mine_spritelayout_tile_empty;
  704.                 relative_coord(2, 1): limestone_mine_spritelayout_exit_trestle_animated;
  705.                 relative_coord(2, 2): limestone_mine_spritelayout_tile_empty;
  706.                 relative_coord(3, 0): limestone_mine_spritelayout_crusher_front_part;
  707.                 relative_coord(3, 1): limestone_mine_spritelayout_ore_1;
  708.                 relative_coord(3, 2): limestone_mine_spritelayout_ore_2;
  709.             limestone_mine_spritelayout_headgear_animated; // a default is needed, but should never be reached, layout definitions are explicit
  710.         }
  711.         switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_industry_layout_2_graphics_switch, relative_pos) {
  712.                 relative_coord(0, 0): limestone_mine_spritelayout_crusher_rear_part;
  713.                 relative_coord(0, 1): limestone_mine_spritelayout_headgear_animated;
  714.                 relative_coord(0, 2): limestone_mine_spritelayout_winding_house;
  715.                 relative_coord(0, 3): limestone_mine_spritelayout_headgear_animated;
  716.                 relative_coord(0, 4): limestone_mine_spritelayout_winding_house;
  717.                 relative_coord(1, 0): limestone_mine_spritelayout_tile_empty;
  718.                 relative_coord(1, 1): limestone_mine_spritelayout_exit_shed_rear;
  719.                 relative_coord(1, 2): limestone_mine_spritelayout_tile_empty;
  720.                 relative_coord(1, 3): limestone_mine_spritelayout_exit_shed_rear;
  721.                 relative_coord(1, 4): limestone_mine_spritelayout_hut_vents;
  722.                 relative_coord(2, 0): limestone_mine_spritelayout_crusher_front_part;
  723.                 relative_coord(2, 1): limestone_mine_spritelayout_exit_trestle_animated;
  724.                 relative_coord(2, 2): limestone_mine_spritelayout_ore_1;
  725.                 relative_coord(2, 3): limestone_mine_spritelayout_exit_trestle_animated;
  726.                 relative_coord(2, 4): limestone_mine_spritelayout_ore_2;
  727.             limestone_mine_spritelayout_crusher_rear_part; // a default is needed, but should never be reached, layout definitions are explicit
  728.         }
  729.         switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_industry_layout_3_graphics_switch, relative_pos) {
  730.                 relative_coord(0, 0): limestone_mine_spritelayout_headgear_animated;
  731.                 relative_coord(0, 1): limestone_mine_spritelayout_winding_house;
  732.                 relative_coord(1, 0): limestone_mine_spritelayout_exit_shed_rear;
  733.                 relative_coord(1, 1): limestone_mine_spritelayout_ore_2;
  734.                 relative_coord(1, 2): limestone_mine_spritelayout_tile_empty;
  735.                 relative_coord(2, 0): limestone_mine_spritelayout_exit_trestle_animated;
  736.                 relative_coord(2, 1): limestone_mine_spritelayout_headgear_animated;
  737.                 relative_coord(2, 2): limestone_mine_spritelayout_winding_house;
  738.                 relative_coord(3, 2): limestone_mine_spritelayout_hut_vents;
  739.                 relative_coord(3, 1): limestone_mine_spritelayout_exit_shed_rear;
  740.                 relative_coord(3, 0): limestone_mine_spritelayout_crusher_rear_part;
  741.                 relative_coord(4, 0): limestone_mine_spritelayout_tile_empty;
  742.                 relative_coord(4, 1): limestone_mine_spritelayout_exit_trestle_animated;
  743.                 relative_coord(4, 2): limestone_mine_spritelayout_ore_2;
  744.                 relative_coord(5, 0): limestone_mine_spritelayout_crusher_front_part;
  745.                 relative_coord(5, 1): limestone_mine_spritelayout_ore_1;
  746.             limestone_mine_spritelayout_headgear_animated; // a default is needed, but should never be reached, layout definitions are explicit
  747.         }
  748.         switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_industry_layout_4_graphics_switch, relative_pos) {
  749.                 relative_coord(0, 0): limestone_mine_spritelayout_headgear_animated;
  750.                 relative_coord(0, 1): limestone_mine_spritelayout_winding_house;
  751.                 relative_coord(0, 2): limestone_mine_spritelayout_headgear_animated;
  752.                 relative_coord(0, 3): limestone_mine_spritelayout_winding_house;
  753.                 relative_coord(0, 4): limestone_mine_spritelayout_crusher_rear_part;
  754.                 relative_coord(1, 0): limestone_mine_spritelayout_exit_shed_rear;
  755.                 relative_coord(1, 1): limestone_mine_spritelayout_ore_2;
  756.                 relative_coord(1, 2): limestone_mine_spritelayout_exit_shed_rear;
  757.                 relative_coord(1, 3): limestone_mine_spritelayout_tile_empty;
  758.                 relative_coord(1, 4): limestone_mine_spritelayout_tile_empty;
  759.                 relative_coord(2, 0): limestone_mine_spritelayout_exit_trestle_animated;
  760.                 relative_coord(2, 1): limestone_mine_spritelayout_hut_vents;
  761.                 relative_coord(2, 2): limestone_mine_spritelayout_exit_trestle_animated;
  762.                 relative_coord(2, 3): limestone_mine_spritelayout_ore_1;
  763.                 relative_coord(2, 4): limestone_mine_spritelayout_crusher_front_part;
  764.             limestone_mine_spritelayout_headgear_animated; // a default is needed, but should never be reached, layout definitions are explicit
  765.         }
  766.     switch(FEAT_INDUSTRYTILES, PARENT, limestone_mine_industry_graphics_switch_layouts, layout_num) {
  767.             1: limestone_mine_industry_layout_1_graphics_switch;
  768.             2: limestone_mine_industry_layout_2_graphics_switch;
  769.             3: limestone_mine_industry_layout_3_graphics_switch;
  770.             4: limestone_mine_industry_layout_4_graphics_switch;
  771.         limestone_mine_industry_layout_1_graphics_switch; // default
  772.     }
  773.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_industry_construction_state_graphics_switch, construction_state) {
  774.         0..2: spritelayout_default_construction_states;
  775.         limestone_mine_industry_graphics_switch_layouts; // default
  776.     }
  777.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_store_temp_vars,
  778.             [STORE_TEMP(terrain_type == TILETYPE_SNOW, 13)
  779.                     , STORE_TEMP(0,
  780.                                  255)
  781.                     , STORE_TEMP(construction_state != 3 ? 1 : LOAD_TEMP(255),
  782.                                  255)
  783.                     , STORE_TEMP(LOAD_TEMP(13) == 0 ? 1 : LOAD_TEMP(255),
  784.                                  245)
  785.                     , STORE_TEMP(LOAD_TEMP(13) == 1 ? 1 : LOAD_TEMP(255),
  786.                                  255)
  787.             ]) {
  788.         limestone_mine_industry_construction_state_graphics_switch; // default
  789.     }
  790.     switch(FEAT_INDUSTRYTILES, PARENT, limestone_mine_industry_master_graphics_switch, STORE_TEMP(random_bits, 14)) {
  791.         limestone_mine_store_temp_vars; // default
  792.     }
  793.     switch (FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_fence_station, [
  794.                 STORE_TEMP(LOAD_TEMP(9) * (nearby_tile_class(-1,  0) != TILE_CLASS_STATION), 9),
  795.                 STORE_TEMP(LOAD_TEMP(10) * (nearby_tile_class( 0, -1) != TILE_CLASS_STATION), 10),
  796.                 STORE_TEMP(LOAD_TEMP(11) * (nearby_tile_class( 0,  1) != TILE_CLASS_STATION), 11),
  797.                 STORE_TEMP(LOAD_TEMP(12) * (nearby_tile_class( 1,  0) != TILE_CLASS_STATION), 12),
  798.             ]) {
  799.         limestone_mine_industry_master_graphics_switch;
  800.     }
  801.     switch (FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_fence_industry, [
  802.                 STORE_TEMP(LOAD_TEMP(9) * !nearby_tile_is_same_industry(-1,  0), 9),
  803.                 STORE_TEMP(LOAD_TEMP(10) * !nearby_tile_is_same_industry( 0, -1), 10),
  804.                 STORE_TEMP(LOAD_TEMP(11) * !nearby_tile_is_same_industry( 0,  1), 11),
  805.                 STORE_TEMP(LOAD_TEMP(12) * !nearby_tile_is_same_industry( 1,  0), 12),
  806.             ]) {
  807.         limestone_mine_tile_fence_station;
  808.     }
  809.     switch (FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_fences, [
  810.                 STORE_TEMP(0, 1),
  811.                 STORE_TEMP(0, 2),
  812.                 STORE_TEMP(0, 3),
  813.                 STORE_TEMP(0, 4),
  814.                 STORE_TEMP(1, 9),
  815.                 STORE_TEMP(1, 10),
  816.                 STORE_TEMP(1, 11),
  817.                 STORE_TEMP(1, 12),
  818.                 STORE_TEMP(0, 5),
  819.                 STORE_TEMP(0, 6),
  820.                 STORE_TEMP(0, 7),
  821.                 STORE_TEMP(0, 8),
  822.                 ]) {
  823.         limestone_mine_tile_fence_industry;
  824.     }
  825.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_1_lc_2,
  826.         (nearby_tile_class( 1,  1) == TILE_CLASS_INDUSTRY) |
  827.         (nearby_tile_class( 1,  0) == TILE_CLASS_INDUSTRY) |
  828.         (nearby_tile_class( 1, -1) == TILE_CLASS_INDUSTRY) |
  829.         (nearby_tile_class( 0, -1) == TILE_CLASS_INDUSTRY) |
  830.         (nearby_tile_class(-1, -1) == TILE_CLASS_INDUSTRY) |
  831.         (nearby_tile_class(-1,  0) == TILE_CLASS_INDUSTRY) |
  832.         (nearby_tile_class(-1,  1) == TILE_CLASS_INDUSTRY) |
  833.         (nearby_tile_class( 0,  1) == TILE_CLASS_INDUSTRY)) {
  834.         1: return CB_RESULT_LOCATION_DISALLOW;
  835.         return CB_RESULT_LOCATION_ALLOW;
  836.     }
  837.     switch (FEAT_INDUSTRYTILES, PARENT, limestone_mine_tile_1_lc_1, (
  838.                 (((extra_callback_info2 & 0xFF00) >> 8) == IND_CREATION_FUND) ||
  839.                 (((extra_callback_info2 & 0xFF00) >> 8) == IND_CREATION_PROSPECT)
  840.                 )
  841.             ) {
  842.         1: return CB_RESULT_LOCATION_ALLOW;
  843.         limestone_mine_tile_1_lc_2;
  844.     }
  845.     switch (FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_1_lc_0,
  846.                 (
  847.                 nearby_tile_height(-relative_x, -relative_y)
  848.                 + (nearby_tile_slope(-relative_x, -relative_y)
  849.                 == SLOPE_FLAT ? 0 :
  850.                 nearby_tile_slope(-relative_x, -relative_y) == bitmask(IS_STEEP_SLOPE) ? 2 : 1
  851.                 )) == (nearby_tile_height(0, 0)
  852.                 + (nearby_tile_slope(0, 0)
  853.                 == SLOPE_FLAT ? 0 :
  854.                 nearby_tile_slope(0, 0) == bitmask(IS_STEEP_SLOPE) ? 2 : 1))
  855.                 ) {
  856.         1: limestone_mine_tile_1_lc_1;
  857.         return CB_RESULT_LOCATION_DISALLOW;
  858.     }
  859.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_2_lc_2,
  860.         (nearby_tile_class( 1,  1) == TILE_CLASS_INDUSTRY) |
  861.         (nearby_tile_class( 1,  0) == TILE_CLASS_INDUSTRY) |
  862.         (nearby_tile_class( 1, -1) == TILE_CLASS_INDUSTRY) |
  863.         (nearby_tile_class( 0, -1) == TILE_CLASS_INDUSTRY) |
  864.         (nearby_tile_class(-1, -1) == TILE_CLASS_INDUSTRY) |
  865.         (nearby_tile_class(-1,  0) == TILE_CLASS_INDUSTRY) |
  866.         (nearby_tile_class(-1,  1) == TILE_CLASS_INDUSTRY) |
  867.         (nearby_tile_class( 0,  1) == TILE_CLASS_INDUSTRY)) {
  868.         1: return CB_RESULT_LOCATION_DISALLOW;
  869.         return CB_RESULT_LOCATION_ALLOW;
  870.     }
  871.     switch (FEAT_INDUSTRYTILES, PARENT, limestone_mine_tile_2_lc_1, (
  872.                 (((extra_callback_info2 & 0xFF00) >> 8) == IND_CREATION_FUND) ||
  873.                 (((extra_callback_info2 & 0xFF00) >> 8) == IND_CREATION_PROSPECT)
  874.                 )
  875.             ) {
  876.         1: return CB_RESULT_LOCATION_ALLOW;
  877.         limestone_mine_tile_2_lc_2;
  878.     }
  879.     switch (FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_2_lc_0,
  880.                 (
  881.                 nearby_tile_height(-relative_x, -relative_y)
  882.                 + (nearby_tile_slope(-relative_x, -relative_y)
  883.                 == SLOPE_FLAT ? 0 :
  884.                 nearby_tile_slope(-relative_x, -relative_y) == bitmask(IS_STEEP_SLOPE) ? 2 : 1
  885.                 )) == (nearby_tile_height(0, 0)
  886.                 + (nearby_tile_slope(0, 0)
  887.                 == SLOPE_FLAT ? 0 :
  888.                 nearby_tile_slope(0, 0) == bitmask(IS_STEEP_SLOPE) ? 2 : 1))
  889.                 ) {
  890.         1: limestone_mine_tile_2_lc_1;
  891.         return CB_RESULT_LOCATION_DISALLOW;
  892.     }
  893.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_3_lc_2,
  894.         (nearby_tile_class( 1,  1) == TILE_CLASS_INDUSTRY) |
  895.         (nearby_tile_class( 1,  0) == TILE_CLASS_INDUSTRY) |
  896.         (nearby_tile_class( 1, -1) == TILE_CLASS_INDUSTRY) |
  897.         (nearby_tile_class( 0, -1) == TILE_CLASS_INDUSTRY) |
  898.         (nearby_tile_class(-1, -1) == TILE_CLASS_INDUSTRY) |
  899.         (nearby_tile_class(-1,  0) == TILE_CLASS_INDUSTRY) |
  900.         (nearby_tile_class(-1,  1) == TILE_CLASS_INDUSTRY) |
  901.         (nearby_tile_class( 0,  1) == TILE_CLASS_INDUSTRY)) {
  902.         1: return CB_RESULT_LOCATION_DISALLOW;
  903.         return CB_RESULT_LOCATION_ALLOW;
  904.     }
  905.     switch (FEAT_INDUSTRYTILES, PARENT, limestone_mine_tile_3_lc_1, (
  906.                 (((extra_callback_info2 & 0xFF00) >> 8) == IND_CREATION_FUND) ||
  907.                 (((extra_callback_info2 & 0xFF00) >> 8) == IND_CREATION_PROSPECT)
  908.                 )
  909.             ) {
  910.         1: return CB_RESULT_LOCATION_ALLOW;
  911.         limestone_mine_tile_3_lc_2;
  912.     }
  913.     switch (FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_3_lc_0,
  914.                 (
  915.                 nearby_tile_height(-relative_x, -relative_y)
  916.                 + (nearby_tile_slope(-relative_x, -relative_y)
  917.                 == SLOPE_FLAT ? 0 :
  918.                 nearby_tile_slope(-relative_x, -relative_y) == bitmask(IS_STEEP_SLOPE) ? 2 : 1
  919.                 )) == (nearby_tile_height(0, 0)
  920.                 + (nearby_tile_slope(0, 0)
  921.                 == SLOPE_FLAT ? 0 :
  922.                 nearby_tile_slope(0, 0) == bitmask(IS_STEEP_SLOPE) ? 2 : 1))
  923.                 ) {
  924.         1: limestone_mine_tile_3_lc_1;
  925.         return CB_RESULT_LOCATION_DISALLOW;
  926.     }
  927.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_1_anim_control, 0) {
  928.         return 0;
  929.     }
  930.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_2_anim_control, (extra_callback_info1 % 71)) {
  931.             0: return 0;
  932.             1: return 1;
  933.             2: return 2;
  934.             3: return 3;
  935.             4: return 4;
  936.             5: return 5;
  937.             6: return 6;
  938.             7: return 7;
  939.             8: return 8;
  940.             9: return 9;
  941.             10: return 10;
  942.             11: return 11;
  943.             12: return 12;
  944.             13: return 13;
  945.             14: return 14;
  946.             15: return 15;
  947.             16: return 16;
  948.             17: return 17;
  949.             18: return 18;
  950.             19: return 19;
  951.             20: return 20;
  952.             21: return 21;
  953.             22: return 22;
  954.             23: return 23;
  955.             24: return 24;
  956.             25: return 25;
  957.             26: return 26;
  958.             27: return 27;
  959.             28: return 28;
  960.             29: return 29;
  961.             30: return 30;
  962.             31: return 31;
  963.             32: return 32;
  964.             33: return 33;
  965.             34: return 34;
  966.             35: return 35;
  967.             36: return 36;
  968.             37: return 37;
  969.             38: return 38;
  970.             39: return 39;
  971.             40: return 40;
  972.             41: return 41;
  973.             42: return 42;
  974.             43: return 43;
  975.             44: return 44;
  976.             45: return 45;
  977.             46: return 46;
  978.             47: return 47;
  979.             48: return 48;
  980.             49: return 49;
  981.             50: return 50;
  982.             51: return 51;
  983.             52: return 52;
  984.             53: return 53;
  985.             54: return 54;
  986.             55: return 55;
  987.             56: return 56;
  988.             57: return 57;
  989.             58: return 58;
  990.             59: return 59;
  991.             60: return 60;
  992.             61: return 61;
  993.             62: return 62;
  994.             63: return 63;
  995.             64: return 64;
  996.             65: return 65;
  997.             66: return 66;
  998.             67: return 67;
  999.             68: return 68;
  1000.             69: return 69;
  1001.             70: return 70;
  1002.         return CB_RESULT_NEXT_FRAME;
  1003.     }
  1004.     switch(FEAT_INDUSTRYTILES, SELF, limestone_mine_tile_3_anim_control, 0) {
  1005.         return 0;
  1006.     }
  1007.     item(FEAT_INDUSTRYTILES, limestone_mine_tile_1, 134) {
  1008.         property {
  1009.             substitute:         0;
  1010.             land_shape_flags:   0;
  1011.                 animation_info: [ANIMATION_LOOPING, 81];
  1012.                 animation_speed: 1;
  1013.             animation_triggers: bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP);
  1014.         }
  1015.         graphics {
  1016.                 tile_check: limestone_mine_tile_1_lc_0;
  1017.                 anim_next_frame: return ((animation_frame == 80) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME);
  1018.                 anim_control: limestone_mine_tile_1_anim_control;
  1019.             limestone_mine_tile_fences;
  1020.         }
  1021.     }
  1022.         if (economy==0) {
  1023.         }
  1024.         if (economy==1) {
  1025.         }
  1026.         if (economy==4) {
  1027.         }
  1028.         if (economy==5) {
  1029.                 item(FEAT_INDUSTRYTILES, limestone_mine_tile_1, 134) {
  1030.                     property {
  1031.                         accepted_cargos:  [[cargotype("ENSP"), 8]];
  1032.                     }
  1033.                 }
  1034.         }
  1035.         if (economy==3) {
  1036.         }
  1037.         if (economy==2) {
  1038.                 item(FEAT_INDUSTRYTILES, limestone_mine_tile_1, 134) {
  1039.                     property {
  1040.                         accepted_cargos:  [[cargotype("ENSP"), 8]];
  1041.                     }
  1042.                 }
  1043.         }
  1044.     item(FEAT_INDUSTRYTILES, limestone_mine_tile_2, 135) {
  1045.         property {
  1046.             substitute:         0;
  1047.             land_shape_flags:   0;
  1048.                 animation_info: [ANIMATION_LOOPING, 71];
  1049.                 animation_speed: 2;
  1050.             animation_triggers: bitmask(ANIM_TRIGGER_INDTILE_CONSTRUCTION_STATE);
  1051.         }
  1052.         graphics {
  1053.                 tile_check: limestone_mine_tile_2_lc_0;
  1054.                 anim_control: limestone_mine_tile_2_anim_control;
  1055.             limestone_mine_tile_fences;
  1056.         }
  1057.     }
  1058.         if (economy==0) {
  1059.         }
  1060.         if (economy==1) {
  1061.         }
  1062.         if (economy==4) {
  1063.         }
  1064.         if (economy==5) {
  1065.                 item(FEAT_INDUSTRYTILES, limestone_mine_tile_2, 135) {
  1066.                     property {
  1067.                         accepted_cargos:  [[cargotype("ENSP"), 8]];
  1068.                     }
  1069.                 }
  1070.         }
  1071.         if (economy==3) {
  1072.         }
  1073.         if (economy==2) {
  1074.                 item(FEAT_INDUSTRYTILES, limestone_mine_tile_2, 135) {
  1075.                     property {
  1076.                         accepted_cargos:  [[cargotype("ENSP"), 8]];
  1077.                     }
  1078.                 }
  1079.         }
  1080.     item(FEAT_INDUSTRYTILES, limestone_mine_tile_3, 136) {
  1081.         property {
  1082.             substitute:         0;
  1083.             land_shape_flags:   0;
  1084.                 animation_info: [ANIMATION_LOOPING, 200];
  1085.                 animation_speed: 3;
  1086.             animation_triggers: bitmask(ANIM_TRIGGER_INDTILE_TILE_LOOP);
  1087.         }
  1088.         graphics {
  1089.                 tile_check: limestone_mine_tile_3_lc_0;
  1090.                 anim_next_frame: return ((animation_frame == 18) ? CB_RESULT_STOP_ANIMATION : CB_RESULT_NEXT_FRAME);
  1091.                 anim_control: limestone_mine_tile_3_anim_control;
  1092.             limestone_mine_tile_fences;
  1093.         }
  1094.     }
  1095.         if (economy==0) {
  1096.         }
  1097.         if (economy==1) {
  1098.         }
  1099.         if (economy==4) {
  1100.         }
  1101.         if (economy==5) {
  1102.                 item(FEAT_INDUSTRYTILES, limestone_mine_tile_3, 136) {
  1103.                     property {
  1104.                         accepted_cargos:  [[cargotype("ENSP"), 8]];
  1105.                     }
  1106.                 }
  1107.         }
  1108.         if (economy==3) {
  1109.         }
  1110.         if (economy==2) {
  1111.                 item(FEAT_INDUSTRYTILES, limestone_mine_tile_3, 136) {
  1112.                     property {
  1113.                         accepted_cargos:  [[cargotype("ENSP"), 8]];
  1114.                     }
  1115.                 }
  1116.         }
  1117. /* *************************************************
  1118.  * Definition of the industry
  1119.  * *************************************************/
  1120.     tilelayout limestone_mine_industry_layout_1_tilelayout {
  1121.             0, 1: limestone_mine_tile_1;
  1122.             0, 2: limestone_mine_tile_2;
  1123.             1, 0: limestone_mine_tile_2;
  1124.             1, 1: limestone_mine_tile_2;
  1125.             1, 2: limestone_mine_tile_2;
  1126.             2, 0: limestone_mine_tile_2;
  1127.             2, 1: limestone_mine_tile_3;
  1128.             2, 2: limestone_mine_tile_2;
  1129.             3, 0: limestone_mine_tile_2;
  1130.             3, 1: limestone_mine_tile_2;
  1131.             3, 2: limestone_mine_tile_2;
  1132.     }
  1133.     tilelayout limestone_mine_industry_layout_2_tilelayout {
  1134.             0, 0: limestone_mine_tile_2;
  1135.             0, 1: limestone_mine_tile_1;
  1136.             0, 2: limestone_mine_tile_2;
  1137.             0, 3: limestone_mine_tile_1;
  1138.             0, 4: limestone_mine_tile_2;
  1139.             1, 0: limestone_mine_tile_2;
  1140.             1, 1: limestone_mine_tile_2;
  1141.             1, 2: limestone_mine_tile_2;
  1142.             1, 3: limestone_mine_tile_2;
  1143.             1, 4: limestone_mine_tile_2;
  1144.             2, 0: limestone_mine_tile_2;
  1145.             2, 1: limestone_mine_tile_3;
  1146.             2, 2: limestone_mine_tile_2;
  1147.             2, 3: limestone_mine_tile_3;
  1148.             2, 4: limestone_mine_tile_2;
  1149.     }
  1150.     tilelayout limestone_mine_industry_layout_3_tilelayout {
  1151.             0, 0: limestone_mine_tile_1;
  1152.             0, 1: limestone_mine_tile_2;
  1153.             1, 0: limestone_mine_tile_2;
  1154.             1, 1: limestone_mine_tile_2;
  1155.             1, 2: limestone_mine_tile_2;
  1156.             2, 0: limestone_mine_tile_3;
  1157.             2, 1: limestone_mine_tile_1;
  1158.             2, 2: limestone_mine_tile_2;
  1159.             3, 2: limestone_mine_tile_2;
  1160.             3, 1: limestone_mine_tile_2;
  1161.             3, 0: limestone_mine_tile_2;
  1162.             4, 0: limestone_mine_tile_2;
  1163.             4, 1: limestone_mine_tile_3;
  1164.             4, 2: limestone_mine_tile_2;
  1165.             5, 0: limestone_mine_tile_2;
  1166.             5, 1: limestone_mine_tile_2;
  1167.     }
  1168.     tilelayout limestone_mine_industry_layout_4_tilelayout {
  1169.             0, 0: limestone_mine_tile_1;
  1170.             0, 1: limestone_mine_tile_2;
  1171.             0, 2: limestone_mine_tile_1;
  1172.             0, 3: limestone_mine_tile_2;
  1173.             0, 4: limestone_mine_tile_2;
  1174.             1, 0: limestone_mine_tile_2;
  1175.             1, 1: limestone_mine_tile_2;
  1176.             1, 2: limestone_mine_tile_2;
  1177.             1, 3: limestone_mine_tile_2;
  1178.             1, 4: limestone_mine_tile_2;
  1179.             2, 0: limestone_mine_tile_3;
  1180.             2, 1: limestone_mine_tile_2;
  1181.             2, 2: limestone_mine_tile_3;
  1182.             2, 3: limestone_mine_tile_2;
  1183.             2, 4: limestone_mine_tile_2;
  1184.     }
  1185. switch(FEAT_INDUSTRIES, SELF, limestone_mine_extra_text, [
  1186.     STORE_TEMP((primary_level1_requirement * 1) |
  1187.     (primary_level2_requirement * 1) << 16, 0x100),
  1188.     LOAD_PERM(3)
  1189. ]) {
  1190.     primary_level2_bonus: return string(STR_PRIMARY_PRODUCTION_4X);
  1191.     primary_level1_bonus: return string(STR_PRIMARY_PRODUCTION_2X);
  1192.     return string(STR_PRIMARY_PRODUCTION_1X);
  1193. }
  1194. switch (FEAT_INDUSTRIES, SELF, limestone_mine_cargo_subtype_display, 1) {
  1195.     return 0x3800 + string(STR_EMPTY);
  1196. }
  1197. /* Primary production which is boosted by supplies */
  1198.     produce(limestone_mine_production, 9999, 9999, 9999, 0, 0, 0);
  1199.     switch(FEAT_INDUSTRIES, SELF, limestone_mine_produce, STORE_PERM(waiting_cargo_1 + waiting_cargo_2 + waiting_cargo_3 + LOAD_PERM(0), 0)) {
  1200.         limestone_mine_production;
  1201.     }
  1202.     produce(limestone_mine_production_256, 0, 0, 0, LOAD_TEMP(9) * production_rate_1 / 100, LOAD_TEMP(9) * production_rate_2 / 100, 0);
  1203.     switch(FEAT_INDUSTRIES, SELF, limestone_mine_produce_256_ticks,
  1204.             [STORE_TEMP(
  1205.                 LOAD_PERM(0) +
  1206.                 LOAD_PERM(1) +
  1207.                 LOAD_PERM(2),
  1208.             8),
  1209.             STORE_TEMP((LOAD_TEMP(8) >= (1 * primary_level2_requirement)) ? primary_level2_bonus :
  1210.                        (LOAD_TEMP(8) >= (1 * primary_level1_requirement)) ? primary_level1_bonus : 0, 9),
  1211.             STORE_PERM(LOAD_TEMP(9), 3)
  1212.             ]) {
  1213.         limestone_mine_production_256;
  1214.     }
  1215. /* =================================== */
  1216. /* Production change evaluated monthly */
  1217. /* =================================== */
  1218.     switch(FEAT_INDUSTRIES, SELF, limestone_mine_monthly_update, [
  1219.         STORE_PERM(LOAD_PERM(1), 2),
  1220.         STORE_PERM(LOAD_PERM(0), 1),
  1221.         STORE_PERM(0, 0)
  1222.     ]) {
  1223.         return CB_RESULT_IND_PROD_NO_CHANGE;
  1224.     }
  1225. switch(FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_param, restrict_open_during_gameplay) {
  1226.     1..255: return CB_RESULT_IND_NO_CONSTRUCTION;         // disallow when restrictions in place
  1227.     return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;       // we may build
  1228. }
  1229. switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_map_gen, extra_callback_info2 == IND_CREATION_GENERATION) {
  1230.     1: return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;
  1231.     limestone_mine_check_availability_param;
  1232. }
  1233. switch (FEAT_INDUSTRIES, SELF, limestone_mine_available_game_mode, game_mode == GAMEMODE_GAME) {
  1234.     1: limestone_mine_check_map_gen;
  1235.     return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;
  1236. }
  1237.     /* 0 */
  1238.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_0, current_date) {
  1239.         date(0,1,1) .. date(5000000,12,31): limestone_mine_available_game_mode;
  1240.         return CB_RESULT_IND_NO_CONSTRUCTION;
  1241.     }
  1242.     /* 0 */
  1243.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_1, current_date) {
  1244.         date(0,1,1) .. date(5000000,12,31): limestone_mine_available_game_mode;
  1245.         return CB_RESULT_IND_NO_CONSTRUCTION;
  1246.     }
  1247.     /* 0 */
  1248.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_4, current_date) {
  1249.         date(0,1,1) .. date(5000000,12,31): limestone_mine_available_game_mode;
  1250.         return CB_RESULT_IND_NO_CONSTRUCTION;
  1251.     }
  1252.     /* 0 */
  1253.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_5, current_date) {
  1254.         date(0,1,1) .. date(5000000,12,31): limestone_mine_available_game_mode;
  1255.         return CB_RESULT_IND_NO_CONSTRUCTION;
  1256.     }
  1257.     /* 0 */
  1258.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_3, current_date) {
  1259.         date(0,1,1) .. date(5000000,12,31): limestone_mine_available_game_mode;
  1260.         return CB_RESULT_IND_NO_CONSTRUCTION;
  1261.     }
  1262.     /* 0 */
  1263.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability_2, current_date) {
  1264.         date(0,1,1) .. date(5000000,12,31): limestone_mine_available_game_mode;
  1265.         return CB_RESULT_IND_NO_CONSTRUCTION;
  1266.     }
  1267. switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_availability, economy) {
  1268.         0: limestone_mine_check_availability_0;
  1269.         1: limestone_mine_check_availability_1;
  1270.         4: limestone_mine_check_availability_4;
  1271.         5: limestone_mine_check_availability_5;
  1272.         3: limestone_mine_check_availability_3;
  1273.         2: limestone_mine_check_availability_2;
  1274. }
  1275.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_min_distance_1, industry_distance(1)) {
  1276.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  1277.         return CB_RESULT_LOCATION_ALLOW;
  1278.     }
  1279.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_min_distance_7, industry_distance(7)) {
  1280.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  1281.         limestone_mine_min_distance_1;
  1282.     }
  1283.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_min_distance_43, industry_distance(43)) {
  1284.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  1285.         limestone_mine_min_distance_7;
  1286.     }
  1287.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_min_distance_3, industry_distance(3)) {
  1288.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  1289.         limestone_mine_min_distance_43;
  1290.     }
  1291.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_min_distance_54, industry_distance(54)) {
  1292.         0 .. 20: return CB_RESULT_LOCATION_DISALLOW;
  1293.         limestone_mine_min_distance_3;
  1294.     }
  1295.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_cluster_limestone_mine,
  1296.                 industry_count(limestone_mine) >= (3 * industry_clusters) &&
  1297.                 industry_distance(limestone_mine) > 70
  1298.             ) {
  1299.         1: return CB_RESULT_LOCATION_DISALLOW;
  1300.         limestone_mine_min_distance_54;
  1301.     }
  1302.     switch (FEAT_INDUSTRIES, SELF, limestone_mine_check_location, (
  1303.                 (extra_callback_info2 == IND_CREATION_FUND) ||
  1304.                 (extra_callback_info2 == IND_CREATION_PROSPECT)
  1305.                 )
  1306.             ) {
  1307.         1: return CB_RESULT_LOCATION_ALLOW;
  1308.         limestone_mine_cluster_limestone_mine;
  1309.     }
  1310.         if (economy==5) {
  1311.             item(FEAT_INDUSTRIES, limestone_mine, 54) {
  1312.                 property {
  1313.                     substitute: 0;
  1314.                     override: 0;
  1315.                     map_colour: 207;
  1316.                     life_type: IND_LIFE_TYPE_EXTRACTIVE;
  1317.                     min_cargo_distr: 5;
  1318.                     spec_flags: 0;
  1319.                     layouts: [limestone_mine_industry_layout_1_tilelayout,limestone_mine_industry_layout_2_tilelayout,limestone_mine_industry_layout_3_tilelayout,limestone_mine_industry_layout_4_tilelayout];
  1320.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  1321.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  1322.                     name: string(STR_IND_LIMESTONE_MINE);
  1323.                     prod_multiplier: [20, 0];
  1324.                     input_multiplier_1: [0, 0];
  1325.                     input_multiplier_2: [0, 0];
  1326.                     input_multiplier_3: [0, 0];
  1327.                     prob_random: 7;
  1328.                     prob_in_game: 4;
  1329.                     prospect_chance: 0.75;
  1330.                     fund_cost_multiplier: 232;
  1331.                     remove_cost_multiplier: 0;
  1332.                     remove_cost_multiplier: 0;
  1333.                     accept_cargo_types: [cargotype("ENSP")];
  1334.                     prod_cargo_types: [cargotype("LIME")];
  1335.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_LIMESTONE_MINES));
  1336.                 }
  1337.             }
  1338.         }
  1339.         if (economy==2) {
  1340.             item(FEAT_INDUSTRIES, limestone_mine, 54) {
  1341.                 property {
  1342.                     substitute: 0;
  1343.                     override: 0;
  1344.                     map_colour: 207;
  1345.                     life_type: IND_LIFE_TYPE_EXTRACTIVE;
  1346.                     min_cargo_distr: 5;
  1347.                     spec_flags: 0;
  1348.                     layouts: [limestone_mine_industry_layout_1_tilelayout,limestone_mine_industry_layout_2_tilelayout,limestone_mine_industry_layout_3_tilelayout,limestone_mine_industry_layout_4_tilelayout];
  1349.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  1350.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  1351.                     name: string(STR_IND_LIMESTONE_MINE);
  1352.                     prod_multiplier: [20, 0];
  1353.                     input_multiplier_1: [0, 0];
  1354.                     input_multiplier_2: [0, 0];
  1355.                     input_multiplier_3: [0, 0];
  1356.                     prob_random: 7;
  1357.                     prob_in_game: 4;
  1358.                     prospect_chance: 0.75;
  1359.                     fund_cost_multiplier: 232;
  1360.                     remove_cost_multiplier: 0;
  1361.                     remove_cost_multiplier: 0;
  1362.                     accept_cargo_types: [cargotype("ENSP")];
  1363.                     prod_cargo_types: [cargotype("LIME")];
  1364.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_LIMESTONE_MINES));
  1365.                 }
  1366.             }
  1367.         }
  1368.         if (economy==5) {
  1369.             item(FEAT_INDUSTRIES, limestone_mine, 54) {
  1370.                 graphics {
  1371.                     construction_probability: limestone_mine_check_availability;
  1372.                     build_prod_change:        randomise_primary_production_on_build;
  1373.                     produce_cargo_arrival:    limestone_mine_produce;
  1374.                     produce_256_ticks:        limestone_mine_produce_256_ticks;
  1375.                     monthly_prod_change:      limestone_mine_monthly_update;
  1376.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  1377.                     location_check:           limestone_mine_check_location;
  1378.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  1379.                     extra_text_industry:      limestone_mine_extra_text;
  1380.                     cargo_subtype_display:    limestone_mine_cargo_subtype_display;
  1381.                     colour:                   switch_colour;
  1382.                 }
  1383.             }
  1384.         }
  1385.         if (economy==2) {
  1386.             item(FEAT_INDUSTRIES, limestone_mine, 54) {
  1387.                 graphics {
  1388.                     construction_probability: limestone_mine_check_availability;
  1389.                     build_prod_change:        randomise_primary_production_on_build;
  1390.                     produce_cargo_arrival:    limestone_mine_produce;
  1391.                     produce_256_ticks:        limestone_mine_produce_256_ticks;
  1392.                     monthly_prod_change:      limestone_mine_monthly_update;
  1393.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  1394.                     location_check:           limestone_mine_check_location;
  1395.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  1396.                     extra_text_industry:      limestone_mine_extra_text;
  1397.                     cargo_subtype_display:    limestone_mine_cargo_subtype_display;
  1398.                     colour:                   switch_colour;
  1399.                 }
  1400.             }
  1401.         }

Comments