Prototype/StorageTank: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(typo)
m (→‎Mandatory properties: Documented window_bounding_box partially)
Line 10: Line 10:


{{Prototype property|window_bounding_box|[[Types/BoundingBox|BoundingBox]]}}
{{Prototype property|window_bounding_box|[[Types/BoundingBox|BoundingBox]]}}
The location of the window showing the contents. Note that for window_background the width and height are determined by the sprite and window_bounding_box only determines the drawing location. For fluid_background the width is determined by the sprite and the height and drawing location are determined by window_bounding_box.


{{Prototype property|pictures|[[Types/table|table]]}}
{{Prototype property|pictures|[[Types/table|table]]}}

Revision as of 14:44, 26 August 2019

Template:Prototype parent A storage tank.

Template:Prototype TOC

Mandatory properties

This prototype inherits all the properties from Prototype/EntityWithHealth.

Template:Prototype property

Template:Prototype property The location of the window showing the contents. Note that for window_background the width and height are determined by the sprite and window_bounding_box only determines the drawing location. For fluid_background the width is determined by the sprite and the height and drawing location are determined by window_bounding_box.

Template:Prototype property Table with the following mandatory members:

Template:Prototype property Must be positive.

Used for determining the x position inside the flow_sprite when drawing the storage tank. Does not affect gameplay.

The x position of the sprite will be ((game.tick % flow_length_in_ticks) ÷ flow_length_in_ticks) × (flow_sprite.width - 32). This means, that over flow_length_in_ticks ticks, the part of the flow_sprite that is drawn in-game is incrementally moved from most-left to most-right inside the actual sprite, that part always has a width of 32px. After flow_length_in_ticks, the part of the flow_sprite that is drawn will start from the left again.

Diagram:

Example state:
  [  { }     ]
  [] <- flow_sprite
  {} <- the part that is drawn in-game, width is 32px

This means:
State at (tick % flow_length_in_ticks) == 0:
  [{ }       ]
State at (tick % flow_length_in_ticks) == (flow_length_in_ticks ÷ 2):
  [    { }   ]
State at (tick % flow_length_in_ticks) == (flow_length_in_ticks - 1):
  [       { }]

Optional properties

Template:Prototype property

Template:Prototype property

Template:Prototype property

Template:Prototype property

Template:Prototype property Mandatory if circuit_wire_max_distance > 0.

Template:Prototype property Mandatory if circuit_wire_max_distance > 0.

Template:Prototype property If the icons of fluids shown in alt-mode should be scaled to the storage tank's size.