Difference between revisions of "Template:Infobox Element"

From The Powder Toy
Jump to: navigation, search
(Ignore State, display state based on TYPE_ from properties instead)
m (update github username)
 
(14 intermediate revisions by 2 users not shown)
Line 5: Line 5:
 
| caption = {{{description|}}}
 
| caption = {{{description|}}}
 
| header1 = Properties
 
| header1 = Properties
| label2 = Spawn temperature
+
| label2 = Section
| data2 = {{Temperature|t={{{temperature}}}}}
+
| data2 = <span data-toggle="tooltip" data-original-title="{{{menusection}}}">{{#switch: {{{menusection|}}}
| label3 = [[Heat Conductivity]]
+
  | SC_WALL = [[:Category:Walls|Walls]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Walls]] | }}
| data3 = <span data-toggle="tooltip" data-original-title="Raw value: {{{heatconduct}}}">{{#ifexpr: {{{heatconduct}}} > 250 | 100% | {{#expr:{{{heatconduct}}}*100/250 round 1}}% }}</span>
+
  | SC_ELEC = [[:Category:Electronics|Electronics]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Electronics]] | }}
| label4 = Relative [[weight]]
+
  | SC_POWERED = [[:Category:Powered Materials|Powered Materials]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Powered Materials]] | }}
| data4 = {{{weight}}}
+
  | SC_SENSOR = [[:Category:Sensors|Sensors]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Sensors]] | }}
| label5 = [[Gravity]]
+
  | SC_FORCE = [[:Category:Force|Force Elements]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Force]] | }}
| data5 = {{{gravity}}}
+
  | SC_EXPLOSIVE = [[:Category:Explosives|Explosives]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Explosives]] | }}
| label6 = Acid dissolve rate
+
  | SC_GAS = [[:Category:Gases|Gases]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Gases]] | }}
