factorio-types 0.0.37 → 0.0.39
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 +308 -319
- package/dist/concepts.d.ts +121 -78
- package/dist/defines.d.ts +24 -24
- package/dist/events.d.ts +59 -59
- package/dist/global.d.ts +11 -11
- package/package.json +1 -1
package/dist/classes.d.ts
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
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 1.1.
|
|
6
|
-
// API version
|
|
5
|
+
// Factorio version 1.1.89
|
|
6
|
+
// API version 4
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Collection of settings for overriding default ai behavior.
|
|
@@ -225,7 +225,7 @@ interface LuaAutoplaceControlPrototype {
|
|
|
225
225
|
*/
|
|
226
226
|
interface LuaBootstrap {
|
|
227
227
|
/**
|
|
228
|
-
* Generate a new, unique event ID that can be used to raise custom events with {@link LuaBootstrap::raise_event | LuaBootstrap::raise_event}.
|
|
228
|
+
* Generate a new, unique event ID that can be used to raise custom events with {@link LuaBootstrap::raise_event | runtime:LuaBootstrap::raise_event}.
|
|
229
229
|
*/
|
|
230
230
|
generate_event_name(this: void): void
|
|
231
231
|
|
|
@@ -256,9 +256,9 @@ interface LuaBootstrap {
|
|
|
256
256
|
name: string): void
|
|
257
257
|
|
|
258
258
|
/**
|
|
259
|
-
* Register a function to be run when mod configuration changes. This is called when the game version or any mod version changed, when any mod was added or removed, when a startup setting has changed, when any prototypes have been added or removed, or when a migration was applied. It allows the mod to make any changes it deems appropriate to both the data structures in its {@link global | global} table or to the game state through {@link LuaGameScript | LuaGameScript}.
|
|
259
|
+
* Register a function to be run when mod configuration changes. This is called when the game version or any mod version changed, when any mod was added or removed, when a startup setting has changed, when any prototypes have been added or removed, or when a migration was applied. It allows the mod to make any changes it deems appropriate to both the data structures in its {@link global | runtime:global} table or to the game state through {@link LuaGameScript | runtime:LuaGameScript}.
|
|
260
260
|
* @remarks
|
|
261
|
-
* For more context, refer to the {@link Data Lifecycle | data-lifecycle} page.
|
|
261
|
+
* For more context, refer to the {@link Data Lifecycle | runtime:data-lifecycle} page.
|
|
262
262
|
*
|
|
263
263
|
* @param handler - The handler for this event. Passing `nil` will unregister it.
|
|
264
264
|
*/
|
|
@@ -271,14 +271,14 @@ interface LuaBootstrap {
|
|
|
271
271
|
* @param filters - The filters for this event. Can only be used when registering for individual events.
|
|
272
272
|
* @param handler - The handler for this event. Passing `nil` will unregister it.
|
|
273
273
|
* @example
|
|
274
|
-
* Register for the [on_tick](on_tick) event to print the current tick to console each tick.
|
|
274
|
+
* Register for the [on_tick](runtime:on_tick) event to print the current tick to console each tick.
|
|
275
275
|
* ```
|
|
276
276
|
* script.on_event(defines.events.on_tick,
|
|
277
277
|
* function(event) game.print(event.tick) end)
|
|
278
278
|
* ```
|
|
279
279
|
*
|
|
280
280
|
* @example
|
|
281
|
-
* Register for the [on_built_entity](on_built_entity) event, limiting it to only be received when a `"fast-inserter"` is built.
|
|
281
|
+
* Register for the [on_built_entity](runtime:on_built_entity) event, limiting it to only be received when a `"fast-inserter"` is built.
|
|
282
282
|
* ```
|
|
283
283
|
* script.on_event(defines.events.on_built_entity,
|
|
284
284
|
* function(event) game.print("Gotta go fast!") end,
|
|
@@ -292,9 +292,9 @@ interface LuaBootstrap {
|
|
|
292
292
|
filters?: EventFilter): void
|
|
293
293
|
|
|
294
294
|
/**
|
|
295
|
-
* Register a function to be run on mod initialization. This is only called when a new save game is created or when a save file is loaded that previously didn't contain the mod. During it, the mod gets the chance to set up initial values that it will use for its lifetime. It has full access to {@link LuaGameScript | LuaGameScript} and the {@link global | global} table and can change anything about them that it deems appropriate. No other events will be raised for the mod until it has finished this step.
|
|
295
|
+
* Register a function to be run on mod initialization. This is only called when a new save game is created or when a save file is loaded that previously didn't contain the mod. During it, the mod gets the chance to set up initial values that it will use for its lifetime. It has full access to {@link LuaGameScript | runtime:LuaGameScript} and the {@link global | runtime:global} table and can change anything about them that it deems appropriate. No other events will be raised for the mod until it has finished this step.
|
|
296
296
|
* @remarks
|
|
297
|
-
* For more context, refer to the {@link Data Lifecycle | data-lifecycle} page.
|
|
297
|
+
* For more context, refer to the {@link Data Lifecycle | runtime:data-lifecycle} page.
|
|
298
298
|
*
|
|
299
299
|
* @param handler - The handler for this event. Passing `nil` will unregister it.
|
|
300
300
|
* @example
|
|
@@ -312,16 +312,16 @@ interface LuaBootstrap {
|
|
|
312
312
|
/**
|
|
313
313
|
* Register a function to be run on save load. This is only called for mods that have been part of the save previously, or for players connecting to a running multiplayer session.
|
|
314
314
|
*
|
|
315
|
-
* It gives the mod the opportunity to rectify potential differences in local state introduced by the save/load cycle. Doing anything other than the following three will lead to desyncs, breaking multiplayer and replay functionality. Access to {@link LuaGameScript | LuaGameScript} is not available. The {@link global | global} table can be accessed and is safe to read from, but not write to, as doing so will lead to an error.
|
|
315
|
+
* It gives the mod the opportunity to rectify potential differences in local state introduced by the save/load cycle. Doing anything other than the following three will lead to desyncs, breaking multiplayer and replay functionality. Access to {@link LuaGameScript | runtime:LuaGameScript} is not available. The {@link global | runtime:global} table can be accessed and is safe to read from, but not write to, as doing so will lead to an error.
|
|
316
316
|
*
|
|
317
317
|
* The only legitimate uses of this event are these:
|
|
318
318
|
* - Re-setup {@link metatables | https://www.lua.org/pil/13.html} as they are not persisted through the save/load cycle.
|
|
319
319
|
* - Re-setup conditional event handlers, meaning subscribing to an event only when some condition is met to save processing time.
|
|
320
|
-
* - Create local references to data stored in the {@link global | global} table.
|
|
320
|
+
* - Create local references to data stored in the {@link global | runtime:global} table.
|
|
321
321
|
*
|
|
322
|
-
* For all other purposes, {@link LuaBootstrap::on_init | LuaBootstrap::on_init}, {@link LuaBootstrap::on_configuration_changed | LuaBootstrap::on_configuration_changed} or {@link migrations | migrations} should be used instead.
|
|
322
|
+
* For all other purposes, {@link LuaBootstrap::on_init | runtime:LuaBootstrap::on_init}, {@link LuaBootstrap::on_configuration_changed | runtime:LuaBootstrap::on_configuration_changed} or {@link migrations | runtime:migrations} should be used instead.
|
|
323
323
|
* @remarks
|
|
324
|
-
* For more context, refer to the {@link Data Lifecycle | data-lifecycle} page.
|
|
324
|
+
* For more context, refer to the {@link Data Lifecycle | runtime:data-lifecycle} page.
|
|
325
325
|
*
|
|
326
326
|
* @param handler - The handler for this event. Passing `nil` will unregister it.
|
|
327
327
|
*/
|
|
@@ -356,22 +356,22 @@ interface LuaBootstrap {
|
|
|
356
356
|
}): void
|
|
357
357
|
|
|
358
358
|
/**
|
|
359
|
-
* Raise an event. Only events generated with {@link LuaBootstrap::generate_event_name | LuaBootstrap::generate_event_name} and the following can be raised:
|
|
359
|
+
* Raise an event. Only events generated with {@link LuaBootstrap::generate_event_name | runtime:LuaBootstrap::generate_event_name} and the following can be raised:
|
|
360
360
|
*
|
|
361
|
-
* - {@link on_console_chat | on_console_chat}
|
|
362
|
-
* - {@link on_player_crafted_item | on_player_crafted_item}
|
|
363
|
-
* - {@link on_player_fast_transferred | on_player_fast_transferred}
|
|
364
|
-
* - {@link on_biter_base_built | on_biter_base_built}
|
|
365
|
-
* - {@link on_market_item_purchased | on_market_item_purchased}
|
|
366
|
-
* - {@link script_raised_built | script_raised_built}
|
|
367
|
-
* - {@link script_raised_destroy | script_raised_destroy}
|
|
368
|
-
* - {@link script_raised_revive | script_raised_revive}
|
|
369
|
-
* - {@link script_raised_teleported | script_raised_teleported}
|
|
370
|
-
* - {@link script_raised_set_tiles | script_raised_set_tiles}
|
|
361
|
+
* - {@link on_console_chat | runtime:on_console_chat}
|
|
362
|
+
* - {@link on_player_crafted_item | runtime:on_player_crafted_item}
|
|
363
|
+
* - {@link on_player_fast_transferred | runtime:on_player_fast_transferred}
|
|
364
|
+
* - {@link on_biter_base_built | runtime:on_biter_base_built}
|
|
365
|
+
* - {@link on_market_item_purchased | runtime:on_market_item_purchased}
|
|
366
|
+
* - {@link script_raised_built | runtime:script_raised_built}
|
|
367
|
+
* - {@link script_raised_destroy | runtime:script_raised_destroy}
|
|
368
|
+
* - {@link script_raised_revive | runtime:script_raised_revive}
|
|
369
|
+
* - {@link script_raised_teleported | runtime:script_raised_teleported}
|
|
370
|
+
* - {@link script_raised_set_tiles | runtime:script_raised_set_tiles}
|
|
371
371
|
* @param data - Table with extra data that will be passed to the event handler. Any invalid LuaObjects will silently stop the event from being raised.
|
|
372
372
|
* @param event - ID of the event to raise.
|
|
373
373
|
* @example
|
|
374
|
-
* Raise the [on_console_chat](on_console_chat) event with the desired message 'from' the first player.
|
|
374
|
+
* Raise the [on_console_chat](runtime:on_console_chat) event with the desired message 'from' the first player.
|
|
375
375
|
* ```
|
|
376
376
|
* local data = {player_index = 1, message = "Hello friends!"}
|
|
377
377
|
* script.raise_event(defines.events.on_console_chat, data)
|
|
@@ -478,7 +478,7 @@ interface LuaBootstrap {
|
|
|
478
478
|
* @param metatable - The metatable to register.
|
|
479
479
|
* @param name - The name of this metatable. Names must be unique per mod.
|
|
480
480
|
* @example
|
|
481
|
-
* The metatable first needs to be defined in the mod's root scope, then registered using this method. From then on, it will be properly restored for tables in [global](global).
|
|
481
|
+
* The metatable first needs to be defined in the mod's root scope, then registered using this method. From then on, it will be properly restored for tables in [global](runtime:global).
|
|
482
482
|
* ```
|
|
483
483
|
* local metatable = {
|
|
484
484
|
* __index = function(key)
|
|
@@ -499,9 +499,9 @@ interface LuaBootstrap {
|
|
|
499
499
|
metatable: Table): void
|
|
500
500
|
|
|
501
501
|
/**
|
|
502
|
-
* Registers an entity so that after it's destroyed, {@link on_entity_destroyed | on_entity_destroyed} is called. Once an entity is registered, it stays registered until it is actually destroyed, even through save/load cycles. The registration is global across all mods, meaning once one mod registers an entity, all mods listening to {@link on_entity_destroyed | on_entity_destroyed} will receive the event when it is destroyed. Registering the same entity multiple times will still only fire the destruction event once, and will return the same registration number.
|
|
502
|
+
* Registers an entity so that after it's destroyed, {@link on_entity_destroyed | runtime:on_entity_destroyed} is called. Once an entity is registered, it stays registered until it is actually destroyed, even through save/load cycles. The registration is global across all mods, meaning once one mod registers an entity, all mods listening to {@link on_entity_destroyed | runtime:on_entity_destroyed} will receive the event when it is destroyed. Registering the same entity multiple times will still only fire the destruction event once, and will return the same registration number.
|
|
503
503
|
* @remarks
|
|
504
|
-
* Depending on when a given entity is destroyed, {@link on_entity_destroyed | on_entity_destroyed} will either be fired at the end of the current tick or at the end of the next tick.
|
|
504
|
+
* Depending on when a given entity is destroyed, {@link on_entity_destroyed | runtime:on_entity_destroyed} will either be fired at the end of the current tick or at the end of the next tick.
|
|
505
505
|
*
|
|
506
506
|
* @param entity - The entity to register.
|
|
507
507
|
*/
|
|
@@ -513,19 +513,19 @@ interface LuaBootstrap {
|
|
|
513
513
|
* @param event - ID of the event to filter.
|
|
514
514
|
* @param filters - The filters or `nil` to clear them.
|
|
515
515
|
* @example
|
|
516
|
-
* Limit the [on_marked_for_deconstruction](on_marked_for_deconstruction) event to only be received when a non-ghost entity is marked for deconstruction.
|
|
516
|
+
* Limit the [on_marked_for_deconstruction](runtime:on_marked_for_deconstruction) event to only be received when a non-ghost entity is marked for deconstruction.
|
|
517
517
|
* ```
|
|
518
518
|
* script.set_event_filter(defines.events.on_marked_for_deconstruction, {{filter = "ghost", invert = true}})
|
|
519
519
|
* ```
|
|
520
520
|
*
|
|
521
521
|
* @example
|
|
522
|
-
* Limit the [on_built_entity](on_built_entity) event to only be received when either a `unit` or a `unit-spawner` is built.
|
|
522
|
+
* Limit the [on_built_entity](runtime:on_built_entity) event to only be received when either a `unit` or a `unit-spawner` is built.
|
|
523
523
|
* ```
|
|
524
524
|
* script.set_event_filter(defines.events.on_built_entity, {{filter = "type", type = "unit"}, {filter = "type", type = "unit-spawner"}})
|
|
525
525
|
* ```
|
|
526
526
|
*
|
|
527
527
|
* @example
|
|
528
|
-
* Limit the [on_entity_damaged](on_entity_damaged) event to only be received when a `rail` is damaged by an `acid` attack.
|
|
528
|
+
* Limit the [on_entity_damaged](runtime:on_entity_damaged) event to only be received when a `rail` is damaged by an `acid` attack.
|
|
529
529
|
* ```
|
|
530
530
|
* script.set_event_filter(defines.events.on_entity_damaged, {{filter = "rail"}, {filter = "damage-type", type = "acid", mode = "and"}})
|
|
531
531
|
* ```
|
|
@@ -592,7 +592,7 @@ interface LuaBootstrap {
|
|
|
592
592
|
}
|
|
593
593
|
|
|
594
594
|
/**
|
|
595
|
-
* A reference to the burner energy source owned by a specific {@link LuaEntity | LuaEntity} or {@link LuaEquipment | LuaEquipment}.
|
|
595
|
+
* A reference to the burner energy source owned by a specific {@link LuaEntity | runtime:LuaEntity} or {@link LuaEquipment | runtime:LuaEquipment}.
|
|
596
596
|
*/
|
|
597
597
|
interface LuaBurner {
|
|
598
598
|
/**
|
|
@@ -606,9 +606,9 @@ interface LuaBurner {
|
|
|
606
606
|
readonly burnt_result_inventory: LuaInventory
|
|
607
607
|
|
|
608
608
|
/**
|
|
609
|
-
* The currently burning item. Writing `nil` will void the currently burning item without producing a {@link LuaBurner::burnt_result | LuaBurner::burnt_result}.
|
|
609
|
+
* The currently burning item. Writing `nil` will void the currently burning item without producing a {@link LuaBurner::burnt_result | runtime:LuaBurner::burnt_result}.
|
|
610
610
|
* @remarks
|
|
611
|
-
* Writing to this automatically handles correcting {@link LuaBurner::remaining_burning_fuel | LuaBurner::remaining_burning_fuel}.
|
|
611
|
+
* Writing to this automatically handles correcting {@link LuaBurner::remaining_burning_fuel | runtime:LuaBurner::remaining_burning_fuel}.
|
|
612
612
|
*
|
|
613
613
|
*/
|
|
614
614
|
currently_burning?: LuaItemPrototype
|
|
@@ -649,7 +649,7 @@ interface LuaBurner {
|
|
|
649
649
|
/**
|
|
650
650
|
* The amount of energy left in the currently-burning fuel item.
|
|
651
651
|
* @remarks
|
|
652
|
-
* Writing to this will silently do nothing if there's no {@link LuaBurner::currently_burning | LuaBurner::currently_burning} set.
|
|
652
|
+
* Writing to this will silently do nothing if there's no {@link LuaBurner::currently_burning | runtime:LuaBurner::currently_burning} set.
|
|
653
653
|
*
|
|
654
654
|
*/
|
|
655
655
|
remaining_burning_fuel: number
|
|
@@ -726,7 +726,7 @@ interface LuaBurnerPrototype {
|
|
|
726
726
|
/**
|
|
727
727
|
* A chunk iterator can be used for iterating chunks coordinates of a surface.
|
|
728
728
|
*
|
|
729
|
-
* The returned type is a {@link ChunkPositionAndArea | ChunkPositionAndArea} containing the chunk coordinates and its area.
|
|
729
|
+
* The returned type is a {@link ChunkPositionAndArea | runtime:ChunkPositionAndArea} containing the chunk coordinates and its area.
|
|
730
730
|
* @example
|
|
731
731
|
* ```
|
|
732
732
|
* for chunk in some_surface.get_chunks() do
|
|
@@ -832,7 +832,7 @@ interface LuaCombinatorControlBehavior extends LuaControlBehavior {
|
|
|
832
832
|
}
|
|
833
833
|
|
|
834
834
|
/**
|
|
835
|
-
* Allows for the registration of custom console commands through the global object named `commands`. Similarly to {@link event subscriptions | LuaBootstrap::on_event}, these don't persist through a save-and-load cycle.
|
|
835
|
+
* Allows for the registration of custom console commands through the global object named `commands`. Similarly to {@link event subscriptions | runtime:LuaBootstrap::on_event}, these don't persist through a save-and-load cycle.
|
|
836
836
|
*/
|
|
837
837
|
interface LuaCommandProcessor {
|
|
838
838
|
/**
|
|
@@ -890,7 +890,7 @@ interface LuaCommandProcessor {
|
|
|
890
890
|
*/
|
|
891
891
|
interface LuaConstantCombinatorControlBehavior extends LuaControlBehavior {
|
|
892
892
|
/**
|
|
893
|
-
* Gets the signal at the given index. Returned {@link Signal | Signal} will not contain signal if none is set for the index.
|
|
893
|
+
* Gets the signal at the given index. Returned {@link Signal | runtime:Signal} will not contain signal if none is set for the index.
|
|
894
894
|
*/
|
|
895
895
|
get_signal(this: void,
|
|
896
896
|
index: number): void
|
|
@@ -919,7 +919,7 @@ interface LuaConstantCombinatorControlBehavior extends LuaControlBehavior {
|
|
|
919
919
|
readonly object_name: string
|
|
920
920
|
|
|
921
921
|
/**
|
|
922
|
-
* This constant combinator's parameters. `nil` if the {@link item_slot_count | LuaEntityPrototype::item_slot_count} of the combinator's prototype is `0`.
|
|
922
|
+
* This constant combinator's parameters. `nil` if the {@link item_slot_count | runtime:LuaEntityPrototype::item_slot_count} of the combinator's prototype is `0`.
|
|
923
923
|
*
|
|
924
924
|
* Writing `nil` clears the combinator's parameters.
|
|
925
925
|
*/
|
|
@@ -959,7 +959,7 @@ interface LuaContainerControlBehavior extends LuaControlBehavior {
|
|
|
959
959
|
}
|
|
960
960
|
|
|
961
961
|
/**
|
|
962
|
-
* This is an abstract base class containing the common functionality between {@link LuaPlayer | LuaPlayer} and entities (see {@link LuaEntity | LuaEntity}). When accessing player-related functions through a {@link LuaEntity | LuaEntity}, it must refer to a character entity.
|
|
962
|
+
* This is an abstract base class containing the common functionality between {@link LuaPlayer | runtime:LuaPlayer} and entities (see {@link LuaEntity | runtime:LuaEntity}). When accessing player-related functions through a {@link LuaEntity | runtime:LuaEntity}, it must refer to a character entity.
|
|
963
963
|
*/
|
|
964
964
|
interface LuaControl {
|
|
965
965
|
/**
|
|
@@ -1057,7 +1057,7 @@ interface LuaControl {
|
|
|
1057
1057
|
/**
|
|
1058
1058
|
* Get an inventory belonging to this entity. This can be either the "main" inventory or some auxiliary one, like the module slots or logistic trash slots.
|
|
1059
1059
|
* @remarks
|
|
1060
|
-
* A given {@link defines.inventory | defines.inventory} is only meaningful for the corresponding LuaObject type. EG: get_inventory(defines.inventory.character_main) is only meaningful if 'this' is a player character. You may get a value back but if the type of 'this' isn't the type referred to by the {@link defines.inventory | defines.inventory} it's almost guaranteed to not be the inventory asked for.
|
|
1060
|
+
* A given {@link defines.inventory | runtime:defines.inventory} is only meaningful for the corresponding LuaObject type. EG: get_inventory(defines.inventory.character_main) is only meaningful if 'this' is a player character. You may get a value back but if the type of 'this' isn't the type referred to by the {@link defines.inventory | runtime:defines.inventory} it's almost guaranteed to not be the inventory asked for.
|
|
1061
1061
|
*
|
|
1062
1062
|
*/
|
|
1063
1063
|
get_inventory(this: void,
|
|
@@ -1114,7 +1114,7 @@ interface LuaControl {
|
|
|
1114
1114
|
/**
|
|
1115
1115
|
* Returns whether the player is holding a blueprint. This takes both blueprint items as well as blueprint records from the blueprint library into account.
|
|
1116
1116
|
*
|
|
1117
|
-
* Note that both this method and {@link LuaControl::get_blueprint_entities | LuaControl::get_blueprint_entities} refer to the currently selected blueprint, meaning a blueprint book with a selected blueprint will return the information as well.
|
|
1117
|
+
* Note that both this method and {@link LuaControl::get_blueprint_entities | runtime:LuaControl::get_blueprint_entities} refer to the currently selected blueprint, meaning a blueprint book with a selected blueprint will return the information as well.
|
|
1118
1118
|
*/
|
|
1119
1119
|
is_cursor_blueprint(this: void): void
|
|
1120
1120
|
|
|
@@ -1198,7 +1198,7 @@ interface LuaControl {
|
|
|
1198
1198
|
* `script_raised_teleported` will not be raised if teleporting a player with no character.
|
|
1199
1199
|
*
|
|
1200
1200
|
* @param position - Where to teleport to.
|
|
1201
|
-
* @param raise_teleported - If true, [defines.events.script_raised_teleported](defines.events.script_raised_teleported) will be fired on successful entity teleportation.
|
|
1201
|
+
* @param raise_teleported - If true, [defines.events.script_raised_teleported](runtime:defines.events.script_raised_teleported) will be fired on successful entity teleportation.
|
|
1202
1202
|
* @param surface - Surface to teleport to. If not given, will teleport to the entity's current surface. Only players, cars, and spidertrons can be teleported cross-surface.
|
|
1203
1203
|
*/
|
|
1204
1204
|
teleport(this: void,
|
|
@@ -1220,63 +1220,63 @@ interface LuaControl {
|
|
|
1220
1220
|
|
|
1221
1221
|
/**
|
|
1222
1222
|
* @remarks
|
|
1223
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1223
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1224
1224
|
*
|
|
1225
1225
|
*/
|
|
1226
1226
|
character_additional_mining_categories: string[]
|
|
1227
1227
|
|
|
1228
1228
|
/**
|
|
1229
1229
|
* @remarks
|
|
1230
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1230
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1231
1231
|
*
|
|
1232
1232
|
*/
|
|
1233
1233
|
character_build_distance_bonus: number
|
|
1234
1234
|
|
|
1235
1235
|
/**
|
|
1236
1236
|
* @remarks
|
|
1237
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1237
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1238
1238
|
*
|
|
1239
1239
|
*/
|
|
1240
1240
|
character_crafting_speed_modifier: number
|
|
1241
1241
|
|
|
1242
1242
|
/**
|
|
1243
1243
|
* @remarks
|
|
1244
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1244
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1245
1245
|
*
|
|
1246
1246
|
*/
|
|
1247
1247
|
character_health_bonus: number
|
|
1248
1248
|
|
|
1249
1249
|
/**
|
|
1250
1250
|
* @remarks
|
|
1251
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1251
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1252
1252
|
*
|
|
1253
1253
|
*/
|
|
1254
1254
|
character_inventory_slots_bonus: number
|
|
1255
1255
|
|
|
1256
1256
|
/**
|
|
1257
1257
|
* @remarks
|
|
1258
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1258
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1259
1259
|
*
|
|
1260
1260
|
*/
|
|
1261
1261
|
character_item_drop_distance_bonus: number
|
|
1262
1262
|
|
|
1263
1263
|
/**
|
|
1264
1264
|
* @remarks
|
|
1265
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1265
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1266
1266
|
*
|
|
1267
1267
|
*/
|
|
1268
1268
|
character_item_pickup_distance_bonus: number
|
|
1269
1269
|
|
|
1270
1270
|
/**
|
|
1271
1271
|
* @remarks
|
|
1272
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1272
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1273
1273
|
*
|
|
1274
1274
|
*/
|
|
1275
1275
|
character_loot_pickup_distance_bonus: number
|
|
1276
1276
|
|
|
1277
1277
|
/**
|
|
1278
1278
|
* @remarks
|
|
1279
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1279
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1280
1280
|
*
|
|
1281
1281
|
*/
|
|
1282
1282
|
character_maximum_following_robot_count_bonus: number
|
|
@@ -1288,7 +1288,7 @@ interface LuaControl {
|
|
|
1288
1288
|
|
|
1289
1289
|
/**
|
|
1290
1290
|
* @remarks
|
|
1291
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1291
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1292
1292
|
*
|
|
1293
1293
|
*/
|
|
1294
1294
|
character_mining_speed_modifier: number
|
|
@@ -1300,14 +1300,14 @@ interface LuaControl {
|
|
|
1300
1300
|
|
|
1301
1301
|
/**
|
|
1302
1302
|
* @remarks
|
|
1303
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1303
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1304
1304
|
*
|
|
1305
1305
|
*/
|
|
1306
1306
|
character_reach_distance_bonus: number
|
|
1307
1307
|
|
|
1308
1308
|
/**
|
|
1309
1309
|
* @remarks
|
|
1310
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1310
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1311
1311
|
*
|
|
1312
1312
|
*/
|
|
1313
1313
|
character_resource_reach_distance_bonus: number
|
|
@@ -1320,14 +1320,14 @@ interface LuaControl {
|
|
|
1320
1320
|
/**
|
|
1321
1321
|
* Modifies the running speed of this character by the given value as a percentage. Setting the running modifier to `0.5` makes the character run 50% faster. The minimum value of `-1` reduces the movement speed by 100%, resulting in a speed of `0`.
|
|
1322
1322
|
* @remarks
|
|
1323
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1323
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1324
1324
|
*
|
|
1325
1325
|
*/
|
|
1326
1326
|
character_running_speed_modifier: number
|
|
1327
1327
|
|
|
1328
1328
|
/**
|
|
1329
1329
|
* @remarks
|
|
1330
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1330
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character (see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1331
1331
|
*
|
|
1332
1332
|
*/
|
|
1333
1333
|
character_trash_slot_count_bonus: number
|
|
@@ -1353,7 +1353,7 @@ interface LuaControl {
|
|
|
1353
1353
|
readonly crafting_queue_size: number
|
|
1354
1354
|
|
|
1355
1355
|
/**
|
|
1356
|
-
* The ghost prototype in the player's cursor. When read, it will be a {@link LuaItemPrototype | LuaItemPrototype}.
|
|
1356
|
+
* The ghost prototype in the player's cursor. When read, it will be a {@link LuaItemPrototype | runtime:LuaItemPrototype}.
|
|
1357
1357
|
* @remarks
|
|
1358
1358
|
* Items in the cursor stack will take priority over the cursor ghost.
|
|
1359
1359
|
*
|
|
@@ -1363,7 +1363,7 @@ interface LuaControl {
|
|
|
1363
1363
|
/**
|
|
1364
1364
|
* The player's cursor stack. `nil` if the player controller is a spectator.
|
|
1365
1365
|
* @example
|
|
1366
|
-
* Even though this property is marked as read-only, it returns a [LuaItemStack](LuaItemStack), meaning it can be manipulated like so:
|
|
1366
|
+
* Even though this property is marked as read-only, it returns a [LuaItemStack](runtime:LuaItemStack), meaning it can be manipulated like so:
|
|
1367
1367
|
* ```
|
|
1368
1368
|
* player.cursor_stack.clear()
|
|
1369
1369
|
* ```
|
|
@@ -1384,18 +1384,18 @@ interface LuaControl {
|
|
|
1384
1384
|
/**
|
|
1385
1385
|
* The current combat robots following the character.
|
|
1386
1386
|
* @remarks
|
|
1387
|
-
* When called on a {@link LuaPlayer | LuaPlayer}, it must be associated with a character(see {@link LuaPlayer::character | LuaPlayer::character}).
|
|
1387
|
+
* When called on a {@link LuaPlayer | runtime:LuaPlayer}, it must be associated with a character(see {@link LuaPlayer::character | runtime:LuaPlayer::character}).
|
|
1388
1388
|
*
|
|
1389
1389
|
*/
|
|
1390
1390
|
readonly following_robots: LuaEntity[]
|
|
1391
1391
|
|
|
1392
1392
|
/**
|
|
1393
|
-
* The force of this entity. Reading will always give a {@link LuaForce | LuaForce}, but it is possible to assign either {@link string | string} or {@link LuaForce | LuaForce} to this attribute to change the force.
|
|
1393
|
+
* The force of this entity. Reading will always give a {@link LuaForce | runtime:LuaForce}, but it is possible to assign either {@link string | runtime:string} or {@link LuaForce | runtime:LuaForce} to this attribute to change the force.
|
|
1394
1394
|
*/
|
|
1395
1395
|
force: ForceIdentification
|
|
1396
1396
|
|
|
1397
1397
|
/**
|
|
1398
|
-
* Unique {@link index | LuaForce::index} (ID) associated with the force of this entity.
|
|
1398
|
+
* Unique {@link index | runtime:LuaForce::index} (ID) associated with the force of this entity.
|
|
1399
1399
|
*/
|
|
1400
1400
|
readonly force_index: number
|
|
1401
1401
|
|
|
@@ -1417,7 +1417,7 @@ interface LuaControl {
|
|
|
1417
1417
|
/**
|
|
1418
1418
|
* Current mining state.
|
|
1419
1419
|
* @remarks
|
|
1420
|
-
* When the player isn't mining tiles
|
|
1420
|
+
* When the player isn't mining tiles the player will mine whatever entity is currently selected. See {@link LuaControl::selected | runtime:LuaControl::selected} and {@link LuaControl::update_selected_entity | runtime:LuaControl::update_selected_entity}.
|
|
1421
1421
|
*
|
|
1422
1422
|
*/
|
|
1423
1423
|
mining_state: {
|
|
@@ -1436,7 +1436,7 @@ interface LuaControl {
|
|
|
1436
1436
|
/**
|
|
1437
1437
|
* The GUI the player currently has open.
|
|
1438
1438
|
*
|
|
1439
|
-
* This is the GUI that will asked to close (by firing the {@link on_gui_closed | on_gui_closed} event) when the `Esc` or `E` keys are pressed. If this attribute is not `nil`, and a new GUI is written to it, the existing one will be asked to close.
|
|
1439
|
+
* This is the GUI that will asked to close (by firing the {@link on_gui_closed | runtime:on_gui_closed} event) when the `Esc` or `E` keys are pressed. If this attribute is not `nil`, and a new GUI is written to it, the existing one will be asked to close.
|
|
1440
1440
|
* @remarks
|
|
1441
1441
|
* Write supports any of the types. Read will return the `entity`, `equipment`, `equipment-grid`, `player`, `element`, `inventory`, `technology`, or `nil`.
|
|
1442
1442
|
*
|
|
@@ -1513,7 +1513,7 @@ interface LuaControl {
|
|
|
1513
1513
|
readonly surface: LuaSurface
|
|
1514
1514
|
|
|
1515
1515
|
/**
|
|
1516
|
-
* Unique {@link index | LuaSurface::index} (ID) associated with the surface this entity is currently on.
|
|
1516
|
+
* Unique {@link index | runtime:LuaSurface::index} (ID) associated with the surface this entity is currently on.
|
|
1517
1517
|
*/
|
|
1518
1518
|
readonly surface_index: number
|
|
1519
1519
|
|
|
@@ -1554,7 +1554,7 @@ interface LuaControl {
|
|
|
1554
1554
|
/**
|
|
1555
1555
|
* The control behavior for an entity. Inserters have logistic network and circuit network behavior logic, lamps have circuit logic and so on. This is an abstract base class that concrete control behaviors inherit.
|
|
1556
1556
|
* @remarks
|
|
1557
|
-
* An control reference becomes invalid once the control behavior is removed or the entity (see {@link LuaEntity | LuaEntity}) it resides in is destroyed.
|
|
1557
|
+
* An control reference becomes invalid once the control behavior is removed or the entity (see {@link LuaEntity | runtime:LuaEntity}) it resides in is destroyed.
|
|
1558
1558
|
*
|
|
1559
1559
|
*/
|
|
1560
1560
|
interface LuaControlBehavior {
|
|
@@ -1736,7 +1736,7 @@ interface LuaCustomInputPrototype {
|
|
|
1736
1736
|
*
|
|
1737
1737
|
* There are some notable consequences to the usage of a custom table type rather than the native Lua table type: Iterating a custom table is only possible using the `pairs` Lua function; `ipairs` won't work. Another key difference is that custom tables cannot be serialised into a game save file -- if saving the game would require serialisation of a custom table, an error will be displayed and the game will not be saved.
|
|
1738
1738
|
* @example
|
|
1739
|
-
* In previous versions of Factorio, this would create a [LuaPlayer](LuaPlayer) instance for every player in the game, even though only one such wrapper is needed. In the current version, accessing [game.players](LuaGameScript::players) by itself does not create any [LuaPlayer](LuaPlayer) instances; they are created lazily when accessed. Therefore, this example only constructs one [LuaPlayer](LuaPlayer) instance, no matter how many elements there are in `game.players`.
|
|
1739
|
+
* In previous versions of Factorio, this would create a [LuaPlayer](runtime:LuaPlayer) instance for every player in the game, even though only one such wrapper is needed. In the current version, accessing [game.players](runtime:LuaGameScript::players) by itself does not create any [LuaPlayer](runtime:LuaPlayer) instances; they are created lazily when accessed. Therefore, this example only constructs one [LuaPlayer](runtime:LuaPlayer) instance, no matter how many elements there are in `game.players`.
|
|
1740
1740
|
* ```
|
|
1741
1741
|
* game.players["Oxyd"].character.die()
|
|
1742
1742
|
* ```
|
|
@@ -1953,7 +1953,7 @@ interface LuaElectricEnergySourcePrototype {
|
|
|
1953
1953
|
}
|
|
1954
1954
|
|
|
1955
1955
|
/**
|
|
1956
|
-
* The primary interface for interacting with entities through the Lua API. Entities are everything that exists on the map except for tiles (see {@link LuaTile | LuaTile}).
|
|
1956
|
+
* The primary interface for interacting with entities through the Lua API. Entities are everything that exists on the map except for tiles (see {@link LuaTile | runtime:LuaTile}).
|
|
1957
1957
|
*
|
|
1958
1958
|
* Most functions on LuaEntity also work when the entity is contained in a ghost.
|
|
1959
1959
|
*/
|
|
@@ -1990,7 +1990,7 @@ interface LuaEntity extends LuaControl {
|
|
|
1990
1990
|
offer: Offer): void
|
|
1991
1991
|
|
|
1992
1992
|
/**
|
|
1993
|
-
*
|
|
1993
|
+
* Whether the entity can be destroyed
|
|
1994
1994
|
*/
|
|
1995
1995
|
can_be_destroyed(this: void): void
|
|
1996
1996
|
|
|
@@ -2078,8 +2078,8 @@ interface LuaEntity extends LuaControl {
|
|
|
2078
2078
|
/**
|
|
2079
2079
|
* Connect two devices with a circuit wire or copper cable. Depending on which type of connection should be made, there are different procedures:
|
|
2080
2080
|
*
|
|
2081
|
-
* - To connect two electric poles, `target` must be a {@link LuaEntity | LuaEntity} that specifies another electric pole. This will connect them with copper cable.
|
|
2082
|
-
* - To connect two devices with circuit wire, `target` must be a table of type {@link WireConnectionDefinition | WireConnectionDefinition}.
|
|
2081
|
+
* - To connect two electric poles, `target` must be a {@link LuaEntity | runtime:LuaEntity} that specifies another electric pole. This will connect them with copper cable.
|
|
2082
|
+
* - To connect two devices with circuit wire, `target` must be a table of type {@link WireConnectionDefinition | runtime:WireConnectionDefinition}.
|
|
2083
2083
|
* @param target - The target with which to establish a connection.
|
|
2084
2084
|
*/
|
|
2085
2085
|
connect_neighbour(this: void,
|
|
@@ -2093,14 +2093,14 @@ interface LuaEntity extends LuaControl {
|
|
|
2093
2093
|
|
|
2094
2094
|
/**
|
|
2095
2095
|
* Copies settings from the given entity onto this entity.
|
|
2096
|
-
* @param by_player - If provided, the copying is done 'as' this player and [on_entity_settings_pasted](on_entity_settings_pasted) is triggered.
|
|
2096
|
+
* @param by_player - If provided, the copying is done 'as' this player and [on_entity_settings_pasted](runtime:on_entity_settings_pasted) is triggered.
|
|
2097
2097
|
*/
|
|
2098
2098
|
copy_settings(this: void,
|
|
2099
2099
|
entity: LuaEntity,
|
|
2100
2100
|
by_player?: PlayerIdentification): void
|
|
2101
2101
|
|
|
2102
2102
|
/**
|
|
2103
|
-
* Creates the same smoke that is created when you place a building by hand. You can play the building sound to go with it by using {@link LuaSurface::play_sound | LuaSurface::play_sound}, eg: entity.surface.play_sound{path="entity-build/"..entity.prototype.name, position=entity.position}
|
|
2103
|
+
* Creates the same smoke that is created when you place a building by hand. You can play the building sound to go with it by using {@link LuaSurface::play_sound | runtime:LuaSurface::play_sound}, eg: entity.surface.play_sound{path="entity-build/"..entity.prototype.name, position=entity.position}
|
|
2104
2104
|
*/
|
|
2105
2105
|
create_build_effect_smoke(this: void): void
|
|
2106
2106
|
|
|
@@ -2134,7 +2134,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2134
2134
|
* Not all entities can be destroyed - things such as rails under trains cannot be destroyed until the train is moved or destroyed.
|
|
2135
2135
|
*
|
|
2136
2136
|
* @param table.do_cliff_correction - Whether neighbouring cliffs should be corrected. Defaults to `false`.
|
|
2137
|
-
* @param table.raise_destroy - If `true`, [script_raised_destroy](script_raised_destroy) will be called. Defaults to `false`.
|
|
2137
|
+
* @param table.raise_destroy - If `true`, [script_raised_destroy](runtime:script_raised_destroy) will be called. Defaults to `false`.
|
|
2138
2138
|
*/
|
|
2139
2139
|
destroy(this: void,
|
|
2140
2140
|
table?: {
|
|
@@ -2145,7 +2145,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2145
2145
|
/**
|
|
2146
2146
|
* Immediately kills the entity. Does nothing if the entity doesn't have health.
|
|
2147
2147
|
*
|
|
2148
|
-
* Unlike {@link LuaEntity::destroy | LuaEntity::destroy}, `die` will trigger the {@link on_entity_died | on_entity_died} event and the entity will produce a corpse and drop loot if it has any.
|
|
2148
|
+
* Unlike {@link LuaEntity::destroy | runtime:LuaEntity::destroy}, `die` will trigger the {@link on_entity_died | runtime:on_entity_died} event and the entity will produce a corpse and drop loot if it has any.
|
|
2149
2149
|
* @param cause - The cause to attribute the kill to.
|
|
2150
2150
|
* @param force - The force to attribute the kill to.
|
|
2151
2151
|
* @example
|
|
@@ -2172,9 +2172,9 @@ interface LuaEntity extends LuaControl {
|
|
|
2172
2172
|
* Disconnect circuit wires or copper cables between devices. Depending on which type of connection should be cut, there are different procedures:
|
|
2173
2173
|
*
|
|
2174
2174
|
* - To remove all copper cables, leave the `target` parameter blank: `pole.disconnect_neighbour()`.
|
|
2175
|
-
* - To remove all wires of a specific color, set `target` to {@link defines.wire_type.red | defines.wire_type.red} or {@link defines.wire_type.green | defines.wire_type.green}.
|
|
2176
|
-
* - To remove a specific copper cable between two electric poles, `target` must be a {@link LuaEntity | LuaEntity} that specifies the other pole: `pole1.disconnect_neighbour(pole2)`.
|
|
2177
|
-
* - To remove a specific circuit wire, `target` must be a table of type {@link WireConnectionDefinition | WireConnectionDefinition}.
|
|
2175
|
+
* - To remove all wires of a specific color, set `target` to {@link defines.wire_type.red | runtime:defines.wire_type.red} or {@link defines.wire_type.green | runtime:defines.wire_type.green}.
|
|
2176
|
+
* - To remove a specific copper cable between two electric poles, `target` must be a {@link LuaEntity | runtime:LuaEntity} that specifies the other pole: `pole1.disconnect_neighbour(pole2)`.
|
|
2177
|
+
* - To remove a specific circuit wire, `target` must be a table of type {@link WireConnectionDefinition | runtime:WireConnectionDefinition}.
|
|
2178
2178
|
* @param target - The target with which to cut a connection.
|
|
2179
2179
|
*/
|
|
2180
2180
|
disconnect_neighbour(this: void,
|
|
@@ -2292,7 +2292,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2292
2292
|
/**
|
|
2293
2293
|
* Get amounts of all fluids in this entity.
|
|
2294
2294
|
* @remarks
|
|
2295
|
-
* If information about fluid temperatures is required, {@link LuaEntity::fluidbox | LuaEntity::fluidbox} should be used instead.
|
|
2295
|
+
* If information about fluid temperatures is required, {@link LuaEntity::fluidbox | runtime:LuaEntity::fluidbox} should be used instead.
|
|
2296
2296
|
*
|
|
2297
2297
|
*/
|
|
2298
2298
|
get_fluid_contents(this: void): void
|
|
@@ -2300,7 +2300,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2300
2300
|
/**
|
|
2301
2301
|
* Get the amount of all or some fluid in this entity.
|
|
2302
2302
|
* @remarks
|
|
2303
|
-
* If information about fluid temperatures is required, {@link LuaEntity::fluidbox | LuaEntity::fluidbox} should be used instead.
|
|
2303
|
+
* If information about fluid temperatures is required, {@link LuaEntity::fluidbox | runtime:LuaEntity::fluidbox} should be used instead.
|
|
2304
2304
|
*
|
|
2305
2305
|
* @param fluid - Prototype name of the fluid to count. If not specified, count all fluids.
|
|
2306
2306
|
*/
|
|
@@ -2427,7 +2427,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2427
2427
|
/**
|
|
2428
2428
|
* Gets the passenger of this car or spidertron if any.
|
|
2429
2429
|
* @remarks
|
|
2430
|
-
* This differs over {@link LuaEntity::get_driver | LuaEntity::get_driver} in that the passenger can't drive the car.
|
|
2430
|
+
* This differs over {@link LuaEntity::get_driver | runtime:LuaEntity::get_driver} in that the passenger can't drive the car.
|
|
2431
2431
|
* Applies to subclasses: Car,SpiderVehicle
|
|
2432
2432
|
*
|
|
2433
2433
|
*/
|
|
@@ -2553,11 +2553,11 @@ interface LuaEntity extends LuaControl {
|
|
|
2553
2553
|
get_upgrade_target(this: void): void
|
|
2554
2554
|
|
|
2555
2555
|
/**
|
|
2556
|
-
* Same as {@link LuaEntity::has_flag | LuaEntity::has_flag}, but targets the inner entity on a entity ghost.
|
|
2556
|
+
* Same as {@link LuaEntity::has_flag | runtime:LuaEntity::has_flag}, but targets the inner entity on a entity ghost.
|
|
2557
2557
|
* @remarks
|
|
2558
2558
|
* Applies to subclasses: EntityGhost
|
|
2559
2559
|
*
|
|
2560
|
-
* @param flag - The flag to test. See [EntityPrototypeFlags](EntityPrototypeFlags) for a list of flags.
|
|
2560
|
+
* @param flag - The flag to test. See [EntityPrototypeFlags](runtime:EntityPrototypeFlags) for a list of flags.
|
|
2561
2561
|
*/
|
|
2562
2562
|
ghost_has_flag(this: void,
|
|
2563
2563
|
flag: string): void
|
|
@@ -2575,7 +2575,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2575
2575
|
* @remarks
|
|
2576
2576
|
* `entity.has_flag(f)` is a shortcut for `entity.prototype.has_flag(f)`.
|
|
2577
2577
|
*
|
|
2578
|
-
* @param flag - The flag to test. See [EntityPrototypeFlags](EntityPrototypeFlags) for a list of flags.
|
|
2578
|
+
* @param flag - The flag to test. See [EntityPrototypeFlags](runtime:EntityPrototypeFlags) for a list of flags.
|
|
2579
2579
|
*/
|
|
2580
2580
|
has_flag(this: void,
|
|
2581
2581
|
flag: string): void
|
|
@@ -2688,8 +2688,8 @@ interface LuaEntity extends LuaControl {
|
|
|
2688
2688
|
*
|
|
2689
2689
|
* @param table.force - If true, when the item(s) don't fit into the given inventory the entity is force mined. If false, the mining operation fails when there isn't enough room to transfer all of the items into the inventory. Defaults to false. This is ignored and acts as `true` if no inventory is provided.
|
|
2690
2690
|
* @param table.ignore_minable - If true, the minable state of the entity is ignored. Defaults to `false`. If false, an entity that isn't minable (set as not-minable in the prototype or isn't minable for other reasons) will fail to be mined.
|
|
2691
|
-
* @param table.inventory - If provided the item(s) will be transferred into this inventory. If provided, this must be an inventory created with [LuaGameScript::create_inventory](LuaGameScript::create_inventory) or be a basic inventory owned by some entity.
|
|
2692
|
-
* @param table.raise_destroyed - If true, [script_raised_destroy](script_raised_destroy) will be raised. Defaults to `true`.
|
|
2691
|
+
* @param table.inventory - If provided the item(s) will be transferred into this inventory. If provided, this must be an inventory created with [LuaGameScript::create_inventory](runtime:LuaGameScript::create_inventory) or be a basic inventory owned by some entity.
|
|
2692
|
+
* @param table.raise_destroyed - If true, [script_raised_destroy](runtime:script_raised_destroy) will be raised. Defaults to `true`.
|
|
2693
2693
|
*/
|
|
2694
2694
|
mine(this: void,
|
|
2695
2695
|
table?: {
|
|
@@ -2790,7 +2790,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2790
2790
|
|
|
2791
2791
|
/**
|
|
2792
2792
|
* Revive a ghost. I.e. turn it from a ghost to a real entity or tile.
|
|
2793
|
-
* @param table.raise_revive - If true, and an entity ghost; [script_raised_revive](script_raised_revive) will be called. Else if true, and a tile ghost; [script_raised_set_tiles](script_raised_set_tiles) will be called.
|
|
2793
|
+
* @param table.raise_revive - If true, and an entity ghost; [script_raised_revive](runtime:script_raised_revive) will be called. Else if true, and a tile ghost; [script_raised_set_tiles](runtime:script_raised_set_tiles) will be called.
|
|
2794
2794
|
* @param table.return_item_request_proxy - If `true` the function will return item request proxy as the third return value.
|
|
2795
2795
|
*/
|
|
2796
2796
|
revive(this: void,
|
|
@@ -2801,8 +2801,8 @@ interface LuaEntity extends LuaControl {
|
|
|
2801
2801
|
|
|
2802
2802
|
/**
|
|
2803
2803
|
* Rotates this entity as if the player rotated it.
|
|
2804
|
-
* @param table.by_player - If not specified, the [on_player_rotated_entity](on_player_rotated_entity) event will not be fired.
|
|
2805
|
-
* @param table.enable_looted - When true, each spilled item will be flagged with the [LuaEntity::to_be_looted](LuaEntity::to_be_looted) flag.
|
|
2804
|
+
* @param table.by_player - If not specified, the [on_player_rotated_entity](runtime:on_player_rotated_entity) event will not be fired.
|
|
2805
|
+
* @param table.enable_looted - When true, each spilled item will be flagged with the [LuaEntity::to_be_looted](runtime:LuaEntity::to_be_looted) flag.
|
|
2806
2806
|
* @param table.force - When provided the spilled items will be marked for deconstruction by this force.
|
|
2807
2807
|
* @param table.reverse - If `true`, rotate the entity in the counter-clockwise direction.
|
|
2808
2808
|
* @param table.spill_items - If the player is not given should extra items be spilled or returned as a second return value from this.
|
|
@@ -2855,7 +2855,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2855
2855
|
/**
|
|
2856
2856
|
* Sets the driver of this vehicle.
|
|
2857
2857
|
* @remarks
|
|
2858
|
-
* This differs from {@link LuaEntity::set_passenger | LuaEntity::set_passenger} in that the passenger can't drive the vehicle.
|
|
2858
|
+
* This differs from {@link LuaEntity::set_passenger | runtime:LuaEntity::set_passenger} in that the passenger can't drive the vehicle.
|
|
2859
2859
|
* Applies to subclasses: Vehicle
|
|
2860
2860
|
*
|
|
2861
2861
|
* @param driver - The new driver. Writing `nil` ejects the current driver, if any.
|
|
@@ -2910,7 +2910,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2910
2910
|
/**
|
|
2911
2911
|
* Sets the passenger of this car or spidertron.
|
|
2912
2912
|
* @remarks
|
|
2913
|
-
* This differs from {@link LuaEntity::get_driver | LuaEntity::get_driver} in that the passenger can't drive the car.
|
|
2913
|
+
* This differs from {@link LuaEntity::get_driver | runtime:LuaEntity::get_driver} in that the passenger can't drive the car.
|
|
2914
2914
|
* Applies to subclasses: Car,SpiderVehicle
|
|
2915
2915
|
*
|
|
2916
2916
|
* @param passenger - The new passenger. Writing `nil` ejects the current passenger, if any.
|
|
@@ -2942,7 +2942,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2942
2942
|
|
|
2943
2943
|
/**
|
|
2944
2944
|
* Revives a ghost silently.
|
|
2945
|
-
* @param table.raise_revive - If true, and an entity ghost; [script_raised_revive](script_raised_revive) will be called. Else if true, and a tile ghost; [script_raised_set_tiles](script_raised_set_tiles) will be called.
|
|
2945
|
+
* @param table.raise_revive - If true, and an entity ghost; [script_raised_revive](runtime:script_raised_revive) will be called. Else if true, and a tile ghost; [script_raised_set_tiles](runtime:script_raised_set_tiles) will be called.
|
|
2946
2946
|
* @param table.return_item_request_proxy - If `true` the function will return item request proxy as the third parameter.
|
|
2947
2947
|
*/
|
|
2948
2948
|
silent_revive(this: void,
|
|
@@ -2962,7 +2962,7 @@ interface LuaEntity extends LuaControl {
|
|
|
2962
2962
|
start_fading_out(this: void): void
|
|
2963
2963
|
|
|
2964
2964
|
/**
|
|
2965
|
-
* Sets the {@link speed | LuaEntity::speed} of the given SpiderVehicle to zero. Notably does not clear its {@link autopilot_destination | LuaEntity::autopilot_destination}, which it will continue moving towards if set.
|
|
2965
|
+
* Sets the {@link speed | runtime:LuaEntity::speed} of the given SpiderVehicle to zero. Notably does not clear its {@link autopilot_destination | runtime:LuaEntity::autopilot_destination}, which it will continue moving towards if set.
|
|
2966
2966
|
* @remarks
|
|
2967
2967
|
* Applies to subclasses: SpiderVehicle
|
|
2968
2968
|
*
|
|
@@ -3051,7 +3051,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3051
3051
|
*
|
|
3052
3052
|
* The player will be automatically disassociated when a controller is set on the character. Also, all characters associated to a player will be logged off when the player logs off in multiplayer.
|
|
3053
3053
|
*
|
|
3054
|
-
* Reading this property will return a {@link LuaPlayer | LuaPlayer}, while {@link PlayerIdentification | PlayerIdentification} can be used when writing.
|
|
3054
|
+
* Reading this property will return a {@link LuaPlayer | runtime:LuaPlayer}, while {@link PlayerIdentification | runtime:PlayerIdentification} can be used when writing.
|
|
3055
3055
|
* @remarks
|
|
3056
3056
|
* A character associated with a player is not directly controlled by any player.
|
|
3057
3057
|
* Applies to subclasses: Character
|
|
@@ -3097,7 +3097,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3097
3097
|
readonly beacons_count?: number
|
|
3098
3098
|
|
|
3099
3099
|
/**
|
|
3100
|
-
* The belt connectable neighbours of this belt connectable entity. Only entities that input to or are outputs of this entity. Does not contain the other end of an underground belt, see {@link LuaEntity::neighbours | LuaEntity::neighbours} for that. This is a dictionary with `"inputs"`, `"outputs"` entries that are arrays of transport belt connectable entities, or empty tables if no entities.
|
|
3100
|
+
* The belt connectable neighbours of this belt connectable entity. Only entities that input to or are outputs of this entity. Does not contain the other end of an underground belt, see {@link LuaEntity::neighbours | runtime:LuaEntity::neighbours} for that. This is a dictionary with `"inputs"`, `"outputs"` entries that are arrays of transport belt connectable entities, or empty tables if no entities.
|
|
3101
3101
|
* @remarks
|
|
3102
3102
|
* Applies to subclasses: TransportBeltConnectable
|
|
3103
3103
|
*
|
|
@@ -3126,7 +3126,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3126
3126
|
bonus_progress: number
|
|
3127
3127
|
|
|
3128
3128
|
/**
|
|
3129
|
-
* {@link LuaEntityPrototype::collision_box | LuaEntityPrototype::collision_box} around entity's given position and respecting the current entity orientation.
|
|
3129
|
+
* {@link LuaEntityPrototype::collision_box | runtime:LuaEntityPrototype::collision_box} around entity's given position and respecting the current entity orientation.
|
|
3130
3130
|
*/
|
|
3131
3131
|
readonly bounding_box: BoundingBox
|
|
3132
3132
|
|
|
@@ -3244,6 +3244,14 @@ interface LuaEntity extends LuaControl {
|
|
|
3244
3244
|
*/
|
|
3245
3245
|
consumption_modifier: number
|
|
3246
3246
|
|
|
3247
|
+
/**
|
|
3248
|
+
* The connection definition for entities that are directly connected to this entity via copper cables.
|
|
3249
|
+
* @remarks
|
|
3250
|
+
* This function is temporary in 1.1.x, it will not be available in 1.2
|
|
3251
|
+
*
|
|
3252
|
+
*/
|
|
3253
|
+
readonly copper_connection_definitions: CopperConnectionDefinition[]
|
|
3254
|
+
|
|
3247
3255
|
/**
|
|
3248
3256
|
* Whether this corpse will ever fade away.
|
|
3249
3257
|
* @remarks
|
|
@@ -3305,6 +3313,14 @@ interface LuaEntity extends LuaControl {
|
|
|
3305
3313
|
*/
|
|
3306
3314
|
readonly distraction_command?: Command
|
|
3307
3315
|
|
|
3316
|
+
/**
|
|
3317
|
+
* Gives a draw data of the given entity if it supports such data
|
|
3318
|
+
* @remarks
|
|
3319
|
+
* Applies to subclasses: RollingStock
|
|
3320
|
+
*
|
|
3321
|
+
*/
|
|
3322
|
+
readonly draw_data: RollingStockDrawData
|
|
3323
|
+
|
|
3308
3324
|
/**
|
|
3309
3325
|
* Whether the driver of this car or spidertron is the gunner. If `false`, the passenger is the gunner. `nil` if this is neither a car or a spidertron.
|
|
3310
3326
|
* @remarks
|
|
@@ -3500,7 +3516,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3500
3516
|
readonly ghost_type: string
|
|
3501
3517
|
|
|
3502
3518
|
/**
|
|
3503
|
-
* The {@link unit_number | LuaEntity::unit_number} of the entity contained in this ghost. It is the same as the unit number of the {@link
|
|
3519
|
+
* The {@link unit_number | runtime:LuaEntity::unit_number} of the entity contained in this ghost. It is the same as the unit number of the {@link EntityWithOwnerPrototype | prototype:EntityWithOwnerPrototype} that was destroyed to create this ghost. If it was created by other means, or if the inner entity does not support unit numbers, this property is `nil`.
|
|
3504
3520
|
* @remarks
|
|
3505
3521
|
* Applies to subclasses: EntityGhost
|
|
3506
3522
|
*
|
|
@@ -3520,7 +3536,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3520
3536
|
/**
|
|
3521
3537
|
* The current health of the entity, if any. Health is automatically clamped to be between `0` and max health (inclusive). Entities with a health of `0` can not be attacked.
|
|
3522
3538
|
* @remarks
|
|
3523
|
-
* To get the maximum possible health of this entity, see {@link LuaEntityPrototype::max_health | LuaEntityPrototype::max_health} on its prototype.
|
|
3539
|
+
* To get the maximum possible health of this entity, see {@link LuaEntityPrototype::max_health | runtime:LuaEntityPrototype::max_health} on its prototype.
|
|
3524
3540
|
*
|
|
3525
3541
|
*/
|
|
3526
3542
|
health?: number
|
|
@@ -3614,7 +3630,15 @@ interface LuaEntity extends LuaControl {
|
|
|
3614
3630
|
readonly is_entity_with_owner: boolean
|
|
3615
3631
|
|
|
3616
3632
|
/**
|
|
3617
|
-
*
|
|
3633
|
+
* If the rolling stock is facing train's front
|
|
3634
|
+
* @remarks
|
|
3635
|
+
* Applies to subclasses: RollingStock
|
|
3636
|
+
*
|
|
3637
|
+
*/
|
|
3638
|
+
readonly is_headed_to_trains_front: boolean
|
|
3639
|
+
|
|
3640
|
+
/**
|
|
3641
|
+
* Whether this entity is a MilitaryTarget. Can be written to if {@link LuaEntityPrototype::allow_run_time_change_of_is_military_target | runtime:LuaEntityPrototype::allow_run_time_change_of_is_military_target} returns `true`.
|
|
3618
3642
|
*/
|
|
3619
3643
|
is_military_target: boolean
|
|
3620
3644
|
|
|
@@ -3634,7 +3658,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3634
3658
|
/**
|
|
3635
3659
|
* The last player that changed any setting on this entity. This includes building the entity, changing its color, or configuring its circuit network. `nil` if the last user is not part of the save anymore.
|
|
3636
3660
|
*
|
|
3637
|
-
* Reading this property will return a {@link LuaPlayer | LuaPlayer}, while {@link PlayerIdentification | PlayerIdentification} can be used when writing.
|
|
3661
|
+
* Reading this property will return a {@link LuaPlayer | runtime:LuaPlayer}, while {@link PlayerIdentification | runtime:PlayerIdentification} can be used when writing.
|
|
3638
3662
|
* @remarks
|
|
3639
3663
|
* Applies to subclasses: EntityWithOwner
|
|
3640
3664
|
*
|
|
@@ -3667,7 +3691,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3667
3691
|
linked_belt_type: string
|
|
3668
3692
|
|
|
3669
3693
|
/**
|
|
3670
|
-
* The container entity this loader is pointing at/pulling from depending on the {@link LuaEntity::loader_type | LuaEntity::loader_type}, if any.
|
|
3694
|
+
* The container entity this loader is pointing at/pulling from depending on the {@link LuaEntity::loader_type | runtime:LuaEntity::loader_type}, if any.
|
|
3671
3695
|
* @remarks
|
|
3672
3696
|
* Applies to subclasses: Loader
|
|
3673
3697
|
*
|
|
@@ -3902,14 +3926,14 @@ interface LuaEntity extends LuaControl {
|
|
|
3902
3926
|
/**
|
|
3903
3927
|
* The player that this `simple-entity-with-owner`, `simple-entity-with-force`, `flying-text`, or `highlight-box` is visible to. `nil` when this entity is rendered for all players.
|
|
3904
3928
|
*
|
|
3905
|
-
* Reading this property will return a {@link LuaPlayer | LuaPlayer}, while {@link PlayerIdentification | PlayerIdentification} can be used when writing.
|
|
3929
|
+
* Reading this property will return a {@link LuaPlayer | runtime:LuaPlayer}, while {@link PlayerIdentification | runtime:PlayerIdentification} can be used when writing.
|
|
3906
3930
|
*/
|
|
3907
3931
|
render_player?: LuaPlayer | PlayerIdentification
|
|
3908
3932
|
|
|
3909
3933
|
/**
|
|
3910
3934
|
* The forces that this `simple-entity-with-owner`, `simple-entity-with-force`, or `flying-text` is visible to. `nil` or an empty array when this entity is rendered for all forces.
|
|
3911
3935
|
* @remarks
|
|
3912
|
-
* Reading will always give an array of {@link LuaForce | LuaForce}
|
|
3936
|
+
* Reading will always give an array of {@link LuaForce | runtime:LuaForce}
|
|
3913
3937
|
*
|
|
3914
3938
|
*/
|
|
3915
3939
|
render_to_forces?: ForceIdentification[]
|
|
@@ -3967,7 +3991,7 @@ interface LuaEntity extends LuaControl {
|
|
|
3967
3991
|
selected_gun_index?: number
|
|
3968
3992
|
|
|
3969
3993
|
/**
|
|
3970
|
-
* {@link LuaEntityPrototype::selection_box | LuaEntityPrototype::selection_box} around entity's given position and respecting the current entity orientation.
|
|
3994
|
+
* {@link LuaEntityPrototype::selection_box | runtime:LuaEntityPrototype::selection_box} around entity's given position and respecting the current entity orientation.
|
|
3971
3995
|
*/
|
|
3972
3996
|
readonly selection_box: BoundingBox
|
|
3973
3997
|
|
|
@@ -4108,7 +4132,7 @@ interface LuaEntity extends LuaControl {
|
|
|
4108
4132
|
* The ticks left before a ghost, combat robot, highlight box or smoke with trigger is destroyed.
|
|
4109
4133
|
*
|
|
4110
4134
|
* - for ghosts set to uint32 max (4'294'967'295) to never expire.
|
|
4111
|
-
* - for ghosts
|
|
4135
|
+
* - for ghosts can not be set higher than {@link LuaForce::ghost_time_to_live | runtime:LuaForce::ghost_time_to_live} of the entity's force.
|
|
4112
4136
|
*/
|
|
4113
4137
|
time_to_live: number
|
|
4114
4138
|
|
|
@@ -4222,7 +4246,7 @@ interface LuaEntity extends LuaControl {
|
|
|
4222
4246
|
/**
|
|
4223
4247
|
* A unique number identifying this entity for the lifetime of the save. These are allocated sequentially, and not re-used (until overflow).
|
|
4224
4248
|
*
|
|
4225
|
-
* Only entities inheriting from {@link
|
|
4249
|
+
* Only entities inheriting from {@link EntityWithOwnerPrototype | prototype:EntityWithOwnerPrototype}, as well as {@link ItemRequestProxyPrototype | prototype:ItemRequestProxyPrototype} and {@link EntityGhostPrototype | prototype:EntityGhostPrototype} are assigned a unit number. Returns `nil` otherwise.
|
|
4226
4250
|
*/
|
|
4227
4251
|
readonly unit_number?: number
|
|
4228
4252
|
|
|
@@ -4258,7 +4282,7 @@ interface LuaEntityPrototype {
|
|
|
4258
4282
|
|
|
4259
4283
|
/**
|
|
4260
4284
|
* Test whether this entity prototype has a certain flag set.
|
|
4261
|
-
* @param flag - The flag to test. See [EntityPrototypeFlags](EntityPrototypeFlags) for a list of flags.
|
|
4285
|
+
* @param flag - The flag to test. See [EntityPrototypeFlags](runtime:EntityPrototypeFlags) for a list of flags.
|
|
4262
4286
|
*/
|
|
4263
4287
|
has_flag(this: void,
|
|
4264
4288
|
flag: string): void
|
|
@@ -5585,7 +5609,7 @@ interface LuaEntityPrototype {
|
|
|
5585
5609
|
readonly pollution_to_join_attack?: number
|
|
5586
5610
|
|
|
5587
5611
|
/**
|
|
5588
|
-
* True if this entity prototype should be included during tile collision checks with {@link LuaTilePrototype::check_collision_with_entities | LuaTilePrototype::check_collision_with_entities} enabled.
|
|
5612
|
+
* True if this entity prototype should be included during tile collision checks with {@link LuaTilePrototype::check_collision_with_entities | runtime:LuaTilePrototype::check_collision_with_entities} enabled.
|
|
5589
5613
|
*/
|
|
5590
5614
|
readonly protected_from_tile_building: boolean
|
|
5591
5615
|
|
|
@@ -5992,6 +6016,14 @@ interface LuaEntityPrototype {
|
|
|
5992
6016
|
*/
|
|
5993
6017
|
readonly valid: boolean
|
|
5994
6018
|
|
|
6019
|
+
/**
|
|
6020
|
+
* Vertical selection shift used by rolling stocks. It affects selection box vertical position but is also used to shift rolling stock graphics along the rails to fine tune train's look.
|
|
6021
|
+
* @remarks
|
|
6022
|
+
* Applies to subclasses: RollingStock
|
|
6023
|
+
*
|
|
6024
|
+
*/
|
|
6025
|
+
readonly vertical_selection_shift?: number
|
|
6026
|
+
|
|
5995
6027
|
/**
|
|
5996
6028
|
* The vision distance of this unit prototype.
|
|
5997
6029
|
* @remarks
|
|
@@ -6016,7 +6048,7 @@ interface LuaEntityPrototype {
|
|
|
6016
6048
|
}
|
|
6017
6049
|
|
|
6018
6050
|
/**
|
|
6019
|
-
* An item in a {@link LuaEquipmentGrid | LuaEquipmentGrid}, for example a fusion reactor placed in one's power armor.
|
|
6051
|
+
* An item in a {@link LuaEquipmentGrid | runtime:LuaEquipmentGrid}, for example a fusion reactor placed in one's power armor.
|
|
6020
6052
|
*
|
|
6021
6053
|
* An equipment reference becomes invalid once the equipment is removed or the equipment grid it resides in is destroyed.
|
|
6022
6054
|
*/
|
|
@@ -6089,7 +6121,7 @@ interface LuaEquipment {
|
|
|
6089
6121
|
/**
|
|
6090
6122
|
* Current shield value of the equipment.
|
|
6091
6123
|
* @remarks
|
|
6092
|
-
* Can't be set higher than {@link LuaEquipment::max_shield | LuaEquipment::max_shield}.
|
|
6124
|
+
* Can't be set higher than {@link LuaEquipment::max_shield | runtime:LuaEquipment::max_shield}.
|
|
6093
6125
|
*
|
|
6094
6126
|
*/
|
|
6095
6127
|
shield: number
|
|
@@ -6158,7 +6190,7 @@ interface LuaEquipmentGrid {
|
|
|
6158
6190
|
|
|
6159
6191
|
/**
|
|
6160
6192
|
* Clear all equipment from the grid, removing it without actually returning it.
|
|
6161
|
-
* @param by_player - If provided, the action is done 'as' this player and [on_player_removed_equipment](on_player_removed_equipment) is triggered.
|
|
6193
|
+
* @param by_player - If provided, the action is done 'as' this player and [on_player_removed_equipment](runtime:on_player_removed_equipment) is triggered.
|
|
6162
6194
|
*/
|
|
6163
6195
|
clear(this: void,
|
|
6164
6196
|
by_player?: PlayerIdentification): void
|
|
@@ -6207,7 +6239,7 @@ interface LuaEquipmentGrid {
|
|
|
6207
6239
|
|
|
6208
6240
|
/**
|
|
6209
6241
|
* Insert an equipment into the grid.
|
|
6210
|
-
* @param table.by_player - If provided the action is done 'as' this player and [on_player_placed_equipment](on_player_placed_equipment) is triggered.
|
|
6242
|
+
* @param table.by_player - If provided the action is done 'as' this player and [on_player_placed_equipment](runtime:on_player_placed_equipment) is triggered.
|
|
6211
6243
|
* @param table.name - Equipment prototype name
|
|
6212
6244
|
* @param table.position - Grid position to put the equipment in.
|
|
6213
6245
|
*/
|
|
@@ -6220,7 +6252,7 @@ interface LuaEquipmentGrid {
|
|
|
6220
6252
|
|
|
6221
6253
|
/**
|
|
6222
6254
|
* Remove an equipment from the grid.
|
|
6223
|
-
* @param table.by_player - If provided the action is done 'as' this player and [on_player_removed_equipment](on_player_removed_equipment) is triggered.
|
|
6255
|
+
* @param table.by_player - If provided the action is done 'as' this player and [on_player_removed_equipment](runtime:on_player_removed_equipment) is triggered.
|
|
6224
6256
|
* @param table.equipment - Take this exact equipment.
|
|
6225
6257
|
* @param table.position - Take the equipment that contains this position in the grid.
|
|
6226
6258
|
*/
|
|
@@ -6233,7 +6265,7 @@ interface LuaEquipmentGrid {
|
|
|
6233
6265
|
|
|
6234
6266
|
/**
|
|
6235
6267
|
* Remove all equipment from the grid.
|
|
6236
|
-
* @param by_player - If provided, the action is done 'as' this player and [on_player_removed_equipment](on_player_removed_equipment) is triggered.
|
|
6268
|
+
* @param by_player - If provided, the action is done 'as' this player and [on_player_removed_equipment](runtime:on_player_removed_equipment) is triggered.
|
|
6237
6269
|
*/
|
|
6238
6270
|
take_all(this: void,
|
|
6239
6271
|
by_player?: PlayerIdentification): void
|
|
@@ -6317,7 +6349,7 @@ interface LuaEquipmentGridPrototype {
|
|
|
6317
6349
|
help(this: void): void
|
|
6318
6350
|
|
|
6319
6351
|
/**
|
|
6320
|
-
* Equipment category names for the {@link categories | LuaEquipmentPrototype::equipment_categories} that may be inserted into this equipment grid. The grid will accept any equipment that has at least one category in this list.
|
|
6352
|
+
* Equipment category names for the {@link categories | runtime:LuaEquipmentPrototype::equipment_categories} that may be inserted into this equipment grid. The grid will accept any equipment that has at least one category in this list.
|
|
6321
6353
|
*/
|
|
6322
6354
|
readonly equipment_categories: string[]
|
|
6323
6355
|
|
|
@@ -6411,7 +6443,7 @@ interface LuaEquipmentPrototype {
|
|
|
6411
6443
|
readonly energy_source: LuaElectricEnergySourcePrototype
|
|
6412
6444
|
|
|
6413
6445
|
/**
|
|
6414
|
-
* Category names for this equipment. These {@link categories | LuaEquipmentGridPrototype::equipment_categories} will be used to determine whether this equipment is allowed in a particular equipment grid.
|
|
6446
|
+
* Category names for this equipment. These {@link categories | runtime:LuaEquipmentGridPrototype::equipment_categories} will be used to determine whether this equipment is allowed in a particular equipment grid.
|
|
6415
6447
|
*/
|
|
6416
6448
|
readonly equipment_categories: string[]
|
|
6417
6449
|
|
|
@@ -6610,9 +6642,9 @@ interface LuaFlowStatistics {
|
|
|
6610
6642
|
}
|
|
6611
6643
|
|
|
6612
6644
|
/**
|
|
6613
|
-
* An array of fluid boxes of an entity. Entities may contain more than one fluid box, and some can change the number of fluid boxes -- for instance, an assembling machine will change its number of fluid boxes depending on its active recipe. See {@link Fluid | Fluid}.
|
|
6645
|
+
* An array of fluid boxes of an entity. Entities may contain more than one fluid box, and some can change the number of fluid boxes -- for instance, an assembling machine will change its number of fluid boxes depending on its active recipe. See {@link Fluid | runtime:Fluid}.
|
|
6614
6646
|
*
|
|
6615
|
-
* Do note that reading from a {@link LuaFluidBox | LuaFluidBox} creates a new table and writing will copy the given fields from the table into the engine's own fluid box structure. Therefore, the correct way to update a fluidbox of an entity is to read it first, modify the table, then write the modified table back. Directly accessing the returned table's attributes won't have the desired effect.
|
|
6647
|
+
* Do note that reading from a {@link LuaFluidBox | runtime:LuaFluidBox} creates a new table and writing will copy the given fields from the table into the engine's own fluid box structure. Therefore, the correct way to update a fluidbox of an entity is to read it first, modify the table, then write the modified table back. Directly accessing the returned table's attributes won't have the desired effect.
|
|
6616
6648
|
* @example
|
|
6617
6649
|
* Double the temperature of the fluid in `entity`'s first fluid box.
|
|
6618
6650
|
* ```
|
|
@@ -6722,7 +6754,7 @@ interface LuaFluidBox {
|
|
|
6722
6754
|
readonly valid: boolean
|
|
6723
6755
|
|
|
6724
6756
|
/**
|
|
6725
|
-
* Access, set or clear a fluid box. The index must always be in bounds (see {@link LuaFluidBox::length_operator | LuaFluidBox::length_operator}). New fluidboxes may not be added or removed using this operator.
|
|
6757
|
+
* Access, set or clear a fluid box. The index must always be in bounds (see {@link LuaFluidBox::length_operator | runtime:LuaFluidBox::length_operator}). New fluidboxes may not be added or removed using this operator.
|
|
6726
6758
|
*
|
|
6727
6759
|
* Is `nil` if the given fluid box does not contain any fluid. Writing `nil` removes all fluid from the fluid box.
|
|
6728
6760
|
* @remarks
|
|
@@ -6739,7 +6771,7 @@ interface LuaFluidBox {
|
|
|
6739
6771
|
}
|
|
6740
6772
|
|
|
6741
6773
|
/**
|
|
6742
|
-
* A prototype of a fluidbox owned by some {@link LuaEntityPrototype | LuaEntityPrototype}.
|
|
6774
|
+
* A prototype of a fluidbox owned by some {@link LuaEntityPrototype | runtime:LuaEntityPrototype}.
|
|
6743
6775
|
*/
|
|
6744
6776
|
interface LuaFluidBoxPrototype {
|
|
6745
6777
|
/**
|
|
@@ -7061,7 +7093,7 @@ interface LuaForce {
|
|
|
7061
7093
|
disable_research(this: void): void
|
|
7062
7094
|
|
|
7063
7095
|
/**
|
|
7064
|
-
* Enables all recipes and technologies. The opposite of {@link LuaForce::disable_all_prototypes | LuaForce::disable_all_prototypes}
|
|
7096
|
+
* Enables all recipes and technologies. The opposite of {@link LuaForce::disable_all_prototypes | runtime:LuaForce::disable_all_prototypes}
|
|
7065
7097
|
*/
|
|
7066
7098
|
enable_all_prototypes(this: void): void
|
|
7067
7099
|
|
|
@@ -7419,7 +7451,7 @@ interface LuaForce {
|
|
|
7419
7451
|
*
|
|
7420
7452
|
* This is primarily useful when you want to do some action against all online players of this force.
|
|
7421
7453
|
* @remarks
|
|
7422
|
-
* This does *not* index using player index. See {@link LuaPlayer::index | LuaPlayer::index} on each player instance for the player index.
|
|
7454
|
+
* This does *not* index using player index. See {@link LuaPlayer::index | runtime:LuaPlayer::index} on each player instance for the player index.
|
|
7423
7455
|
*
|
|
7424
7456
|
*/
|
|
7425
7457
|
readonly connected_players: LuaPlayer[]
|
|
@@ -7476,7 +7508,7 @@ interface LuaForce {
|
|
|
7476
7508
|
ghost_time_to_live: number
|
|
7477
7509
|
|
|
7478
7510
|
/**
|
|
7479
|
-
* This force's index in {@link LuaGameScript::forces | LuaGameScript::forces} (unique ID). It is assigned when a force is created, and remains so until it is {@link merged | on_forces_merged} (ie. deleted). Indexes of merged forces can be reused.
|
|
7511
|
+
* This force's index in {@link LuaGameScript::forces | runtime:LuaGameScript::forces} (unique ID). It is assigned when a force is created, and remains so until it is {@link merged | runtime:on_forces_merged} (ie. deleted). Indexes of merged forces can be reused.
|
|
7480
7512
|
*/
|
|
7481
7513
|
readonly index: number
|
|
7482
7514
|
|
|
@@ -7580,7 +7612,7 @@ interface LuaForce {
|
|
|
7580
7612
|
readonly recipes: {[key: string]: LuaRecipe}
|
|
7581
7613
|
|
|
7582
7614
|
/**
|
|
7583
|
-
* Whether research is enabled for this force, see {@link LuaForce::enable_research | LuaForce::enable_research} and {@link LuaForce::disable_research | LuaForce::disable_research}
|
|
7615
|
+
* Whether research is enabled for this force, see {@link LuaForce::enable_research | runtime:LuaForce::enable_research} and {@link LuaForce::disable_research | runtime:LuaForce::disable_research}
|
|
7584
7616
|
*/
|
|
7585
7617
|
readonly research_enabled: boolean
|
|
7586
7618
|
|
|
@@ -7590,7 +7622,7 @@ interface LuaForce {
|
|
|
7590
7622
|
research_progress: number
|
|
7591
7623
|
|
|
7592
7624
|
/**
|
|
7593
|
-
* The research queue of this force. The first technology in the array is the currently active one. Reading this attribute gives an array of {@link LuaTechnology | LuaTechnology}.
|
|
7625
|
+
* The research queue of this force. The first technology in the array is the currently active one. Reading this attribute gives an array of {@link LuaTechnology | runtime:LuaTechnology}.
|
|
7594
7626
|
*
|
|
7595
7627
|
* To write to this, the entire table must be written. Providing an empty table or `nil` will empty the research queue and cancel the current research. Writing to this when the research queue is disabled will simply set the last research in the table as the current research.
|
|
7596
7628
|
* @remarks
|
|
@@ -7726,7 +7758,7 @@ interface LuaGameScript {
|
|
|
7726
7758
|
*/
|
|
7727
7759
|
ban_player(this: void,
|
|
7728
7760
|
player: PlayerIdentification,
|
|
7729
|
-
reason?:
|
|
7761
|
+
reason?: string): void
|
|
7730
7762
|
|
|
7731
7763
|
/**
|
|
7732
7764
|
* Run internal consistency checks. Allegedly prints any errors it finds.
|
|
@@ -7761,9 +7793,9 @@ interface LuaGameScript {
|
|
|
7761
7793
|
force: string): void
|
|
7762
7794
|
|
|
7763
7795
|
/**
|
|
7764
|
-
* Creates an inventory that is not owned by any game object. It can be resized later with {@link LuaInventory::resize | LuaInventory::resize}.
|
|
7796
|
+
* Creates an inventory that is not owned by any game object. It can be resized later with {@link LuaInventory::resize | runtime:LuaInventory::resize}.
|
|
7765
7797
|
* @remarks
|
|
7766
|
-
* Make sure to destroy it when you are done with it using {@link LuaInventory::destroy | LuaInventory::destroy}.
|
|
7798
|
+
* Make sure to destroy it when you are done with it using {@link LuaInventory::destroy | runtime:LuaInventory::destroy}.
|
|
7767
7799
|
*
|
|
7768
7800
|
* @param size - The number of slots the inventory initially has.
|
|
7769
7801
|
*/
|
|
@@ -7771,7 +7803,7 @@ interface LuaGameScript {
|
|
|
7771
7803
|
size: number): void
|
|
7772
7804
|
|
|
7773
7805
|
/**
|
|
7774
|
-
* Creates a {@link LuaProfiler | LuaProfiler}, which is used for measuring script performance.
|
|
7806
|
+
* Creates a {@link LuaProfiler | runtime:LuaProfiler}, which is used for measuring script performance.
|
|
7775
7807
|
* @remarks
|
|
7776
7808
|
* LuaProfiler cannot be serialized.
|
|
7777
7809
|
*
|
|
@@ -7840,7 +7872,7 @@ interface LuaGameScript {
|
|
|
7840
7872
|
string: string): void
|
|
7841
7873
|
|
|
7842
7874
|
/**
|
|
7843
|
-
* Evaluate an expression, substituting variables as provided. For details on the formula, see
|
|
7875
|
+
* Evaluate an expression, substituting variables as provided. For details on the formula, see {@link TechnologyPrototype::unit | prototype:TechnologyPrototype::unit}.
|
|
7844
7876
|
* @param expression - The expression to evaluate.
|
|
7845
7877
|
* @param variables - Variables to be substituted.
|
|
7846
7878
|
* @example
|
|
@@ -8006,7 +8038,7 @@ interface LuaGameScript {
|
|
|
8006
8038
|
player: number | string): void
|
|
8007
8039
|
|
|
8008
8040
|
/**
|
|
8009
|
-
* Gets the inventories created through {@link LuaGameScript::create_inventory | LuaGameScript::create_inventory}
|
|
8041
|
+
* Gets the inventories created through {@link LuaGameScript::create_inventory | runtime:LuaGameScript::create_inventory}
|
|
8010
8042
|
* @remarks
|
|
8011
8043
|
* Inventories created through console commands will be owned by `"core"`.
|
|
8012
8044
|
*
|
|
@@ -8076,13 +8108,13 @@ interface LuaGameScript {
|
|
|
8076
8108
|
*/
|
|
8077
8109
|
kick_player(this: void,
|
|
8078
8110
|
player: PlayerIdentification,
|
|
8079
|
-
reason?:
|
|
8111
|
+
reason?: string): void
|
|
8080
8112
|
|
|
8081
8113
|
/**
|
|
8082
8114
|
* Marks two forces to be merged together. All players and entities in the source force will be reassigned to the target force. The source force will then be destroyed. Importantly, this does not merge technologies or bonuses, which are instead retained from the target force.
|
|
8083
8115
|
* @remarks
|
|
8084
8116
|
* The three built-in forces (player, enemy and neutral) can't be destroyed, meaning they can't be used as the source argument to this function.
|
|
8085
|
-
* The source force is not removed until the end of the current tick, or if called during the {@link on_forces_merging | on_forces_merging} or {@link on_forces_merged | on_forces_merged} event, the end of the next tick.
|
|
8117
|
+
* The source force is not removed until the end of the current tick, or if called during the {@link on_forces_merging | runtime:on_forces_merging} or {@link on_forces_merged | runtime:on_forces_merged} event, the end of the next tick.
|
|
8086
8118
|
*
|
|
8087
8119
|
* @param destination - The force to reassign all entities to.
|
|
8088
8120
|
* @param source - The force to remove.
|
|
@@ -8172,7 +8204,7 @@ interface LuaGameScript {
|
|
|
8172
8204
|
players?: Array<LuaPlayer | string>): void
|
|
8173
8205
|
|
|
8174
8206
|
/**
|
|
8175
|
-
* Remove a file or directory in the `script-output` folder, located in the game's {@link user data directory | https://wiki.factorio.com/User_data_directory}. Can be used to remove files created by {@link LuaGameScript::write_file | LuaGameScript::write_file}.
|
|
8207
|
+
* Remove a file or directory in the `script-output` folder, located in the game's {@link user data directory | https://wiki.factorio.com/User_data_directory}. Can be used to remove files created by {@link LuaGameScript::write_file | runtime:LuaGameScript::write_file}.
|
|
8176
8208
|
* @param path - The path to the file or directory to remove, relative to `script-output`.
|
|
8177
8209
|
*/
|
|
8178
8210
|
remove_path(this: void,
|
|
@@ -8377,7 +8409,7 @@ interface LuaGameScript {
|
|
|
8377
8409
|
*
|
|
8378
8410
|
* This is primarily useful when you want to do some action against all online players.
|
|
8379
8411
|
* @remarks
|
|
8380
|
-
* This does *not* index using player index. See {@link LuaPlayer::index | LuaPlayer::index} on each player instance for the player index.
|
|
8412
|
+
* This does *not* index using player index. See {@link LuaPlayer::index | runtime:LuaPlayer::index} on each player instance for the player index.
|
|
8381
8413
|
*
|
|
8382
8414
|
*/
|
|
8383
8415
|
readonly connected_players: LuaPlayer[]
|
|
@@ -8509,7 +8541,7 @@ interface LuaGameScript {
|
|
|
8509
8541
|
/**
|
|
8510
8542
|
* The currently active set of map settings. Even though this property is marked as read-only, the members of the dictionary that is returned can be modified mid-game.
|
|
8511
8543
|
* @remarks
|
|
8512
|
-
* This does not contain difficulty settings, use {@link LuaGameScript::difficulty_settings | LuaGameScript::difficulty_settings} instead.
|
|
8544
|
+
* This does not contain difficulty settings, use {@link LuaGameScript::difficulty_settings | runtime:LuaGameScript::difficulty_settings} instead.
|
|
8513
8545
|
*
|
|
8514
8546
|
*/
|
|
8515
8547
|
readonly map_settings: MapSettings
|
|
@@ -8565,16 +8597,16 @@ interface LuaGameScript {
|
|
|
8565
8597
|
readonly permissions: LuaPermissionGroups
|
|
8566
8598
|
|
|
8567
8599
|
/**
|
|
8568
|
-
* This property is only populated inside {@link custom command | LuaCommandProcessor} handlers and when writing {@link Lua console commands | https://wiki.factorio.com/Console#Scripting_and_cheat_commands}. Returns the player that is typing the command, `nil` in all other instances.
|
|
8600
|
+
* This property is only populated inside {@link custom command | runtime:LuaCommandProcessor} handlers and when writing {@link Lua console commands | https://wiki.factorio.com/Console#Scripting_and_cheat_commands}. Returns the player that is typing the command, `nil` in all other instances.
|
|
8569
8601
|
*
|
|
8570
|
-
* See {@link LuaGameScript::players | LuaGameScript::players} for accessing all players.
|
|
8602
|
+
* See {@link LuaGameScript::players | runtime:LuaGameScript::players} for accessing all players.
|
|
8571
8603
|
*/
|
|
8572
8604
|
readonly player?: LuaPlayer
|
|
8573
8605
|
|
|
8574
8606
|
/**
|
|
8575
8607
|
* Get a table of all the players that currently exist. This sparse table allows you to find players by indexing it with either their `name` or `index`. Iterating this table with `pairs()` will only iterate the array part of the table. Iterating with `ipairs()` will not work at all.
|
|
8576
8608
|
*
|
|
8577
|
-
* If only a single player is required, {@link LuaGameScript::get_player | LuaGameScript::get_player} should be used instead, as it avoids the unnecessary overhead of passing the whole table to Lua.
|
|
8609
|
+
* If only a single player is required, {@link LuaGameScript::get_player | runtime:LuaGameScript::get_player} should be used instead, as it avoids the unnecessary overhead of passing the whole table to Lua.
|
|
8578
8610
|
*/
|
|
8579
8611
|
readonly players: {[key: string]: LuaPlayer}
|
|
8580
8612
|
|
|
@@ -8612,7 +8644,7 @@ interface LuaGameScript {
|
|
|
8612
8644
|
speed: number
|
|
8613
8645
|
|
|
8614
8646
|
/**
|
|
8615
|
-
* The styles that {@link LuaGuiElement | LuaGuiElement} can use, indexed by `name`.
|
|
8647
|
+
* The styles that {@link LuaGuiElement | runtime:LuaGuiElement} can use, indexed by `name`.
|
|
8616
8648
|
*/
|
|
8617
8649
|
readonly styles: {[key: string]: string}
|
|
8618
8650
|
|
|
@@ -8622,7 +8654,7 @@ interface LuaGameScript {
|
|
|
8622
8654
|
readonly surfaces: {[key: string]: LuaSurface}
|
|
8623
8655
|
|
|
8624
8656
|
/**
|
|
8625
|
-
* A dictionary containing every {@link LuaTechnologyPrototype | LuaTechnologyPrototype} indexed by `name`.
|
|
8657
|
+
* A dictionary containing every {@link LuaTechnologyPrototype | runtime:LuaTechnologyPrototype} indexed by `name`.
|
|
8626
8658
|
*/
|
|
8627
8659
|
readonly technology_prototypes: {[key: string]: LuaTechnologyPrototype}
|
|
8628
8660
|
|
|
@@ -8637,14 +8669,14 @@ interface LuaGameScript {
|
|
|
8637
8669
|
tick_paused: boolean
|
|
8638
8670
|
|
|
8639
8671
|
/**
|
|
8640
|
-
* The number of ticks since this game was created using either "new game" or "new game from scenario". Notably, this number progresses even when the game is {@link tick_paused | LuaGameScript::tick_paused}.
|
|
8672
|
+
* The number of ticks since this game was created using either "new game" or "new game from scenario". Notably, this number progresses even when the game is {@link tick_paused | runtime:LuaGameScript::tick_paused}.
|
|
8641
8673
|
*
|
|
8642
|
-
* This differs from {@link LuaGameScript::tick | LuaGameScript::tick} in that creating a game from a scenario always starts with this value at `0`, even if the scenario has its own level data where the `tick` has progressed past `0`.
|
|
8674
|
+
* This differs from {@link LuaGameScript::tick | runtime:LuaGameScript::tick} in that creating a game from a scenario always starts with this value at `0`, even if the scenario has its own level data where the `tick` has progressed past `0`.
|
|
8643
8675
|
*/
|
|
8644
8676
|
readonly ticks_played: number
|
|
8645
8677
|
|
|
8646
8678
|
/**
|
|
8647
|
-
* The number of ticks to be run while the tick is paused. When {@link LuaGameScript::tick_paused | LuaGameScript::tick_paused} is true, ticks_to_run behaves the following way: While this is > 0, the entity update is running normally and this value is decremented every tick. When this reaches 0, the game will pause again.
|
|
8679
|
+
* The number of ticks to be run while the tick is paused. When {@link LuaGameScript::tick_paused | runtime:LuaGameScript::tick_paused} is true, ticks_to_run behaves the following way: While this is > 0, the entity update is running normally and this value is decremented every tick. When this reaches 0, the game will pause again.
|
|
8648
8680
|
*/
|
|
8649
8681
|
ticks_to_run: number
|
|
8650
8682
|
|
|
@@ -8787,7 +8819,7 @@ interface LuaGui {
|
|
|
8787
8819
|
/**
|
|
8788
8820
|
* Returns `true` if sprite_path is valid and contains loaded sprite, otherwise `false`. Sprite path of type `file` doesn't validate if file exists.
|
|
8789
8821
|
*
|
|
8790
|
-
* If you want to avoid needing a LuaGui object, {@link LuaGameScript::is_valid_sprite_path | LuaGameScript::is_valid_sprite_path} can be used instead.
|
|
8822
|
+
* If you want to avoid needing a LuaGui object, {@link LuaGameScript::is_valid_sprite_path | runtime:LuaGameScript::is_valid_sprite_path} can be used instead.
|
|
8791
8823
|
* @param sprite_path - Path to a image.
|
|
8792
8824
|
*/
|
|
8793
8825
|
is_valid_sprite_path(this: void,
|
|
@@ -8846,35 +8878,9 @@ interface LuaGui {
|
|
|
8846
8878
|
}
|
|
8847
8879
|
|
|
8848
8880
|
/**
|
|
8849
|
-
* An element of a custom GUI. This type is used to represent any kind of a GUI element - labels, buttons and frames are all instances of this type. Just like {@link LuaEntity | LuaEntity}, different kinds of elements support different attributes; attempting to access an attribute on an element that doesn't support it (for instance, trying to access the `column_count` of a `textfield`) will result in a runtime error.
|
|
8881
|
+
* An element of a custom GUI. This type is used to represent {@link any kind | runtime:GuiElementType} of a GUI element - labels, buttons and frames are all instances of this type. Just like {@link LuaEntity | runtime:LuaEntity}, different kinds of elements support different attributes; attempting to access an attribute on an element that doesn't support it (for instance, trying to access the `column_count` of a `textfield`) will result in a runtime error.
|
|
8850
8882
|
*
|
|
8851
|
-
*
|
|
8852
|
-
*
|
|
8853
|
-
* - `"button"`: A clickable element. Relevant event: {@link on_gui_click | on_gui_click}
|
|
8854
|
-
* - `"sprite-button"`: A `button` that displays a sprite rather than text. Relevant event: {@link on_gui_click | on_gui_click}
|
|
8855
|
-
* - `"checkbox"`: A clickable element with a check mark that can be turned off or on. Relevant event: {@link on_gui_checked_state_changed | on_gui_checked_state_changed}
|
|
8856
|
-
* - `"flow"`: An invisible container that lays out its children either horizontally or vertically.
|
|
8857
|
-
* - `"frame"`: A non-transparent box that contains other elements. It can have a title (set via the `caption` attribute). Just like a `flow`, it lays out its children either horizontally or vertically. Relevant event: {@link on_gui_location_changed | on_gui_location_changed}
|
|
8858
|
-
* - `"label"`: A piece of text.
|
|
8859
|
-
* - `"line"`: A horizontal or vertical separation line.
|
|
8860
|
-
* - `"progressbar"`: A partially filled bar that can be used to indicate progress.
|
|
8861
|
-
* - `"table"`: An invisible container that lays out its children in a specific number of columns. The width of each column is determined by the widest element it contains.
|
|
8862
|
-
* - `"textfield"`: A single-line box the user can type into. Relevant events: {@link on_gui_text_changed | on_gui_text_changed}, {@link on_gui_confirmed | on_gui_confirmed}
|
|
8863
|
-
* - `"radiobutton"`: An element that is similar to a `checkbox`, but with a circular appearance. Clicking a selected radio button will not unselect it. Radio buttons are not linked to each other in any way. Relevant event: {@link on_gui_checked_state_changed | on_gui_checked_state_changed}
|
|
8864
|
-
* - `"sprite"`: An element that shows an image.
|
|
8865
|
-
* - `"scroll-pane"`: An invisible element that is similar to a `flow`, but has the ability to show and use scroll bars.
|
|
8866
|
-
* - `"drop-down"`: A drop-down containing strings of text. Relevant event: {@link on_gui_selection_state_changed | on_gui_selection_state_changed}
|
|
8867
|
-
* - `"list-box"`: A list of strings, only one of which can be selected at a time. Shows a scroll bar if necessary. Relevant event: {@link on_gui_selection_state_changed | on_gui_selection_state_changed}
|
|
8868
|
-
* - `"camera"`: A camera that shows the game at the given position on the given surface. It can visually track an {@link entity | LuaGuiElement::entity} that is set after the element has been created.
|
|
8869
|
-
* - `"choose-elem-button"`: A button that lets the player pick from a certain kind of prototype, with optional filtering. Relevant event: {@link on_gui_elem_changed | on_gui_elem_changed}
|
|
8870
|
-
* - `"text-box"`: A multi-line `textfield`. Relevant event: {@link on_gui_text_changed | on_gui_text_changed}
|
|
8871
|
-
* - `"slider"`: A horizontal number line which can be used to choose a number. Relevant event: {@link on_gui_value_changed | on_gui_value_changed}
|
|
8872
|
-
* - `"minimap"`: A minimap preview, similar to the normal player minimap. It can visually track an {@link entity | LuaGuiElement::entity} that is set after the element has been created.
|
|
8873
|
-
* - `"entity-preview"`: A preview of an entity. The {@link entity | LuaGuiElement::entity} has to be set after the element has been created.
|
|
8874
|
-
* - `"empty-widget"`: An empty element that just exists. The root GUI elements `screen` and `relative` are `empty-widget`s.
|
|
8875
|
-
* - `"tabbed-pane"`: A collection of `tab`s and their contents. Relevant event: {@link on_gui_selected_tab_changed | on_gui_selected_tab_changed}
|
|
8876
|
-
* - `"tab"`: A tab for use in a `tabbed-pane`.
|
|
8877
|
-
* - `"switch"`: A switch with three possible states. Can have labels attached to either side. Relevant event: {@link on_gui_switch_state_changed | on_gui_switch_state_changed}
|
|
8883
|
+
* For information on all supported GUI elements, see {@link GuiElementType | runtime:GuiElementType}.
|
|
8878
8884
|
*
|
|
8879
8885
|
* Each GUI element allows access to its children by having them as attributes. Thus, one can use the `parent.child` syntax to refer to children. Lua also supports the `parent["child"]` syntax to refer to the same element. This can be used in cases where the child has a name that isn't a valid Lua identifier.
|
|
8880
8886
|
* @example
|
|
@@ -8932,13 +8938,13 @@ interface LuaGuiElement {
|
|
|
8932
8938
|
/**
|
|
8933
8939
|
* Moves this GUI element to the "front" so it will draw over other elements.
|
|
8934
8940
|
* @remarks
|
|
8935
|
-
* Only works for elements in {@link LuaGui::screen | LuaGui::screen}
|
|
8941
|
+
* Only works for elements in {@link LuaGui::screen | runtime:LuaGui::screen}
|
|
8936
8942
|
*
|
|
8937
8943
|
*/
|
|
8938
8944
|
bring_to_front(this: void): void
|
|
8939
8945
|
|
|
8940
8946
|
/**
|
|
8941
|
-
* Remove children of this element. Any {@link LuaGuiElement | LuaGuiElement} objects referring to the destroyed elements become invalid after this operation.
|
|
8947
|
+
* Remove children of this element. Any {@link LuaGuiElement | runtime:LuaGuiElement} objects referring to the destroyed elements become invalid after this operation.
|
|
8942
8948
|
* @example
|
|
8943
8949
|
* ```
|
|
8944
8950
|
* game.player.gui.top.clear()
|
|
@@ -8961,9 +8967,9 @@ interface LuaGuiElement {
|
|
|
8961
8967
|
close_dropdown(this: void): void
|
|
8962
8968
|
|
|
8963
8969
|
/**
|
|
8964
|
-
* Remove this element, along with its children. Any {@link LuaGuiElement | LuaGuiElement} objects referring to the destroyed elements become invalid after this operation.
|
|
8970
|
+
* Remove this element, along with its children. Any {@link LuaGuiElement | runtime:LuaGuiElement} objects referring to the destroyed elements become invalid after this operation.
|
|
8965
8971
|
* @remarks
|
|
8966
|
-
* The top-level GUI elements - {@link LuaGui::top | LuaGui::top}, {@link LuaGui::left | LuaGui::left}, {@link LuaGui::center | LuaGui::center} and {@link LuaGui::screen | LuaGui::screen} - can't be destroyed.
|
|
8972
|
+
* The top-level GUI elements - {@link LuaGui::top | runtime:LuaGui::top}, {@link LuaGui::left | runtime:LuaGui::left}, {@link LuaGui::center | runtime:LuaGui::center} and {@link LuaGui::screen | runtime:LuaGui::screen} - can't be destroyed.
|
|
8967
8973
|
*
|
|
8968
8974
|
* @example
|
|
8969
8975
|
* ```
|
|
@@ -8979,7 +8985,7 @@ interface LuaGuiElement {
|
|
|
8979
8985
|
focus(this: void): void
|
|
8980
8986
|
|
|
8981
8987
|
/**
|
|
8982
|
-
* Forces this frame to re-auto-center. Only works on frames stored directly in {@link LuaGui::screen | LuaGui::screen}.
|
|
8988
|
+
* Forces this frame to re-auto-center. Only works on frames stored directly in {@link LuaGui::screen | runtime:LuaGui::screen}.
|
|
8983
8989
|
* @remarks
|
|
8984
8990
|
* Applies to subclasses: frame
|
|
8985
8991
|
*
|
|
@@ -9056,7 +9062,7 @@ interface LuaGuiElement {
|
|
|
9056
9062
|
* Removes the given tab and its associated content from this tabbed pane.
|
|
9057
9063
|
* @remarks
|
|
9058
9064
|
* Removing a tab does not destroy the tab or the tab contents. It just removes them from the view.
|
|
9059
|
-
* When removing tabs, {@link LuaGuiElement::selected_tab_index | LuaGuiElement::selected_tab_index} needs to be manually updated.
|
|
9065
|
+
* When removing tabs, {@link LuaGuiElement::selected_tab_index | runtime:LuaGuiElement::selected_tab_index} needs to be manually updated.
|
|
9060
9066
|
* Applies to subclasses: tabbed-pane
|
|
9061
9067
|
*
|
|
9062
9068
|
* @param tab - The tab to remove. If not given, it removes all tabs.
|
|
@@ -9235,7 +9241,7 @@ interface LuaGuiElement {
|
|
|
9235
9241
|
anchor?: GuiAnchor
|
|
9236
9242
|
|
|
9237
9243
|
/**
|
|
9238
|
-
* Whether this frame auto-centers on window resize when stored in {@link LuaGui::screen | LuaGui::screen}.
|
|
9244
|
+
* Whether this frame auto-centers on window resize when stored in {@link LuaGui::screen | runtime:LuaGui::screen}.
|
|
9239
9245
|
* @remarks
|
|
9240
9246
|
* Applies to subclasses: frame
|
|
9241
9247
|
*
|
|
@@ -9311,7 +9317,7 @@ interface LuaGuiElement {
|
|
|
9311
9317
|
/**
|
|
9312
9318
|
* The `frame` that is being moved when dragging this GUI element, if any. This element needs to be a child of the `drag_target` at some level.
|
|
9313
9319
|
* @remarks
|
|
9314
|
-
* Only top-level elements in {@link LuaGui::screen | LuaGui::screen} can be `drag_target`s.
|
|
9320
|
+
* Only top-level elements in {@link LuaGui::screen | runtime:LuaGui::screen} can be `drag_target`s.
|
|
9315
9321
|
* Applies to subclasses: flow,frame,label,table,empty-widget
|
|
9316
9322
|
*
|
|
9317
9323
|
* @example
|
|
@@ -9363,7 +9369,7 @@ interface LuaGuiElement {
|
|
|
9363
9369
|
* ```
|
|
9364
9370
|
*
|
|
9365
9371
|
* @example
|
|
9366
|
-
* Then, there are some types of filters that work on a specific kind of attribute. The following will configure a choose-elem-button of type `"entity"` to only show entities that have their `"hidden"` [flags](EntityPrototypeFlags) set.
|
|
9372
|
+
* Then, there are some types of filters that work on a specific kind of attribute. The following will configure a choose-elem-button of type `"entity"` to only show entities that have their `"hidden"` [flags](runtime:EntityPrototypeFlags) set.
|
|
9367
9373
|
* ```
|
|
9368
9374
|
* button.elem_filters = {{filter = "hidden"}}
|
|
9369
9375
|
* ```
|
|
@@ -9388,7 +9394,7 @@ interface LuaGuiElement {
|
|
|
9388
9394
|
/**
|
|
9389
9395
|
* The elem value of this choose-elem-button, if any.
|
|
9390
9396
|
* @remarks
|
|
9391
|
-
* The `"signal"` type operates with {@link SignalID | SignalID}, while all other types use strings.
|
|
9397
|
+
* The `"signal"` type operates with {@link SignalID | runtime:SignalID}, while all other types use strings.
|
|
9392
9398
|
* Applies to subclasses: choose-elem-button
|
|
9393
9399
|
*
|
|
9394
9400
|
*/
|
|
@@ -9484,7 +9490,7 @@ interface LuaGuiElement {
|
|
|
9484
9490
|
left_label_tooltip: LocalisedString
|
|
9485
9491
|
|
|
9486
9492
|
/**
|
|
9487
|
-
* The location of this widget when stored in {@link LuaGui::screen | LuaGui::screen}. `nil` if not set or not in {@link LuaGui::screen | LuaGui::screen}.
|
|
9493
|
+
* The location of this widget when stored in {@link LuaGui::screen | runtime:LuaGui::screen}. `nil` if not set or not in {@link LuaGui::screen | runtime:LuaGui::screen}.
|
|
9488
9494
|
*/
|
|
9489
9495
|
location?: GuiLocation
|
|
9490
9496
|
|
|
@@ -9497,7 +9503,7 @@ interface LuaGuiElement {
|
|
|
9497
9503
|
locked: boolean
|
|
9498
9504
|
|
|
9499
9505
|
/**
|
|
9500
|
-
* Whether this textfield loses focus after {@link defines.events.on_gui_confirmed | defines.events.on_gui_confirmed} is fired.
|
|
9506
|
+
* Whether this textfield loses focus after {@link defines.events.on_gui_confirmed | runtime:defines.events.on_gui_confirmed} is fired.
|
|
9501
9507
|
* @remarks
|
|
9502
9508
|
* Applies to subclasses: textfield
|
|
9503
9509
|
*
|
|
@@ -9557,7 +9563,7 @@ interface LuaGuiElement {
|
|
|
9557
9563
|
readonly parent?: LuaGuiElement
|
|
9558
9564
|
|
|
9559
9565
|
/**
|
|
9560
|
-
* Index into {@link LuaGameScript::players | LuaGameScript::players} specifying the player who owns this element.
|
|
9566
|
+
* Index into {@link LuaGameScript::players | runtime:LuaGameScript::players} specifying the player who owns this element.
|
|
9561
9567
|
*/
|
|
9562
9568
|
readonly player_index: number
|
|
9563
9569
|
|
|
@@ -9570,7 +9576,7 @@ interface LuaGuiElement {
|
|
|
9570
9576
|
position: MapPosition
|
|
9571
9577
|
|
|
9572
9578
|
/**
|
|
9573
|
-
* Whether this element will raise {@link on_gui_hover | on_gui_hover} and {@link on_gui_leave | on_gui_leave}.
|
|
9579
|
+
* Whether this element will raise {@link on_gui_hover | runtime:on_gui_hover} and {@link on_gui_leave | runtime:on_gui_leave}.
|
|
9574
9580
|
*/
|
|
9575
9581
|
raise_hover_events: boolean
|
|
9576
9582
|
|
|
@@ -9663,7 +9669,7 @@ interface LuaGuiElement {
|
|
|
9663
9669
|
state: boolean
|
|
9664
9670
|
|
|
9665
9671
|
/**
|
|
9666
|
-
* The style of this element. When read, this evaluates to a {@link LuaStyle | LuaStyle}. For writing, it only accepts a string that specifies the textual identifier (prototype name) of the desired style.
|
|
9672
|
+
* The style of this element. When read, this evaluates to a {@link LuaStyle | runtime:LuaStyle}. For writing, it only accepts a string that specifies the textual identifier (prototype name) of the desired style.
|
|
9667
9673
|
*/
|
|
9668
9674
|
style: LuaStyle | string
|
|
9669
9675
|
|
|
@@ -9678,7 +9684,7 @@ interface LuaGuiElement {
|
|
|
9678
9684
|
/**
|
|
9679
9685
|
* The switch state (left, none, right) for this switch.
|
|
9680
9686
|
* @remarks
|
|
9681
|
-
* If {@link LuaGuiElement::allow_none_state | LuaGuiElement::allow_none_state} is false this can't be set to `"none"`.
|
|
9687
|
+
* If {@link LuaGuiElement::allow_none_state | runtime:LuaGuiElement::allow_none_state} is false this can't be set to `"none"`.
|
|
9682
9688
|
* Applies to subclasses: switch
|
|
9683
9689
|
*
|
|
9684
9690
|
*/
|
|
@@ -9713,6 +9719,9 @@ interface LuaGuiElement {
|
|
|
9713
9719
|
*/
|
|
9714
9720
|
toggled: boolean
|
|
9715
9721
|
|
|
9722
|
+
/**
|
|
9723
|
+
* The text to display when hovering over this element. Writing `""` will disable the tooltip, while writing `nil` will set it to `"nil"`.
|
|
9724
|
+
*/
|
|
9716
9725
|
tooltip: LocalisedString
|
|
9717
9726
|
|
|
9718
9727
|
/**
|
|
@@ -9734,7 +9743,7 @@ interface LuaGuiElement {
|
|
|
9734
9743
|
value: number
|
|
9735
9744
|
|
|
9736
9745
|
/**
|
|
9737
|
-
* Whether the content of this table should be vertically centered. Overrides {@link LuaStyle::column_alignments | LuaStyle::column_alignments}. Defaults to `true`.
|
|
9746
|
+
* Whether the content of this table should be vertically centered. Overrides {@link LuaStyle::column_alignments | runtime:LuaStyle::column_alignments}. Defaults to `true`.
|
|
9738
9747
|
* @remarks
|
|
9739
9748
|
* Applies to subclasses: table
|
|
9740
9749
|
*
|
|
@@ -9948,7 +9957,7 @@ interface LuaInventory {
|
|
|
9948
9957
|
/**
|
|
9949
9958
|
* Destroys this inventory.
|
|
9950
9959
|
* @remarks
|
|
9951
|
-
* Only inventories created by {@link LuaGameScript::create_inventory | LuaGameScript::create_inventory} can be destroyed this way.
|
|
9960
|
+
* Only inventories created by {@link LuaGameScript::create_inventory | runtime:LuaGameScript::create_inventory} can be destroyed this way.
|
|
9952
9961
|
*
|
|
9953
9962
|
*/
|
|
9954
9963
|
destroy(this: void): void
|
|
@@ -10044,7 +10053,7 @@ interface LuaInventory {
|
|
|
10044
10053
|
* Resizes the inventory.
|
|
10045
10054
|
* @remarks
|
|
10046
10055
|
* Items in slots beyond the new capacity are deleted.
|
|
10047
|
-
* Only inventories created by {@link LuaGameScript::create_inventory | LuaGameScript::create_inventory} can be resized.
|
|
10056
|
+
* Only inventories created by {@link LuaGameScript::create_inventory | runtime:LuaGameScript::create_inventory} can be resized.
|
|
10048
10057
|
*
|
|
10049
10058
|
* @param size - New size of a inventory
|
|
10050
10059
|
*/
|
|
@@ -10174,7 +10183,7 @@ interface LuaItemPrototype {
|
|
|
10174
10183
|
|
|
10175
10184
|
/**
|
|
10176
10185
|
* Does this prototype have a flag enabled?
|
|
10177
|
-
* @param flag - The flag to check. Can be one of [ItemPrototypeFlags](ItemPrototypeFlags). Any other value will cause an error.
|
|
10186
|
+
* @param flag - The flag to check. Can be one of [ItemPrototypeFlags](runtime:ItemPrototypeFlags). Any other value will cause an error.
|
|
10178
10187
|
*/
|
|
10179
10188
|
has_flag(this: void,
|
|
10180
10189
|
flag: string): void
|
|
@@ -10347,7 +10356,7 @@ interface LuaItemPrototype {
|
|
|
10347
10356
|
readonly capsule_action?: CapsuleAction
|
|
10348
10357
|
|
|
10349
10358
|
/**
|
|
10350
|
-
* The name of a {@link LuaModuleCategoryPrototype | LuaModuleCategoryPrototype}. Used when upgrading modules: Ctrl + click modules into an entity and it will replace lower tier modules of the same category with higher tier modules.
|
|
10359
|
+
* The name of a {@link LuaModuleCategoryPrototype | runtime:LuaModuleCategoryPrototype}. Used when upgrading modules: Ctrl + click modules into an entity and it will replace lower tier modules of the same category with higher tier modules.
|
|
10351
10360
|
* @remarks
|
|
10352
10361
|
* Applies to subclasses: ModuleItem
|
|
10353
10362
|
*
|
|
@@ -10826,7 +10835,7 @@ interface LuaItemPrototype {
|
|
|
10826
10835
|
* A reference to an item and count owned by some external entity.
|
|
10827
10836
|
* @remarks
|
|
10828
10837
|
* In most instances this is a simple reference as in: it points at a specific slot in an inventory and not the item in the slot.
|
|
10829
|
-
* In the instance this references an item on a {@link LuaTransportLine | LuaTransportLine} the reference is only guaranteed to stay valid (and refer to the same item) as long as nothing changes the transport line.
|
|
10838
|
+
* In the instance this references an item on a {@link LuaTransportLine | runtime:LuaTransportLine} the reference is only guaranteed to stay valid (and refer to the same item) as long as nothing changes the transport line.
|
|
10830
10839
|
*
|
|
10831
10840
|
*/
|
|
10832
10841
|
interface LuaItemStack {
|
|
@@ -10854,12 +10863,12 @@ interface LuaItemStack {
|
|
|
10854
10863
|
* @remarks
|
|
10855
10864
|
* Built entities can be come invalid between the building of the blueprint and the function returning if by_player or raise_built is used and one of those events invalidates the entity.
|
|
10856
10865
|
*
|
|
10857
|
-
* @param table.by_player - The player to use if any. If provided [defines.events.on_built_entity](defines.events.on_built_entity) will also be fired on successful entity creation.
|
|
10866
|
+
* @param table.by_player - The player to use if any. If provided [defines.events.on_built_entity](runtime:defines.events.on_built_entity) will also be fired on successful entity creation.
|
|
10858
10867
|
* @param table.direction - The direction to use when building
|
|
10859
10868
|
* @param table.force - Force to use for the building
|
|
10860
10869
|
* @param table.force_build - When true, anything that can be built is else nothing is built if any one thing can't be built
|
|
10861
10870
|
* @param table.position - The position to build at
|
|
10862
|
-
* @param table.raise_built - If true; [defines.events.script_raised_built](defines.events.script_raised_built) will be fired on successful entity creation. Note: this is ignored if by_player is provided.
|
|
10871
|
+
* @param table.raise_built - If true; [defines.events.script_raised_built](runtime:defines.events.script_raised_built) will be fired on successful entity creation. Note: this is ignored if by_player is provided.
|
|
10863
10872
|
* @param table.skip_fog_of_war - If chunks covered by fog-of-war are skipped.
|
|
10864
10873
|
* @param table.surface - Surface to build on
|
|
10865
10874
|
*/
|
|
@@ -10876,7 +10885,7 @@ interface LuaItemStack {
|
|
|
10876
10885
|
}): void
|
|
10877
10886
|
|
|
10878
10887
|
/**
|
|
10879
|
-
* Would a call to {@link LuaItemStack::set_stack | LuaItemStack::set_stack} succeed?
|
|
10888
|
+
* Would a call to {@link LuaItemStack::set_stack | runtime:LuaItemStack::set_stack} succeed?
|
|
10880
10889
|
* @param stack - Stack that would be set, possibly `nil`.
|
|
10881
10890
|
*/
|
|
10882
10891
|
can_set_stack(this: void,
|
|
@@ -11059,7 +11068,7 @@ interface LuaItemStack {
|
|
|
11059
11068
|
|
|
11060
11069
|
/**
|
|
11061
11070
|
* Access the inner inventory of an item.
|
|
11062
|
-
* @param inventory - Index of the inventory to access, which can only be [defines.inventory.item_main](defines.inventory.item_main).
|
|
11071
|
+
* @param inventory - Index of the inventory to access, which can only be [defines.inventory.item_main](runtime:defines.inventory.item_main).
|
|
11063
11072
|
*/
|
|
11064
11073
|
get_inventory(this: void,
|
|
11065
11074
|
inventory: defines.inventory): void
|
|
@@ -11192,7 +11201,7 @@ interface LuaItemStack {
|
|
|
11192
11201
|
|
|
11193
11202
|
/**
|
|
11194
11203
|
* Set this item stack to another item stack.
|
|
11195
|
-
* @param stack - Item stack to set it to. Omitting this parameter or passing `nil` will clear this item stack, as if [LuaItemStack::clear](LuaItemStack::clear) was called.
|
|
11204
|
+
* @param stack - Item stack to set it to. Omitting this parameter or passing `nil` will clear this item stack, as if [LuaItemStack::clear](runtime:LuaItemStack::clear) was called.
|
|
11196
11205
|
*/
|
|
11197
11206
|
set_stack(this: void,
|
|
11198
11207
|
stack?: ItemStackIdentification): void
|
|
@@ -11612,7 +11621,7 @@ interface LuaLampControlBehavior extends LuaGenericOnOffControlBehavior {
|
|
|
11612
11621
|
}
|
|
11613
11622
|
|
|
11614
11623
|
/**
|
|
11615
|
-
* A lazily loaded value. For performance reasons, we sometimes return a custom lazily-loaded value type instead of the native Lua value. This custom type lazily constructs the necessary value when {@link LuaLazyLoadedValue::get | LuaLazyLoadedValue::get} is called, therefore preventing its unnecessary construction in some cases.
|
|
11624
|
+
* A lazily loaded value. For performance reasons, we sometimes return a custom lazily-loaded value type instead of the native Lua value. This custom type lazily constructs the necessary value when {@link LuaLazyLoadedValue::get | runtime:LuaLazyLoadedValue::get} is called, therefore preventing its unnecessary construction in some cases.
|
|
11616
11625
|
*
|
|
11617
11626
|
* An instance of LuaLazyLoadedValue is only valid during the event it was created from and cannot be saved.
|
|
11618
11627
|
*/
|
|
@@ -11640,7 +11649,7 @@ interface LuaLazyLoadedValue<T> {
|
|
|
11640
11649
|
}
|
|
11641
11650
|
|
|
11642
11651
|
/**
|
|
11643
|
-
* Logistic cell of a particular {@link LuaEntity | LuaEntity}. A "Logistic Cell" is the given name for settings and properties used by what would normally be seen as a "Roboport". A logistic cell however doesn't have to be attached to the roboport entity (the character has one for the personal roboport).
|
|
11652
|
+
* Logistic cell of a particular {@link LuaEntity | runtime:LuaEntity}. A "Logistic Cell" is the given name for settings and properties used by what would normally be seen as a "Roboport". A logistic cell however doesn't have to be attached to the roboport entity (the character has one for the personal roboport).
|
|
11644
11653
|
*/
|
|
11645
11654
|
interface LuaLogisticCell {
|
|
11646
11655
|
/**
|
|
@@ -11763,7 +11772,7 @@ interface LuaLogisticContainerControlBehavior extends LuaControlBehavior {
|
|
|
11763
11772
|
help(this: void): void
|
|
11764
11773
|
|
|
11765
11774
|
/**
|
|
11766
|
-
* The circuit mode of operations for the logistic container. Can only be set on containers whose {@link logistic_mode | LuaEntityPrototype::logistic_mode} is set to "requester".
|
|
11775
|
+
* The circuit mode of operations for the logistic container. Can only be set on containers whose {@link logistic_mode | runtime:LuaEntityPrototype::logistic_mode} is set to "requester".
|
|
11767
11776
|
*/
|
|
11768
11777
|
circuit_mode_of_operation: defines.control_behavior.logistic_container.circuit_mode_of_operation
|
|
11769
11778
|
|
|
@@ -11801,7 +11810,7 @@ interface LuaLogisticNetwork {
|
|
|
11801
11810
|
position: MapPosition): void
|
|
11802
11811
|
|
|
11803
11812
|
/**
|
|
11804
|
-
* Get item counts for the entire network, similar to how {@link LuaInventory::get_contents | LuaInventory::get_contents} does.
|
|
11813
|
+
* Get item counts for the entire network, similar to how {@link LuaInventory::get_contents | runtime:LuaInventory::get_contents} does.
|
|
11805
11814
|
*/
|
|
11806
11815
|
get_contents(this: void): void
|
|
11807
11816
|
|
|
@@ -11995,7 +12004,7 @@ interface LuaLogisticNetwork {
|
|
|
11995
12004
|
}
|
|
11996
12005
|
|
|
11997
12006
|
/**
|
|
11998
|
-
* Logistic point of a particular {@link LuaEntity | LuaEntity}. A "Logistic point" is the name given for settings and properties used by requester, provider, and storage points in a given logistic network. These "points" don't have to be a logistic container but often are. One other entity that can own several points is the "character" character type entity.
|
|
12007
|
+
* Logistic point of a particular {@link LuaEntity | runtime:LuaEntity}. A "Logistic point" is the name given for settings and properties used by requester, provider, and storage points in a given logistic network. These "points" don't have to be a logistic container but often are. One other entity that can own several points is the "character" character type entity.
|
|
11999
12008
|
*/
|
|
12000
12009
|
interface LuaLogisticPoint {
|
|
12001
12010
|
/**
|
|
@@ -12019,7 +12028,7 @@ interface LuaLogisticPoint {
|
|
|
12019
12028
|
/**
|
|
12020
12029
|
* The force of this logistic point.
|
|
12021
12030
|
* @remarks
|
|
12022
|
-
* This will always be the same as the {@link LuaLogisticPoint::owner | LuaLogisticPoint::owner} force.
|
|
12031
|
+
* This will always be the same as the {@link LuaLogisticPoint::owner | runtime:LuaLogisticPoint::owner} force.
|
|
12023
12032
|
*
|
|
12024
12033
|
*/
|
|
12025
12034
|
readonly force: LuaForce
|
|
@@ -12042,7 +12051,7 @@ interface LuaLogisticPoint {
|
|
|
12042
12051
|
readonly object_name: string
|
|
12043
12052
|
|
|
12044
12053
|
/**
|
|
12045
|
-
* The {@link LuaEntity | LuaEntity} owner of this {@link LuaLogisticPoint | LuaLogisticPoint}.
|
|
12054
|
+
* The {@link LuaEntity | runtime:LuaEntity} owner of this {@link LuaLogisticPoint | runtime:LuaLogisticPoint}.
|
|
12046
12055
|
*/
|
|
12047
12056
|
readonly owner: LuaEntity
|
|
12048
12057
|
|
|
@@ -12078,7 +12087,7 @@ interface LuaMiningDrillControlBehavior extends LuaGenericOnOffControlBehavior {
|
|
|
12078
12087
|
circuit_enable_disable: boolean
|
|
12079
12088
|
|
|
12080
12089
|
/**
|
|
12081
|
-
* `true` if this drill should send the resources in the field to the circuit network. Which resources depends on {@link LuaMiningDrillControlBehavior::resource_read_mode | LuaMiningDrillControlBehavior::resource_read_mode}
|
|
12090
|
+
* `true` if this drill should send the resources in the field to the circuit network. Which resources depends on {@link LuaMiningDrillControlBehavior::resource_read_mode | runtime:LuaMiningDrillControlBehavior::resource_read_mode}
|
|
12082
12091
|
*/
|
|
12083
12092
|
circuit_read_resources: boolean
|
|
12084
12093
|
|
|
@@ -12465,7 +12474,7 @@ interface LuaPermissionGroups {
|
|
|
12465
12474
|
}
|
|
12466
12475
|
|
|
12467
12476
|
/**
|
|
12468
|
-
* A player in the game. Pay attention that a player may or may not have a character, which is the {@link LuaEntity | LuaEntity} of the little guy running around the world doing things.
|
|
12477
|
+
* A player in the game. Pay attention that a player may or may not have a character, which is the {@link LuaEntity | runtime:LuaEntity} of the little guy running around the world doing things.
|
|
12469
12478
|
*/
|
|
12470
12479
|
interface LuaPlayer extends LuaControl {
|
|
12471
12480
|
/**
|
|
@@ -12508,8 +12517,8 @@ interface LuaPlayer extends LuaControl {
|
|
|
12508
12517
|
* Associates a character with this player.
|
|
12509
12518
|
* @remarks
|
|
12510
12519
|
* The character must not be connected to any controller.
|
|
12511
|
-
* If this player is currently disconnected (see {@link LuaPlayer::connected | LuaPlayer::connected}) the character will be immediately "logged off".
|
|
12512
|
-
* See {@link LuaPlayer::get_associated_characters | LuaPlayer::get_associated_characters} for more information.
|
|
12520
|
+
* If this player is currently disconnected (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}) the character will be immediately "logged off".
|
|
12521
|
+
* See {@link LuaPlayer::get_associated_characters | runtime:LuaPlayer::get_associated_characters} for more information.
|
|
12513
12522
|
*
|
|
12514
12523
|
* @param character - The character entity.
|
|
12515
12524
|
*/
|
|
@@ -12608,7 +12617,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
12608
12617
|
/**
|
|
12609
12618
|
* Creates and attaches a character entity to this player.
|
|
12610
12619
|
* @remarks
|
|
12611
|
-
* The player must not have a character already connected and must be online (see {@link LuaPlayer::connected | LuaPlayer::connected}).
|
|
12620
|
+
* The player must not have a character already connected and must be online (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}).
|
|
12612
12621
|
*
|
|
12613
12622
|
* @param character - The character to create else the default is used.
|
|
12614
12623
|
*/
|
|
@@ -12655,9 +12664,9 @@ interface LuaPlayer extends LuaControl {
|
|
|
12655
12664
|
disable_recipe_subgroups(this: void): void
|
|
12656
12665
|
|
|
12657
12666
|
/**
|
|
12658
|
-
* Disassociates a character from this player. This is functionally the same as setting {@link LuaEntity::associated_player | LuaEntity::associated_player} to `nil`.
|
|
12667
|
+
* Disassociates a character from this player. This is functionally the same as setting {@link LuaEntity::associated_player | runtime:LuaEntity::associated_player} to `nil`.
|
|
12659
12668
|
* @remarks
|
|
12660
|
-
* See {@link LuaPlayer::get_associated_characters | LuaPlayer::get_associated_characters} for more information.
|
|
12669
|
+
* See {@link LuaPlayer::get_associated_characters | runtime:LuaPlayer::get_associated_characters} for more information.
|
|
12661
12670
|
*
|
|
12662
12671
|
* @param character - The character entity
|
|
12663
12672
|
*/
|
|
@@ -12716,7 +12725,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
12716
12725
|
/**
|
|
12717
12726
|
* The characters associated with this player.
|
|
12718
12727
|
* @remarks
|
|
12719
|
-
* The array will always be empty when the player is disconnected (see {@link LuaPlayer::connected | LuaPlayer::connected}) regardless of there being associated characters.
|
|
12728
|
+
* The array will always be empty when the player is disconnected (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}) regardless of there being associated characters.
|
|
12720
12729
|
* Characters associated with this player will be logged off when this player disconnects but are not controlled by any player.
|
|
12721
12730
|
*
|
|
12722
12731
|
*/
|
|
@@ -12866,18 +12875,18 @@ interface LuaPlayer extends LuaControl {
|
|
|
12866
12875
|
}): void
|
|
12867
12876
|
|
|
12868
12877
|
/**
|
|
12869
|
-
* Requests a translation for the given localised string. If the request is successful, the {@link on_string_translated | on_string_translated} event will be fired with the results.
|
|
12878
|
+
* Requests a translation for the given localised string. If the request is successful, the {@link on_string_translated | runtime:on_string_translated} event will be fired with the results.
|
|
12870
12879
|
* @remarks
|
|
12871
|
-
* Does nothing if this player is not connected (see {@link LuaPlayer::connected | LuaPlayer::connected}).
|
|
12880
|
+
* Does nothing if this player is not connected (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}).
|
|
12872
12881
|
*
|
|
12873
12882
|
*/
|
|
12874
12883
|
request_translation(this: void,
|
|
12875
12884
|
localised_string: LocalisedString): void
|
|
12876
12885
|
|
|
12877
12886
|
/**
|
|
12878
|
-
* Requests translation for the given set of localised strings. If the request is successful, a {@link on_string_translated | on_string_translated} event will be fired for each string with the results.
|
|
12887
|
+
* Requests translation for the given set of localised strings. If the request is successful, a {@link on_string_translated | runtime:on_string_translated} event will be fired for each string with the results.
|
|
12879
12888
|
* @remarks
|
|
12880
|
-
* Does nothing if this player is not connected (see {@link LuaPlayer::connected | LuaPlayer::connected}).
|
|
12889
|
+
* Does nothing if this player is not connected (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}).
|
|
12881
12890
|
*
|
|
12882
12891
|
*/
|
|
12883
12892
|
request_translations(this: void,
|
|
@@ -12895,16 +12904,16 @@ interface LuaPlayer extends LuaControl {
|
|
|
12895
12904
|
/**
|
|
12896
12905
|
* Set the controller type of the player.
|
|
12897
12906
|
* @remarks
|
|
12898
|
-
* Setting a player to {@link defines.controllers.editor | defines.controllers.editor} auto promotes the player to admin and enables cheat mode.
|
|
12899
|
-
* Setting a player to {@link defines.controllers.editor | defines.controllers.editor} also requires the calling player be an admin.
|
|
12907
|
+
* Setting a player to {@link defines.controllers.editor | runtime:defines.controllers.editor} auto promotes the player to admin and enables cheat mode.
|
|
12908
|
+
* Setting a player to {@link defines.controllers.editor | runtime:defines.controllers.editor} also requires the calling player be an admin.
|
|
12900
12909
|
*
|
|
12901
|
-
* @param table.character - Entity to control. Mandatory when `type` is [defines.controllers.character](defines.controllers.character), ignored otherwise.
|
|
12902
|
-
* @param table.chart_mode_cutoff - If specified and `type` is [defines.controllers.cutscene](defines.controllers.cutscene), the game will switch to chart-mode (map zoomed out) rendering when the zoom level is less than this value.
|
|
12903
|
-
* @param table.final_transition_time - If specified and `type` is [defines.controllers.cutscene](defines.controllers.cutscene), it is the time in ticks it will take for the camera to pan from the final waypoint back to the starting position. If not given the camera will not pan back to the start position/zoom.
|
|
12904
|
-
* @param table.start_position - If specified and `type` is [defines.controllers.cutscene](defines.controllers.cutscene), the cutscene will start at this position. If not given the start position will be the player position.
|
|
12905
|
-
* @param table.start_zoom - If specified and `type` is [defines.controllers.cutscene](defines.controllers.cutscene), the cutscene will start at this zoom level. If not given the start zoom will be the players zoom.
|
|
12910
|
+
* @param table.character - Entity to control. Mandatory when `type` is [defines.controllers.character](runtime:defines.controllers.character), ignored otherwise.
|
|
12911
|
+
* @param table.chart_mode_cutoff - If specified and `type` is [defines.controllers.cutscene](runtime:defines.controllers.cutscene), the game will switch to chart-mode (map zoomed out) rendering when the zoom level is less than this value.
|
|
12912
|
+
* @param table.final_transition_time - If specified and `type` is [defines.controllers.cutscene](runtime:defines.controllers.cutscene), it is the time in ticks it will take for the camera to pan from the final waypoint back to the starting position. If not given the camera will not pan back to the start position/zoom.
|
|
12913
|
+
* @param table.start_position - If specified and `type` is [defines.controllers.cutscene](runtime:defines.controllers.cutscene), the cutscene will start at this position. If not given the start position will be the player position.
|
|
12914
|
+
* @param table.start_zoom - If specified and `type` is [defines.controllers.cutscene](runtime:defines.controllers.cutscene), the cutscene will start at this zoom level. If not given the start zoom will be the players zoom.
|
|
12906
12915
|
* @param table.type - Which controller to use.
|
|
12907
|
-
* @param table.waypoints - List of waypoints for the cutscene controller. This parameter is mandatory when `type` is [defines.controllers.cutscene](defines.controllers.cutscene).
|
|
12916
|
+
* @param table.waypoints - List of waypoints for the cutscene controller. This parameter is mandatory when `type` is [defines.controllers.cutscene](runtime:defines.controllers.cutscene).
|
|
12908
12917
|
*/
|
|
12909
12918
|
set_controller(this: void,
|
|
12910
12919
|
table: {
|
|
@@ -13036,7 +13045,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
13036
13045
|
readonly blueprint_to_setup: LuaItemStack
|
|
13037
13046
|
|
|
13038
13047
|
/**
|
|
13039
|
-
* The character attached to this player, if any. Returns `nil` when the player is disconnected (see {@link LuaPlayer::connected | LuaPlayer::connected}).
|
|
13048
|
+
* The character attached to this player, if any. Returns `nil` when the player is disconnected (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}).
|
|
13040
13049
|
*/
|
|
13041
13050
|
character?: LuaEntity
|
|
13042
13051
|
|
|
@@ -13063,14 +13072,14 @@ interface LuaPlayer extends LuaControl {
|
|
|
13063
13072
|
cursor_stack_temporary: boolean
|
|
13064
13073
|
|
|
13065
13074
|
/**
|
|
13066
|
-
* When in a cutscene; the character this player would be using once the cutscene is over, if any. Returns `nil` when the player is disconnected (see {@link LuaPlayer::connected | LuaPlayer::connected}).
|
|
13075
|
+
* When in a cutscene; the character this player would be using once the cutscene is over, if any. Returns `nil` when the player is disconnected (see {@link LuaPlayer::connected | runtime:LuaPlayer::connected}).
|
|
13067
13076
|
*/
|
|
13068
13077
|
readonly cutscene_character?: LuaEntity
|
|
13069
13078
|
|
|
13070
13079
|
/**
|
|
13071
13080
|
* The display resolution for this player.
|
|
13072
13081
|
* @remarks
|
|
13073
|
-
* During {@link on_player_created | on_player_created}, this attribute will always return a resolution of `{width=1920, height=1080}`. To get the actual resolution, listen to the {@link on_player_display_resolution_changed | on_player_display_resolution_changed} event raised shortly afterwards.
|
|
13082
|
+
* During {@link on_player_created | runtime:on_player_created}, this attribute will always return a resolution of `{width=1920, height=1080}`. To get the actual resolution, listen to the {@link on_player_display_resolution_changed | runtime:on_player_display_resolution_changed} event raised shortly afterwards.
|
|
13074
13083
|
*
|
|
13075
13084
|
*/
|
|
13076
13085
|
readonly display_resolution: DisplayResolution
|
|
@@ -13078,7 +13087,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
13078
13087
|
/**
|
|
13079
13088
|
* The display scale for this player.
|
|
13080
13089
|
* @remarks
|
|
13081
|
-
* During {@link on_player_created | on_player_created}, this attribute will always return a scale of `1`. To get the actual scale, listen to the {@link on_player_display_scale_changed | on_player_display_scale_changed} event raised shortly afterwards.
|
|
13090
|
+
* During {@link on_player_created | runtime:on_player_created}, this attribute will always return a scale of `1`. To get the actual scale, listen to the {@link on_player_display_scale_changed | runtime:on_player_display_scale_changed} event raised shortly afterwards.
|
|
13082
13091
|
*
|
|
13083
13092
|
*/
|
|
13084
13093
|
readonly display_scale: number
|
|
@@ -13106,7 +13115,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
13106
13115
|
hand_location?: ItemStackLocation
|
|
13107
13116
|
|
|
13108
13117
|
/**
|
|
13109
|
-
* This player's index in {@link LuaGameScript::players | LuaGameScript::players} (unique ID). It is assigned when a player is created, and remains so (even when the player is not {@link connected | LuaPlayer::connected}) until the player is irreversably {@link removed | on_player_removed}. Indexes of removed players can be reused.
|
|
13118
|
+
* This player's index in {@link LuaGameScript::players | runtime:LuaGameScript::players} (unique ID). It is assigned when a player is created, and remains so (even when the player is not {@link connected | runtime:LuaPlayer::connected}) until the player is irreversably {@link removed | runtime:on_player_removed}. Indexes of removed players can be reused.
|
|
13110
13119
|
*/
|
|
13111
13120
|
readonly index: number
|
|
13112
13121
|
|
|
@@ -13136,9 +13145,9 @@ interface LuaPlayer extends LuaControl {
|
|
|
13136
13145
|
minimap_enabled: boolean
|
|
13137
13146
|
|
|
13138
13147
|
/**
|
|
13139
|
-
* The current per-player settings for the this player, indexed by prototype name. Returns the same structure as {@link LuaSettings::get_player_settings | LuaSettings::get_player_settings}. This table becomes invalid if its associated player does.
|
|
13148
|
+
* The current per-player settings for the this player, indexed by prototype name. Returns the same structure as {@link LuaSettings::get_player_settings | runtime:LuaSettings::get_player_settings}. This table becomes invalid if its associated player does.
|
|
13140
13149
|
*
|
|
13141
|
-
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
13150
|
+
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | runtime:ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
13142
13151
|
* @example
|
|
13143
13152
|
* ```
|
|
13144
13153
|
* -- Change the value of the "active_lifestyle" setting
|
|
@@ -13179,7 +13188,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
13179
13188
|
remove_unfiltered_items: boolean
|
|
13180
13189
|
|
|
13181
13190
|
/**
|
|
13182
|
-
* The render mode of the player, like map or zoom to world. The render mode can be set using {@link LuaPlayer::open_map | LuaPlayer::open_map}, {@link LuaPlayer::zoom_to_world | LuaPlayer::zoom_to_world} and {@link LuaPlayer::close_map | LuaPlayer::close_map}.
|
|
13191
|
+
* The render mode of the player, like map or zoom to world. The render mode can be set using {@link LuaPlayer::open_map | runtime:LuaPlayer::open_map}, {@link LuaPlayer::zoom_to_world | runtime:LuaPlayer::zoom_to_world} and {@link LuaPlayer::close_map | runtime:LuaPlayer::close_map}.
|
|
13183
13192
|
*/
|
|
13184
13193
|
readonly render_mode: defines.render_mode
|
|
13185
13194
|
|
|
@@ -13231,7 +13240,7 @@ interface LuaPlayer extends LuaControl {
|
|
|
13231
13240
|
/**
|
|
13232
13241
|
* An object used to measure script performance.
|
|
13233
13242
|
* @remarks
|
|
13234
|
-
* Since performance is non-deterministic, these objects don't allow reading the raw time values from Lua. They can be used anywhere a {@link LocalisedString | LocalisedString} is used, except for {@link LuaGuiElement::add | LuaGuiElement::add}'s LocalisedString arguments, {@link LuaSurface::create_entity | LuaSurface::create_entity}'s `text` argument, and {@link LuaEntity::add_market_item | LuaEntity::add_market_item}.
|
|
13243
|
+
* Since performance is non-deterministic, these objects don't allow reading the raw time values from Lua. They can be used anywhere a {@link LocalisedString | runtime:LocalisedString} is used, except for {@link LuaGuiElement::add | runtime:LuaGuiElement::add}'s LocalisedString arguments, {@link LuaSurface::create_entity | runtime:LuaSurface::create_entity}'s `text` argument, and {@link LuaEntity::add_market_item | runtime:LuaEntity::add_market_item}.
|
|
13235
13244
|
*
|
|
13236
13245
|
*/
|
|
13237
13246
|
interface LuaProfiler {
|
|
@@ -13452,7 +13461,7 @@ interface LuaRailSignalControlBehavior extends LuaControlBehavior {
|
|
|
13452
13461
|
}
|
|
13453
13462
|
|
|
13454
13463
|
/**
|
|
13455
|
-
* A deterministic random generator independent from the core games random generator that can be seeded and re-seeded at will. This random generator can be saved and loaded and will maintain its state. Note this is entirely different from calling {@link math.random |
|
|
13464
|
+
* A deterministic random generator independent from the core games random generator that can be seeded and re-seeded at will. This random generator can be saved and loaded and will maintain its state. Note this is entirely different from calling {@link math.random | libraries.html}() and you should be sure you actually want to use this over calling `math.random()`. If you aren't sure if you need to use this over calling `math.random()` then you probably don't need to use this.
|
|
13456
13465
|
* @example
|
|
13457
13466
|
* Create a generator and use it to print a random number.
|
|
13458
13467
|
* ```
|
|
@@ -13498,7 +13507,7 @@ interface LuaRandomGenerator {
|
|
|
13498
13507
|
}
|
|
13499
13508
|
|
|
13500
13509
|
/**
|
|
13501
|
-
* A crafting recipe. Recipes belong to forces (see {@link LuaForce | LuaForce}) because some recipes are unlocked by research, and researches are per-force.
|
|
13510
|
+
* A crafting recipe. Recipes belong to forces (see {@link LuaForce | runtime:LuaForce}) because some recipes are unlocked by research, and researches are per-force.
|
|
13502
13511
|
*/
|
|
13503
13512
|
interface LuaRecipe {
|
|
13504
13513
|
/**
|
|
@@ -13803,7 +13812,7 @@ interface LuaRecipePrototype {
|
|
|
13803
13812
|
}
|
|
13804
13813
|
|
|
13805
13814
|
/**
|
|
13806
|
-
* Registry of interfaces between scripts. An interface is simply a dictionary mapping names to functions. A script or mod can then register an interface with {@link LuaRemote | LuaRemote}, after that any script can call the registered functions, provided it knows the interface name and the desired function name. An instance of LuaRemote is available through the global object named `remote`.
|
|
13815
|
+
* Registry of interfaces between scripts. An interface is simply a dictionary mapping names to functions. A script or mod can then register an interface with {@link LuaRemote | runtime:LuaRemote}, after that any script can call the registered functions, provided it knows the interface name and the desired function name. An instance of LuaRemote is available through the global object named `remote`.
|
|
13807
13816
|
* @example
|
|
13808
13817
|
* Will register a remote interface containing two functions. Later, it will call these functions through `remote`.
|
|
13809
13818
|
* ```
|
|
@@ -13891,7 +13900,7 @@ interface LuaRendering {
|
|
|
13891
13900
|
|
|
13892
13901
|
/**
|
|
13893
13902
|
* Create an animation.
|
|
13894
|
-
* @param table.animation - Name of an [
|
|
13903
|
+
* @param table.animation - Name of an [AnimationPrototype](prototype:AnimationPrototype).
|
|
13895
13904
|
* @param table.animation_offset - Offset of the animation in frames. Default is 0.
|
|
13896
13905
|
* @param table.animation_speed - How many frames the animation goes forward per tick. Default is 1.
|
|
13897
13906
|
* @param table.forces - The forces that this object is rendered to. Passing `nil` or an empty table will render it to all forces.
|
|
@@ -15182,9 +15191,9 @@ interface LuaRoboportControlBehavior extends LuaControlBehavior {
|
|
|
15182
15191
|
*/
|
|
15183
15192
|
interface LuaSettings {
|
|
15184
15193
|
/**
|
|
15185
|
-
* Gets the current per-player settings for the given player, indexed by prototype name. Returns the same structure as {@link LuaPlayer::mod_settings | LuaPlayer::mod_settings}. This table becomes invalid if its associated player does.
|
|
15194
|
+
* Gets the current per-player settings for the given player, indexed by prototype name. Returns the same structure as {@link LuaPlayer::mod_settings | runtime:LuaPlayer::mod_settings}. This table becomes invalid if its associated player does.
|
|
15186
15195
|
*
|
|
15187
|
-
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
15196
|
+
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | runtime:ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
15188
15197
|
* @example
|
|
15189
15198
|
* ```
|
|
15190
15199
|
* -- Change the value of the "active_lifestyle" setting
|
|
@@ -15198,7 +15207,7 @@ interface LuaSettings {
|
|
|
15198
15207
|
/**
|
|
15199
15208
|
* The current global mod settings, indexed by prototype name.
|
|
15200
15209
|
*
|
|
15201
|
-
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
15210
|
+
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | runtime:ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
15202
15211
|
*/
|
|
15203
15212
|
readonly global: {[key: string]: ModSetting}
|
|
15204
15213
|
|
|
@@ -15210,7 +15219,7 @@ interface LuaSettings {
|
|
|
15210
15219
|
/**
|
|
15211
15220
|
* The default player mod settings for this map, indexed by prototype name.
|
|
15212
15221
|
*
|
|
15213
|
-
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
15222
|
+
* Even though this attribute is marked as read-only, individual settings can be changed by overwriting their {@link ModSetting | runtime:ModSetting} table. Mods can only change their own settings. Using the in-game console, all player settings can be changed.
|
|
15214
15223
|
*/
|
|
15215
15224
|
readonly player: {[key: string]: ModSetting}
|
|
15216
15225
|
|
|
@@ -15469,7 +15478,7 @@ interface LuaStyle {
|
|
|
15469
15478
|
font_color: Color
|
|
15470
15479
|
|
|
15471
15480
|
/**
|
|
15472
|
-
* Gui of the {@link LuaGuiElement | LuaGuiElement} of this style.
|
|
15481
|
+
* Gui of the {@link LuaGuiElement | runtime:LuaGuiElement} of this style.
|
|
15473
15482
|
*/
|
|
15474
15483
|
readonly gui: LuaGui
|
|
15475
15484
|
|
|
@@ -15863,7 +15872,7 @@ interface LuaSurface {
|
|
|
15863
15872
|
/**
|
|
15864
15873
|
* Clones the given area.
|
|
15865
15874
|
* @remarks
|
|
15866
|
-
* {@link defines.events.on_entity_cloned | defines.events.on_entity_cloned} is raised for each entity, and then {@link defines.events.on_area_cloned | defines.events.on_area_cloned} is raised.
|
|
15875
|
+
* {@link defines.events.on_entity_cloned | runtime:defines.events.on_entity_cloned} is raised for each entity, and then {@link defines.events.on_area_cloned | runtime:defines.events.on_area_cloned} is raised.
|
|
15867
15876
|
* Entities are cloned in an order such that they can always be created, eg rails before trains.
|
|
15868
15877
|
*
|
|
15869
15878
|
* @param table.clear_destination_decoratives - If the destination decoratives should be cleared
|
|
@@ -15910,7 +15919,7 @@ interface LuaSurface {
|
|
|
15910
15919
|
}): void
|
|
15911
15920
|
|
|
15912
15921
|
/**
|
|
15913
|
-
* Count entities of given type or name in a given area. Works just like {@link LuaSurface::find_entities_filtered | LuaSurface::find_entities_filtered}, except this only returns the count. As it doesn't construct all the wrapper objects, this is more efficient if one is only interested in the number of entities.
|
|
15922
|
+
* Count entities of given type or name in a given area. Works just like {@link LuaSurface::find_entities_filtered | runtime:LuaSurface::find_entities_filtered}, except this only returns the count. As it doesn't construct all the wrapper objects, this is more efficient if one is only interested in the number of entities.
|
|
15914
15923
|
*
|
|
15915
15924
|
* If no `area` or `position` are given, the entire surface is searched. If `position` is given, this returns the entities colliding with that position (i.e the given position is within the entity's collision box). If `position` and `radius` are given, this returns entities in the radius of the position. If `area` is specified, this returns entities colliding with that area.
|
|
15916
15925
|
* @param table.invert - Whether the filters should be inverted.
|
|
@@ -15936,7 +15945,7 @@ interface LuaSurface {
|
|
|
15936
15945
|
}): void
|
|
15937
15946
|
|
|
15938
15947
|
/**
|
|
15939
|
-
* Count tiles of a given name in a given area. Works just like {@link LuaSurface::find_tiles_filtered | LuaSurface::find_tiles_filtered}, except this only returns the count. As it doesn't construct all the wrapper objects, this is more efficient if one is only interested in the number of tiles.
|
|
15948
|
+
* Count tiles of a given name in a given area. Works just like {@link LuaSurface::find_tiles_filtered | runtime:LuaSurface::find_tiles_filtered}, except this only returns the count. As it doesn't construct all the wrapper objects, this is more efficient if one is only interested in the number of tiles.
|
|
15940
15949
|
*
|
|
15941
15950
|
* If no `area` or `position` and `radius` is given, the entire surface is searched. If `position` and `radius` are given, only tiles within the radius of the position are included.
|
|
15942
15951
|
* @param table.has_tile_ghost - Can be further filtered by supplying a `force` filter.
|
|
@@ -16168,7 +16177,7 @@ interface LuaSurface {
|
|
|
16168
16177
|
/**
|
|
16169
16178
|
* Find enemy units (entities with type "unit") of a given force within an area.
|
|
16170
16179
|
* @remarks
|
|
16171
|
-
* This is more efficient than {@link LuaSurface::find_entities | LuaSurface::find_entities}.
|
|
16180
|
+
* This is more efficient than {@link LuaSurface::find_entities | runtime:LuaSurface::find_entities}.
|
|
16172
16181
|
*
|
|
16173
16182
|
* @param center - Center of the search area
|
|
16174
16183
|
* @param force - Force to find enemies of. If not given, uses the player force.
|
|
@@ -16358,7 +16367,7 @@ interface LuaSurface {
|
|
|
16358
16367
|
/**
|
|
16359
16368
|
* Find units (entities with type "unit") of a given force and force condition within a given area.
|
|
16360
16369
|
* @remarks
|
|
16361
|
-
* This is more efficient than {@link LuaSurface::find_entities | LuaSurface::find_entities}.
|
|
16370
|
+
* This is more efficient than {@link LuaSurface::find_entities | runtime:LuaSurface::find_entities}.
|
|
16362
16371
|
*
|
|
16363
16372
|
* @param table.area - Box to find units within.
|
|
16364
16373
|
* @param table.condition - Only forces which meet the condition will be included in the search.
|
|
@@ -16494,7 +16503,7 @@ interface LuaSurface {
|
|
|
16494
16503
|
get_starting_area_radius(this: void): void
|
|
16495
16504
|
|
|
16496
16505
|
/**
|
|
16497
|
-
* Get the tile at a given position. An alternative call signature for this method is passing it a single {@link TilePosition | TilePosition}.
|
|
16506
|
+
* Get the tile at a given position. An alternative call signature for this method is passing it a single {@link TilePosition | runtime:TilePosition}.
|
|
16498
16507
|
* @remarks
|
|
16499
16508
|
* Non-integer values will result in them being rounded down.
|
|
16500
16509
|
*
|
|
@@ -16608,9 +16617,9 @@ interface LuaSurface {
|
|
|
16608
16617
|
id: number): void
|
|
16609
16618
|
|
|
16610
16619
|
/**
|
|
16611
|
-
* Generates a path with the specified constraints (as an array of {@link PathfinderWaypoints | PathfinderWaypoint}) using the unit pathfinding algorithm. This path can be used to emulate pathing behavior by script for non-unit entities, such as vehicles. If you want to command actual units (such as biters or spitters) to move, use {@link LuaEntity::set_command | LuaEntity::set_command} instead.
|
|
16620
|
+
* Generates a path with the specified constraints (as an array of {@link PathfinderWaypoints | runtime:PathfinderWaypoint}) using the unit pathfinding algorithm. This path can be used to emulate pathing behavior by script for non-unit entities, such as vehicles. If you want to command actual units (such as biters or spitters) to move, use {@link LuaEntity::set_command | runtime:LuaEntity::set_command} instead.
|
|
16612
16621
|
*
|
|
16613
|
-
* The resulting path is ultimately returned asynchronously via {@link on_script_path_request_finished | on_script_path_request_finished}.
|
|
16622
|
+
* The resulting path is ultimately returned asynchronously via {@link on_script_path_request_finished | runtime:on_script_path_request_finished}.
|
|
16614
16623
|
* @param table.bounding_box - The dimensions of the object that's supposed to travel the path.
|
|
16615
16624
|
* @param table.can_open_gates - Whether the path request can open gates. Defaults to `false`.
|
|
16616
16625
|
* @param table.collision_mask - The list of masks the `bounding_box` collides with.
|
|
@@ -16655,7 +16664,7 @@ interface LuaSurface {
|
|
|
16655
16664
|
status: defines.chunk_generated_status): void
|
|
16656
16665
|
|
|
16657
16666
|
/**
|
|
16658
|
-
* Set the hidden tile for the specified position. While during normal gameplay only {@link non-mineable | LuaTilePrototype::mineable_properties} tiles can become hidden, this method allows any kind of tile to be set as the hidden one.
|
|
16667
|
+
* Set the hidden tile for the specified position. While during normal gameplay only {@link non-mineable | runtime:LuaTilePrototype::mineable_properties} tiles can become hidden, this method allows any kind of tile to be set as the hidden one.
|
|
16659
16668
|
* @param position - The tile position.
|
|
16660
16669
|
* @param tile - The new hidden tile or `nil` to clear the hidden tile.
|
|
16661
16670
|
*/
|
|
@@ -16680,7 +16689,7 @@ interface LuaSurface {
|
|
|
16680
16689
|
/**
|
|
16681
16690
|
* Set tiles at specified locations. Can automatically correct the edges around modified tiles.
|
|
16682
16691
|
*
|
|
16683
|
-
* Placing a {@link mineable | LuaTilePrototype::mineable_properties} tile on top of a non-mineable one will turn the latter into the {@link LuaTile::hidden_tile | LuaTile::hidden_tile} for that tile. Placing a mineable tile on a mineable one or a non-mineable tile on a non-mineable one will not modify the hidden tile. This restriction can however be circumvented by using {@link LuaSurface::set_hidden_tile | LuaSurface::set_hidden_tile}.
|
|
16692
|
+
* Placing a {@link mineable | runtime:LuaTilePrototype::mineable_properties} tile on top of a non-mineable one will turn the latter into the {@link LuaTile::hidden_tile | runtime:LuaTile::hidden_tile} for that tile. Placing a mineable tile on a mineable one or a non-mineable tile on a non-mineable one will not modify the hidden tile. This restriction can however be circumvented by using {@link LuaSurface::set_hidden_tile | runtime:LuaSurface::set_hidden_tile}.
|
|
16684
16693
|
* @remarks
|
|
16685
16694
|
* It is recommended to call this method once for all the tiles you want to change rather than calling it individually for every tile. As the tile correction is used after every step, calling it one by one could cause the tile correction logic to redo some of the changes. Also, many small API calls are generally more performance intensive than one big one.
|
|
16686
16695
|
*
|
|
@@ -16699,7 +16708,7 @@ interface LuaSurface {
|
|
|
16699
16708
|
/**
|
|
16700
16709
|
* Spill items on the ground centered at a given location.
|
|
16701
16710
|
* @param allow_belts - Whether items can be spilled onto belts. Defaults to `true`.
|
|
16702
|
-
* @param enable_looted - When true, each created item will be flagged with the [LuaEntity::to_be_looted](LuaEntity::to_be_looted) flag.
|
|
16711
|
+
* @param enable_looted - When true, each created item will be flagged with the [LuaEntity::to_be_looted](runtime:LuaEntity::to_be_looted) flag.
|
|
16703
16712
|
* @param force - When provided (and not `nil`) the items will be marked for deconstruction by this force.
|
|
16704
16713
|
* @param items - Items to spill
|
|
16705
16714
|
* @param position - Center of the spillage
|
|
@@ -16740,7 +16749,7 @@ interface LuaSurface {
|
|
|
16740
16749
|
*
|
|
16741
16750
|
* Default is `{0, 0, 0}`, which means no influence.
|
|
16742
16751
|
* @example
|
|
16743
|
-
* Makes night on the surface pitch black, assuming [LuaSurface::min_brightness](LuaSurface::min_brightness) being set to default value `0.15`.
|
|
16752
|
+
* Makes night on the surface pitch black, assuming [LuaSurface::min_brightness](runtime:LuaSurface::min_brightness) being set to default value `0.15`.
|
|
16744
16753
|
* ```
|
|
16745
16754
|
* game.surfaces[1].brightness_visual_weights = { 1 / 0.85, 1 / 0.85, 1 / 0.85 }
|
|
16746
16755
|
* ```
|
|
@@ -16784,12 +16793,12 @@ interface LuaSurface {
|
|
|
16784
16793
|
generate_with_lab_tiles: boolean
|
|
16785
16794
|
|
|
16786
16795
|
/**
|
|
16787
|
-
* This surface's index in {@link LuaGameScript::surfaces | LuaGameScript::surfaces} (unique ID). It is assigned when a surface is created, and remains so until it is {@link deleted | on_surface_deleted}. Indexes of deleted surfaces can be reused.
|
|
16796
|
+
* This surface's index in {@link LuaGameScript::surfaces | runtime:LuaGameScript::surfaces} (unique ID). It is assigned when a surface is created, and remains so until it is {@link deleted | runtime:on_surface_deleted}. Indexes of deleted surfaces can be reused.
|
|
16788
16797
|
*/
|
|
16789
16798
|
readonly index: number
|
|
16790
16799
|
|
|
16791
16800
|
/**
|
|
16792
|
-
* The generation settings for this surface. These can be modified after surface generation, but note that this will not retroactively update the surface. To manually regenerate it, {@link LuaSurface::regenerate_entity | LuaSurface::regenerate_entity}, {@link LuaSurface::regenerate_decorative | LuaSurface::regenerate_decorative}, and {@link LuaSurface::delete_chunk | LuaSurface::delete_chunk} can be used.
|
|
16801
|
+
* The generation settings for this surface. These can be modified after surface generation, but note that this will not retroactively update the surface. To manually regenerate it, {@link LuaSurface::regenerate_entity | runtime:LuaSurface::regenerate_entity}, {@link LuaSurface::regenerate_decorative | runtime:LuaSurface::regenerate_decorative}, and {@link LuaSurface::delete_chunk | runtime:LuaSurface::delete_chunk} can be used.
|
|
16793
16802
|
*/
|
|
16794
16803
|
map_gen_settings: MapGenSettings
|
|
16795
16804
|
|
|
@@ -16894,7 +16903,7 @@ interface LuaTechnology {
|
|
|
16894
16903
|
readonly force: LuaForce
|
|
16895
16904
|
|
|
16896
16905
|
/**
|
|
16897
|
-
* The current level of this technology. For level-based technology writing to this is the same as researching the technology to the previous level. Writing the level will set {@link LuaTechnology::enabled | LuaTechnology::enabled} to `true`.
|
|
16906
|
+
* The current level of this technology. For level-based technology writing to this is the same as researching the technology to the previous level. Writing the level will set {@link LuaTechnology::enabled | runtime:LuaTechnology::enabled} to `true`.
|
|
16898
16907
|
*/
|
|
16899
16908
|
level: number
|
|
16900
16909
|
|
|
@@ -16921,7 +16930,7 @@ interface LuaTechnology {
|
|
|
16921
16930
|
readonly order: string
|
|
16922
16931
|
|
|
16923
16932
|
/**
|
|
16924
|
-
* Prerequisites of this technology. The result maps technology name to the {@link LuaTechnology | LuaTechnology} object.
|
|
16933
|
+
* Prerequisites of this technology. The result maps technology name to the {@link LuaTechnology | runtime:LuaTechnology} object.
|
|
16925
16934
|
*/
|
|
16926
16935
|
readonly prerequisites: {[key: string]: LuaTechnology}
|
|
16927
16936
|
|
|
@@ -16933,13 +16942,13 @@ interface LuaTechnology {
|
|
|
16933
16942
|
/**
|
|
16934
16943
|
* The number of research units required for this technology.
|
|
16935
16944
|
* @remarks
|
|
16936
|
-
* This is multiplied by the current research cost multiplier, unless {@link LuaTechnologyPrototype::ignore_tech_cost_multiplier | LuaTechnologyPrototype::ignore_tech_cost_multiplier} is `true`.
|
|
16945
|
+
* This is multiplied by the current research cost multiplier, unless {@link LuaTechnologyPrototype::ignore_tech_cost_multiplier | runtime:LuaTechnologyPrototype::ignore_tech_cost_multiplier} is `true`.
|
|
16937
16946
|
*
|
|
16938
16947
|
*/
|
|
16939
16948
|
readonly research_unit_count: number
|
|
16940
16949
|
|
|
16941
16950
|
/**
|
|
16942
|
-
* The count formula, if this research has any. See
|
|
16951
|
+
* The count formula, if this research has any. See {@link TechnologyUnit::count_formula | prototype:TechnologyUnit::count_formula} for details.
|
|
16943
16952
|
*/
|
|
16944
16953
|
readonly research_unit_count_formula?: string
|
|
16945
16954
|
|
|
@@ -17002,7 +17011,7 @@ interface LuaTechnologyPrototype {
|
|
|
17002
17011
|
/**
|
|
17003
17012
|
* If this technology ignores the technology cost multiplier setting.
|
|
17004
17013
|
* @remarks
|
|
17005
|
-
* {@link LuaTechnologyPrototype::research_unit_count | LuaTechnologyPrototype::research_unit_count} will already take this setting into account.
|
|
17014
|
+
* {@link LuaTechnologyPrototype::research_unit_count | runtime:LuaTechnologyPrototype::research_unit_count} will already take this setting into account.
|
|
17006
17015
|
*
|
|
17007
17016
|
*/
|
|
17008
17017
|
readonly ignore_tech_cost_multiplier: boolean
|
|
@@ -17040,20 +17049,20 @@ interface LuaTechnologyPrototype {
|
|
|
17040
17049
|
readonly order: string
|
|
17041
17050
|
|
|
17042
17051
|
/**
|
|
17043
|
-
* Prerequisites of this technology. The result maps technology name to the {@link LuaTechnologyPrototype | LuaTechnologyPrototype} object.
|
|
17052
|
+
* Prerequisites of this technology. The result maps technology name to the {@link LuaTechnologyPrototype | runtime:LuaTechnologyPrototype} object.
|
|
17044
17053
|
*/
|
|
17045
17054
|
readonly prerequisites: {[key: string]: LuaTechnologyPrototype}
|
|
17046
17055
|
|
|
17047
17056
|
/**
|
|
17048
17057
|
* The number of research units required for this technology.
|
|
17049
17058
|
* @remarks
|
|
17050
|
-
* This is multiplied by the current research cost multiplier, unless {@link LuaTechnologyPrototype::ignore_tech_cost_multiplier | LuaTechnologyPrototype::ignore_tech_cost_multiplier} is `true`.
|
|
17059
|
+
* This is multiplied by the current research cost multiplier, unless {@link LuaTechnologyPrototype::ignore_tech_cost_multiplier | runtime:LuaTechnologyPrototype::ignore_tech_cost_multiplier} is `true`.
|
|
17051
17060
|
*
|
|
17052
17061
|
*/
|
|
17053
17062
|
readonly research_unit_count: number
|
|
17054
17063
|
|
|
17055
17064
|
/**
|
|
17056
|
-
* The count formula, if this research has any. See
|
|
17065
|
+
* The count formula, if this research has any. See {@link TechnologyUnit::count_formula | prototype:TechnologyUnit::count_formula} for details.
|
|
17057
17066
|
*/
|
|
17058
17067
|
readonly research_unit_count_formula?: string
|
|
17059
17068
|
|
|
@@ -17145,7 +17154,7 @@ interface LuaTile {
|
|
|
17145
17154
|
force?: ForceIdentification): void
|
|
17146
17155
|
|
|
17147
17156
|
/**
|
|
17148
|
-
* The name of the {@link LuaTilePrototype | LuaTilePrototype} hidden under this tile, if any. During normal gameplay, only {@link non-mineable | LuaTilePrototype::mineable_properties} tiles can become hidden. This can however be circumvented with {@link LuaSurface::set_hidden_tile | LuaSurface::set_hidden_tile}.
|
|
17157
|
+
* The name of the {@link LuaTilePrototype | runtime:LuaTilePrototype} hidden under this tile, if any. During normal gameplay, only {@link non-mineable | runtime:LuaTilePrototype::mineable_properties} tiles can become hidden. This can however be circumvented with {@link LuaSurface::set_hidden_tile | runtime:LuaSurface::set_hidden_tile}.
|
|
17149
17158
|
*/
|
|
17150
17159
|
readonly hidden_tile?: string
|
|
17151
17160
|
|
|
@@ -17387,7 +17396,7 @@ interface LuaTrain {
|
|
|
17387
17396
|
readonly back_rail?: LuaEntity
|
|
17388
17397
|
|
|
17389
17398
|
/**
|
|
17390
|
-
* The back stock of this train, if any. The back of the train is at the opposite end of the {@link front | LuaTrain::front_stock}.
|
|
17399
|
+
* The back stock of this train, if any. The back of the train is at the opposite end of the {@link front | runtime:LuaTrain::front_stock}.
|
|
17391
17400
|
*/
|
|
17392
17401
|
readonly back_stock?: LuaEntity
|
|
17393
17402
|
|
|
@@ -17397,7 +17406,7 @@ interface LuaTrain {
|
|
|
17397
17406
|
readonly cargo_wagons: LuaEntity[]
|
|
17398
17407
|
|
|
17399
17408
|
/**
|
|
17400
|
-
* The rolling stocks this train is composed of, with the numbering starting at the {@link front | LuaTrain::front_stock} of the train.
|
|
17409
|
+
* The rolling stocks this train is composed of, with the numbering starting at the {@link front | runtime:LuaTrain::front_stock} of the train.
|
|
17401
17410
|
*/
|
|
17402
17411
|
readonly carriages: LuaEntity[]
|
|
17403
17412
|
|
|
@@ -17466,7 +17475,7 @@ interface LuaTrain {
|
|
|
17466
17475
|
/**
|
|
17467
17476
|
* The player passengers on the train
|
|
17468
17477
|
* @remarks
|
|
17469
|
-
* This does *not* index using player index. See {@link LuaPlayer::index | LuaPlayer::index} on each player instance for the player index.
|
|
17478
|
+
* This does *not* index using player index. See {@link LuaPlayer::index | runtime:LuaPlayer::index} on each player instance for the player index.
|
|
17470
17479
|
*
|
|
17471
17480
|
*/
|
|
17472
17481
|
readonly passengers: LuaPlayer[]
|
|
@@ -17662,12 +17671,12 @@ interface LuaTransportLine {
|
|
|
17662
17671
|
clear(this: void): void
|
|
17663
17672
|
|
|
17664
17673
|
/**
|
|
17665
|
-
* Get counts of all items on this line, similar to how {@link LuaInventory::get_contents | LuaInventory::get_contents} does.
|
|
17674
|
+
* Get counts of all items on this line, similar to how {@link LuaInventory::get_contents | runtime:LuaInventory::get_contents} does.
|
|
17666
17675
|
*/
|
|
17667
17676
|
get_contents(this: void): void
|
|
17668
17677
|
|
|
17669
17678
|
/**
|
|
17670
|
-
* Count some or all items on this line, similar to how {@link LuaInventory::get_item_count | LuaInventory::get_item_count} does.
|
|
17679
|
+
* Count some or all items on this line, similar to how {@link LuaInventory::get_item_count | runtime:LuaInventory::get_item_count} does.
|
|
17671
17680
|
* @param item - Prototype name of the item to count. If not specified, count all items.
|
|
17672
17681
|
*/
|
|
17673
17682
|
get_item_count(this: void,
|
|
@@ -17696,7 +17705,7 @@ interface LuaTransportLine {
|
|
|
17696
17705
|
/**
|
|
17697
17706
|
* Returns whether the associated internal transport line of this line is the same as the others associated internal transport line.
|
|
17698
17707
|
* @remarks
|
|
17699
|
-
* This can return true even when the {@link LuaTransportLine::owner | LuaTransportLine::owner}s are different (so `this == other` is false), because the internal transport lines can span multiple tiles.
|
|
17708
|
+
* This can return true even when the {@link LuaTransportLine::owner | runtime:LuaTransportLine::owner}s are different (so `this == other` is false), because the internal transport lines can span multiple tiles.
|
|
17700
17709
|
*
|
|
17701
17710
|
*/
|
|
17702
17711
|
line_equals(this: void,
|
|
@@ -17836,7 +17845,7 @@ interface LuaUnitGroup {
|
|
|
17836
17845
|
help(this: void): void
|
|
17837
17846
|
|
|
17838
17847
|
/**
|
|
17839
|
-
* Make this group autonomous. Autonomous groups will automatically attack polluted areas. Autonomous groups aren't considered to be {@link script-driven | LuaUnitGroup::is_script_driven}.
|
|
17848
|
+
* Make this group autonomous. Autonomous groups will automatically attack polluted areas. Autonomous groups aren't considered to be {@link script-driven | runtime:LuaUnitGroup::is_script_driven}.
|
|
17840
17849
|
*/
|
|
17841
17850
|
set_autonomous(this: void): void
|
|
17842
17851
|
|
|
@@ -17878,7 +17887,7 @@ interface LuaUnitGroup {
|
|
|
17878
17887
|
readonly group_number: number
|
|
17879
17888
|
|
|
17880
17889
|
/**
|
|
17881
|
-
* Whether this unit group is controlled by a script or by the game engine. This can be changed using {@link LuaUnitGroup::set_autonomous | LuaUnitGroup::set_autonomous}.
|
|
17890
|
+
* Whether this unit group is controlled by a script or by the game engine. This can be changed using {@link LuaUnitGroup::set_autonomous | runtime:LuaUnitGroup::set_autonomous}.
|
|
17882
17891
|
*/
|
|
17883
17892
|
readonly is_script_driven: boolean
|
|
17884
17893
|
|
|
@@ -18018,20 +18027,25 @@ interface LuaWallControlBehavior extends LuaControlBehavior {
|
|
|
18018
18027
|
|
|
18019
18028
|
}
|
|
18020
18029
|
|
|
18021
|
-
interface BaseLuaControlSetGuiArrowParams {
|
|
18022
|
-
}
|
|
18023
|
-
|
|
18024
18030
|
/**
|
|
18025
18031
|
* @remarks
|
|
18026
|
-
*
|
|
18032
|
+
* Other attributes may be specified depending on `type`:
|
|
18027
18033
|
*
|
|
18028
18034
|
*/
|
|
18029
|
-
interface
|
|
18035
|
+
interface LuaControlSetGuiArrowParams {
|
|
18030
18036
|
/**
|
|
18031
|
-
* Where to point to. This field determines what other fields are mandatory.
|
|
18037
|
+
* Where to point to. This field determines what other fields are mandatory.
|
|
18032
18038
|
*/
|
|
18033
|
-
type:
|
|
18039
|
+
'type': GuiArrowType
|
|
18034
18040
|
|
|
18041
|
+
}
|
|
18042
|
+
|
|
18043
|
+
/**
|
|
18044
|
+
* @remarks
|
|
18045
|
+
* Applies to variant case `crafting_queue`
|
|
18046
|
+
*
|
|
18047
|
+
*/
|
|
18048
|
+
interface LuaControlSetGuiArrowParamsCraftingQueue extends LuaControlSetGuiArrowParams {
|
|
18035
18049
|
'crafting_queueindex': number
|
|
18036
18050
|
|
|
18037
18051
|
}
|
|
@@ -18041,12 +18055,7 @@ interface LuaControlSetGuiArrowParamsCraftingQueue extends BaseLuaControlSetGuiA
|
|
|
18041
18055
|
* Applies to variant case `entity`
|
|
18042
18056
|
*
|
|
18043
18057
|
*/
|
|
18044
|
-
interface LuaControlSetGuiArrowParamsEntity extends
|
|
18045
|
-
/**
|
|
18046
|
-
* Where to point to. This field determines what other fields are mandatory. May be `"nowhere"`, `"goal"`, `"entity_info"`, `"active_window"`, `"entity"`, `"position"`, `"crafting_queue"`, or `"item_stack"`.
|
|
18047
|
-
*/
|
|
18048
|
-
type: 'entity'
|
|
18049
|
-
|
|
18058
|
+
interface LuaControlSetGuiArrowParamsEntity extends LuaControlSetGuiArrowParams {
|
|
18050
18059
|
'entity': LuaEntity
|
|
18051
18060
|
|
|
18052
18061
|
}
|
|
@@ -18056,12 +18065,7 @@ interface LuaControlSetGuiArrowParamsEntity extends BaseLuaControlSetGuiArrowPar
|
|
|
18056
18065
|
* Applies to variant case `item_stack`
|
|
18057
18066
|
*
|
|
18058
18067
|
*/
|
|
18059
|
-
interface LuaControlSetGuiArrowParamsItemStack extends
|
|
18060
|
-
/**
|
|
18061
|
-
* Where to point to. This field determines what other fields are mandatory. May be `"nowhere"`, `"goal"`, `"entity_info"`, `"active_window"`, `"entity"`, `"position"`, `"crafting_queue"`, or `"item_stack"`.
|
|
18062
|
-
*/
|
|
18063
|
-
type: 'item_stack'
|
|
18064
|
-
|
|
18068
|
+
interface LuaControlSetGuiArrowParamsItemStack extends LuaControlSetGuiArrowParams {
|
|
18065
18069
|
'inventory_index': defines.inventory
|
|
18066
18070
|
|
|
18067
18071
|
'item_stack_index': number
|
|
@@ -18078,24 +18082,11 @@ interface LuaControlSetGuiArrowParamsItemStack extends BaseLuaControlSetGuiArrow
|
|
|
18078
18082
|
* Applies to variant case `position`
|
|
18079
18083
|
*
|
|
18080
18084
|
*/
|
|
18081
|
-
interface LuaControlSetGuiArrowParamsPosition extends
|
|
18082
|
-
/**
|
|
18083
|
-
* Where to point to. This field determines what other fields are mandatory. May be `"nowhere"`, `"goal"`, `"entity_info"`, `"active_window"`, `"entity"`, `"position"`, `"crafting_queue"`, or `"item_stack"`.
|
|
18084
|
-
*/
|
|
18085
|
-
type: 'position'
|
|
18086
|
-
|
|
18085
|
+
interface LuaControlSetGuiArrowParamsPosition extends LuaControlSetGuiArrowParams {
|
|
18087
18086
|
'position': MapPosition
|
|
18088
18087
|
|
|
18089
18088
|
}
|
|
18090
18089
|
|
|
18091
|
-
interface DefaultLuaControlSetGuiArrowParams extends BaseLuaControlSetGuiArrowParams {
|
|
18092
|
-
/**
|
|
18093
|
-
* Where to point to. This field determines what other fields are mandatory. May be `"nowhere"`, `"goal"`, `"entity_info"`, `"active_window"`, `"entity"`, `"position"`, `"crafting_queue"`, or `"item_stack"`.
|
|
18094
|
-
*/
|
|
18095
|
-
type: 'nowhere' | 'goal' | 'entity_info' | 'active_window'
|
|
18096
|
-
|
|
18097
|
-
}
|
|
18098
|
-
|
|
18099
18090
|
/**
|
|
18100
18091
|
* @remarks
|
|
18101
18092
|
* Other attributes may be specified depending on `type`:
|
|
@@ -18118,7 +18109,7 @@ interface LuaGuiElementAddParams {
|
|
|
18118
18109
|
'enabled'?: boolean
|
|
18119
18110
|
|
|
18120
18111
|
/**
|
|
18121
|
-
* How the element should interact with game controllers. Defaults to {@link defines.game_controller_interaction.normal | defines.game_controller_interaction.normal}.
|
|
18112
|
+
* How the element should interact with game controllers. Defaults to {@link defines.game_controller_interaction.normal | runtime:defines.game_controller_interaction.normal}.
|
|
18122
18113
|
*/
|
|
18123
18114
|
'game_controller_interaction'?: defines.game_controller_interaction
|
|
18124
18115
|
|
|
@@ -18138,7 +18129,7 @@ interface LuaGuiElementAddParams {
|
|
|
18138
18129
|
'name'?: string
|
|
18139
18130
|
|
|
18140
18131
|
/**
|
|
18141
|
-
* Whether this element will raise {@link on_gui_hover | on_gui_hover} and {@link on_gui_leave | on_gui_leave}. Defaults to `false`.
|
|
18132
|
+
* Whether this element will raise {@link on_gui_hover | runtime:on_gui_hover} and {@link on_gui_leave | runtime:on_gui_leave}. Defaults to `false`.
|
|
18142
18133
|
*/
|
|
18143
18134
|
'raise_hover_events'?: boolean
|
|
18144
18135
|
|
|
@@ -18148,7 +18139,7 @@ interface LuaGuiElementAddParams {
|
|
|
18148
18139
|
'style'?: string
|
|
18149
18140
|
|
|
18150
18141
|
/**
|
|
18151
|
-
* {@link Tags | Tags} associated with the child element.
|
|
18142
|
+
* {@link Tags | runtime:Tags} associated with the child element.
|
|
18152
18143
|
*/
|
|
18153
18144
|
'tags'?: Tags
|
|
18154
18145
|
|
|
@@ -18158,9 +18149,9 @@ interface LuaGuiElementAddParams {
|
|
|
18158
18149
|
'tooltip'?: LocalisedString
|
|
18159
18150
|
|
|
18160
18151
|
/**
|
|
18161
|
-
* The kind of element to add
|
|
18152
|
+
* The kind of element to add, which potentially has its own attributes as listed below.
|
|
18162
18153
|
*/
|
|
18163
|
-
'type':
|
|
18154
|
+
'type': GuiElementType
|
|
18164
18155
|
|
|
18165
18156
|
/**
|
|
18166
18157
|
* Whether the child element is visible. Defaults to `true`.
|
|
@@ -18326,7 +18317,7 @@ interface LuaGuiElementAddParamsDropDown extends LuaGuiElementAddParams {
|
|
|
18326
18317
|
*/
|
|
18327
18318
|
interface LuaGuiElementAddParamsFlow extends LuaGuiElementAddParams {
|
|
18328
18319
|
/**
|
|
18329
|
-
* The initial direction of the flow's layout. See {@link LuaGuiElement::direction | LuaGuiElement::direction}. Defaults to `"horizontal"`.
|
|
18320
|
+
* The initial direction of the flow's layout. See {@link LuaGuiElement::direction | runtime:LuaGuiElement::direction}. Defaults to `"horizontal"`.
|
|
18330
18321
|
*/
|
|
18331
18322
|
'direction'?: string
|
|
18332
18323
|
|
|
@@ -18339,7 +18330,7 @@ interface LuaGuiElementAddParamsFlow extends LuaGuiElementAddParams {
|
|
|
18339
18330
|
*/
|
|
18340
18331
|
interface LuaGuiElementAddParamsFrame extends LuaGuiElementAddParams {
|
|
18341
18332
|
/**
|
|
18342
|
-
* The initial direction of the frame's layout. See {@link LuaGuiElement::direction | LuaGuiElement::direction}. Defaults to `"horizontal"`.
|
|
18333
|
+
* The initial direction of the frame's layout. See {@link LuaGuiElement::direction | runtime:LuaGuiElement::direction}. Defaults to `"horizontal"`.
|
|
18343
18334
|
*/
|
|
18344
18335
|
'direction'?: string
|
|
18345
18336
|
|
|
@@ -18747,7 +18738,7 @@ interface LuaSurfaceCreateEntityParams {
|
|
|
18747
18738
|
'position': MapPosition
|
|
18748
18739
|
|
|
18749
18740
|
/**
|
|
18750
|
-
* If true; {@link defines.events.script_raised_built | defines.events.script_raised_built} will be fired on successful entity creation.
|
|
18741
|
+
* If true; {@link defines.events.script_raised_built | runtime:defines.events.script_raised_built} will be fired on successful entity creation.
|
|
18751
18742
|
*/
|
|
18752
18743
|
'raise_built'?: boolean
|
|
18753
18744
|
|
|
@@ -19183,5 +19174,3 @@ interface LuaSurfaceCreateEntityParamsUndergroundBelt extends LuaSurfaceCreateEn
|
|
|
19183
19174
|
|
|
19184
19175
|
}
|
|
19185
19176
|
|
|
19186
|
-
type LuaControlSetGuiArrowParams = LuaControlSetGuiArrowParamsCraftingQueue | LuaControlSetGuiArrowParamsEntity | LuaControlSetGuiArrowParamsItemStack | LuaControlSetGuiArrowParamsPosition | DefaultLuaControlSetGuiArrowParams
|
|
19187
|
-
|