factorio-types 1.2.49 → 1.2.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/classes.d.ts +763 -588
- package/dist/concepts.d.ts +272 -197
- package/dist/datacollection.d.ts +1 -1
- package/dist/defines.d.ts +214 -206
- package/dist/events.d.ts +431 -398
- package/dist/global.d.ts +2 -2
- package/dist/prototypes.d.ts +111 -15
- package/dist/types.d.ts +89 -21
- package/package.json +2 -2
package/dist/global.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Factorio API reference https://lua-api.factorio.com/latest/index.html
|
|
3
3
|
// Generated from JSON source https://lua-api.factorio.com/latest/runtime-api.json
|
|
4
4
|
// Definition source https://github.com/sguest/factorio-types
|
|
5
|
-
// Factorio version 2.0.
|
|
5
|
+
// Factorio version 2.0.67
|
|
6
6
|
// API version 6
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -64,4 +64,4 @@ declare function log(this: void, string: runtime.LocalisedString): void;
|
|
|
64
64
|
*
|
|
65
65
|
* Note that `table_size()` does not work correctly for {@link LuaCustomTable | runtime:LuaCustomTable}, their size has to be determined with {@link LuaCustomTable::length_operator | runtime:LuaCustomTable::length_operator} instead.
|
|
66
66
|
*/
|
|
67
|
-
declare function table_size(this: void, table: runtime.table):
|
|
67
|
+
declare function table_size(this: void, table: runtime.table): uint32;
|
package/dist/prototypes.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Factorio API reference https://lua-api.factorio.com/latest/index.html
|
|
3
3
|
// Generated from JSON source https://lua-api.factorio.com/latest/prototype-api.json
|
|
4
4
|
// Definition source https://github.com/sguest/factorio-types
|
|
5
|
-
// Factorio version 2.0.
|
|
5
|
+
// Factorio version 2.0.67
|
|
6
6
|
// API version 6
|
|
7
7
|
|
|
8
8
|
declare namespace prototype {
|
|
@@ -981,7 +981,11 @@ interface AutoplaceControl extends Prototype {
|
|
|
981
981
|
*/
|
|
982
982
|
category: 'resource' | 'terrain' | 'cliff' | 'enemy';
|
|
983
983
|
/**
|
|
984
|
-
*
|
|
984
|
+
* Hides the autoplace control from the map generation screen.
|
|
985
|
+
*/
|
|
986
|
+
hidden?: boolean;
|
|
987
|
+
/**
|
|
988
|
+
* Whether this settings being lower than default disables fight related achievements.
|
|
985
989
|
*/
|
|
986
990
|
related_to_fight_achievements?: boolean;
|
|
987
991
|
/**
|
|
@@ -1191,7 +1195,7 @@ interface BoilerPrototype extends EntityWithOwnerPrototype {
|
|
|
1191
1195
|
/**
|
|
1192
1196
|
* The output fluid box.
|
|
1193
1197
|
*
|
|
1194
|
-
* If `mode` is `"output-to-separate-pipe"` and this has a {@link filter | prototype:FluidBox::filter}, the heated input fluid is converted to the output fluid that is set in the filter. The conversion ratio is based on the heat capacity of the fluids: `output_fluid_amount = input_fluid_amount * (output_fluid_heat_capacity / input_fluid_heat_capacity)`
|
|
1198
|
+
* If `mode` is `"output-to-separate-pipe"` and this has a {@link filter | prototype:FluidBox::filter}, the heated input fluid is converted to the output fluid that is set in the filter. The conversion ratio is based on the {@link heat capacity | prototype:FluidPrototype::heat_capacity} of the fluids: `output_fluid_amount = input_fluid_amount * (output_fluid_heat_capacity / input_fluid_heat_capacity)`
|
|
1195
1199
|
*
|
|
1196
1200
|
* If `mode` is `"heat-fluid-inside"`, this fluidbox is unused.
|
|
1197
1201
|
*/
|
|
@@ -1423,6 +1427,7 @@ interface CargoPodPrototype extends EntityWithOwnerPrototype {
|
|
|
1423
1427
|
* Has to be of type 'pod-catalogue'.
|
|
1424
1428
|
*/
|
|
1425
1429
|
default_shadow_graphic?: ProcessionGraphic;
|
|
1430
|
+
impact_trigger?: Trigger;
|
|
1426
1431
|
inventory_size: ItemStackIndex;
|
|
1427
1432
|
procession_audio_catalogue?: ProcessionAudioCatalogue;
|
|
1428
1433
|
procession_graphic_catalogue?: ProcessionGraphicCatalogue;
|
|
@@ -2582,11 +2587,11 @@ interface DecorativePrototype extends Prototype {
|
|
|
2582
2587
|
/**
|
|
2583
2588
|
* Can be defined only when decorative is not "decal" (see `render_layer`).
|
|
2584
2589
|
*/
|
|
2585
|
-
stateless_visualisation?:
|
|
2590
|
+
stateless_visualisation?: StatelessVisualisation | StatelessVisualisation[];
|
|
2586
2591
|
/**
|
|
2587
2592
|
* Only loaded if `stateless_visualisation` is not defined. Can be defined only when decorative is not "decal" (see `render_layer`).
|
|
2588
2593
|
*/
|
|
2589
|
-
stateless_visualisation_variations?:
|
|
2594
|
+
stateless_visualisation_variations?: (StatelessVisualisation | StatelessVisualisation[])[];
|
|
2590
2595
|
target_count?: uint16;
|
|
2591
2596
|
/**
|
|
2592
2597
|
* Mandatory if `render_layer` = "decals". This int16 is converted to a {@link TileRenderLayer | prototype:TileRenderLayer} internally. It is offset from `ground-natural`.
|
|
@@ -3275,7 +3280,7 @@ interface EntityPrototype extends Prototype {
|
|
|
3275
3280
|
/**
|
|
3276
3281
|
* Name of the entity that will be automatically selected as the upgrade of this entity when using the {@link upgrade planner | https://wiki.factorio.com/Upgrade_planner} without configuration.
|
|
3277
3282
|
*
|
|
3278
|
-
* This entity may not have "not-upgradable" flag set and must be minable. This entity mining result must not contain item product with
|
|
3283
|
+
* This entity may not have "not-upgradable" flag set and must be minable. This entity mining result must not contain item product with {@link hidden | prototype:ItemPrototype::hidden} set to `true`. Mining results with no item products are allowed. This entity may not be a {@link RollingStockPrototype | prototype:RollingStockPrototype}.
|
|
3279
3284
|
*
|
|
3280
3285
|
* The upgrade target entity needs to have the same bounding box, collision mask, and fast replaceable group as this entity. The upgrade target entity must have least 1 item that builds it that isn't hidden.
|
|
3281
3286
|
* @example ```
|
|
@@ -3332,7 +3337,7 @@ interface EntityPrototype extends Prototype {
|
|
|
3332
3337
|
* The cursor size used when shooting at this entity.
|
|
3333
3338
|
*/
|
|
3334
3339
|
shooting_cursor_size?: double;
|
|
3335
|
-
stateless_visualisation?:
|
|
3340
|
+
stateless_visualisation?: StatelessVisualisation | StatelessVisualisation[];
|
|
3336
3341
|
/**
|
|
3337
3342
|
* Used to set the area of the entity that can have stickers on it, currently only used for units to specify the area where the green slow down stickers can appear.
|
|
3338
3343
|
* @example ```
|
|
@@ -3840,6 +3845,10 @@ interface FluidPrototype extends Prototype {
|
|
|
3840
3845
|
```
|
|
3841
3846
|
*/
|
|
3842
3847
|
heat_capacity?: Energy;
|
|
3848
|
+
/**
|
|
3849
|
+
* Hides the fluid from the signal selection screen.
|
|
3850
|
+
*/
|
|
3851
|
+
hidden?: boolean;
|
|
3843
3852
|
/**
|
|
3844
3853
|
* Path to the icon file.
|
|
3845
3854
|
*
|
|
@@ -4017,6 +4026,8 @@ interface FlyingRobotPrototype extends EntityWithOwnerPrototype {
|
|
|
4017
4026
|
max_energy?: Energy;
|
|
4018
4027
|
/**
|
|
4019
4028
|
* The maximum flying speed of the robot, including bonuses, in tiles/tick. Useful to limit the impact of {@link worker robot speed research | prototype:WorkerRobotSpeedModifier}.
|
|
4029
|
+
*
|
|
4030
|
+
* Must be >= speed.
|
|
4020
4031
|
*/
|
|
4021
4032
|
max_speed?: double;
|
|
4022
4033
|
/**
|
|
@@ -4136,14 +4147,25 @@ interface FurnacePrototype extends CraftingMachinePrototype {
|
|
|
4136
4147
|
*/
|
|
4137
4148
|
source_inventory_size: ItemStackIndex;
|
|
4138
4149
|
}
|
|
4150
|
+
/**
|
|
4151
|
+
* Consumes a fluid to generate electricity and create another fluid.
|
|
4152
|
+
*/
|
|
4139
4153
|
interface FusionGeneratorPrototype extends EntityWithOwnerPrototype {
|
|
4140
4154
|
/**
|
|
4141
|
-
* `
|
|
4155
|
+
* If set to `true`, the available power output is based on the {@link FluidPrototype::fuel_value | prototype:FluidPrototype::fuel_value}. Otherwise, the available power output will be based on the fluid temperature and {@link FluidPrototype::heat_capacity | prototype:FluidPrototype::heat_capacity}: `energy = fluid_amount * fluid_temperature * fluid_heat_capacity * effectivity`
|
|
4156
|
+
*/
|
|
4157
|
+
burns_fluid?: boolean;
|
|
4158
|
+
/**
|
|
4159
|
+
* `1` means 100% effectivity. Must be greater than `0`. Multiplier of the energy output.
|
|
4160
|
+
*/
|
|
4161
|
+
effectivity?: double;
|
|
4162
|
+
/**
|
|
4163
|
+
* `output_flow_limit` is mandatory and must be positive. `output_flow_limit` is the maximum power output of the generator.
|
|
4142
4164
|
*/
|
|
4143
4165
|
energy_source: ElectricEnergySource;
|
|
4144
4166
|
graphics_set?: FusionGeneratorGraphicsSet;
|
|
4145
4167
|
/**
|
|
4146
|
-
* {@link filter | prototype:FluidBox::filter} is mandatory.
|
|
4168
|
+
* {@link filter | prototype:FluidBox::filter} is mandatory. The temperature (or fuel value if `burns_fluid` is true) of this fluid is used to calculate the available power output.
|
|
4147
4169
|
*/
|
|
4148
4170
|
input_fluid_box: FluidBox;
|
|
4149
4171
|
/**
|
|
@@ -4267,7 +4289,7 @@ interface GeneratorEquipmentPrototype extends EquipmentPrototype {
|
|
|
4267
4289
|
*/
|
|
4268
4290
|
interface GeneratorPrototype extends EntityWithOwnerPrototype {
|
|
4269
4291
|
/**
|
|
4270
|
-
* If set to true
|
|
4292
|
+
* If set to `true`, the available power output is based on the {@link FluidPrototype::fuel_value | prototype:FluidPrototype::fuel_value}. Otherwise, the available power output will be based on the fluid temperature and {@link FluidPrototype::heat_capacity | prototype:FluidPrototype::heat_capacity}: `energy = fluid_amount * (fluid_temperature - fluid_default_temperature) * fluid_heat_capacity * effectivity`
|
|
4271
4293
|
*/
|
|
4272
4294
|
burns_fluid?: boolean;
|
|
4273
4295
|
/**
|
|
@@ -4743,6 +4765,10 @@ interface ItemPrototype extends Prototype {
|
|
|
4743
4765
|
*/
|
|
4744
4766
|
fuel_value?: Energy;
|
|
4745
4767
|
has_random_tint?: boolean;
|
|
4768
|
+
/**
|
|
4769
|
+
* Item will not appear in lists of all items such as those for logistics requests, filters, etc.
|
|
4770
|
+
*/
|
|
4771
|
+
hidden?: boolean;
|
|
4746
4772
|
/**
|
|
4747
4773
|
* Path to the icon file.
|
|
4748
4774
|
*
|
|
@@ -5050,7 +5076,7 @@ interface LabPrototype extends EntityWithOwnerPrototype {
|
|
|
5050
5076
|
*/
|
|
5051
5077
|
on_animation?: Animation;
|
|
5052
5078
|
/**
|
|
5053
|
-
* If set, {@link QualityPrototype::
|
|
5079
|
+
* If set, {@link QualityPrototype::lab_module_slots_bonus | prototype:QualityPrototype::lab_module_slots_bonus} will be added to module slots count.
|
|
5054
5080
|
*/
|
|
5055
5081
|
quality_affects_module_slots?: boolean;
|
|
5056
5082
|
researching_speed?: double;
|
|
@@ -5270,6 +5296,9 @@ interface LegacyStraightRailPrototype extends RailPrototype {
|
|
|
5270
5296
|
*/
|
|
5271
5297
|
collision_box?: BoundingBox;
|
|
5272
5298
|
}
|
|
5299
|
+
/**
|
|
5300
|
+
* Absorbs {@link lightning | prototype:LightningPrototype} and optionally converts it into electricity.
|
|
5301
|
+
*/
|
|
5273
5302
|
interface LightningAttractorPrototype extends EntityWithOwnerPrototype {
|
|
5274
5303
|
chargable_graphics?: ChargableGraphics;
|
|
5275
5304
|
/**
|
|
@@ -5283,15 +5312,35 @@ interface LightningAttractorPrototype extends EntityWithOwnerPrototype {
|
|
|
5283
5312
|
lightning_strike_offset?: MapPosition;
|
|
5284
5313
|
range_elongation?: double;
|
|
5285
5314
|
}
|
|
5315
|
+
/**
|
|
5316
|
+
* Lightning randomly hits entities on planets with {@link lightning_properties | prototype:PlanetPrototype::lightning_properties}.
|
|
5317
|
+
*
|
|
5318
|
+
* If a {@link lightning attractor | prototype:LightningAttractorPrototype} is hit by lightning it will absorb the lightning hit for energy.
|
|
5319
|
+
*
|
|
5320
|
+
* If a something that is not an attractor is hit by lightning it will be damaged by the strike.
|
|
5321
|
+
*/
|
|
5286
5322
|
interface LightningPrototype extends EntityPrototype {
|
|
5287
5323
|
attracted_volume_modifier?: float;
|
|
5324
|
+
/**
|
|
5325
|
+
* Effect that is triggered when lightning hits a {@link lightning attractor | prototype:LightningAttractorPrototype}. Triggered after the attractor is charged by the lightning hit.
|
|
5326
|
+
*/
|
|
5327
|
+
attractor_hit_effect?: Trigger;
|
|
5328
|
+
/**
|
|
5329
|
+
* When lightning strikes something that is not a lightning attractor, this damage is applied to the target.
|
|
5330
|
+
*/
|
|
5288
5331
|
damage?: double;
|
|
5289
5332
|
effect_duration: uint16;
|
|
5333
|
+
/**
|
|
5334
|
+
* When lightning hits a {@link lightning attractor | prototype:LightningAttractorPrototype}, this amount of energy is transferred to the lightning attractor.
|
|
5335
|
+
*/
|
|
5290
5336
|
energy?: Energy;
|
|
5291
5337
|
graphics_set?: LightningGraphicsSet;
|
|
5292
5338
|
sound?: Sound;
|
|
5293
5339
|
source_offset?: Vector;
|
|
5294
5340
|
source_variance?: Vector;
|
|
5341
|
+
/**
|
|
5342
|
+
* Effect that is triggered when lightning strikes something that is not a lightning attractor. Triggered before `damage` is applied.
|
|
5343
|
+
*/
|
|
5295
5344
|
strike_effect?: Trigger;
|
|
5296
5345
|
/**
|
|
5297
5346
|
* Must be less than or equal to `effect_duration`.
|
|
@@ -6307,7 +6356,7 @@ interface ProjectilePrototype extends EntityPrototype {
|
|
|
6307
6356
|
}
|
|
6308
6357
|
interface Prototype extends PrototypeBase {
|
|
6309
6358
|
/**
|
|
6310
|
-
* Allows to add extra description items to the tooltip and
|
|
6359
|
+
* Allows to add extra description items to the tooltip and Factoriopedia.
|
|
6311
6360
|
*/
|
|
6312
6361
|
custom_tooltip_fields?: CustomTooltipField[];
|
|
6313
6362
|
/**
|
|
@@ -6998,6 +7047,10 @@ interface RecipePrototype extends Prototype {
|
|
|
6998
7047
|
* The amount of time it takes to make this recipe. Must be `> 0.001`. Equals the number of seconds it takes to craft at crafting speed `1`.
|
|
6999
7048
|
*/
|
|
7000
7049
|
energy_required?: double;
|
|
7050
|
+
/**
|
|
7051
|
+
* Hides the recipe from crafting menus and other recipe selection lists.
|
|
7052
|
+
*/
|
|
7053
|
+
hidden?: boolean;
|
|
7001
7054
|
hide_from_bonus_gui?: boolean;
|
|
7002
7055
|
/**
|
|
7003
7056
|
* Hides the recipe from the player's crafting screen. The recipe will still show up for selection in machines.
|
|
@@ -7521,6 +7574,10 @@ interface RoboportPrototype extends EntityWithOwnerPrototype {
|
|
|
7521
7574
|
* The light emitted when charging a robot.
|
|
7522
7575
|
*/
|
|
7523
7576
|
recharging_light?: LightDefinition;
|
|
7577
|
+
/**
|
|
7578
|
+
* Whether to render the {@link no charge | prototype:UtilitySprites::recharge_icon} icon if the roboport has less energy than `recharge_minimum` in its internal buffer and is recovering from a blackout.
|
|
7579
|
+
*/
|
|
7580
|
+
render_recharge_icon?: boolean;
|
|
7524
7581
|
request_to_open_door_timeout: uint32;
|
|
7525
7582
|
/**
|
|
7526
7583
|
* Unused.
|
|
@@ -7568,6 +7625,12 @@ interface RobotWithLogisticInterfacePrototype extends FlyingRobotPrototype {
|
|
|
7568
7625
|
* The robot's cargo carrying capacity. Can be increased by {@link worker robot cargo size research | prototype:WorkerRobotStorageModifier}.
|
|
7569
7626
|
*/
|
|
7570
7627
|
max_payload_size: ItemCountType;
|
|
7628
|
+
/**
|
|
7629
|
+
* The robot's maximum possible cargo carrying capacity, including bonuses. Useful to limit the impact of {@link worker robot cargo size research | prototype:WorkerRobotStorageModifier}.
|
|
7630
|
+
*
|
|
7631
|
+
* Must be >= max_payload_size.
|
|
7632
|
+
*/
|
|
7633
|
+
max_payload_size_after_bonus?: ItemCountType;
|
|
7571
7634
|
/**
|
|
7572
7635
|
* Only the first frame of the animation is drawn. This means that the graphics for the idle state cannot be animated.
|
|
7573
7636
|
*/
|
|
@@ -8148,7 +8211,7 @@ interface SimpleEntityPrototype extends EntityWithHealthPrototype {
|
|
|
8148
8211
|
/**
|
|
8149
8212
|
* Loaded and drawn with all `pictures`, `picture` and `animations`. If graphics variation is larger than number of `lower_pictures` variations this layer is not drawn.
|
|
8150
8213
|
*/
|
|
8151
|
-
stateless_visualisation_variations?:
|
|
8214
|
+
stateless_visualisation_variations?: (StatelessVisualisation | StatelessVisualisation[])[];
|
|
8152
8215
|
}
|
|
8153
8216
|
/**
|
|
8154
8217
|
* By default, this entity will be a priority target for units/turrets, who will choose to attack it even if it does not block their path. Setting {@link EntityWithOwnerPrototype::is_military_target | prototype:EntityWithOwnerPrototype::is_military_target} to `false` will turn this off, which then makes this type equivalent to {@link SimpleEntityWithOwnerPrototype | prototype:SimpleEntityWithOwnerPrototype}.
|
|
@@ -8193,7 +8256,7 @@ interface SimpleEntityWithOwnerPrototype extends EntityWithOwnerPrototype {
|
|
|
8193
8256
|
* Used to determine render order for entities with the same `render_layer` in the same position. Entities with a higher `secondary_draw_order` are drawn on top.
|
|
8194
8257
|
*/
|
|
8195
8258
|
secondary_draw_order?: int8;
|
|
8196
|
-
stateless_visualisation_variations?:
|
|
8259
|
+
stateless_visualisation_variations?: (StatelessVisualisation | StatelessVisualisation[])[];
|
|
8197
8260
|
}
|
|
8198
8261
|
/**
|
|
8199
8262
|
* Abstract entity that has an animation.
|
|
@@ -8457,6 +8520,10 @@ interface SpaceLocationPrototype extends Prototype {
|
|
|
8457
8520
|
* A value which modifies platform speed; is subtracted when traveling from this location and added when traveling to this location.
|
|
8458
8521
|
*/
|
|
8459
8522
|
gravity_pull?: double;
|
|
8523
|
+
/**
|
|
8524
|
+
* Hides the space location from the planet selection lists and the space map.
|
|
8525
|
+
*/
|
|
8526
|
+
hidden?: boolean;
|
|
8460
8527
|
/**
|
|
8461
8528
|
* Path to the icon file.
|
|
8462
8529
|
*
|
|
@@ -8712,6 +8779,22 @@ interface SpidertronRemotePrototype extends SelectionToolPrototype {
|
|
|
8712
8779
|
* A {@link splitter | https://wiki.factorio.com/Splitter}.
|
|
8713
8780
|
*/
|
|
8714
8781
|
interface SplitterPrototype extends TransportBeltConnectablePrototype {
|
|
8782
|
+
circuit_connector?: [
|
|
8783
|
+
CircuitConnectorDefinition,
|
|
8784
|
+
CircuitConnectorDefinition,
|
|
8785
|
+
CircuitConnectorDefinition,
|
|
8786
|
+
CircuitConnectorDefinition
|
|
8787
|
+
];
|
|
8788
|
+
/**
|
|
8789
|
+
* The maximum circuit wire distance for this entity.
|
|
8790
|
+
*/
|
|
8791
|
+
circuit_wire_max_distance?: double;
|
|
8792
|
+
default_input_left_condition?: CircuitConditionConnector;
|
|
8793
|
+
default_input_right_condition?: CircuitConditionConnector;
|
|
8794
|
+
default_output_left_condition?: CircuitConditionConnector;
|
|
8795
|
+
default_output_right_condition?: CircuitConditionConnector;
|
|
8796
|
+
draw_circuit_wires?: boolean;
|
|
8797
|
+
draw_copper_wires?: boolean;
|
|
8715
8798
|
frozen_patch?: Sprite4Way;
|
|
8716
8799
|
/**
|
|
8717
8800
|
* The name of the {@link TransportBeltPrototype | prototype:TransportBeltPrototype} which is used for the sound of the underlying belt.
|
|
@@ -9159,6 +9242,10 @@ interface TechnologyPrototype extends Prototype {
|
|
|
9159
9242
|
* Whether the technology should be shown in the technology tree GUI when "Show only essential technologies" is enabled.
|
|
9160
9243
|
*/
|
|
9161
9244
|
essential?: boolean;
|
|
9245
|
+
/**
|
|
9246
|
+
* Hides the technology from the tech screen.
|
|
9247
|
+
*/
|
|
9248
|
+
hidden?: boolean;
|
|
9162
9249
|
/**
|
|
9163
9250
|
* Path to the icon file.
|
|
9164
9251
|
*
|
|
@@ -9234,7 +9321,13 @@ interface TemporaryContainerPrototype extends ContainerPrototype {
|
|
|
9234
9321
|
destroy_on_empty?: boolean;
|
|
9235
9322
|
time_to_live?: uint32;
|
|
9236
9323
|
}
|
|
9324
|
+
/**
|
|
9325
|
+
* Consumes two fluids as fuel to produce thrust for a space platform.
|
|
9326
|
+
*/
|
|
9237
9327
|
interface ThrusterPrototype extends EntityWithOwnerPrototype {
|
|
9328
|
+
/**
|
|
9329
|
+
* If a {@link filter | prototype:FluidBox::filter} is set for this fluidbox it determines what the thruster considers the first fuel.
|
|
9330
|
+
*/
|
|
9238
9331
|
fuel_fluid_box: FluidBox;
|
|
9239
9332
|
graphics_set?: ThrusterGraphicsSet;
|
|
9240
9333
|
/**
|
|
@@ -9242,6 +9335,9 @@ interface ThrusterPrototype extends EntityWithOwnerPrototype {
|
|
|
9242
9335
|
*/
|
|
9243
9336
|
max_performance: ThrusterPerformancePoint;
|
|
9244
9337
|
min_performance: ThrusterPerformancePoint;
|
|
9338
|
+
/**
|
|
9339
|
+
* If a {@link filter | prototype:FluidBox::filter} is set for this fluidbox it determines what the thruster considers the second fuel.
|
|
9340
|
+
*/
|
|
9245
9341
|
oxidizer_fluid_box: FluidBox;
|
|
9246
9342
|
plumes?: PlumesSpecification;
|
|
9247
9343
|
}
|
|
@@ -9634,7 +9730,7 @@ interface TreePrototype extends EntityWithHealthPrototype {
|
|
|
9634
9730
|
* Mandatory if `variations` is not defined.
|
|
9635
9731
|
*/
|
|
9636
9732
|
pictures?: SpriteVariations;
|
|
9637
|
-
stateless_visualisation_variations?:
|
|
9733
|
+
stateless_visualisation_variations?: (StatelessVisualisation | StatelessVisualisation[])[];
|
|
9638
9734
|
variation_weights?: float[];
|
|
9639
9735
|
/**
|
|
9640
9736
|
* If defined, it can't be empty.
|
package/dist/types.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Factorio API reference https://lua-api.factorio.com/latest/index.html
|
|
3
3
|
// Generated from JSON source https://lua-api.factorio.com/latest/prototype-api.json
|
|
4
4
|
// Definition source https://github.com/sguest/factorio-types
|
|
5
|
-
// Factorio version 2.0.
|
|
5
|
+
// Factorio version 2.0.67
|
|
6
6
|
// API version 6
|
|
7
7
|
|
|
8
8
|
declare namespace prototype {
|
|
@@ -1432,6 +1432,10 @@ interface AsteroidCollectorGraphicsSet {
|
|
|
1432
1432
|
status_lamp_picture_full?: RotatedSprite;
|
|
1433
1433
|
status_lamp_picture_off?: RotatedSprite;
|
|
1434
1434
|
status_lamp_picture_on?: RotatedSprite;
|
|
1435
|
+
/**
|
|
1436
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
1437
|
+
*/
|
|
1438
|
+
water_reflection?: WaterReflectionDefinition;
|
|
1435
1439
|
}
|
|
1436
1440
|
interface AsteroidGraphicsSet {
|
|
1437
1441
|
ambient_light?: Color;
|
|
@@ -1447,6 +1451,10 @@ interface AsteroidGraphicsSet {
|
|
|
1447
1451
|
sss_amount?: float;
|
|
1448
1452
|
sss_contrast?: float;
|
|
1449
1453
|
variations?: AsteroidVariation | AsteroidVariation[];
|
|
1454
|
+
/**
|
|
1455
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
1456
|
+
*/
|
|
1457
|
+
water_reflection?: WaterReflectionDefinition;
|
|
1450
1458
|
}
|
|
1451
1459
|
interface AsteroidSettings {
|
|
1452
1460
|
max_ray_portals_expanded_per_tick: uint32;
|
|
@@ -1838,6 +1846,10 @@ interface BeaconGraphicsSet {
|
|
|
1838
1846
|
random_animation_offset?: boolean;
|
|
1839
1847
|
reset_animation_when_frozen?: boolean;
|
|
1840
1848
|
top_layer?: RenderLayer;
|
|
1849
|
+
/**
|
|
1850
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
1851
|
+
*/
|
|
1852
|
+
water_reflection?: WaterReflectionDefinition;
|
|
1841
1853
|
}
|
|
1842
1854
|
interface BeaconModuleVisualization {
|
|
1843
1855
|
/**
|
|
@@ -1932,6 +1944,10 @@ interface BeamGraphicsSet {
|
|
|
1932
1944
|
random_end_animation_rotation?: boolean;
|
|
1933
1945
|
randomize_animation_per_segment?: boolean;
|
|
1934
1946
|
transparent_start_end_animations?: boolean;
|
|
1947
|
+
/**
|
|
1948
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
1949
|
+
*/
|
|
1950
|
+
water_reflection?: WaterReflectionDefinition;
|
|
1935
1951
|
}
|
|
1936
1952
|
interface BeamTriggerDelivery extends TriggerDeliveryItem {
|
|
1937
1953
|
add_to_shooter?: boolean;
|
|
@@ -2223,6 +2239,10 @@ interface CargoBayConnectableGraphicsSet {
|
|
|
2223
2239
|
animation_render_layer?: RenderLayer;
|
|
2224
2240
|
connections?: CargoBayConnections;
|
|
2225
2241
|
picture?: LayeredSprite;
|
|
2242
|
+
/**
|
|
2243
|
+
* Only loaded if this graphics set is used in a property called `graphics_set`, refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
2244
|
+
*/
|
|
2245
|
+
water_reflection?: WaterReflectionDefinition;
|
|
2226
2246
|
}
|
|
2227
2247
|
/**
|
|
2228
2248
|
* Walls should have an even number of variations because they are interleaved.
|
|
@@ -2516,6 +2536,10 @@ interface ChartUtilityConstants {
|
|
|
2516
2536
|
green_wire_color: Color;
|
|
2517
2537
|
rail_color: Color;
|
|
2518
2538
|
rail_ramp_color: Color;
|
|
2539
|
+
/**
|
|
2540
|
+
* Must be larger than 0. This number is multiplied by the crafting machine's {@link radius | runtime:LuaEntityPrototype::radius} to get the final recipe icon scale for the chart.
|
|
2541
|
+
*/
|
|
2542
|
+
recipe_icon_scale: float;
|
|
2519
2543
|
red_signal_color: Color;
|
|
2520
2544
|
red_wire_color: Color;
|
|
2521
2545
|
resource_outline_selection_color: Color;
|
|
@@ -2544,6 +2568,11 @@ interface CheckBoxStyleSpecification extends StyleWithClickableGraphicalSetSpeci
|
|
|
2544
2568
|
text_padding?: uint32;
|
|
2545
2569
|
type: 'checkbox_style';
|
|
2546
2570
|
}
|
|
2571
|
+
interface CircuitConditionConnector {
|
|
2572
|
+
comparator?: ComparatorString;
|
|
2573
|
+
first?: SignalIDConnector;
|
|
2574
|
+
second?: SignalIDConnector | int32;
|
|
2575
|
+
}
|
|
2547
2576
|
/**
|
|
2548
2577
|
* Definition of a circuit connector.
|
|
2549
2578
|
*/
|
|
@@ -3177,6 +3206,10 @@ interface CraftingMachineGraphicsSet extends WorkingVisualisations {
|
|
|
3177
3206
|
circuit_connector_secondary_draw_order?: int8 | CircuitConnectorSecondaryDrawOrder;
|
|
3178
3207
|
frozen_patch?: Sprite4Way;
|
|
3179
3208
|
reset_animation_when_frozen?: boolean;
|
|
3209
|
+
/**
|
|
3210
|
+
* Only loaded if this graphics set is used in a property called `graphics_set`, refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
3211
|
+
*/
|
|
3212
|
+
water_reflection?: WaterReflectionDefinition;
|
|
3180
3213
|
}
|
|
3181
3214
|
interface CranePart {
|
|
3182
3215
|
allow_sprite_rotation?: boolean;
|
|
@@ -4200,6 +4233,10 @@ interface EnemySpawnerGraphicsSet {
|
|
|
4200
4233
|
underwater_animations?: AnimationVariations;
|
|
4201
4234
|
underwater_layer_offset?: int8;
|
|
4202
4235
|
water_effect_map_animations?: AnimationVariations;
|
|
4236
|
+
/**
|
|
4237
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
4238
|
+
*/
|
|
4239
|
+
water_reflection?: WaterReflectionDefinition;
|
|
4203
4240
|
}
|
|
4204
4241
|
/**
|
|
4205
4242
|
* Specifies an amount of electric energy in joules, or electric energy per time in watts.
|
|
@@ -4644,7 +4681,7 @@ interface FluidBoxSecondaryDrawOrders {
|
|
|
4644
4681
|
}
|
|
4645
4682
|
interface FluidEnergySource extends BaseEnergySource {
|
|
4646
4683
|
/**
|
|
4647
|
-
* If set to `true`, the
|
|
4684
|
+
* If set to `true`, the available power output is based on the {@link FluidPrototype::fuel_value | prototype:FluidPrototype::fuel_value}. Otherwise, the available power output will be based on the fluid temperature and {@link FluidPrototype::heat_capacity | prototype:FluidPrototype::heat_capacity}: `energy = fluid_amount * (fluid_temperature - fluid_default_temperature) * fluid_heat_capacity * effectivity`
|
|
4648
4685
|
*/
|
|
4649
4686
|
burns_fluid?: boolean;
|
|
4650
4687
|
/**
|
|
@@ -4980,6 +5017,10 @@ interface FusionGeneratorGraphicsSet {
|
|
|
4980
5017
|
north_graphics_set: FusionGeneratorDirectionGraphicsSet;
|
|
4981
5018
|
render_layer?: RenderLayer;
|
|
4982
5019
|
south_graphics_set: FusionGeneratorDirectionGraphicsSet;
|
|
5020
|
+
/**
|
|
5021
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
5022
|
+
*/
|
|
5023
|
+
water_reflection?: WaterReflectionDefinition;
|
|
4983
5024
|
west_graphics_set: FusionGeneratorDirectionGraphicsSet;
|
|
4984
5025
|
}
|
|
4985
5026
|
interface FusionReactorConnectionGraphics {
|
|
@@ -5000,6 +5041,10 @@ interface FusionReactorGraphicsSet {
|
|
|
5000
5041
|
render_layer?: RenderLayer;
|
|
5001
5042
|
structure?: Sprite4Way;
|
|
5002
5043
|
use_fuel_glow_color?: boolean;
|
|
5044
|
+
/**
|
|
5045
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
5046
|
+
*/
|
|
5047
|
+
water_reflection?: WaterReflectionDefinition;
|
|
5003
5048
|
working_light_pictures?: Sprite4Way;
|
|
5004
5049
|
}
|
|
5005
5050
|
interface GameControllerVibrationData {
|
|
@@ -5309,7 +5354,7 @@ icons =
|
|
|
5309
5354
|
*/
|
|
5310
5355
|
interface IconData {
|
|
5311
5356
|
/**
|
|
5312
|
-
* Outline is drawn using signed distance field generated on load. One icon image
|
|
5357
|
+
* Outline is drawn using signed distance field generated on load. One icon image will have only one SDF generated. That means if the image is used in multiple icons with different scales, the outline width won't match the desired width in all the scales except the largest one.
|
|
5313
5358
|
*/
|
|
5314
5359
|
draw_background?: boolean;
|
|
5315
5360
|
/**
|
|
@@ -5358,7 +5403,7 @@ interface IconDrawSpecification {
|
|
|
5358
5403
|
/**
|
|
5359
5404
|
* Render layer of the icon.
|
|
5360
5405
|
*/
|
|
5361
|
-
|
|
5406
|
+
render_layer?: 'entity-info-icon' | 'entity-info-icon-above' | 'air-entity-info-icon';
|
|
5362
5407
|
scale?: float;
|
|
5363
5408
|
/**
|
|
5364
5409
|
* Scale of the icon when there are many items.
|
|
@@ -5883,6 +5928,10 @@ interface LightningGraphicsSet {
|
|
|
5883
5928
|
* If not empty, enables the lightning shader.
|
|
5884
5929
|
*/
|
|
5885
5930
|
shader_configuration?: LightningShaderConfiguration[];
|
|
5931
|
+
/**
|
|
5932
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
5933
|
+
*/
|
|
5934
|
+
water_reflection?: WaterReflectionDefinition;
|
|
5886
5935
|
}
|
|
5887
5936
|
interface LightningPriorityRule extends LightningRuleBaseBase {
|
|
5888
5937
|
priority_bonus: int32;
|
|
@@ -6514,6 +6563,10 @@ interface MiningDrillGraphicsSet extends WorkingVisualisations {
|
|
|
6514
6563
|
drilling_vertical_movement_duration?: uint16;
|
|
6515
6564
|
frozen_patch?: Sprite4Way;
|
|
6516
6565
|
reset_animation_when_frozen?: boolean;
|
|
6566
|
+
/**
|
|
6567
|
+
* Only loaded if this graphics set is used in a property called `graphics_set`, refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
6568
|
+
*/
|
|
6569
|
+
water_reflection?: WaterReflectionDefinition;
|
|
6517
6570
|
}
|
|
6518
6571
|
interface MiningDrillProductivityBonusModifier extends SimpleModifier {
|
|
6519
6572
|
/**
|
|
@@ -6793,7 +6846,7 @@ interface NestedTriggerEffectItem extends TriggerEffectItem {
|
|
|
6793
6846
|
*
|
|
6794
6847
|
* - `+x`, `-x`, `~x`: Unary plus and minus and unary bitwise not
|
|
6795
6848
|
*
|
|
6796
|
-
* - `x*y`, `x/y`, `x%y`, `x%%y`: Multiplication and division, modulo and remainder
|
|
6849
|
+
* - `x*y`, `x/y`, `x%y`, `x%%y`: Multiplication and division, modulo and remainder
|
|
6797
6850
|
*
|
|
6798
6851
|
* - `x+y`, `x-y`: Addition and subtraction
|
|
6799
6852
|
*
|
|
@@ -6812,6 +6865,8 @@ interface NestedTriggerEffectItem extends TriggerEffectItem {
|
|
|
6812
6865
|
* The boolean operators (less than, less than or equal, equal, not equal, greater than, greater than or equal) take two numbers and return 0 for false or 1 for true.
|
|
6813
6866
|
*
|
|
6814
6867
|
* The bitwise operators convert single-precision floating-point numbers to signed 32-bit integers before computing the result.
|
|
6868
|
+
*
|
|
6869
|
+
* Exponentiation and the unary operators are right-to-left associative. The rest of the operators are left-to-right associative.
|
|
6815
6870
|
* @example ```
|
|
6816
6871
|
"distance_from_nearest_point{x = x, y = y, points = starting_positions}"
|
|
6817
6872
|
```
|
|
@@ -6875,6 +6930,10 @@ interface OffshorePumpGraphicsSet {
|
|
|
6875
6930
|
* Drawn by tile renderer when water animation is enabled.
|
|
6876
6931
|
*/
|
|
6877
6932
|
underwater_pictures?: Sprite4Way;
|
|
6933
|
+
/**
|
|
6934
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
6935
|
+
*/
|
|
6936
|
+
water_reflection?: WaterReflectionDefinition;
|
|
6878
6937
|
}
|
|
6879
6938
|
interface OrTipTrigger {
|
|
6880
6939
|
/**
|
|
@@ -7712,12 +7771,12 @@ interface ProcessionGraphic {
|
|
|
7712
7771
|
*/
|
|
7713
7772
|
type ProcessionGraphicCatalogue = ProcessionGraphicCatalogueItem[];
|
|
7714
7773
|
/**
|
|
7715
|
-
* Either
|
|
7774
|
+
* Either animation or sprite must be provided.
|
|
7716
7775
|
*/
|
|
7717
7776
|
interface ProcessionGraphicCatalogueItem {
|
|
7718
7777
|
animation?: Animation;
|
|
7719
7778
|
index: uint32;
|
|
7720
|
-
|
|
7779
|
+
sprite?: Sprite;
|
|
7721
7780
|
}
|
|
7722
7781
|
/**
|
|
7723
7782
|
* Types of {@link ProcessionGraphic | prototype:ProcessionGraphic}.
|
|
@@ -7844,10 +7903,7 @@ type ProductPrototype = /**
|
|
|
7844
7903
|
ItemProductPrototype | /**
|
|
7845
7904
|
* Loaded when the `type` is `"fluid"`.
|
|
7846
7905
|
*/
|
|
7847
|
-
FluidProductPrototype
|
|
7848
|
-
* Loaded when the `type` is `"research-progress"`.
|
|
7849
|
-
*/
|
|
7850
|
-
ResearchProgressProductPrototype;
|
|
7906
|
+
FluidProductPrototype;
|
|
7851
7907
|
interface ProductionHealthEffect {
|
|
7852
7908
|
not_producing?: float;
|
|
7853
7909
|
producing?: float;
|
|
@@ -8258,6 +8314,10 @@ interface RailSupportGraphicsSet {
|
|
|
8258
8314
|
structure: RotatedSprite;
|
|
8259
8315
|
underwater_layer_offset?: int8;
|
|
8260
8316
|
underwater_structure?: RotatedSprite;
|
|
8317
|
+
/**
|
|
8318
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
8319
|
+
*/
|
|
8320
|
+
water_reflection?: WaterReflectionDefinition;
|
|
8261
8321
|
}
|
|
8262
8322
|
interface RailSupportOnDeepOilOceanModifier extends BoolModifier {
|
|
8263
8323
|
type: 'rail-support-on-deep-oil-ocean';
|
|
@@ -8349,14 +8409,6 @@ type ResearchIngredient = [
|
|
|
8349
8409
|
ItemID,
|
|
8350
8410
|
uint16
|
|
8351
8411
|
];
|
|
8352
|
-
/**
|
|
8353
|
-
* A research progress product definition.
|
|
8354
|
-
*/
|
|
8355
|
-
interface ResearchProgressProductPrototype {
|
|
8356
|
-
amount?: double;
|
|
8357
|
-
research_item: ItemID;
|
|
8358
|
-
type: 'research-progress';
|
|
8359
|
-
}
|
|
8360
8412
|
interface ResearchTechnologyTipTrigger {
|
|
8361
8413
|
technology: TechnologyID;
|
|
8362
8414
|
type: 'research';
|
|
@@ -9481,6 +9533,10 @@ interface SpiderLegGraphicsSet {
|
|
|
9481
9533
|
upper_part?: SpiderLegPart;
|
|
9482
9534
|
upper_part_shadow?: SpiderLegPart;
|
|
9483
9535
|
upper_part_water_reflection?: SpiderLegPart;
|
|
9536
|
+
/**
|
|
9537
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
9538
|
+
*/
|
|
9539
|
+
water_reflection?: WaterReflectionDefinition;
|
|
9484
9540
|
}
|
|
9485
9541
|
interface SpiderLegPart {
|
|
9486
9542
|
bottom_end?: RotatedSprite;
|
|
@@ -9554,6 +9610,10 @@ interface SpiderTorsoGraphicsSet {
|
|
|
9554
9610
|
render_layer?: RenderLayer;
|
|
9555
9611
|
shadow_animation?: RotatedAnimation;
|
|
9556
9612
|
shadow_base_animation?: RotatedAnimation;
|
|
9613
|
+
/**
|
|
9614
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
9615
|
+
*/
|
|
9616
|
+
water_reflection?: WaterReflectionDefinition;
|
|
9557
9617
|
}
|
|
9558
9618
|
/**
|
|
9559
9619
|
* Used to specify the graphics for {@link SpiderVehiclePrototype | prototype:SpiderVehiclePrototype}.
|
|
@@ -10118,7 +10178,7 @@ interface StatelessVisualisation {
|
|
|
10118
10178
|
/**
|
|
10119
10179
|
* One of `nested_visualisations`, `animation` and `light` needs to be defined.
|
|
10120
10180
|
*/
|
|
10121
|
-
nested_visualisations?:
|
|
10181
|
+
nested_visualisations?: StatelessVisualisation | StatelessVisualisation[];
|
|
10122
10182
|
offset_x?: RangedValue;
|
|
10123
10183
|
offset_y?: RangedValue;
|
|
10124
10184
|
offset_z?: RangedValue;
|
|
@@ -10145,7 +10205,6 @@ interface StatelessVisualisation {
|
|
|
10145
10205
|
speed_z?: RangedValue;
|
|
10146
10206
|
spread_progress_duration?: float;
|
|
10147
10207
|
}
|
|
10148
|
-
type StatelessVisualisations = StatelessVisualisation | StatelessVisualisation[];
|
|
10149
10208
|
interface StatusColors {
|
|
10150
10209
|
disabled?: Color;
|
|
10151
10210
|
full_output?: Color;
|
|
@@ -10631,6 +10690,10 @@ interface ThrusterGraphicsSet extends WorkingVisualisations {
|
|
|
10631
10690
|
flame_effect_width?: float;
|
|
10632
10691
|
flame_half_height?: float;
|
|
10633
10692
|
flame_position?: Vector;
|
|
10693
|
+
/**
|
|
10694
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
10695
|
+
*/
|
|
10696
|
+
water_reflection?: WaterReflectionDefinition;
|
|
10634
10697
|
}
|
|
10635
10698
|
type ThrusterPerformancePoint = {
|
|
10636
10699
|
effectivity: double;
|
|
@@ -11478,6 +11541,7 @@ interface TrainVisualizationConstants {
|
|
|
11478
11541
|
final_margin: float;
|
|
11479
11542
|
joint_distance: float;
|
|
11480
11543
|
last_box_color: Color;
|
|
11544
|
+
last_reverse_box_color: Color;
|
|
11481
11545
|
not_last_box_color: Color;
|
|
11482
11546
|
reverse_box_color: Color;
|
|
11483
11547
|
stock_number_scale: float;
|
|
@@ -11991,6 +12055,10 @@ interface TurretBaseVisualisation {
|
|
|
11991
12055
|
}
|
|
11992
12056
|
interface TurretGraphicsSet {
|
|
11993
12057
|
base_visualisation?: TurretBaseVisualisation | TurretBaseVisualisation[];
|
|
12058
|
+
/**
|
|
12059
|
+
* Refer to {@link EntityPrototype::water_reflection | prototype:EntityPrototype::water_reflection}.
|
|
12060
|
+
*/
|
|
12061
|
+
water_reflection?: WaterReflectionDefinition;
|
|
11994
12062
|
}
|
|
11995
12063
|
interface TurretSpecialEffect {
|
|
11996
12064
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "factorio-types",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.50",
|
|
4
4
|
"description": "Typescript declarations for the Factorio mod API",
|
|
5
5
|
"main": "index.d.ts",
|
|
6
6
|
"repository": "https://github.com/sguest/factorio-types.git",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"src/**/*.d.ts",
|
|
24
24
|
"dist/**/*.d.ts"
|
|
25
25
|
],
|
|
26
|
-
"factorioVersion": "2.0.
|
|
26
|
+
"factorioVersion": "2.0.67",
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"lua-types": "^2.13.1"
|
|
29
29
|
},
|