| data6 = {{#ifexpr: {{{hardness}}} > 1000 | 100% | {{#expr:{{{hardness}}}*100/1000 round 1}}% }}
+
  | SC_LIQUID = [[:Category:Liquids|Liquids]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Liquids]] | }}
 +
  | SC_POWDERS = [[:Category:Powders|Powders]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Powders]] | }}
 +
  | SC_SOLIDS = [[:Category:Solids|Solids]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Solids]] | }}
 +
  | SC_NUCLEAR = [[:Category:Radioactive|Radioactive]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Radioactive]] | }}
 +
  | SC_SPECIAL = [[:Category:Special|Special]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Special]] | }}
 +
  | SC_LIFE = Life
 +
  | SC_TOOL = [[:Category:Tools|Tools]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Tools]] | }}
 +
  | SC_DECO = [[:Category:Tools|Decoration tools]] {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Tools]] | }}
 +
  | SC_CRACKER = Shenanigans
 +
  | SC_CRACKER2 = Shenanigans
 +
  | unknown
 +
}} {{#ifexpr: {{{menuvisible}}} = 0 | (hidden) | }}</span>
 +
| label4 = Spawn temperature
 +
| data4 = {{Temperature|t={{{temperature}}}}}
 +
| label5 = [[Heat Conductivity]]
 +
| data5 = <span data-toggle="tooltip" data-original-title="Raw value: {{{heatconduct}}}">{{#ifexpr: {{{heatconduct}}} > 250 | 100% | {{#expr:{{{heatconduct}}}*100/250 round 1}}% }}</span>
 +
| label6 = Relative [[weight]]
 +
| data6 = {{{weight}}}
 +
| label7 = [[Gravity]]
 +
| data7 = {{{gravity}}}
 +
| label8 = [[Element:ACID|Acid]] dissolve rate
 +
| data8 = {{#ifexpr: {{{hardness}}} > 1000 | 100% | {{#expr:{{{hardness}}}*100/1000 round 1}}% }}
 
| label10 = [[Flammability]]
 
| label10 = [[Flammability]]
 
| data10 = {{{flammable}}}
 
| data10 = {{{flammable}}}
 
| label12 = {{#ifexpr: {{{explosive}}} > 0 | Explosive | }}
 
| label12 = {{#ifexpr: {{{explosive}}} > 0 | Explosive | }}
| data12 = {{#switch: {{{explosive}}
+
| data12 = {{#switch: {{{explosive}}}
 
   | 1 = when touching fire
 
   | 1 = when touching fire
 
   | 2 = with fire or pressure
 
   | 2 = with fire or pressure
Line 37: Line 58:
 
   {{#ifeq: {{{lowtemperaturetransition}}} | special |
 
   {{#ifeq: {{{lowtemperaturetransition}}} | special |
 
     transition occurs |
 
     transition occurs |
     {{Material|mat={{{lowtemperaturetransition}}}}}
+
     {{MaterialBtn | {{{lowtemperaturetransition}}}}}
 
   }} below {{Temperature|t={{{lowtemperature}}}}} | }}
 
   }} below {{Temperature|t={{{lowtemperature}}}}} | }}
 
| label32 = {{#if: {{{hightemperaturetransition|}}} | High temperature | }}
 
| label32 = {{#if: {{{hightemperaturetransition|}}} | High temperature | }}
Line 43: Line 64:
 
   {{#ifeq: {{{hightemperaturetransition}}} | special |
 
   {{#ifeq: {{{hightemperaturetransition}}} | special |
 
     transition occurs |
 
     transition occurs |
     {{Material|mat={{{hightemperaturetransition}}}}}
+
     {{MaterialBtn | {{{hightemperaturetransition}}}}}
 
   }} above {{Temperature|t={{{hightemperature}}}}} | }}
 
   }} above {{Temperature|t={{{hightemperature}}}}} | }}
 
| label33 = {{#if: {{{lowpressuretransition|}}} | Low pressure | }}
 
| label33 = {{#if: {{{lowpressuretransition|}}} | Low pressure | }}
Line 49: Line 70:
 
   {{#ifeq: {{{lowpressuretransition}}} | special |
 
   {{#ifeq: {{{lowpressuretransition}}} | special |
 
     transition occurs |
 
     transition occurs |
     {{Material|mat={{{lowpressuretransition}}}}}
+
     {{MaterialBtn | {{{lowpressuretransition}}}}}
 
   }} below {{{lowpressure}}} pressure | }}
 
   }} below {{{lowpressure}}} pressure | }}
 
| label34 = {{#if: {{{highpressuretransition|}}} | High pressure | }}
 
| label34 = {{#if: {{{highpressuretransition|}}} | High pressure | }}
Line 55: Line 76:
 
   {{#ifeq: {{{highpressuretransition}}} | special |
 
   {{#ifeq: {{{highpressuretransition}}} | special |
 
     transition occurs |
 
     transition occurs |
     {{Material|mat={{{highpressuretransition}}}}}
+
     {{MaterialBtn | {{{highpressuretransition}}}}}
 
   }} above {{{highpressure}}} pressure | }}
 
   }} above {{{highpressure}}} pressure | }}
 
| header40 = {{#if: {{#pos:{{{properties|}}} | PROP_}} | Misc properties |}}
 
| header40 = {{#if: {{#pos:{{{properties|}}} | PROP_}} | Misc properties |}}
| data46 = {{#if: {{#pos:{{{properties|}}}|PROP_CONDUCTS}} | Conducts electricity ([[SPRK]]) | }}
+
| data46 = {{#if: {{#pos:{{{properties|}}}|PROP_CONDUCTS}} | <span data-toggle="tooltip" data-original-title="PROP_CONDUCTS">Conducts electricity ({{Material|SPRK}})</span> {{#ifeq: {{{nocat|0}}} | 0 | [[Category:Conductive]] | }} | }}
| data47 = {{#if: {{#pos:{{{properties|}}}|PROP_NEUTPENETRATE}} | Mangled by neutrons | }}
+
| data47 = {{#if: {{#pos:{{{properties|}}}|PROP_NEUTPENETRATE}} | <span data-toggle="tooltip" data-original-title="PROP_NEUTPENETRATE">Mangled by neutrons</span> | }}
| data48 = {{#if: {{#pos:{{{properties|}}}|PROP_NEUTABSORB}} | Absorbs neutrons | }}
+
| data48 = {{#if: {{#pos:{{{properties|}}}|PROP_NEUTABSORB}} | <span data-toggle="tooltip" data-original-title="PROP_NEUTABSORB">Absorbs neutrons</span> | }}
| data49 = {{#if: {{#pos:{{{properties|}}}|PROP_NEUTPASS}} | Allows neutrons through | }}
+
| data49 = {{#if: {{#pos:{{{properties|}}}|PROP_NEUTPASS}} | <span data-toggle="tooltip" data-original-title="PROP_NEUTPASS">Allows neutrons to pass through</span> | }}
| data50 = {{#if: {{#pos:{{{properties|}}}|PROP_DEADLY}} | Harmful to [[STKM]] | }}
+
| data50 = {{#if: {{#pos:{{{properties|}}}|PROP_DEADLY}} | <span data-toggle="tooltip" data-original-title="PROP_DEADLY">Harmful to {{Material | STKM}}</span> | }}
| data51 = {{#if: {{#pos:{{{properties|}}}|PROP_RADIOACTIVE}} | Radioactive, harmful to [[STKM]] | }}
+
| data51 = {{#if: {{#pos:{{{properties|}}}|PROP_RADIOACTIVE}} | <span data-toggle="tooltip" data-original-title="PROP_RADIOACTIVE">Radioactive, harmful to {{Material | STKM}}</span> | }}
 +
| data60 = [https://github.com/ThePowderToy/The-Powder-Toy/blob/master/{{#if: {{{srcfile|}}}|{{{srcfile}}}|src/simulation/elements/{{#explode:{{{identifier|}}}|_|-1}}.cpp}} Source code]
 
}}
 
}}
 +
{{#ifeq: {{{nocat|0}}} | 0 | [[Category:Elements]] | }}
 
</includeonly><noinclude>
 
</includeonly><noinclude>
 
Infobox for displaying various element properties.
 
Infobox for displaying various element properties.
  
 
Most of them should be passed exactly as in the source code. However, the ''properties'' parameter should be space separated (so remove the pipes). Example: TYPE_LIQUID PROP_CONDUCTS PROP_NEUTPENETRATE PROP_LIFE_DEC
 
Most of them should be passed exactly as in the source code. However, the ''properties'' parameter should be space separated (so remove the pipes). Example: TYPE_LIQUID PROP_CONDUCTS PROP_NEUTPENETRATE PROP_LIFE_DEC
 +
 +
Example:
 +
 +
<pre><nowiki>{{ infobox Element
 +
| icon = ASDF.png
 +
| longname =
 +
| image =
 +
 +
| identifier = DEFAULT_PT_ASDF
 +
| name = ASDF
 +
| description = Very light dust. Flammable.
 +
| colour = FFE0A0
 +
| menusection = SC_POWDERS
 +
| menuvisible = 1
 +
| advection = 0.7
 +
| airdrag = 0.02
 +
| airloss = 0.96
 +
| loss = 0.8
 +
| collision = 0
 +
| diffusion = 0
 +
| explosive = 0
 +
| falldown = 1
 +
| flammable = 10
 +
| gravity = 0.1
 +
| hardness = 30
 +
| heatconduct = 70
 +
| hotair = 0
 +
| meltable = 0
 +
| state = ST_SOLID
 +
| temperature = 2564.15
 +
| weight = 85
 +
| properties = TYPE_PART PROP_LIFE_DEC PROP_LIFE_KILL_DEC PROP_CONDUCTS PROP_NEUTPENETRATE PROP_DEADLY
 +
| lowtemperature = 1234
 +
| lowtemperaturetransition = DUST
 +
| hightemperature = 5678
 +
| hightemperaturetransition = special
 +
| lowpressure =
 +
| lowpressuretransition =
 +
| highpressure =
 +
| highpressuretransition =
 +
}}</nowiki></pre>
 +
 +
which gives
 +
 +
{{ infobox Element
 +
| icon = ASDF.png
 +
| longname =
 +
| image =
 +
| nocat = 1
 +
 +
| identifier = DEFAULT_PT_ASDF
 +
| name = ASDF
 +
| description = Very light dust. Flammable.
 +
| colour = FFE0A0
 +
| menusection = SC_POWDERS
 +
| menuvisible = 1
 +
| advection = 0.7
 +
| airdrag = 0.02
 +
| airloss = 0.96
 +
| loss = 0.8
 +
| collision = 0
 +
| diffusion = 0
 +
| explosive = 0
 +
| falldown = 1
 +
| flammable = 10
 +
| gravity = 0.1
 +
| hardness = 30
 +
| heatconduct = 70
 +
| hotair = 0
 +
| meltable = 0
 +
| state = ST_SOLID
 +
| temperature = 2564.15
 +
| weight = 85
 +
| properties = TYPE_PART PROP_LIFE_DEC PROP_LIFE_KILL_DEC PROP_CONDUCTS PROP_NEUTPENETRATE PROP_DEADLY
 +
| lowtemperature = 1234
 +
| lowtemperaturetransition = DUST
 +
| hightemperature = 5678
 +
| hightemperaturetransition = special
 +
| lowpressure =
 +
| lowpressuretransition =
 +
| highpressure =
 +
| highpressuretransition =
 +
}}
 +
 
</noinclude>
 
</noinclude>

Latest revision as of 15:18, 7 July 2018

Infobox for displaying various element properties.

Most of them should be passed exactly as in the source code. However, the properties parameter should be space separated (so remove the pipes). Example: TYPE_LIQUID PROP_CONDUCTS PROP_NEUTPENETRATE PROP_LIFE_DEC

Example:

{{ infobox Element
| icon = ASDF.png
| longname = 
| image = 

| identifier = DEFAULT_PT_ASDF
| name = ASDF
| description = Very light dust. Flammable.
| colour = FFE0A0
| menusection = SC_POWDERS
| menuvisible = 1
| advection = 0.7
| airdrag = 0.02
| airloss = 0.96
| loss = 0.8
| collision = 0
| diffusion = 0
| explosive = 0
| falldown = 1
| flammable = 10
| gravity = 0.1
| hardness = 30
| heatconduct = 70
| hotair = 0
| meltable = 0
| state = ST_SOLID
| temperature = 2564.15
| weight = 85
| properties = TYPE_PART PROP_LIFE_DEC PROP_LIFE_KILL_DEC PROP_CONDUCTS PROP_NEUTPENETRATE PROP_DEADLY
| lowtemperature = 1234
| lowtemperaturetransition = DUST
| hightemperature = 5678
| hightemperaturetransition = special
| lowpressure = 
| lowpressuretransition = 
| highpressure = 
| highpressuretransition = 
}}

which gives

ASDF.png
Properties
Section Powders
Spawn temperature 2291°C
Heat Conductivity 28%
Relative weight 85
Gravity 0.1
Acid dissolve rate 3%
Flammability 10
State Powder
Transitions
Low temperature DUST.png below 960.85°C
High temperature transition occurs above 5404.85°C
Misc properties
Conducts electricity (SPRK)
Mangled by neutrons
Harmful to STKM
Source code