Prototype/Boiler: Difference between revisions
(→structure: fixed type: animation instead of sprite) |
(1.1.51: Prototype/EntityWithOwner added) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Prototype parent|Prototype/ | {{Prototype parent|Prototype/EntityWithOwner}} | ||
A [[boiler]]. | A [[boiler]]. | ||
Line 5: | Line 5: | ||
== Mandatory properties == | == Mandatory properties == | ||
This prototype inherits all the properties from [[Prototype/ | This prototype inherits all the properties from [[Prototype/EntityWithOwner]]. | ||
{{Prototype property|energy_source|[[Types/EnergySource|EnergySource]]}} | {{Prototype property|energy_source|[[Types/EnergySource|EnergySource]]}} | ||
{{Prototype property|fluid_box|[[Types/FluidBox|FluidBox]]}} | {{Prototype property|fluid_box|[[Types/FluidBox|FluidBox]]}} | ||
The input fluid box.<br> | |||
If <code>mode</code> is "heat-water-inside", the fluid is heated up directly in this fluidbox. | |||
{{Prototype property|output_fluid_box|[[Types/FluidBox|FluidBox]]}} | {{Prototype property|output_fluid_box|[[Types/FluidBox|FluidBox]]}} | ||
The output fluid box.<br> | |||
If <code>mode</code> is "output-to-separate-pipe" and this has a [[Types/FluidBox#filter|filter]], the input fluid is converted to the output fluid that is set in the filter (in a 1:1 ratio).<br> | |||
If <code>mode</code> is "heat-water-inside", this fluidbox is not used. | |||
{{Prototype property|energy_consumption|[[Types/Energy|Energy]]}} | {{Prototype property|energy_consumption|[[Types/Energy|Energy]]}} | ||
{{Prototype property|burning_cooldown|[[Types/uint32|uint32]]}} | {{Prototype property|burning_cooldown|[[Types/uint32|uint32]]}} | ||
Controls for how | Controls for how many ticks the boiler will show the fire and fire_glow after the energy source runs out of energy. | ||
Note that fire and fire_glow alpha is set to the light intensity of the energy source, so 0 light intensity means the fire is invisible. For burner energy sources, the light intensity will reach zero rather quickly after the boiler runs out of fuel, effectively capping the time that fire and fire_glow will be shown after the boiler runs out of fuel. | Note that fire and fire_glow alpha is set to the light intensity of the energy source, so 0 light intensity means the fire is invisible. For burner energy sources, the light intensity will reach zero rather quickly after the boiler runs out of fuel, effectively capping the time that fire and fire_glow will be shown after the boiler runs out of fuel. | ||
{{Prototype property|target_temperature|[[Types/double|double]]}} | {{Prototype property|target_temperature|[[Types/double|double]]}} | ||
When <code>mode</code> is "output-to-separate-pipe", this is the temperature that the input fluid must reach to be moved to output fluid box.<br> | |||
When <code>mode</code> is "heat-water-inside" this is unused. Instead, the fluid [[Prototype/Fluid#max_temperature|max_temperature]] is the target temperature for heating the fluid. | |||
{{Prototype property|structure|[[Types/table|table]]}} | {{Prototype property|structure|[[Types/table|table]]}} | ||
Line 39: | Line 46: | ||
This means the table itself is required, but can be empty. | This means the table itself is required, but can be empty. | ||
Animation that is drawn on top of the <code>structure</code> when <code>burning_cooldown</code> is larger than 1. The animation alpha can be controlled by the energy source light intensity, depending on <code>fire_flicker_enabled</code>.<br> | |||
The secondary draw order of this is higher than the secondary draw order of <code>fire_glow</code>, so this is drawn above <code>fire_glow</code>. | |||
{{Prototype property|fire_glow|[[Types/table|table]]}} | {{Prototype property|fire_glow|[[Types/table|table]]}} | ||
Line 49: | Line 59: | ||
This means the table itself is required, but can be empty. | This means the table itself is required, but can be empty. | ||
Animation that is drawn on top of the <code>structure</code> when <code>burning_cooldown</code> is larger than 1. The animation alpha that be controlled by the energy source light intensity, depending on <code>fire_glow_flicker_enabled</code>.<br> | |||
The secondary draw order of this is lower than the secondary draw order of <code>fire</code>, so this is drawn below <code>fire</code>. | |||
== Optional properties == | == Optional properties == | ||
{{Prototype property|fire_glow_flicker_enabled|[[Types/bool|bool]]|false|optional=true}} | {{Prototype property|fire_glow_flicker_enabled|[[Types/bool|bool]]|false|optional=true}} | ||
If this is set to false, <code>fire_glow</code> alpha is always 1 instead of being controlled by the light intensity of the energy source. | |||
{{Prototype property|fire_flicker_enabled|[[Types/bool|bool]]|false|optional=true}} | {{Prototype property|fire_flicker_enabled|[[Types/bool|bool]]|false|optional=true}} | ||
If this is set to false, <code>fire</code> alpha is always 1 instead of being controlled by the light intensity of the energy source. | |||
{{Prototype property|mode|[[Types/string|string]]|"heat-water-inside"|optional=true}} | {{Prototype property|mode|[[Types/string|string]]|"heat-water-inside"|optional=true}} | ||
One of "heat-water-inside" or "output-to-separate-pipe". | One of "heat-water-inside" or "output-to-separate-pipe".<br> | ||
In the "heat-water-inside" mode, fluid in the <code>fluid_box</code> is continuously heated from the input temperature up to its [[Prototype/Fluid#max_temperature|max_temperature]].<br> | |||
In the "output-to-separate-pipe" mode, fluid is transferred from the <code>fluid_box</code> to the <code>output_fluid_box</code> when enough energy is available to [[Prototype/Fluid#heat_capacity|heat]] the fluid to the <code>target_temperature</code>. Setting a filter on the <code>output_fluid_box</code> allows to specify that the input fluid should be converted to the filtered fluid, instead of it simply being transferred when it can be heated. | |||
{{Prototype property|patch|[[Types/table|table]]|optional=true}} | {{Prototype property|patch|[[Types/table|table]]|optional=true}} | ||
Line 66: | Line 83: | ||
* south - [[Types/Sprite|Sprite]] | * south - [[Types/Sprite|Sprite]] | ||
* west - [[Types/Sprite|Sprite]] | * west - [[Types/Sprite|Sprite]] | ||
Drawn above the <code>structure</code>, in the "higher-object-under" [[Types/RenderLayer]]. May be useful to correct problems with neighboring pipes overlapping the structure graphics. |
Latest revision as of 19:26, 21 January 2022
Prototype definitions » PrototypeBase » Prototype/Entity » Prototype/EntityWithHealth » Prototype/EntityWithOwner » Prototype/Boiler
A boiler.
Mandatory properties
This prototype inherits all the properties from Prototype/EntityWithOwner.
energy_source
Type: EnergySource
fluid_box
Type: FluidBox
The input fluid box.
If mode
is "heat-water-inside", the fluid is heated up directly in this fluidbox.
output_fluid_box
Type: FluidBox
The output fluid box.
If mode
is "output-to-separate-pipe" and this has a filter, the input fluid is converted to the output fluid that is set in the filter (in a 1:1 ratio).
If mode
is "heat-water-inside", this fluidbox is not used.
energy_consumption
Type: Energy
burning_cooldown
Type: uint32
Controls for how many ticks the boiler will show the fire and fire_glow after the energy source runs out of energy.
Note that fire and fire_glow alpha is set to the light intensity of the energy source, so 0 light intensity means the fire is invisible. For burner energy sources, the light intensity will reach zero rather quickly after the boiler runs out of fuel, effectively capping the time that fire and fire_glow will be shown after the boiler runs out of fuel.
target_temperature
Type: double
When mode
is "output-to-separate-pipe", this is the temperature that the input fluid must reach to be moved to output fluid box.
When mode
is "heat-water-inside" this is unused. Instead, the fluid max_temperature is the target temperature for heating the fluid.
structure
Type: table
Table with the following mandatory members:
fire
Type: table
Table with the following optional members:
This means the table itself is required, but can be empty.
Animation that is drawn on top of the structure
when burning_cooldown
is larger than 1. The animation alpha can be controlled by the energy source light intensity, depending on fire_flicker_enabled
.
The secondary draw order of this is higher than the secondary draw order of fire_glow
, so this is drawn above fire_glow
.
fire_glow
Type: table
Table with the following optional members:
This means the table itself is required, but can be empty.
Animation that is drawn on top of the structure
when burning_cooldown
is larger than 1. The animation alpha that be controlled by the energy source light intensity, depending on fire_glow_flicker_enabled
.
The secondary draw order of this is lower than the secondary draw order of fire
, so this is drawn below fire
.
Optional properties
fire_glow_flicker_enabled
Type: bool
Default: false
If this is set to false, fire_glow
alpha is always 1 instead of being controlled by the light intensity of the energy source.
fire_flicker_enabled
Type: bool
Default: false
If this is set to false, fire
alpha is always 1 instead of being controlled by the light intensity of the energy source.
mode
Type: string
Default: "heat-water-inside"
One of "heat-water-inside" or "output-to-separate-pipe".
In the "heat-water-inside" mode, fluid in the fluid_box
is continuously heated from the input temperature up to its max_temperature.
In the "output-to-separate-pipe" mode, fluid is transferred from the fluid_box
to the output_fluid_box
when enough energy is available to heat the fluid to the target_temperature
. Setting a filter on the output_fluid_box
allows to specify that the input fluid should be converted to the filtered fluid, instead of it simply being transferred when it can be heated.
patch
Type: table
Table with the following optional members:
Drawn above the structure
, in the "higher-object-under" Types/RenderLayer. May be useful to correct problems with neighboring pipes overlapping the structure graphics.