Difference between revisions of "Template:Recipe draw"

From Captain of Industry Wiki
Jump to: navigation, search
m (temporary Time=instant fix)
m (Add Fast Breeder Reactor to "building_aux")
 
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<includeonly><!--
<includeonly><!--
--><templatestyles src="Template:Recipe draw/styles.css" /><!--


   ** Clear variables in case of multiple uses on one page **
   ** Clear variables in case of multiple uses on one page **
Line 7: Line 6:
-->{{#vardefine: accepts | no}}<!--
-->{{#vardefine: accepts | no}}<!--
-->{{#vardefine: provides | no}}<!--
-->{{#vardefine: provides | no}}<!--
-->{{#vardefine: special_output | no}}<!--
   
   
   ** Set up variables to specify desired settings and reuse code **
   ** Set up variables to specify desired settings and reuse code **
Line 16: Line 16:
-->{{#vardefine: imgsz_reg | 48x48px }}<!--
-->{{#vardefine: imgsz_reg | 48x48px }}<!--


  ** List of pollution: must input in small latter **
-->{{#vardefine: pollution_1 | air pollution }}<!--
-->{{#vardefine: pollution_2 | water pollution }}<!--
-->{{#vardefine: pollution_3 | }}<!--
-->{{#vardefine: pollution_4 | }}<!--
  ** A short text to discriminate similar-looking buildings **
-->{{#vardefine: building_aux |<!--
  -->{{#switch: {{lc:{{{Building|}}}}}
      | assembly (electric) = Electric I
      | assembly (electric) ii = Electric II
      | assembly (manual) = Manual
      | assembly (robotic) = Robotic I
      | assembly (robotic) ii = Robotic II
      | concrete mixer = Tier I
      | concrete mixer ii = Tier II
      | concrete mixer iii = Tier III
      | microchip machine = Tier I
      | microchip machine ii = Tier II
      | mixer = Tier I
      | mixer ii = Tier II
      | cooling tower = Small
      | cooling tower (large) = Large
      | electrolyzer = Tier I
      | electrolyzer ii = Tier II
      | evaporation pond = Standard
      | evaporation pond (heated) = Heated
      | greenhouse = Tier I
      | greenhouse ii = Tier II
      | arc furnace = Tier I
      | arc furnace ii = Tier II
      | blast furnace = Tier I
      | blast furnace ii = Tier II
      | cooled caster = Tier I
      | cooled caster ii = Tier II
      | glass maker = Tier I
      | glass maker ii = Tier II
      | metal caster = Tier I
      | metal caster ii = Tier II
      | oxygen furnace = Tier I
      | oxygen furnace ii = Tier II
      | rotary kiln = Coal
      | rotary kiln (gas) = Gas
      | diesel generator = Tier I
      | diesel generator ii = Tier II
      | high-pressure turbine = Tier I
      | high-pressure turbine ii = Tier II
      | low-pressure turbine = Tier I
      | low-pressure turbine ii = Tier II
      | nuclear reactor = Tier I
      | nuclear reactor ii = Tier II
      | fast breeder reactor = FBR
      | chemical plant = Tier I
      | chemical plant ii = Tier II
      | smoke stack = Small
      | smoke stack (large) = Large
      | maintenance depot = Tier I
      | maintenance ii depot = Tier II
      | maintenance iii depot = Tier III
      | research lab = Tier I
      | research lab ii = Tier II
      | research lab iii = Tier III
      | research lab iv = Tier IV
      | research lab v = Tier V
      | #default =
    }}<!--
-->}}<!--
  ** Apply style **
--><templatestyles src="Template:Recipe draw/styles.css" /><!--
--><div class="recipe-wrapper {{#if: {{{Unreleased|}}} | unreleased_border}}"><!--
--><div class="recipe-wrapper {{#if: {{{Unreleased|}}} | unreleased_border}}"><!--


   ** Special output for when `Mining = yes` **
   ** Special output for when `Mining = yes` **


-->{{#if: {{{Mining|}}} |<!--
-->{{#ifeq: {{lc:{{{Input1Name|}}}}} | mining |<!--
   --><div class="block">[[File:Mining.png{{!}}{{#var: imgsz_large}}{{!}}link=Mining]]</div><!--
   --><div class="block">[[File:Mining.png{{!}}{{#var: imgsz_large}}{{!}}link=Designations#Mining]]</div><!--
   --><div class="block">{{#var: img_arrow}}</div><!--
   --><div class="block">{{#var: img_arrow}}</div><!--
   --><div class="block">[[File:{{{Output1Name}}}.png{{!}}{{#var: imgsz_large}}{{!}}link={{{Output1Name}}}]]</div><!--
   --><div class="block">[[File:{{{Output1Name}}}.png{{!}}{{#var: imgsz_large}}{{!}}link={{{Output1Name}}}]]</div><!--
  -->{{#vardefine: special_output | yes}}<!--
-->}}<!--
-->}}<!--


   ** Special output for when `Dumping = yes` **
   ** Special output for when `Dumping = yes` **


-->{{#if: {{{Dumping|}}} |<!--
-->{{#ifeq: {{lc:{{{Output1Name|}}}}} | dumping |<!--
   --><div class="block">[[File:{{{Input1Name}}}.png{{!}}{{#var: imgsz_large}}{{!}}link={{{Input1Name}}}]]</div><!--
   --><div class="block">[[File:{{{Input1Name}}}.png{{!}}{{#var: imgsz_large}}{{!}}link={{{Input1Name}}}]]</div><!--
   --><div class="block">{{#var: img_arrow}}</div><!--
   --><div class="block">{{#var: img_arrow}}</div><!--
   --><div class="block">[[File:Dumping.png{{!}}{{#var: imgsz_large}}{{!}}link=Dumping]]</div><!--
   --><div class="block">[[File:Dumping.png{{!}}{{#var: imgsz_large}}{{!}}link=Designations#Dumping]]</div><!--
  -->{{#vardefine: special_output | yes}}<!--
-->}}<!--
-->}}<!--


   ** Stop output if we we drew Mining or Dumping **
   ** Stop output if we drew Mining or Dumping **


-->{{#if: {{{Mining|}}}{{{Dumping|}}} ||<!--
-->{{#ifeq: {{#var: special_output}} | no |<!--


   ** Check if Template:Infobox_machine already knows the building. If not, try the `Building` param. **
   ** Check if Template:Infobox_machine already knows the building. If not, try the `Building` param. **
Line 48: Line 123:
   -->}}<!--
   -->}}<!--
-->}}<!--
-->}}<!--
  ** Determine if we should display the "PROVIDES" or "ACCEPTS" text in the output **
-->{{#if: {{{Input1Name|}}}{{{Input2Name|}}}{{{Input3Name|}}}{{{Input4Name|}}}{{{Input5Name|}}}{{{Input6Name|}}} || {{#vardefine: provides | yes}} }} <!--
-->{{#vardefine: combined_output | {{lc:{{{Output1Name|}}}{{{Output2Name|}}}{{{Output3Name|}}}{{{Output4Name|}}}{{{Output5Name|}}}{{{Output6Name|}}} }} }}<!--
-->{{#ifeq: <!--
  -->{{#expr: <!--
    -->    {{#ifeq: {{#var: combined_output}} | {{#var: pollution_1}} | 1 | 0 }} <!--
    --> or {{#ifeq: {{#var: combined_output}} | {{#var: pollution_2}} | 1 | 0 }} <!--
    --> or {{#ifeq: {{#var: combined_output}} | {{#var: pollution_3}} | 1 | 0 }} <!--
    --> or {{#ifeq: {{#var: combined_output}} | {{#var: pollution_4}} | 1 | 0 }} <!--
    --> or {{#ifeq: {{#var: combined_output}} | | 1 | 0 }} <!--
  -->}} | 1 | <!--
  -->{{#vardefine: accepts| yes}} | <!--
-->}} <!--


   ** Main sequence starts here **
   ** Main sequence starts here **


-->{{#ifeq: {{#var: bldg}} | none ||<!--
-->{{#ifeq: {{#var: bldg}} | none ||<!--
  ** Determine if we should display the "PROVIDES" or "ACCEPTS" text in the output **
-->{{#switch: {{lc:{{#var: bldg}}}}
    | flare   
    | smoke stack
    | smoke stack (large)
    | burner (solid)
    | liquid dump
    | gas injection pump = {{#vardefine: accepts | yes}}
    | groundwater pump
    | air separator
    | seawater pump
    | seawater pump (tall)
    | oil pump = {{#vardefine: provides | yes}}
  }}<!--


   ** Draw the building (and colon) unless the user or Template:Infobox_machine set it to hidden. **
   ** Draw the building (and colon) unless the user or Template:Infobox_machine set it to hidden. **


-->{{#if: {{{HideBldg|}}}{{#varexists:hidebldg}} ||<!--
-->{{#if: {{{HideBldg|}}}{{#varexists:hidebldg}} ||<!--
   --><div class="block">[[File:{{{Building}}}.png{{!}}{{#var: imgsz_bldg}}{{!}}link={{{Building}}}]]</div><!--
   --><div class="block">[[File:{{{Building}}}.png{{!}}{{#var: imgsz_bldg}}{{!}}link={{{Building}}}]]<small>{{#var: building_aux}}</small></div><!--
   --><div class="block colon">:</div><!--
   --><div class="block colon">:</div><!--
-->}}<!--
-->}}<!--
Line 81: Line 156:
-->{{#ifeq: {{#var: provides}} | yes | <div class="block accepts-provides">PROVIDES</div> }}<!--
-->{{#ifeq: {{#var: provides}} | yes | <div class="block accepts-provides">PROVIDES</div> }}<!--


   ** Draw 1st input unless {{#var: provides}} is `yes`. **
   ** Draw outputs except pollution if {{#var: provides}} is `yes`. **
 
   ** Draw input unless {{#var: provides}} is `yes`. **
-->{{#ifeq: {{#var: provides}} | yes ||<!--
  -->{{#if: {{{Input1Name|}}} |<!--
    --><div class="block"><!--
      --><div class="upper">{{#if: {{{Input1Unit|}}} | &nbsp; | {{{Input1Qty|}}}&nbsp;{{{Input1Unit|}}} }}</div><!--
      -->[[File:{{{Input1Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Input1Name}}}]]<!--
      -->{{#if: {{{Input1Unit|}}} | <!--
        --><div class="lower">{{{Input1Qty|}}}&nbsp;{{{Input1Unit|}}}</div>|<!--
        --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Input1Qty|}}} round 2 }}</div><!--
      -->}}<!--
    --></div><!--
  -->}}<!--
-->}}<!--
 
   ** Draw the 1st output instead if {{#var: provides}} is `yes`. **


-->{{#ifeq: {{#var: provides}} | yes |<!--
-->{{#ifeq: {{#var: provides}} | yes |<!--
   -->{{#if: {{{Output1Name|}}} |<!--
   -->{{Recipe item | Name = {{{Output1Name|}}} | Quantity = {{{Output1Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output1Unit|}}} | Pollution = hide }}<!--
    --><div class="block"><!--
  -->{{Recipe item | Name = {{{Output2Name|}}} | Quantity = {{{Output2Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output2Unit|}}} | Pollution = hide | Plus = yes }}<!--
      --><div class="upper">{{#if: {{{Output1Unit|}}} | &nbsp; | {{{Output1Qty|}}}&nbsp;{{{Output1Unit|}}} }}</div><!--
  -->{{Recipe item | Name = {{{Output3Name|}}} | Quantity = {{{Output3Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output3Unit|}}} | Pollution = hide | Plus = yes }}<!--
      -->[[File:{{{Output1Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output1Name}}}]]<!--
   -->{{Recipe item | Name = {{{Output4Name|}}} | Quantity = {{{Output4Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output4Unit|}}} | Pollution = hide | Plus = yes }}<!--
      -->{{#if: {{{Output1Unit|}}} | <!--
  -->{{Recipe item | Name = {{{Output5Name|}}} | Quantity = {{{Output5Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output5Unit|}}} | Pollution = hide | Plus = yes }}<!--
        --><div class="lower">{{{Output1Qty|}}}&nbsp;{{{Output1Unit|}}}</div>|<!--
  -->{{Recipe item | Name = {{{Output6Name|}}} | Quantity = {{{Output6Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output6Unit|}}} | Pollution = hide | Plus = yes }}<!--
        --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output1Qty|}}} round 2 }}</div><!--
   -->|<!--
      -->}}<!--
   -->{{Recipe item | Name = {{{Input1Name|}}} | Quantity = {{{Input1Qty|}}} | Time = {{{Time|}}} | Unit = {{{Input1Unit|}}} }} <!--
    --></div><!--
  -->{{Recipe item | Name = {{{Input2Name|}}} | Quantity = {{{Input2Qty|}}} | Time = {{{Time|}}} | Unit = {{{Input2Unit|}}} | Plus = yes }}<!--
   -->}}<!--
   -->{{Recipe item | Name = {{{Input3Name|}}} | Quantity = {{{Input3Qty|}}} | Time = {{{Time|}}} | Unit = {{{Input3Unit|}}} | Plus = yes }}<!--
-->}}<!--
  -->{{Recipe item | Name = {{{Input4Name|}}} | Quantity = {{{Input4Qty|}}} | Time = {{{Time|}}} | Unit = {{{Input4Unit|}}} | Plus = yes }}<!--
 
   -->{{Recipe item | Name = {{{Input5Name|}}} | Quantity = {{{Input5Qty|}}} | Time = {{{Time|}}} | Unit = {{{Input5Unit|}}} | Plus = yes }}<!--
  ** Draw 2nd input **
  -->{{Recipe item | Name = {{{Input6Name|}}} | Quantity = {{{Input6Qty|}}} | Time = {{{Time|}}} | Unit = {{{Input6Unit|}}} | Plus = yes }}<!--
 
-->{{#if: {{{Input2Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Input2Unit|}}} | &nbsp; | {{{Input2Qty|}}}&nbsp;{{{Input2Unit|}}} }}</div><!--
    -->[[File:{{{Input2Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Input2Name}}}]]<!--
    -->{{#if: {{{Input2Unit|}}} | <!--
      --><div class="lower">{{{Input2Qty|}}}&nbsp;{{{Input2Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Input2Qty|}}} round 2 }}</div><!--
    -->}}<!--
   --></div><!--
-->}}<!--
 
 
   ** Draw 3rd input **
 
-->{{#if: {{{Input3Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Input3Unit|}}} | &nbsp; | {{{Input3Qty|}}}&nbsp;{{{Input3Unit|}}} }}</div><!--
    -->[[File:{{{Input3Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Input3Name}}}]]<!--
    -->{{#if: {{{Input3Unit|}}} | <!--
      --><div class="lower">{{{Input3Qty|}}}&nbsp;{{{Input3Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Input3Qty|}}} round 2 }}</div><!--
    -->}}<!--
   --></div><!--
-->}}<!--
 
  ** Draw 4th input **
 
-->{{#if: {{{Input4Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Input4Unit|}}} | &nbsp; | {{{Input4Qty|}}}&nbsp;{{{Input4Unit|}}} }}</div><!--
    -->[[File:{{{Input4Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Input4Name}}}]]<!--
    -->{{#if: {{{Input4Unit|}}} | <!--
      --><div class="lower">{{{Input4Qty|}}}&nbsp;{{{Input4Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Input4Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--
 
   ** Draw 5th input **
 
-->{{#if: {{{Input5Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Input5Unit|}}} | &nbsp; | {{{Input5Qty|}}}&nbsp;{{{Input5Unit|}}} }}</div><!--
    -->[[File:{{{Input5Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Input5Name}}}]]<!--
    -->{{#if: {{{Input5Unit|}}} | <!--
      --><div class="lower">{{{Input5Qty|}}}&nbsp;{{{Input5Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Input5Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--
-->}}<!--


  ** Draw 6th input **
-->{{#if: {{{Input6Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Input6Unit|}}} | &nbsp; | {{{Input6Qty|}}}&nbsp;{{{Input6Unit|}}} }}</div><!--
    -->[[File:{{{Input6Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Input6Name}}}]]<!--
    -->{{#if: {{{Input6Unit|}}} | <!--
      --><div class="lower">{{{Input6Qty|}}}&nbsp;{{{Input6Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Input6Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--


   ** Draw the recipe times unless it has a unit defined (KW, MW, etc). **
   ** Draw the recipe times unless it has a unit defined (KW, MW, etc). **
   ** Use the "/ 60 🕓" format if: **
   ** Use the "/ 60 🕓" format if: **
     ** {{#var: provides}} is `yes` OR ( {{#var: accepts}} is `yes` AND {{{Output1Name|}}} doesn't exist ) **
     ** {{#var: provides}} is `yes` OR {{#var: accepts}} is `yes` **
   ** Draw an arrow unless: **
   ** Draw an arrow unless: **
     ** {{#var: provides}} is `yes` OR ( {{#var: accepts}} is `yes` AND {{{Output1Name|}}} doesn't exist ) **
     ** {{#var: provides}} is `yes` OR {{#var: accepts}} is `yes` **
       ** e.g., pumping groundwater, dumping brine (non-polluting) **
       ** e.g., pumping groundwater, dumping brine **


-->{{#if: {{{Time|}}} |<!--
-->{{#if: {{{Time|}}} |<!--
   --><div class="block time"><!--
   --><div class="block time"><!--
     -->{{#switch: {{lc:{{{Time}}}}} | 0 | instant = <div>{{#var: img_arrow}}</div> |<!--
     -->{{#ifeq: {{lc:{{{Time}}}}} | <!-- instant --> 0 | <div>{{#var: img_arrow}}</div> |<!--
       --><div class="upper"><!--
       --><div class="upper"><!--
         -->{{#ifeq: {{#var: provides}} | yes |<!--
         -->{{#ifeq: {{#var: provides}} | yes | /&nbsp; }}<!--
          -->/&nbsp; |<!--
        -->{{#ifeq: {{#var: accepts}} | yes | /&nbsp; }}<!--
          -->{{#ifeq: {{#var: accepts}} | yes |<!--
            -->{{#if: {{{Output1Name|}}} || <!--
              -->/&nbsp;<!--
            -->}}<!--
          -->}}<!--
        -->}}<!--
         -->{{{Time}}}&nbsp;[[File:Clock.png|link=Time|16x16px]]<!--
         -->{{{Time}}}&nbsp;[[File:Clock.png|link=Time|16x16px]]<!--
       --></div><!--
       --></div><!--
       --><div><!--
       --><div><!--
         -->{{#ifeq: {{#var: provides}} | yes |<!--
         -->{{#ifeq: {{#var: provides}} | yes | <br/> |<!--
          --><br/> |<!--
           -->{{#ifeq: {{#var: accepts}} | yes | <br/> |<!--
           -->{{#ifeq: {{#var: accepts}} | yes |<!--
            -->{{#if: {{{Output1Name|}}} | <!--
              -->{{#var: img_arrow}} | <!--
              --><br/><!--
            -->}}|<!--
             -->{{#var: img_arrow}}<!--
             -->{{#var: img_arrow}}<!--
           -->}}<!--
           -->}}<!--
Line 216: Line 199:
       --></div><!--
       --></div><!--
       --><div class="lower blue"><!--
       --><div class="lower blue"><!--
         -->{{#ifeq: {{#var: provides}} | yes |<!--
         -->{{#ifeq: {{#var: provides}} | yes | /&nbsp; }}<!--
          -->/&nbsp; |<!--
        -->{{#ifeq: {{#var: accepts}} | yes | /&nbsp; }}<!--
          -->{{#ifeq: {{#var: accepts}} | yes |<!--
            -->{{#if: {{{Output1Name|}}} || <!--
              -->/&nbsp;<!--
            -->}}<!--
          -->}}<!--
        -->}}<!--
         -->60&nbsp;[[File:Clock 60s.png|link=Time|16x16px]]<!--
         -->60&nbsp;[[File:Clock 60s.png|link=Time|16x16px]]<!--
       --></div><!--
       --></div><!--
Line 230: Line 207:
-->}}<!--
-->}}<!--


   ** Draw 1st output unless {{#var: provides}} is `yes` **
 
   ** Draw outputs except pollution unless {{#var: provides}} is `yes` **


-->{{#ifeq: {{#var: provides}} | yes ||<!--
-->{{#ifeq: {{#var: provides}} | yes ||<!--
   -->{{#if: {{{Output1Name|}}} |<!--
   -->{{Recipe item | Name = {{{Output1Name|}}} | Quantity = {{{Output1Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output1Unit|}}} | Pollution = hide }}<!--
    --><div class="block"><!--
  -->{{Recipe item | Name = {{{Output2Name|}}} | Quantity = {{{Output2Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output2Unit|}}} | Pollution = hide | Plus = yes }}<!--
      --><div class="upper">{{#if: {{{Output1Unit|}}} | &nbsp; | {{{Output1Qty|}}}&nbsp;{{{Output1Unit|}}} }}</div><!--
  -->{{Recipe item | Name = {{{Output3Name|}}} | Quantity = {{{Output3Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output3Unit|}}} | Pollution = hide | Plus = yes }}<!--
      -->[[File:{{{Output1Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output1Name}}}]]<!--
  -->{{Recipe item | Name = {{{Output4Name|}}} | Quantity = {{{Output4Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output4Unit|}}} | Pollution = hide | Plus = yes }}<!--
      -->{{#if: {{{Output1Unit|}}} | <!--
  -->{{Recipe item | Name = {{{Output5Name|}}} | Quantity = {{{Output5Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output5Unit|}}} | Pollution = hide | Plus = yes }}<!--
        --><div class="lower">{{{Output1Qty|}}}&nbsp;{{{Output1Unit|}}}</div>|<!--
  -->{{Recipe item | Name = {{{Output6Name|}}} | Quantity = {{{Output6Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output6Unit|}}} | Pollution = hide | Plus = yes }}<!--
        --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output1Qty|}}} round 2 }}</div><!--
      -->}}<!--
    --></div><!--
   -->}}<!--
   -->}}<!--
-->}}<!--
 
  ** Draw vertical line and pollution if pollution exists **


  ** Draw 2nd output **
-->{{#vardefine: all_pollutions |<!--
 
   -->{{Recipe item | Name = {{{Output1Name|}}} | Quantity = {{{Output1Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output1Unit|}}} | Pollution = only }}<!--
-->{{#if: {{{Output2Name|}}} |<!--
   -->{{Recipe item | Name = {{{Output2Name|}}} | Quantity = {{{Output2Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output2Unit|}}} | Pollution = only }}<!--
   --><div class="block">{{#var: img_plus}}</div><!--
  -->{{Recipe item | Name = {{{Output3Name|}}} | Quantity = {{{Output3Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output3Unit|}}} | Pollution = only }}<!--
   --><div class="block"><!--
  -->{{Recipe item | Name = {{{Output4Name|}}} | Quantity = {{{Output4Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output4Unit|}}} | Pollution = only }}<!--
    --><div class="upper">{{#if: {{{Output2Unit|}}} | &nbsp; | {{{Output2Qty|}}}&nbsp;{{{Output2Unit|}}} }}</div><!--
  -->{{Recipe item | Name = {{{Output5Name|}}} | Quantity = {{{Output5Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output5Unit|}}} | Pollution = only }}<!--
    -->[[File:{{{Output2Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output2Name}}}]]<!--
  -->{{Recipe item | Name = {{{Output6Name|}}} | Quantity = {{{Output6Qty|}}} | Time = {{{Time|}}} | Unit = {{{Output6Unit|}}} | Pollution = only }}<!--
    -->{{#if: {{{Output2Unit|}}} | <!--
      --><div class="lower">{{{Output2Qty|}}}&nbsp;{{{Output2Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output2Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--
-->}}<!--
 
-->{{#if: {{#var: all_pollutions}} |<!--
 
   -->&emsp;<!--
  ** Draw 3rd output **
   --><div style="display: inline-block;
 
                vertical-align: middle;
-->{{#if: {{{Output3Name|}}} |<!--
                min-height: 90px;
  --><div class="block">{{#var: img_plus}}</div><!--
                border-left: 2px solid #6d6d6d;
   --><div class="block"><!--
                margin-right: 11px"
    --><div class="upper">{{#if: {{{Output3Unit|}}} | &nbsp; | {{{Output3Qty|}}}&nbsp;{{{Output3Unit|}}} }}</div><!--
    -->[[File:{{{Output3Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output3Name}}}]]<!--
    -->{{#if: {{{Output3Unit|}}} | <!--
      --><div class="lower">{{{Output3Qty|}}}&nbsp;{{{Output3Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output3Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--
 
  ** Draw 4th output **
 
-->{{#if: {{{Output4Name|}}} |<!--
   --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Output4Unit|}}} | &nbsp; | {{{Output4Qty|}}}&nbsp;{{{Output4Unit|}}} }}</div><!--
    -->[[File:{{{Output4Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output4Name}}}]]<!--
    -->{{#if: {{{Output4Unit|}}} | <!--
      --><div class="lower">{{{Output4Qty|}}}&nbsp;{{{Output4Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output4Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--
 
  ** Draw 5th output **
 
-->{{#if: {{{Output5Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Output5Unit|}}} | &nbsp; | {{{Output5Qty|}}}&nbsp;{{{Output5Unit|}}} }}</div><!--
    -->[[File:{{{Output5Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output5Name}}}]]<!--
    -->{{#if: {{{Output5Unit|}}} | <!--
      --><div class="lower">{{{Output5Qty|}}}&nbsp;{{{Output5Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output5Qty|}}} round 2 }}</div><!--
    -->}}<!--
  --></div><!--
-->}}<!--
 
  ** Draw 6th output **
 
-->{{#if: {{{Output6Name|}}} |<!--
  --><div class="block">{{#var: img_plus}}</div><!--
  --><div class="block"><!--
    --><div class="upper">{{#if: {{{Output6Unit|}}} | &nbsp; | {{{Output6Qty|}}}&nbsp;{{{Output6Unit|}}} }}</div><!--
    -->[[File:{{{Output6Name}}}.png{{!}}{{#var: imgsz_reg}}{{!}}link={{{Output6Name}}}]]<!--
    -->{{#if: {{{Output6Unit|}}} | <!--
      --><div class="lower">{{{Output6Qty|}}}&nbsp;{{{Output6Unit|}}}</div>|<!--
      --><div class="lower blue">{{#expr: 60/{{{Time|1}}}*{{{Output6Qty|}}} round 2 }}</div><!--
    -->}}<!--
   --></div><!--
   --></div><!--
  -->{{#var: all_pollutions}}<!--
-->}}<!--
-->}}<!--


Line 319: Line 243:
-->}}<!-- End of Mining/Dumping check
-->}}<!-- End of Mining/Dumping check
-->{{#if: {{{Unreleased|}}} | <div class="unreleased_label">UNRELEASED</div> }}<!-- Big ol' label for unreleased content
-->{{#if: {{{Unreleased|}}} | <div class="unreleased_label">UNRELEASED</div> }}<!-- Big ol' label for unreleased content
--></div></includeonly><!--
--></div></includeonly><noinclude>{{documentation}}</noinclude>
--><noinclude>{{documentation}}</noinclude>

Latest revision as of 22:05, 25 May 2023

Template documentation (for the above template, sometimes hidden or invisible) [view] [edit] [history] [refresh]
Purpose
This template provides a method to rapidly illustrate crafting recipes without in-depth knowledge of wiki syntax or manual repetition/copy-pasting.
Basic usage
The following 2 templates are provided for making a recipe.
Both templates can be used with the format written in #Examples in this document.
Parameters
The template accepts the following parameters:
  • Building: Name of buildings (example: Blast Furnace). No need to specify on pages using Template:Infobox machine because the building is automatically detected.
  • Input1Name, Input2Name, ..., Input6Name: Name of materials (example: Iron Ore)
    • Input1Name = Mining (optional): Applies special format for mining.
  • Output1Name, Output2Name, ... Output6Name: Name of products (example: Molten Iron)
    • Output1Name = Dumping (optional): Applies special format for dumping.
  • Input1Qty, ..., Input6Qty, Output1Qty, ..., Output6Qty: Amount of materials or products per 1 cycle of recipe.
  • Time: Cycle time of recipe.
  • Input1Unit, ..., Input6Unit, Output1Unit, ..., Output6Unit (optional): Adds unit (for Electricity and Mechanical Power)
  • HideBldg (optional, rare): Hides building in recipe. No need to specify on pages using Template:Infobox machine (the building is automatically hidden).
  • Unreleased = yes (optional, rare): Applies special format for unreleased recipe
Limitations
This template can accept up to 6 inputs, 6 outputs, and 1 time value per recipe. The output can include only 1 pollution.

Examples

Example usage for mining
Markup Renders as
  {{Recipe
    | Input1Name  = Mining
    | Output1Name = Copper Ore
  }}
Mining.png
Transform.png
Copper Ore.png
Example usage for dumping loose materials
Markup Renders as
  {{Recipe
    | Output1Name = Dumping
    | Input1Name  = Rock
  }}
Rock.png
Transform.png
Dumping.png
Example usage for a machine with both inputs and outputs without pollution (most recipes)
Markup Renders as
  {{Recipe
    | Building    = Rotary Kiln
    | Input1Name  = Limestone
    | Input1Qty   = 12
    | Input2Name  = Coal
    | Input2Qty   = 2
    | Time        = 10
    | Output1Name = Cement
    | Output1Qty  = 4
    | Output2Name = Exhaust
    | Output2Qty  = 8
  }}
Rotary Kiln.pngCoal
:
12
Limestone.png
72
Plus.png
2
Coal.png
12
10 Clock.png
Transform.png
60 Clock 60s.png
4
Cement.png
24
Plus.png
8
Exhaust.png
48
Example for buildings that "provide" materials (Groundwater Pump, Air Separator, etc.)
Markup Renders as
  {{Recipe
    | Building    = Groundwater Pump
    | Time        = 10
    | Output1Name = Water
    | Output1Qty  = 8
  }}
Groundwater Pump.png
:
PROVIDES
8
Water.png
48
/ 10 Clock.png

/ 60 Clock 60s.png
Example usage for dumping/flaring/venting non-polluting liquids/gasses
Markup Renders as
  {{Recipe
    | Building    = Smoke Stack
    | Input1Name  = Oxygen
    | Input1Qty   = 200
    | Time        = 20
  }}
Smoke Stack.pngSmall
:
ACCEPTS
200
Oxygen.png
600
/ 20 Clock.png

/ 60 Clock 60s.png
Example usage for recipe with pollution
Markup Renders as
  {{Recipe
    | Building    = Liquid Dump
    | Input1Name  = Waste Water
    | Input1Qty   = 2
    | Time        = 2
    | Output1Name = Water Pollution
    | Output1Qty  = 2
  }}
Liquid Dump.png
:
ACCEPTS
2
Waste Water.png
60
/ 2 Clock.png

/ 60 Clock 60s.png
2
Water Pollution.png
60
  {{Recipe
    | Building    = Exhaust Scrubber
    | Input1Name  = Exhaust
    | Input1Qty   = 30
    | Input2Name  = Water
    | Input2Qty   = 4
    | Time        = 10
    | Output1Name = Sulfur
    | Output1Qty  = 1
    | Output2Name = Carbon Dioxide
    | Output2Qty  = 12
    | Output3Name = Steam Lo
    | Output3Qty  = 4
    | Output4Name = Air Pollution
    | Output4Qty  = 4
  }}
Exhaust Scrubber.png
:
30
Exhaust.png
180
Plus.png
4
Water.png
24
10 Clock.png
Transform.png
60 Clock 60s.png
1
Sulfur.png
6
Plus.png
12
Carbon Dioxide.png
72
Plus.png
4
Steam Lo.png
24
4
Air Pollution.png
24
Example usage for Mechanical Power and Electricity recipes with units
Markup Renders as
  {{Recipe
    | Building    = Low-pressure Turbine
    | Input1Name  = Steam Lo
    | Input1Qty   = 4
    | Time        = 5
    | Output1Name = Mechanical Power
    | Output1Qty  = 1
    | Output1Unit = MW
    | Output2Name = Steam Depleted
    | Output2Qty  = 4
  }}
Low-pressure Turbine.pngTier I
:
4
Steam Lo.png
48
Clock.png
Transform.png
60 Clock 60s.png
 
Mechanical Power.png
1 MW
Plus.png
4
Steam Depleted.png
48
Example usage for instantaneous recipes
Markup Renders as
  {{Recipe
    | Building    = Power Generator
    | Input1Name  = Mechanical Power
    | Input1Qty   = 500
    | Input1Unit  = KW
    | Time        = 0
    | Output1Name = Electricity
    | Output1Qty  = 250
    | Output1Unit = KW
  }}
Power Generator.png
:
 
Mechanical Power.png
500 KW
Transform.png
 
Electricity.png
250 KW
Example usage for recipes with variable quantity
Markup Renders as
  {{Recipe
    | Building    = Waste Collection
    | Time        = 60
    | Output1Name = Waste
    | Output1Unit = ?
  }}
Waste Collection.png
:
PROVIDES
?
Waste.png
?
/ 60 Clock.png

/ 60 Clock 60s.png
Example usage for hiding the building (automatically happens on pages using Template:Infobox machine)
Markup Renders as
  {{Recipe
    | Building    = Mixer
    | HideBldg    = yes
    | Input1Name  = Sand
    | Input1Qty   = 18
    | Input2Name  = Limestone
    | Input2Qty   = 4
    | Input3Name  = Salt
    | Input3Qty   = 4
    | Time        = 20
    | Output1Name = Glass Mix
    | Output1Qty  = 14
  }}
18
Sand.png
54
Plus.png
4
Limestone.png
12
Plus.png
4
Salt.png
12
20 Clock.png
Transform.png
60 Clock 60s.png
14
Glass Mix.png
42
Example usage for unreleased recipe
Markup Renders as
  {{Recipe
    | Building    = Crusher
    | Input1Name  = Gravel
    | Input1Qty   = 18
    | Time        = 20
    | Output1Name = Gold
    | Output1Qty  = 14
    | Unreleased  = yes
  }}
Crusher.png
:
20
Gravel.png
60
20 Clock.png
Transform.png
60 Clock 60s.png
1
Gold.png
3
UNRELEASED
The above text is transcluded from Template:Recipe draw/doc; you can change it or view its history. (How does this work?)
If you're done making changes, please refresh the text. (Why?)
You can experiment in this template's sandbox (edit | diff) and testcases (create) pages.
Please add categories and interwikis to Template:Recipe draw/doc. (View all subpages of this page.)