factorio-types 1.2.45 → 1.2.47

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 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.62
5
+ // Factorio version 2.0.65
6
6
  // API version 6
7
7
 
8
8
  declare namespace runtime {
@@ -4875,7 +4875,7 @@ interface LuaCommandProcessor {
4875
4875
  readonly object_name: string;
4876
4876
  }
4877
4877
  /**
4878
- * AI object which can be ordered commands. This can represent a UnitGroup (a set of multiple commandables) or can be a single Unit, SpiderUnit or other commandable entity.
4878
+ * AI object which can be ordered commands. This can represent a UnitGroup (a set of multiple commandables) or can be a single Unit or SpiderUnit.
4879
4879
  */
4880
4880
  interface LuaCommandable {
4881
4881
  /**
@@ -5369,6 +5369,12 @@ interface LuaControl {
5369
5369
  * The item drop distance of this character or max uint when not a character or player connected to a character.
5370
5370
  */
5371
5371
  readonly drop_item_distance: uint;
5372
+ /**
5373
+ * The current flight height for this player or character entity.
5374
+ *
5375
+ * When called on an entity, only valid if this entity is a character.
5376
+ */
5377
+ readonly flight_height: double;
5372
5378
  /**
5373
5379
  * The current combat robots following the character.
5374
5380
  *
@@ -5396,6 +5402,12 @@ interface LuaControl {
5396
5402
  * Whether this character entity is in combat.
5397
5403
  */
5398
5404
  readonly in_combat: boolean;
5405
+ /**
5406
+ * If this player or character entity is flying.
5407
+ *
5408
+ * When called on an entity, only valid if this entity is a character.
5409
+ */
5410
+ readonly is_flying: boolean;
5399
5411
  /**
5400
5412
  * The item pickup distance of this character or max double when not a character or player connected to a character.
5401
5413
  */
@@ -5440,6 +5452,10 @@ interface LuaControl {
5440
5452
  * The reach distance of this character or max uint when not a character or player connected to a character.
5441
5453
  */
5442
5454
  readonly reach_distance: uint;
5455
+ /**
5456
+ * The current render position of the entity.
5457
+ */
5458
+ readonly render_position: MapPosition;
5443
5459
  /**
5444
5460
  * Current repair state.
5445
5461
  */
@@ -5862,7 +5878,7 @@ interface LuaDecorativePrototype extends LuaPrototypeBase {
5862
5878
  */
5863
5879
  readonly object_name: string;
5864
5880
  readonly placed_effect?: TriggerEffectItem[];
5865
- readonly render_layer: string;
5881
+ readonly render_layer: RenderLayer;
5866
5882
  readonly target_count: uint;
5867
5883
  readonly trigger_effect?: TriggerEffectItem[];
5868
5884
  /**
@@ -6059,14 +6075,14 @@ interface LuaEntity extends LuaControl {
6059
6075
  * @param table.do_cliff_correction Whether neighbouring cliffs should be corrected. Defaults to `false`.
6060
6076
  * @param table.raise_destroy If `true`, {@link script_raised_destroy | runtime:script_raised_destroy} will be called. Defaults to `false`.
6061
6077
  * @param table.player The player whose undo queue this action should be added to.
6062
- * @param table.item_index The index of the undo item to add this action to. An index of `0` creates a new undo item for it. Defaults to putting it into the appropriate undo item automatically if not specified.
6078
+ * @param table.undo_index The index of the undo item to add this action to. An index of `0` creates a new undo item for it. Defaults to putting it into the appropriate undo item automatically if not specified.
6063
6079
  * @returns Returns `false` if the entity was valid and destruction failed, `true` in all other cases.
6064
6080
  */
6065
6081
  destroy(this: void, table: {
6066
6082
  do_cliff_correction?: boolean;
6067
6083
  raise_destroy?: boolean;
6068
6084
  player?: PlayerIdentification;
6069
- item_index?: uint;
6085
+ undo_index?: uint;
6070
6086
  }): boolean;
6071
6087
  /**
6072
6088
  * Immediately kills the entity. Does nothing if the entity doesn't have health.
@@ -6198,7 +6214,7 @@ interface LuaEntity extends LuaControl {
6198
6214
  * If information about fluid temperatures is required, {@link LuaEntity::fluidbox | runtime:LuaEntity::fluidbox} should be used instead.
6199
6215
  * @returns The amounts, indexed by fluid names.
6200
6216
  */
6201
- get_fluid_contents(this: void): Record<string, double>;
6217
+ get_fluid_contents(this: void): Record<string, FluidAmount>;
6202
6218
  /**
6203
6219
  * Get the amount of all or some fluid in this entity.
6204
6220
  *
@@ -6556,14 +6572,14 @@ interface LuaEntity extends LuaControl {
6556
6572
  * @param table.target The prototype of the entity to upgrade to.
6557
6573
  * @param table.force The force whose robots are supposed to do the upgrade.
6558
6574
  * @param table.player The player whose undo queue this action should be added to.
6559
- * @param table.item_index The index of the undo item to add this action to. An index of `0` creates a new undo item for it. Defaults to putting it into the appropriate undo item automatically if not specified.
6575
+ * @param table.undo_index The index of the undo item to add this action to. An index of `0` creates a new undo item for it. Defaults to putting it into the appropriate undo item automatically if not specified.
6560
6576
  * @returns Whether the entity was marked for upgrade.
6561
6577
  */
6562
6578
  order_upgrade(this: void, table: {
6563
6579
  target: EntityWithQualityID;
6564
6580
  force: ForceID;
6565
6581
  player?: PlayerIdentification;
6566
- item_index?: uint;
6582
+ undo_index?: uint;
6567
6583
  }): boolean;
6568
6584
  /**
6569
6585
  * Plays a note with the given instrument and note.
@@ -6930,7 +6946,7 @@ interface LuaEntity extends LuaControl {
6930
6946
  */
6931
6947
  readonly cliff_orientation: CliffOrientation;
6932
6948
  /**
6933
- * The color of this character, rolling stock, train stop, car, spider-vehicle, flying text, corpse or simple-entity-with-owner. `nil` if this entity doesn't use custom colors.
6949
+ * The color of this character, rolling stock, corpse, train stop, simple-entity-with-owner, car, spider-vehicle, or lamp. `nil` if this entity doesn't use custom colors.
6934
6950
  *
6935
6951
  * Car color is overridden by the color of the current driver/passenger, if there is one.
6936
6952
  */
@@ -6944,7 +6960,7 @@ interface LuaEntity extends LuaControl {
6944
6960
  */
6945
6961
  combinator_description: string;
6946
6962
  /**
6947
- * Returns a LuaCommandable for this entity or nil if entity is not commandable.
6963
+ * Returns a LuaCommandable for this entity or nil if entity is not commandable. Units and SpiderUnits are commandable.
6948
6964
  */
6949
6965
  readonly commandable?: LuaCommandable;
6950
6966
  /**
@@ -7003,6 +7019,10 @@ interface LuaEntity extends LuaControl {
7003
7019
  * Will set destination in 3D for the grappler of crane of this entity. The crane grappler will start moving to reach the destination, but the rest of the arm will remain stationary. Throws when trying to set the destination out of range.
7004
7020
  */
7005
7021
  crane_grappler_destination_3d: Vector3D;
7022
+ /**
7023
+ * The corpse that caused this entity ghost to be created, if any.
7024
+ */
7025
+ readonly created_by_corpse?: LuaEntity;
7006
7026
  /**
7007
7027
  * A custom status for this entity that will be displayed in the GUI.
7008
7028
  */
@@ -7039,7 +7059,7 @@ interface LuaEntity extends LuaControl {
7039
7059
  /**
7040
7060
  * Icon visible on the display panel. Can be written only when it is not set by control behavior.
7041
7061
  */
7042
- display_panel_icon: SignalID;
7062
+ display_panel_icon?: SignalID;
7043
7063
  display_panel_show_in_chart: boolean;
7044
7064
  /**
7045
7065
  * Text visible on the display panel. Can be written only when it is not set by control behavior.
@@ -7197,6 +7217,10 @@ interface LuaEntity extends LuaControl {
7197
7217
  * To get the maximum possible health of this entity, see {@link LuaEntity::max_health | runtime:LuaEntity::max_health}.
7198
7218
  */
7199
7219
  health?: float;
7220
+ /**
7221
+ * The entities connected to this entities heat buffer.
7222
+ */
7223
+ readonly heat_neighbours: LuaEntity[];
7200
7224
  /**
7201
7225
  * The item stack currently held in an inserter's hand.
7202
7226
  */
@@ -7348,9 +7372,9 @@ interface LuaEntity extends LuaControl {
7348
7372
  /**
7349
7373
  * Not minable entities can still be destroyed.
7350
7374
  *
7351
- * Tells if entity reports as being minable right now. This takes into account minable_flag and entity specific conditions (for example rail under rolling stocks is not minable, vehicle with passenger is not minable).
7375
+ * Tells if entity reports as being minable right now. This takes into account `minable_flag` and entity specific conditions (for example rail under rolling stocks is not minable, vehicle with passenger is not minable).
7352
7376
  *
7353
- * Write to this field since 2.0.26 is deprecated and it will result in write to minable_flag instead.
7377
+ * Write to this field since 2.0.26 is deprecated and it will result in write to `minable_flag` instead.
7354
7378
  */
7355
7379
  minable: boolean;
7356
7380
  /**
@@ -7386,7 +7410,7 @@ interface LuaEntity extends LuaControl {
7386
7410
  */
7387
7411
  readonly neighbour_bonus: double;
7388
7412
  /**
7389
- * A list of neighbours for certain types of entities. Applies to underground belts, walls, gates, reactors, cliffs, and pipe-connectable entities.
7413
+ * A list of neighbours for certain types of entities. Applies to underground belts, walls, gates, reactors, heat pipes, cliffs, and pipe-connectable entities.
7390
7414
  * Differs depending on the type of entity:
7391
7415
  *
7392
7416
  * - When called on a pipe-connectable entity, this is an array of entity arrays of all entities a given fluidbox is connected to.
@@ -7454,6 +7478,10 @@ interface LuaEntity extends LuaControl {
7454
7478
  * The previous recipe this furnace was using, if any.
7455
7479
  */
7456
7480
  readonly previous_recipe?: RecipeIDAndQualityIDPair;
7481
+ /**
7482
+ * The priority targets for this turret (if any).
7483
+ */
7484
+ readonly priority_targets: LuaEntityPrototype[];
7457
7485
  /**
7458
7486
  * how far into the current procession the cargo pod is.
7459
7487
  */
@@ -8045,7 +8073,7 @@ interface LuaEntityPrototype extends LuaPrototypeBase {
8045
8073
  readonly build_base_evolution_requirement: double;
8046
8074
  readonly build_distance?: uint;
8047
8075
  /**
8048
- * The log2 of grid size of the building
8076
+ * The log2 of {@link grid size | prototype:EntityPrototype::build_grid_size} of the building.
8049
8077
  */
8050
8078
  readonly building_grid_bit_shift: uint;
8051
8079
  /**
@@ -8510,6 +8538,7 @@ interface LuaEntityPrototype extends LuaPrototypeBase {
8510
8538
  * The max belt stack size for this loader.
8511
8539
  */
8512
8540
  readonly loader_max_belt_stack_size?: uint8;
8541
+ readonly loader_respect_insert_limits?: boolean;
8513
8542
  /**
8514
8543
  * True if this loader will not drop items for which total amount is less than a full belt stack.
8515
8544
  */
@@ -9493,7 +9522,7 @@ interface LuaFluidBox {
9493
9522
  * @param fluid If provided, only this fluid is flushed.
9494
9523
  * @returns The removed fluid.
9495
9524
  */
9496
- flush(this: void, index: uint, fluid?: FluidID): Record<string, float>;
9525
+ flush(this: void, index: uint, fluid?: FluidID): Record<string, FluidAmount>;
9497
9526
  /**
9498
9527
  * The capacity of the given fluidbox segment.
9499
9528
  */
@@ -9626,7 +9655,7 @@ interface LuaFluidBoxPrototype {
9626
9655
  /**
9627
9656
  * The render layer.
9628
9657
  */
9629
- readonly render_layer: string;
9658
+ readonly render_layer: RenderLayer;
9630
9659
  /**
9631
9660
  * The secondary draw orders for the 4 possible connection directions.
9632
9661
  */
@@ -9839,7 +9868,7 @@ interface LuaForce {
9839
9868
  */
9840
9869
  enable_research(this: void): void;
9841
9870
  /**
9842
- * Finds all custom chart tags within the given bounding box on the given surface.
9871
+ * Finds all custom chart tags within a given area on the given surface. If no area is given all custom chart tags on the surface are returned.
9843
9872
  */
9844
9873
  find_chart_tags(this: void, surface: SurfaceIdentification, area?: BoundingBox): LuaCustomChartTag[];
9845
9874
  /**
@@ -10218,7 +10247,7 @@ interface LuaForce {
10218
10247
  /**
10219
10248
  * All of the items that have been launched in rockets.
10220
10249
  */
10221
- readonly items_launched: ItemWithQualityCounts;
10250
+ readonly items_launched: Record<string, ItemCountType>;
10222
10251
  laboratory_productivity_bonus: double;
10223
10252
  laboratory_speed_modifier: double;
10224
10253
  /**
@@ -12417,6 +12446,8 @@ interface LuaInventory {
12417
12446
  is_filtered(this: void): boolean;
12418
12447
  /**
12419
12448
  * Is every stack in this inventory full? Ignores stacks blocked by the current bar.
12449
+ *
12450
+ * For the input slots of crafting machines that allow counts larger than the item stack size, this may return true even when more items can still be inserted.
12420
12451
  */
12421
12452
  is_full(this: void): boolean;
12422
12453
  /**
@@ -12778,6 +12809,10 @@ interface LuaItemCommon {
12778
12809
  * If absolute snapping is enabled on this blueprint item.
12779
12810
  */
12780
12811
  blueprint_absolute_snapping: boolean;
12812
+ /**
12813
+ * The description for this blueprint or blueprint book
12814
+ */
12815
+ blueprint_description: string;
12781
12816
  /**
12782
12817
  * The offset from the absolute grid. `nil` if absolute snapping is not enabled.
12783
12818
  */
@@ -14146,6 +14181,12 @@ interface LuaPlanet {
14146
14181
  * Creates the associated surface if one doesn't already exist.
14147
14182
  */
14148
14183
  create_surface(this: void): LuaSurface;
14184
+ /**
14185
+ * Gets the built space platforms orbiting this planet on the given force.
14186
+ *
14187
+ * Note, this does not include platforms that have not yet been built.
14188
+ */
14189
+ get_space_platforms(this: void, force: ForceID): LuaSpacePlatform[];
14149
14190
  /**
14150
14191
  * Resets the map gen settings on this planet to the default from-prototype state.
14151
14192
  */
@@ -16039,6 +16080,10 @@ interface LuaRecord {
16039
16080
  * If absolute snapping is enabled on this blueprint.
16040
16081
  */
16041
16082
  blueprint_absolute_snapping: boolean;
16083
+ /**
16084
+ * The description for this blueprint or blueprint book
16085
+ */
16086
+ blueprint_description: string;
16042
16087
  /**
16043
16088
  * The offset from the absolute grid. `nil` if absolute snapping is not enabled.
16044
16089
  */
@@ -16151,7 +16196,7 @@ interface LuaRemote {
16151
16196
  * Providing an unknown interface or function name will result in a script error.
16152
16197
  * @param interface Interface to look up `function` in.
16153
16198
  * @param _function Function name that belongs to the `interface`.
16154
- * @param args Arguments to pass to the called function. Note that any arguments passed through the interface are a copy of the original, not a reference. Metatables are not retained, while references to LuaObjects stay intact.
16199
+ * @param args Arguments to pass to the called function. Note that any arguments passed through the interface are a copy of the original, not a reference. Metatables are not retained, while references to LuaObjects stay intact. Functions cannot be passed through the interface.
16155
16200
  */
16156
16201
  call(this: void, interface: string, _function: string, ...args: Any[]): Any | null;
16157
16202
  /**
@@ -18937,8 +18982,12 @@ interface LuaSurface {
18937
18982
  */
18938
18983
  wind_speed: double;
18939
18984
  }
18940
- type LuaSurfaceCreateEntityParams = BaseLuaSurfaceCreateEntityParams | LuaSurfaceCreateEntityParamsArtilleryFlare | LuaSurfaceCreateEntityParamsArtilleryProjectile | LuaSurfaceCreateEntityParamsAssemblingMachine | LuaSurfaceCreateEntityParamsBeam | LuaSurfaceCreateEntityParamsCharacterCorpse | LuaSurfaceCreateEntityParamsCliff | LuaSurfaceCreateEntityParamsContainer | LuaSurfaceCreateEntityParamsDisplayPanel | LuaSurfaceCreateEntityParamsElectricPole | LuaSurfaceCreateEntityParamsEntityGhost | LuaSurfaceCreateEntityParamsFire | LuaSurfaceCreateEntityParamsHighlightBox | LuaSurfaceCreateEntityParamsInserter | LuaSurfaceCreateEntityParamsItemEntity | LuaSurfaceCreateEntityParamsItemRequestProxy | LuaSurfaceCreateEntityParamsLamp | LuaSurfaceCreateEntityParamsLoader | LuaSurfaceCreateEntityParamsLoader1x1 | LuaSurfaceCreateEntityParamsLocomotive | LuaSurfaceCreateEntityParamsLogisticContainer | LuaSurfaceCreateEntityParamsParticle | LuaSurfaceCreateEntityParamsPlant | LuaSurfaceCreateEntityParamsProgrammableSpeaker | LuaSurfaceCreateEntityParamsProjectile | LuaSurfaceCreateEntityParamsProjectile | LuaSurfaceCreateEntityParamsRailChainSignal | LuaSurfaceCreateEntityParamsRailSignal | LuaSurfaceCreateEntityParamsResource | LuaSurfaceCreateEntityParamsRollingStock | LuaSurfaceCreateEntityParamsSimpleEntityWithForce | LuaSurfaceCreateEntityParamsSimpleEntityWithOwner | LuaSurfaceCreateEntityParamsSpeechBubble | LuaSurfaceCreateEntityParamsStream | LuaSurfaceCreateEntityParamsTileGhost | LuaSurfaceCreateEntityParamsUndergroundBelt;
18985
+ type LuaSurfaceCreateEntityParams = BaseLuaSurfaceCreateEntityParams | LuaSurfaceCreateEntityParamsAccumulator | LuaSurfaceCreateEntityParamsAgriculturalTower | LuaSurfaceCreateEntityParamsAmmoTurret | LuaSurfaceCreateEntityParamsArithmeticCombinator | LuaSurfaceCreateEntityParamsArtilleryFlare | LuaSurfaceCreateEntityParamsArtilleryProjectile | LuaSurfaceCreateEntityParamsArtilleryTurret | LuaSurfaceCreateEntityParamsArtilleryWagon | LuaSurfaceCreateEntityParamsAssemblingMachine | LuaSurfaceCreateEntityParamsAsteroid | LuaSurfaceCreateEntityParamsAsteroidCollector | LuaSurfaceCreateEntityParamsBeam | LuaSurfaceCreateEntityParamsCar | LuaSurfaceCreateEntityParamsCargoLandingPad | LuaSurfaceCreateEntityParamsCargoWagon | LuaSurfaceCreateEntityParamsCharacterCorpse | LuaSurfaceCreateEntityParamsCliff | LuaSurfaceCreateEntityParamsConstantCombinator | LuaSurfaceCreateEntityParamsContainer | LuaSurfaceCreateEntityParamsDeciderCombinator | LuaSurfaceCreateEntityParamsDeconstructibleTileProxy | LuaSurfaceCreateEntityParamsDisplayPanel | LuaSurfaceCreateEntityParamsElectricEnergyInterface | LuaSurfaceCreateEntityParamsElectricPole | LuaSurfaceCreateEntityParamsElectricTurret | LuaSurfaceCreateEntityParamsEntityGhost | LuaSurfaceCreateEntityParamsFire | LuaSurfaceCreateEntityParamsFluidTurret | LuaSurfaceCreateEntityParamsFluidWagon | LuaSurfaceCreateEntityParamsFurnace | LuaSurfaceCreateEntityParamsHighlightBox | LuaSurfaceCreateEntityParamsInfinityCargoWagon | LuaSurfaceCreateEntityParamsInfinityContainer | LuaSurfaceCreateEntityParamsInfinityPipe | LuaSurfaceCreateEntityParamsInserter | LuaSurfaceCreateEntityParamsItemEntity | LuaSurfaceCreateEntityParamsItemRequestProxy | LuaSurfaceCreateEntityParamsLamp | LuaSurfaceCreateEntityParamsLaneSplitter | LuaSurfaceCreateEntityParamsLinkedBelt | LuaSurfaceCreateEntityParamsLinkedContainer | LuaSurfaceCreateEntityParamsLoader | LuaSurfaceCreateEntityParamsLoader1x1 | LuaSurfaceCreateEntityParamsLocomotive | LuaSurfaceCreateEntityParamsLogisticContainer | LuaSurfaceCreateEntityParamsMiningDrill | LuaSurfaceCreateEntityParamsParticle | LuaSurfaceCreateEntityParamsPlant | LuaSurfaceCreateEntityParamsPowerSwitch | LuaSurfaceCreateEntityParamsProgrammableSpeaker | LuaSurfaceCreateEntityParamsProjectile | LuaSurfaceCreateEntityParamsProxyContainer | LuaSurfaceCreateEntityParamsPump | LuaSurfaceCreateEntityParamsRailChainSignal | LuaSurfaceCreateEntityParamsRailSignal | LuaSurfaceCreateEntityParamsReactor | LuaSurfaceCreateEntityParamsResource | LuaSurfaceCreateEntityParamsRoboport | LuaSurfaceCreateEntityParamsRocketSilo | LuaSurfaceCreateEntityParamsSelectorCombinator | LuaSurfaceCreateEntityParamsSimpleEntityWithForce | LuaSurfaceCreateEntityParamsSimpleEntityWithOwner | LuaSurfaceCreateEntityParamsSpacePlatformHub | LuaSurfaceCreateEntityParamsSpeechBubble | LuaSurfaceCreateEntityParamsSpiderVehicle | LuaSurfaceCreateEntityParamsSplitter | LuaSurfaceCreateEntityParamsStorageTank | LuaSurfaceCreateEntityParamsStream | LuaSurfaceCreateEntityParamsTileGhost | LuaSurfaceCreateEntityParamsTrainStop | LuaSurfaceCreateEntityParamsTransportBelt | LuaSurfaceCreateEntityParamsTurret | LuaSurfaceCreateEntityParamsUndergroundBelt | LuaSurfaceCreateEntityParamsValve | LuaSurfaceCreateEntityParamsWall;
18941
18986
  interface BaseLuaSurfaceCreateEntityParams {
18987
+ /**
18988
+ * Used by entities with a burner energy source.
18989
+ */
18990
+ 'burner_fuel_inventory'?: BlueprintInventoryWithFilters;
18942
18991
  /**
18943
18992
  * Cause entity / force. The entity or force that triggered the chain of events that led to this entity being created. Used for beams, projectiles, stickers, etc. so that the damage receiver can know which entity or force to retaliate against.
18944
18993
  */
@@ -19024,6 +19073,40 @@ interface BaseLuaSurfaceCreateEntityParams {
19024
19073
  */
19025
19074
  'undo_index'?: uint;
19026
19075
  }
19076
+ /**
19077
+ *
19078
+ * Applies to variant case `accumulator`
19079
+ */
19080
+ interface LuaSurfaceCreateEntityParamsAccumulator extends BaseLuaSurfaceCreateEntityParams {
19081
+ 'control_behavior'?: AccumulatorBlueprintControlBehavior;
19082
+ }
19083
+ /**
19084
+ *
19085
+ * Applies to variant case `agricultural-tower`
19086
+ */
19087
+ interface LuaSurfaceCreateEntityParamsAgriculturalTower extends BaseLuaSurfaceCreateEntityParams {
19088
+ 'control_behavior'?: AgriculturalTowerBlueprintControlBehavior;
19089
+ }
19090
+ /**
19091
+ *
19092
+ * Applies to variant case `ammo-turret`
19093
+ */
19094
+ interface LuaSurfaceCreateEntityParamsAmmoTurret extends BaseLuaSurfaceCreateEntityParams {
19095
+ 'control_behavior'?: TurretBlueprintControlBehavior;
19096
+ /**
19097
+ * Defaults to `false`.
19098
+ */
19099
+ 'ignore-unprioritised'?: boolean;
19100
+ 'priority-list'?: SlotFilter;
19101
+ }
19102
+ /**
19103
+ *
19104
+ * Applies to variant case `arithmetic-combinator`
19105
+ */
19106
+ interface LuaSurfaceCreateEntityParamsArithmeticCombinator extends BaseLuaSurfaceCreateEntityParams {
19107
+ 'control_behavior'?: ArithmeticCombinatorBlueprintControlBehavior;
19108
+ 'player_description'?: string;
19109
+ }
19027
19110
  /**
19028
19111
  *
19029
19112
  * Applies to variant case `artillery-flare`
@@ -19044,12 +19127,56 @@ interface LuaSurfaceCreateEntityParamsArtilleryProjectile extends BaseLuaSurface
19044
19127
  */
19045
19128
  'speed'?: double;
19046
19129
  }
19130
+ /**
19131
+ *
19132
+ * Applies to variant case `artillery-turret`
19133
+ */
19134
+ interface LuaSurfaceCreateEntityParamsArtilleryTurret extends BaseLuaSurfaceCreateEntityParams {
19135
+ 'artillery_auto_targeting'?: boolean;
19136
+ 'control_behavior'?: ArtilleryTurretBlueprintControlBehavior;
19137
+ }
19138
+ /**
19139
+ *
19140
+ * Applies to variant case `artillery-wagon`
19141
+ */
19142
+ interface LuaSurfaceCreateEntityParamsArtilleryWagon extends BaseLuaSurfaceCreateEntityParams {
19143
+ 'artillery_auto_targeting'?: boolean;
19144
+ /**
19145
+ * The color of this rolling stock, if it supports colors.
19146
+ */
19147
+ 'color'?: Color;
19148
+ 'copy_color_from_train_stop'?: boolean;
19149
+ 'enable_logistics_while_moving'?: boolean;
19150
+ 'grid'?: BlueprintEquipment[];
19151
+ /**
19152
+ * The orientation of this rolling stock.
19153
+ */
19154
+ 'orientation'?: RealOrientation;
19155
+ }
19047
19156
  /**
19048
19157
  *
19049
19158
  * Applies to variant case `assembling-machine`
19050
19159
  */
19051
19160
  interface LuaSurfaceCreateEntityParamsAssemblingMachine extends BaseLuaSurfaceCreateEntityParams {
19161
+ 'control_behavior'?: AssemblingMachineBlueprintControlBehavior;
19052
19162
  'recipe'?: string;
19163
+ 'recipe_quality'?: string;
19164
+ }
19165
+ /**
19166
+ *
19167
+ * Applies to variant case `asteroid`
19168
+ */
19169
+ interface LuaSurfaceCreateEntityParamsAsteroid extends BaseLuaSurfaceCreateEntityParams {
19170
+ 'velocity'?: Vector;
19171
+ }
19172
+ /**
19173
+ *
19174
+ * Applies to variant case `asteroid-collector`
19175
+ */
19176
+ interface LuaSurfaceCreateEntityParamsAsteroidCollector extends BaseLuaSurfaceCreateEntityParams {
19177
+ 'chunk-filter'?: SlotFilter[];
19178
+ 'control_behavior'?: AsteroidCollectorBlueprintControlBehavior;
19179
+ 'result-inventory'?: BlueprintInventory;
19053
19180
  }
19054
19181
  /**
19055
19182
  *
@@ -19077,11 +19204,53 @@ interface LuaSurfaceCreateEntityParamsBeam extends BaseLuaSurfaceCreateEntityPar
19077
19204
  */
19078
19205
  'target_position'?: MapPosition;
19079
19206
  }
19207
+ /**
19208
+ *
19209
+ * Applies to variant case `car`
19210
+ */
19211
+ interface LuaSurfaceCreateEntityParamsCar extends BaseLuaSurfaceCreateEntityParams {
19212
+ 'ammo_inventory'?: BlueprintInventoryWithFilters;
19213
+ 'driver_is_main_gunner'?: boolean;
19214
+ 'enable_logistics_while_moving'?: boolean;
19215
+ 'grid'?: BlueprintEquipment[];
19216
+ 'orientation'?: RealOrientation;
19217
+ 'request_filters'?: BlueprintLogisticSections;
19218
+ 'selected_gun_index'?: ItemStackIndex;
19219
+ 'trunk_inventory'?: BlueprintInventoryWithFilters;
19220
+ }
19221
+ /**
19222
+ *
19223
+ * Applies to variant case `cargo-landing-pad`
19224
+ */
19225
+ interface LuaSurfaceCreateEntityParamsCargoLandingPad extends BaseLuaSurfaceCreateEntityParams {
19226
+ 'bar'?: uint;
19227
+ 'control_behavior'?: CargoLandingPadBlueprintControlBehavior;
19228
+ 'request_filters'?: BlueprintLogisticSections;
19229
+ }
19230
+ /**
19231
+ *
19232
+ * Applies to variant case `cargo-wagon`
19233
+ */
19234
+ interface LuaSurfaceCreateEntityParamsCargoWagon extends BaseLuaSurfaceCreateEntityParams {
19235
+ /**
19236
+ * The color of this rolling stock, if it supports colors.
19237
+ */
19238
+ 'color'?: Color;
19239
+ 'copy_color_from_train_stop'?: boolean;
19240
+ 'enable_logistics_while_moving'?: boolean;
19241
+ 'grid'?: BlueprintEquipment[];
19242
+ 'inventory'?: BlueprintInventoryWithFilters;
19243
+ /**
19244
+ * The orientation of this rolling stock.
19245
+ */
19246
+ 'orientation'?: RealOrientation;
19247
+ }
19080
19248
  /**
19081
19249
  *
19082
19250
  * Applies to variant case `character-corpse`
19083
19251
  */
19084
19252
  interface LuaSurfaceCreateEntityParamsCharacterCorpse extends BaseLuaSurfaceCreateEntityParams {
19253
+ 'color'?: Color;
19085
19254
  'inventory_size'?: uint;
19086
19255
  'player_index'?: uint;
19087
19256
  }
@@ -19095,6 +19264,14 @@ interface LuaSurfaceCreateEntityParamsCliff extends BaseLuaSurfaceCreateEntityPa
19095
19264
  */
19096
19265
  'cliff_orientation'?: CliffOrientation;
19097
19266
  }
19267
+ /**
19268
+ *
19269
+ * Applies to variant case `constant-combinator`
19270
+ */
19271
+ interface LuaSurfaceCreateEntityParamsConstantCombinator extends BaseLuaSurfaceCreateEntityParams {
19272
+ 'control_behavior'?: ConstantCombinatorBlueprintControlBehavior;
19273
+ 'player_description'?: string;
19274
+ }
19098
19275
  /**
19099
19276
  *
19100
19277
  * Applies to variant case `container`
@@ -19104,6 +19281,22 @@ interface LuaSurfaceCreateEntityParamsContainer extends BaseLuaSurfaceCreateEnti
19104
19281
  * Inventory index where the red limiting bar should be set.
19105
19282
  */
19106
19283
  'bar'?: uint;
19284
+ 'control_behavior'?: ContainerBlueprintControlBehavior;
19285
+ }
19286
+ /**
19287
+ *
19288
+ * Applies to variant case `decider-combinator`
19289
+ */
19290
+ interface LuaSurfaceCreateEntityParamsDeciderCombinator extends BaseLuaSurfaceCreateEntityParams {
19291
+ 'control_behavior'?: DeciderCombinatorBlueprintControlBehavior;
19292
+ 'player_description'?: string;
19293
+ }
19294
+ /**
19295
+ *
19296
+ * Applies to variant case `deconstructible-tile-proxy`
19297
+ */
19298
+ interface LuaSurfaceCreateEntityParamsDeconstructibleTileProxy extends BaseLuaSurfaceCreateEntityParams {
19299
+ 'proxy_type'?: 'cover' | 'foundation';
19107
19300
  }
19108
19301
  /**
19109
19302
  *
@@ -19111,10 +19304,20 @@ interface LuaSurfaceCreateEntityParamsContainer extends BaseLuaSurfaceCreateEnti
19111
19304
  */
19112
19305
  interface LuaSurfaceCreateEntityParamsDisplayPanel extends BaseLuaSurfaceCreateEntityParams {
19113
19306
  'always_show'?: boolean;
19307
+ 'control_behavior'?: DisplayPanelBlueprintControlBehavior;
19114
19308
  'icon'?: SignalID;
19115
19309
  'show_in_chart'?: boolean;
19116
19310
  'text'?: LocalisedString;
19117
19311
  }
19312
+ /**
19313
+ *
19314
+ * Applies to variant case `electric-energy-interface`
19315
+ */
19316
+ interface LuaSurfaceCreateEntityParamsElectricEnergyInterface extends BaseLuaSurfaceCreateEntityParams {
19317
+ 'buffer_size'?: double;
19318
+ 'power_production'?: double;
19319
+ 'power_usage'?: double;
19320
+ }
19118
19321
  /**
19119
19322
  *
19120
19323
  * Applies to variant case `electric-pole`
@@ -19125,6 +19328,18 @@ interface LuaSurfaceCreateEntityParamsElectricPole extends BaseLuaSurfaceCreateE
19125
19328
  */
19126
19329
  'auto_connect'?: boolean;
19127
19330
  }
19331
+ /**
19332
+ *
19333
+ * Applies to variant case `electric-turret`
19334
+ */
19335
+ interface LuaSurfaceCreateEntityParamsElectricTurret extends BaseLuaSurfaceCreateEntityParams {
19336
+ 'control_behavior'?: TurretBlueprintControlBehavior;
19337
+ /**
19338
+ * Defaults to `false`.
19339
+ */
19340
+ 'ignore-unprioritised'?: boolean;
19341
+ 'priority-list'?: SlotFilter;
19342
+ }
19128
19343
  /**
19129
19344
  *
19130
19345
  * Applies to variant case `entity-ghost`
@@ -19149,6 +19364,42 @@ interface LuaSurfaceCreateEntityParamsFire extends BaseLuaSurfaceCreateEntityPar
19149
19364
  */
19150
19365
  'initial_ground_flame_count'?: uint8;
19151
19366
  }
19367
+ /**
19368
+ *
19369
+ * Applies to variant case `fluid-turret`
19370
+ */
19371
+ interface LuaSurfaceCreateEntityParamsFluidTurret extends BaseLuaSurfaceCreateEntityParams {
19372
+ 'control_behavior'?: TurretBlueprintControlBehavior;
19373
+ /**
19374
+ * Defaults to `false`.
19375
+ */
19376
+ 'ignore-unprioritised'?: boolean;
19377
+ 'priority-list'?: SlotFilter;
19378
+ }
19379
+ /**
19380
+ *
19381
+ * Applies to variant case `fluid-wagon`
19382
+ */
19383
+ interface LuaSurfaceCreateEntityParamsFluidWagon extends BaseLuaSurfaceCreateEntityParams {
19384
+ /**
19385
+ * The color of this rolling stock, if it supports colors.
19386
+ */
19387
+ 'color'?: Color;
19388
+ 'copy_color_from_train_stop'?: boolean;
19389
+ 'enable_logistics_while_moving'?: boolean;
19390
+ 'grid'?: BlueprintEquipment[];
19391
+ /**
19392
+ * The orientation of this rolling stock.
19393
+ */
19394
+ 'orientation'?: RealOrientation;
19395
+ }
19396
+ /**
19397
+ *
19398
+ * Applies to variant case `furnace`
19399
+ */
19400
+ interface LuaSurfaceCreateEntityParamsFurnace extends BaseLuaSurfaceCreateEntityParams {
19401
+ 'control_behavior'?: FurnaceBlueprintControlBehavior;
19402
+ }
19152
19403
  /**
19153
19404
  *
19154
19405
  * Applies to variant case `highlight-box`
@@ -19175,13 +19426,64 @@ interface LuaSurfaceCreateEntityParamsHighlightBox extends BaseLuaSurfaceCreateE
19175
19426
  */
19176
19427
  'time_to_live'?: uint;
19177
19428
  }
19429
+ /**
19430
+ *
19431
+ * Applies to variant case `infinity-cargo-wagon`
19432
+ */
19433
+ interface LuaSurfaceCreateEntityParamsInfinityCargoWagon extends BaseLuaSurfaceCreateEntityParams {
19434
+ /**
19435
+ * The color of this rolling stock, if it supports colors.
19436
+ */
19437
+ 'color'?: Color;
19438
+ 'copy_color_from_train_stop'?: boolean;
19439
+ 'enable_logistics_while_moving'?: boolean;
19440
+ 'grid'?: BlueprintEquipment[];
19441
+ 'infinity_settings'?: BlueprintInfinityInventorySettings;
19442
+ 'inventory'?: BlueprintInventoryWithFilters;
19443
+ /**
19444
+ * The orientation of this rolling stock.
19445
+ */
19446
+ 'orientation'?: RealOrientation;
19447
+ }
19448
+ /**
19449
+ *
19450
+ * Applies to variant case `infinity-container`
19451
+ */
19452
+ interface LuaSurfaceCreateEntityParamsInfinityContainer extends BaseLuaSurfaceCreateEntityParams {
19453
+ 'bar'?: uint;
19454
+ 'control_behavior'?: LogisticContainerBlueprintControlBehavior;
19455
+ 'infinity_settings'?: BlueprintInfinityInventorySettings;
19456
+ 'request_filters'?: BlueprintLogisticSections;
19457
+ }
19458
+ /**
19459
+ *
19460
+ * Applies to variant case `infinity-pipe`
19461
+ */
19462
+ interface LuaSurfaceCreateEntityParamsInfinityPipe extends BaseLuaSurfaceCreateEntityParams {
19463
+ 'infinity_settings'?: InfinityPipeFilter;
19464
+ }
19178
19465
  /**
19179
19466
  *
19180
19467
  * Applies to variant case `inserter`
19181
19468
  */
19182
19469
  interface LuaSurfaceCreateEntityParamsInserter extends BaseLuaSurfaceCreateEntityParams {
19183
- 'conditions': InserterCircuitConditions;
19470
+ 'control_behavior'?: InserterBlueprintControlBehavior;
19471
+ /**
19472
+ * Used only if {@link InserterPrototype::allow_custom_vectors | prototype:InserterPrototype::allow_custom_vectors} is true.
19473
+ */
19474
+ 'drop_position'?: Vector;
19475
+ 'filter_mode'?: 'blacklist' | 'whitelist';
19184
19476
  'filters'?: BlueprintItemFilter[];
19477
+ 'override_stack_size'?: uint8;
19478
+ /**
19479
+ * Used only if {@link InserterPrototype::allow_custom_vectors | prototype:InserterPrototype::allow_custom_vectors} is true.
19480
+ */
19481
+ 'pickup_position'?: Vector;
19482
+ 'spoil_priority'?: 'spoiled-first' | 'fresh-first';
19483
+ /**
19484
+ * Defaults to `false`.
19485
+ */
19486
+ 'use_filters'?: boolean;
19185
19487
  }
19186
19488
  /**
19187
19489
  *
@@ -19225,11 +19527,36 @@ interface LuaSurfaceCreateEntityParamsLamp extends BaseLuaSurfaceCreateEntityPar
19225
19527
  */
19226
19528
  'color'?: Color;
19227
19529
  }
19530
+ /**
19531
+ *
19532
+ * Applies to variant case `lane-splitter`
19533
+ */
19534
+ interface LuaSurfaceCreateEntityParamsLaneSplitter extends BaseLuaSurfaceCreateEntityParams {
19535
+ 'filter'?: ItemFilter;
19536
+ 'input_priority'?: SplitterPriority;
19537
+ 'output_priority'?: SplitterPriority;
19538
+ }
19539
+ /**
19540
+ *
19541
+ * Applies to variant case `linked-belt`
19542
+ */
19543
+ interface LuaSurfaceCreateEntityParamsLinkedBelt extends BaseLuaSurfaceCreateEntityParams {
19544
+ 'type'?: BeltConnectionType;
19545
+ }
19546
+ /**
19547
+ *
19548
+ * Applies to variant case `linked-container`
19549
+ */
19550
+ interface LuaSurfaceCreateEntityParamsLinkedContainer extends BaseLuaSurfaceCreateEntityParams {
19551
+ 'link_id'?: uint;
19552
+ }
19228
19553
  /**
19229
19554
  *
19230
19555
  * Applies to variant case `loader`
19231
19556
  */
19232
19557
  interface LuaSurfaceCreateEntityParamsLoader extends BaseLuaSurfaceCreateEntityParams {
19558
+ 'belt_stack_size_override'?: uint8;
19559
+ 'filter_mode'?: PrototypeFilterMode;
19233
19560
  'filters'?: SlotFilter[];
19234
19561
  /**
19235
19562
  * Defaults to `"input"`.
@@ -19241,6 +19568,8 @@ interface LuaSurfaceCreateEntityParamsLoader extends BaseLuaSurfaceCreateEntityP
19241
19568
  * Applies to variant case `loader-1x1`
19242
19569
  */
19243
19570
  interface LuaSurfaceCreateEntityParamsLoader1x1 extends BaseLuaSurfaceCreateEntityParams {
19571
+ 'belt_stack_size_override'?: uint8;
19572
+ 'filter_mode'?: PrototypeFilterMode;
19244
19573
  'filters'?: SlotFilter[];
19245
19574
  /**
19246
19575
  * Defaults to `"input"`.
@@ -19252,6 +19581,17 @@ interface LuaSurfaceCreateEntityParamsLoader1x1 extends BaseLuaSurfaceCreateEnti
19252
19581
  * Applies to variant case `locomotive`
19253
19582
  */
19254
19583
  interface LuaSurfaceCreateEntityParamsLocomotive extends BaseLuaSurfaceCreateEntityParams {
19584
+ /**
19585
+ * The color of this rolling stock, if it supports colors.
19586
+ */
19587
+ 'color'?: Color;
19588
+ 'copy_color_from_train_stop'?: boolean;
19589
+ 'enable_logistics_while_moving'?: boolean;
19590
+ 'grid'?: BlueprintEquipment[];
19591
+ /**
19592
+ * The orientation of this rolling stock.
19593
+ */
19594
+ 'orientation'?: RealOrientation;
19255
19595
  /**
19256
19596
  * Whether the locomotive should snap to an adjacent train stop. Defaults to true.
19257
19597
  */
@@ -19262,8 +19602,18 @@ interface LuaSurfaceCreateEntityParamsLocomotive extends BaseLuaSurfaceCreateEnt
19262
19602
  * Applies to variant case `logistic-container`
19263
19603
  */
19264
19604
  interface LuaSurfaceCreateEntityParamsLogisticContainer extends BaseLuaSurfaceCreateEntityParams {
19605
+ 'bar'?: uint;
19606
+ 'control_behavior'?: LogisticContainerBlueprintControlBehavior;
19265
19607
  'request_filters'?: SlotFilter[];
19266
19608
  }
19609
+ /**
19610
+ *
19611
+ * Applies to variant case `mining-drill`
19612
+ */
19613
+ interface LuaSurfaceCreateEntityParamsMiningDrill extends BaseLuaSurfaceCreateEntityParams {
19614
+ 'control_behavior'?: MiningDrillBlueprintControlBehavior;
19615
+ 'filter'?: BlueprintMiningDrillFilter;
19616
+ }
19267
19617
  /**
19268
19618
  *
19269
19619
  * Applies to variant case `particle`
@@ -19284,12 +19634,21 @@ interface LuaSurfaceCreateEntityParamsPlant extends BaseLuaSurfaceCreateEntityPa
19284
19634
  */
19285
19635
  'tick_grown'?: uint;
19286
19636
  }
19637
+ /**
19638
+ *
19639
+ * Applies to variant case `power-switch`
19640
+ */
19641
+ interface LuaSurfaceCreateEntityParamsPowerSwitch extends BaseLuaSurfaceCreateEntityParams {
19642
+ 'control_behavior'?: PowerSwitchBlueprintControlBehavior;
19643
+ 'switch_state'?: boolean;
19644
+ }
19287
19645
  /**
19288
19646
  *
19289
19647
  * Applies to variant case `programmable-speaker`
19290
19648
  */
19291
19649
  interface LuaSurfaceCreateEntityParamsProgrammableSpeaker extends BaseLuaSurfaceCreateEntityParams {
19292
19650
  'alert_parameters'?: ProgrammableSpeakerAlertParameters;
19651
+ 'control_behavior'?: ProgrammableSpeakerBlueprintControlBehavior;
19293
19652
  'parameters'?: ProgrammableSpeakerParameters;
19294
19653
  }
19295
19654
  /**
@@ -19297,6 +19656,8 @@ interface LuaSurfaceCreateEntityParamsProgrammableSpeaker extends BaseLuaSurface
19297
19656
  * Applies to variant case `projectile`
19298
19657
  */
19299
19658
  interface LuaSurfaceCreateEntityParamsProjectile extends BaseLuaSurfaceCreateEntityParams {
19659
+ 'base_damage_modifiers'?: TriggerModifierData;
19660
+ 'bonus_damage_modifiers'?: TriggerModifierData;
19300
19661
  /**
19301
19662
  * Defaults to 1000.
19302
19663
  */
@@ -19308,17 +19669,25 @@ interface LuaSurfaceCreateEntityParamsProjectile extends BaseLuaSurfaceCreateEnt
19308
19669
  }
19309
19670
  /**
19310
19671
  *
19311
- * Applies to variant case `projectile`
19672
+ * Applies to variant case `proxy-container`
19312
19673
  */
19313
- interface LuaSurfaceCreateEntityParamsProjectile extends BaseLuaSurfaceCreateEntityParams {
19314
- 'base_damage_modifiers'?: TriggerModifierData;
19315
- 'bonus_damage_modifiers'?: TriggerModifierData;
19674
+ interface LuaSurfaceCreateEntityParamsProxyContainer extends BaseLuaSurfaceCreateEntityParams {
19675
+ 'control_behavior'?: ProxyContainerBlueprintControlBehavior;
19676
+ }
19677
+ /**
19678
+ *
19679
+ * Applies to variant case `pump`
19680
+ */
19681
+ interface LuaSurfaceCreateEntityParamsPump extends BaseLuaSurfaceCreateEntityParams {
19682
+ 'control_behavior'?: PumpBlueprintControlBehavior;
19683
+ 'fluid_filter'?: string;
19316
19684
  }
19317
19685
  /**
19318
19686
  *
19319
19687
  * Applies to variant case `rail-chain-signal`
19320
19688
  */
19321
19689
  interface LuaSurfaceCreateEntityParamsRailChainSignal extends BaseLuaSurfaceCreateEntityParams {
19690
+ 'control_behavior'?: RailSignalBaseBlueprintControlBehavior;
19322
19691
  /**
19323
19692
  * Defaults to {@link defines.rail_layer.ground | runtime:defines.rail_layer.ground}.
19324
19693
  */
@@ -19329,17 +19698,25 @@ interface LuaSurfaceCreateEntityParamsRailChainSignal extends BaseLuaSurfaceCrea
19329
19698
  * Applies to variant case `rail-signal`
19330
19699
  */
19331
19700
  interface LuaSurfaceCreateEntityParamsRailSignal extends BaseLuaSurfaceCreateEntityParams {
19701
+ 'control_behavior'?: RailSignalBaseBlueprintControlBehavior;
19332
19702
  /**
19333
19703
  * Defaults to {@link defines.rail_layer.ground | runtime:defines.rail_layer.ground}.
19334
19704
  */
19335
19705
  'rail_layer'?: defines.rail_layer;
19336
19706
  }
19707
+ /**
19708
+ *
19709
+ * Applies to variant case `reactor`
19710
+ */
19711
+ interface LuaSurfaceCreateEntityParamsReactor extends BaseLuaSurfaceCreateEntityParams {
19712
+ 'control_behavior'?: ReactorBlueprintControlBehavior;
19713
+ }
19337
19714
  /**
19338
19715
  *
19339
19716
  * Applies to variant case `resource`
19340
19717
  */
19341
19718
  interface LuaSurfaceCreateEntityParamsResource extends BaseLuaSurfaceCreateEntityParams {
19342
- 'amount': uint;
19719
+ 'amount'?: uint;
19343
19720
  /**
19344
19721
  * If colliding cliffs are removed. Default is true.
19345
19722
  */
@@ -19355,31 +19732,58 @@ interface LuaSurfaceCreateEntityParamsResource extends BaseLuaSurfaceCreateEntit
19355
19732
  }
19356
19733
  /**
19357
19734
  *
19358
- * Applies to variant case `rolling-stock`
19735
+ * Applies to variant case `roboport`
19359
19736
  */
19360
- interface LuaSurfaceCreateEntityParamsRollingStock extends BaseLuaSurfaceCreateEntityParams {
19361
- /**
19362
- * The color of this rolling stock, if it supports colors.
19363
- */
19364
- 'color'?: Color;
19365
- /**
19366
- * The orientation of this rolling stock.
19367
- */
19368
- 'orientation'?: RealOrientation;
19737
+ interface LuaSurfaceCreateEntityParamsRoboport extends BaseLuaSurfaceCreateEntityParams {
19738
+ 'control_behavior'?: RoboportBlueprintControlBehavior;
19739
+ 'request_filters'?: BlueprintLogisticSections;
19740
+ }
19741
+ /**
19742
+ *
19743
+ * Applies to variant case `rocket-silo`
19744
+ */
19745
+ interface LuaSurfaceCreateEntityParamsRocketSilo extends BaseLuaSurfaceCreateEntityParams {
19746
+ 'control_behavior'?: RocketSiloBlueprintControlBehavior;
19747
+ 'launch_to_orbit_automatically'?: boolean;
19748
+ 'recipe'?: string;
19749
+ 'recipe_quality'?: string;
19750
+ 'use_transitional_requests'?: boolean;
19751
+ }
19752
+ /**
19753
+ *
19754
+ * Applies to variant case `selector-combinator`
19755
+ */
19756
+ interface LuaSurfaceCreateEntityParamsSelectorCombinator extends BaseLuaSurfaceCreateEntityParams {
19757
+ 'control_behavior'?: SelectorCombinatorParameters;
19758
+ 'player_description'?: string;
19369
19759
  }
19370
19760
  /**
19371
19761
  *
19372
19762
  * Applies to variant case `simple-entity-with-force`
19373
19763
  */
19374
19764
  interface LuaSurfaceCreateEntityParamsSimpleEntityWithForce extends BaseLuaSurfaceCreateEntityParams {
19765
+ 'color'?: Color;
19375
19766
  'render_player_index'?: uint;
19767
+ 'variation'?: uint8;
19376
19768
  }
19377
19769
  /**
19378
19770
  *
19379
19771
  * Applies to variant case `simple-entity-with-owner`
19380
19772
  */
19381
19773
  interface LuaSurfaceCreateEntityParamsSimpleEntityWithOwner extends BaseLuaSurfaceCreateEntityParams {
19774
+ 'color'?: Color;
19382
19775
  'render_player_index'?: uint;
19776
+ 'variation'?: uint8;
19777
+ }
19778
+ /**
19779
+ *
19780
+ * Applies to variant case `space-platform-hub`
19781
+ */
19782
+ interface LuaSurfaceCreateEntityParamsSpacePlatformHub extends BaseLuaSurfaceCreateEntityParams {
19783
+ 'bar'?: ItemStackIndex;
19784
+ 'control_behavior'?: SpacePlatformHubBlueprintControlBehavior;
19785
+ 'request_filters'?: BlueprintLogisticSections;
19786
+ 'request_missing_construction_materials'?: boolean;
19383
19787
  }
19384
19788
  /**
19385
19789
  *
@@ -19389,6 +19793,38 @@ interface LuaSurfaceCreateEntityParamsSpeechBubble extends BaseLuaSurfaceCreateE
19389
19793
  'lifetime'?: uint;
19390
19794
  'text': LocalisedString;
19391
19795
  }
19796
+ /**
19797
+ *
19798
+ * Applies to variant case `spider-vehicle`
19799
+ */
19800
+ interface LuaSurfaceCreateEntityParamsSpiderVehicle extends BaseLuaSurfaceCreateEntityParams {
19801
+ 'ammo_inventory'?: BlueprintInventoryWithFilters;
19802
+ 'automatic_targeting_parameters'?: VehicleAutomaticTargetingParameters;
19803
+ 'color'?: Color;
19804
+ 'driver_is_main_gunner'?: boolean;
19805
+ 'enable_logistics_while_moving'?: boolean;
19806
+ 'grid'?: BlueprintEquipment[];
19807
+ 'label'?: string;
19808
+ 'request_filters'?: BlueprintLogisticSections;
19809
+ 'selected_gun_index'?: ItemStackIndex;
19810
+ 'trunk_inventory'?: BlueprintInventoryWithFilters;
19811
+ }
19812
+ /**
19813
+ *
19814
+ * Applies to variant case `splitter`
19815
+ */
19816
+ interface LuaSurfaceCreateEntityParamsSplitter extends BaseLuaSurfaceCreateEntityParams {
19817
+ 'filter'?: ItemFilter;
19818
+ 'input_priority'?: SplitterPriority;
19819
+ 'output_priority'?: SplitterPriority;
19820
+ }
19821
+ /**
19822
+ *
19823
+ * Applies to variant case `storage-tank`
19824
+ */
19825
+ interface LuaSurfaceCreateEntityParamsStorageTank extends BaseLuaSurfaceCreateEntityParams {
19826
+ 'control_behavior'?: StorageTankBlueprintControlBehavior;
19827
+ }
19392
19828
  /**
19393
19829
  *
19394
19830
  * Applies to variant case `stream`
@@ -19413,6 +19849,36 @@ interface LuaSurfaceCreateEntityParamsTileGhost extends BaseLuaSurfaceCreateEnti
19413
19849
  */
19414
19850
  'inner_name': string;
19415
19851
  }
19852
+ /**
19853
+ *
19854
+ * Applies to variant case `train-stop`
19855
+ */
19856
+ interface LuaSurfaceCreateEntityParamsTrainStop extends BaseLuaSurfaceCreateEntityParams {
19857
+ 'color'?: Color;
19858
+ 'control_behavior'?: TrainStopBlueprintControlBehavior;
19859
+ 'manual_trains_limit'?: uint;
19860
+ 'priority'?: uint8;
19861
+ 'station'?: string;
19862
+ }
19863
+ /**
19864
+ *
19865
+ * Applies to variant case `transport-belt`
19866
+ */
19867
+ interface LuaSurfaceCreateEntityParamsTransportBelt extends BaseLuaSurfaceCreateEntityParams {
19868
+ 'control_behavior'?: TransportBeltBlueprintControlBehavior;
19869
+ }
19870
+ /**
19871
+ *
19872
+ * Applies to variant case `turret`
19873
+ */
19874
+ interface LuaSurfaceCreateEntityParamsTurret extends BaseLuaSurfaceCreateEntityParams {
19875
+ 'control_behavior'?: TurretBlueprintControlBehavior;
19876
+ /**
19877
+ * Defaults to `false`.
19878
+ */
19879
+ 'ignore-unprioritised'?: boolean;
19880
+ 'priority-list'?: SlotFilter;
19881
+ }
19416
19882
  /**
19417
19883
  *
19418
19884
  * Applies to variant case `underground-belt`
@@ -19423,6 +19889,20 @@ interface LuaSurfaceCreateEntityParamsUndergroundBelt extends BaseLuaSurfaceCrea
19423
19889
  */
19424
19890
  'type'?: BeltConnectionType;
19425
19891
  }
19892
+ /**
19893
+ *
19894
+ * Applies to variant case `valve`
19895
+ */
19896
+ interface LuaSurfaceCreateEntityParamsValve extends BaseLuaSurfaceCreateEntityParams {
19897
+ 'valve_threshold_override'?: float;
19898
+ }
19899
+ /**
19900
+ *
19901
+ * Applies to variant case `wall`
19902
+ */
19903
+ interface LuaSurfaceCreateEntityParamsWall extends BaseLuaSurfaceCreateEntityParams {
19904
+ 'control_behavior'?: WallBlueprintControlBehavior;
19905
+ }
19426
19906
  type LuaSurfaceCreateSegmentedUnitParams = BaseLuaSurfaceCreateSegmentedUnitParams | LuaSurfaceCreateSegmentedUnitParamsBodyNodes | LuaSurfaceCreateSegmentedUnitParamsPositionAndDirection;
19427
19907
  interface BaseLuaSurfaceCreateSegmentedUnitParams {
19428
19908
  /**
@@ -19940,7 +20420,7 @@ interface LuaTrain {
19940
20420
  * Gets a mapping of the train's fluid inventory.
19941
20421
  * @returns The counts, indexed by fluid names.
19942
20422
  */
19943
- get_fluid_contents(this: void): Record<string, double>;
20423
+ get_fluid_contents(this: void): Record<string, FluidAmount>;
19944
20424
  /**
19945
20425
  * Get the amount of a particular fluid stored in the train.
19946
20426
  * @param fluid Fluid name to count. If not given, counts all fluids.
@@ -20667,11 +21147,11 @@ interface LuaWireConnector {
20667
21147
  */
20668
21148
  readonly owner: LuaEntity;
20669
21149
  /**
20670
- * Amount of real wires going out of this connector. It only includes wires for which both wire connectors are real.
21150
+ * Amount of real wires going out of this connector. It only includes wires for which both wire connectors are real (not ghosts).
20671
21151
  */
20672
21152
  readonly real_connection_count: uint;
20673
21153
  /**
20674
- * All wire connectors this connector is connected to with real wires.
21154
+ * All wire connectors this connector is connected to with real wires. Wires are considered real if they are between two non-ghost entities.
20675
21155
  */
20676
21156
  readonly real_connections: WireConnection[];
20677
21157
  /**