factorio-types 1.2.2 → 1.2.4

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/defines.d.ts CHANGED
@@ -2,1308 +2,1696 @@
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.109
5
+ // Factorio version 1.1.110
6
6
  // API version 5
7
7
 
8
8
  declare namespace defines {
9
- enum alert_type {
10
- custom = 0,
11
- entity_destroyed = 1,
12
- entity_under_attack = 2,
13
- no_material_for_construction = 3,
14
- no_storage = 4,
15
- not_enough_construction_robots = 5,
16
- not_enough_repair_packs = 6,
17
- train_out_of_fuel = 7,
18
- turret_fire = 8,
19
- }
9
+ enum alert_type {
10
+ custom = 0,
11
+ entity_destroyed = 1,
12
+ entity_under_attack = 2,
13
+ no_material_for_construction = 3,
14
+ no_storage = 4,
15
+ not_enough_construction_robots = 5,
16
+ not_enough_repair_packs = 6,
17
+ train_out_of_fuel = 7,
18
+ turret_fire = 8
19
+ }
20
+ /**
21
+ * AI command exit status. See {@link LuaEntity::set_command | runtime:LuaEntity::set_command}
22
+ */
23
+ enum behavior_result {
24
+ deleted = 3,
25
+ fail = 1,
26
+ in_progress = 0,
27
+ success = 2
28
+ }
29
+ enum build_check_type {
30
+ blueprint_ghost = 4,
31
+ ghost_revive = 5,
32
+ manual = 1,
33
+ manual_ghost = 2,
34
+ script = 0,
35
+ script_ghost = 3
36
+ }
37
+ /**
38
+ * State of a chain signal.
39
+ */
40
+ enum chain_signal_state {
41
+ all_open = 1,
42
+ none = 0,
43
+ none_open = 3,
44
+ partially_open = 2
45
+ }
46
+ enum chunk_generated_status {
47
+ basic_tiles = 2,
48
+ corrected_tiles = 3,
49
+ custom_tiles = 1,
50
+ entities = 5,
51
+ nothing = 0,
52
+ tiles = 4
53
+ }
54
+ enum circuit_condition_index {
55
+ arithmetic_combinator = 3,
56
+ constant_combinator = 5,
57
+ decider_combinator = 4,
58
+ inserter_circuit = 0,
59
+ inserter_logistic = 1,
60
+ lamp = 2,
61
+ offshore_pump = 6,
62
+ pump = 7
63
+ }
64
+ enum circuit_connector_id {
65
+ accumulator = 0,
66
+ combinator_input = 13,
67
+ combinator_output = 14,
68
+ constant_combinator = 1,
69
+ container = 2,
70
+ electric_pole = 10,
71
+ inserter = 11,
72
+ lamp = 12,
73
+ linked_container = 3,
74
+ offshore_pump = 15,
75
+ programmable_speaker = 4,
76
+ pump = 16,
77
+ rail_chain_signal = 6,
78
+ rail_signal = 5,
79
+ roboport = 7,
80
+ storage_tank = 8,
81
+ wall = 9
82
+ }
83
+ /**
84
+ * Command given to units describing what they should do.
85
+ */
86
+ enum command {
20
87
  /**
21
- * AI command exit status. See {@link LuaEntity::set_command | runtime:LuaEntity::set_command}
88
+ * Attack another entity.
22
89
  */
23
- enum behavior_result {
24
- deleted = 3,
25
- fail = 1,
26
- in_progress = 0,
27
- success = 2,
28
- }
29
- enum build_check_type {
30
- blueprint_ghost = 4,
31
- ghost_revive = 5,
32
- manual = 1,
33
- manual_ghost = 2,
34
- script = 0,
35
- script_ghost = 3,
36
- }
90
+ attack = 0,
37
91
  /**
38
- * State of a chain signal.
92
+ * Go to a place and attack what you see.
39
93
  */
40
- enum chain_signal_state {
41
- all_open = 1,
42
- none = 0,
43
- none_open = 3,
44
- partially_open = 2,
45
- }
46
- enum chunk_generated_status {
47
- basic_tiles = 2,
48
- corrected_tiles = 3,
49
- custom_tiles = 1,
50
- entities = 5,
51
- nothing = 0,
52
- tiles = 4,
53
- }
54
- enum circuit_condition_index {
55
- arithmetic_combinator = 3,
56
- constant_combinator = 5,
57
- decider_combinator = 4,
58
- inserter_circuit = 0,
59
- inserter_logistic = 1,
60
- lamp = 2,
61
- offshore_pump = 6,
62
- pump = 7,
63
- }
64
- enum circuit_connector_id {
65
- accumulator = 0,
66
- combinator_input = 13,
67
- combinator_output = 14,
68
- constant_combinator = 1,
69
- container = 2,
70
- electric_pole = 10,
71
- inserter = 11,
72
- lamp = 12,
73
- linked_container = 3,
74
- offshore_pump = 15,
75
- programmable_speaker = 4,
76
- pump = 16,
77
- rail_chain_signal = 6,
78
- rail_signal = 5,
79
- roboport = 7,
80
- storage_tank = 8,
81
- wall = 9,
82
- }
94
+ attack_area = 4,
83
95
  /**
84
- * Command given to units describing what they should do.
96
+ * Go to a position and build a base there.
85
97
  */
86
- enum command {
87
- /**
88
- * Attack another entity.
89
- */
90
- attack = 0,
91
- /**
92
- * Go to a place and attack what you see.
93
- */
94
- attack_area = 4,
95
- /**
96
- * Go to a position and build a base there.
97
- */
98
- build_base = 8,
99
- /**
100
- * Chain commands together, see {@link defines.compound_command | runtime:defines.compound_command}.
101
- */
102
- compound = 2,
103
- /**
104
- * Flee from another entity.
105
- */
106
- flee = 6,
107
- /**
108
- * Go to a specific position.
109
- */
110
- go_to_location = 1,
111
- /**
112
- * Do what your group wants you to do.
113
- */
114
- group = 3,
115
- /**
116
- * Stop moving and stay where you are.
117
- */
118
- stop = 7,
119
- /**
120
- * Chill.
121
- */
122
- wander = 5,
123
- }
98
+ build_base = 8,
124
99
  /**
125
- * How commands are joined together in a compound command (see {@link defines.command.compound | runtime:defines.command.compound}).
100
+ * Chain commands together, see {@link defines.compound_command | runtime:defines.compound_command}.
126
101
  */
127
- enum compound_command {
128
- /**
129
- * Fail on first failure. Only succeeds if all commands (executed one after another) succeed.
130
- */
131
- logical_and = 0,
132
- /**
133
- * Succeed on first success. Only fails if all commands (executed one after another) fail.
134
- */
135
- logical_or = 1,
136
- /**
137
- * Execute all commands in sequence and fail or succeed depending on the return status of the last command.
138
- */
139
- return_last = 2,
140
- }
141
- namespace control_behavior {
142
- namespace inserter {
143
- enum circuit_mode_of_operation {
144
- enable_disable = 1,
145
- none = 0,
146
- read_hand_contents = 3,
147
- set_filters = 2,
148
- set_stack_size = 4,
149
- }
150
- enum hand_read_mode {
151
- hold = 0,
152
- pulse = 1,
153
- }
154
- }
155
- namespace lamp {
156
- enum circuit_mode_of_operation {
157
- use_colors = 0,
158
- }
159
- }
160
- namespace logistic_container {
161
- enum circuit_mode_of_operation {
162
- send_contents = 0,
163
- set_requests = 1,
164
- }
165
- }
166
- namespace mining_drill {
167
- enum resource_read_mode {
168
- entire_patch = 1,
169
- this_miner = 0,
170
- }
171
- }
172
- namespace transport_belt {
173
- enum content_read_mode {
174
- hold = 1,
175
- pulse = 0,
176
- }
102
+ compound = 2,
103
+ /**
104
+ * Flee from another entity.
105
+ */
106
+ flee = 6,
107
+ /**
108
+ * Go to a specific position.
109
+ */
110
+ go_to_location = 1,
111
+ /**
112
+ * Do what your group wants you to do.
113
+ */
114
+ group = 3,
115
+ /**
116
+ * Stop moving and stay where you are.
117
+ */
118
+ stop = 7,
119
+ /**
120
+ * Chill.
121
+ */
122
+ wander = 5
123
+ }
124
+ /**
125
+ * How commands are joined together in a compound command (see {@link defines.command.compound | runtime:defines.command.compound}).
126
+ */
127
+ enum compound_command {
128
+ /**
129
+ * Fail on first failure. Only succeeds if all commands (executed one after another) succeed.
130
+ */
131
+ logical_and = 0,
132
+ /**
133
+ * Succeed on first success. Only fails if all commands (executed one after another) fail.
134
+ */
135
+ logical_or = 1,
136
+ /**
137
+ * Execute all commands in sequence and fail or succeed depending on the return status of the last command.
138
+ */
139
+ return_last = 2
140
+ }
141
+ namespace control_behavior {
142
+ namespace inserter {
143
+ enum circuit_mode_of_operation {
144
+ enable_disable = 1,
145
+ none = 0,
146
+ read_hand_contents = 3,
147
+ set_filters = 2,
148
+ set_stack_size = 4
177
149
  }
178
- enum type {
179
- /**
180
- * {@link LuaAccumulatorControlBehavior | runtime:LuaAccumulatorControlBehavior}
181
- */
182
- accumulator = 12,
183
- /**
184
- * {@link LuaArithmeticCombinatorControlBehavior | runtime:LuaArithmeticCombinatorControlBehavior}
185
- */
186
- arithmetic_combinator = 9,
187
- /**
188
- * {@link LuaConstantCombinatorControlBehavior | runtime:LuaConstantCombinatorControlBehavior}
189
- */
190
- constant_combinator = 10,
191
- /**
192
- * {@link LuaContainerControlBehavior | runtime:LuaContainerControlBehavior}
193
- */
194
- container = 0,
195
- /**
196
- * {@link LuaDeciderCombinatorControlBehavior | runtime:LuaDeciderCombinatorControlBehavior}
197
- */
198
- decider_combinator = 8,
199
- /**
200
- * {@link LuaGenericOnOffControlBehavior | runtime:LuaGenericOnOffControlBehavior}
201
- */
202
- generic_on_off = 1,
203
- /**
204
- * {@link LuaInserterControlBehavior | runtime:LuaInserterControlBehavior}
205
- */
206
- inserter = 2,
207
- /**
208
- * {@link LuaLampControlBehavior | runtime:LuaLampControlBehavior}
209
- */
210
- lamp = 3,
211
- /**
212
- * {@link LuaLogisticContainerControlBehavior | runtime:LuaLogisticContainerControlBehavior}
213
- */
214
- logistic_container = 4,
215
- /**
216
- * {@link LuaMiningDrillControlBehavior | runtime:LuaMiningDrillControlBehavior}
217
- */
218
- mining_drill = 16,
219
- /**
220
- * {@link LuaProgrammableSpeakerControlBehavior | runtime:LuaProgrammableSpeakerControlBehavior}
221
- */
222
- programmable_speaker = 17,
223
- /**
224
- * {@link LuaRailChainSignalControlBehavior | runtime:LuaRailChainSignalControlBehavior}
225
- */
226
- rail_chain_signal = 14,
227
- /**
228
- * {@link LuaRailSignalControlBehavior | runtime:LuaRailSignalControlBehavior}
229
- */
230
- rail_signal = 13,
231
- /**
232
- * {@link LuaRoboportControlBehavior | runtime:LuaRoboportControlBehavior}
233
- */
234
- roboport = 5,
235
- /**
236
- * {@link LuaStorageTankControlBehavior | runtime:LuaStorageTankControlBehavior}
237
- */
238
- storage_tank = 6,
239
- /**
240
- * {@link LuaTrainStopControlBehavior | runtime:LuaTrainStopControlBehavior}
241
- */
242
- train_stop = 7,
243
- /**
244
- * {@link LuaTransportBeltControlBehavior | runtime:LuaTransportBeltControlBehavior}
245
- */
246
- transport_belt = 11,
247
- /**
248
- * {@link LuaWallControlBehavior | runtime:LuaWallControlBehavior}
249
- */
250
- wall = 15,
150
+ enum hand_read_mode {
151
+ hold = 0,
152
+ pulse = 1
251
153
  }
252
154
  }
253
- enum controllers {
254
- /**
255
- * The controller controls a character. This is the default controller in freeplay.
256
- */
257
- character = 1,
258
- /**
259
- * The player can't interact with the world, and the camera pans around in a predefined manner.
260
- */
261
- cutscene = 4,
262
- /**
263
- * The Editor Controller near ultimate power to do almost anything in the game.
264
- */
265
- editor = 3,
266
- /**
267
- * Can't interact with the world, can only observe. Used in the multiplayer waiting-to-respawn screen.
268
- */
269
- ghost = 0,
270
- /**
271
- * The controller isn't tied to a character. This is the default controller in sandbox.
272
- */
273
- god = 2,
274
- /**
275
- * Can't change anything in the world but can view anything.
276
- */
277
- spectator = 5,
278
- }
279
- namespace deconstruction_item {
280
- enum entity_filter_mode {
281
- blacklist = 1,
282
- whitelist = 0,
283
- }
284
- enum tile_filter_mode {
285
- blacklist = 1,
286
- whitelist = 0,
287
- }
288
- enum tile_selection_mode {
289
- always = 1,
290
- never = 2,
291
- normal = 0,
292
- only = 3,
155
+ namespace lamp {
156
+ enum circuit_mode_of_operation {
157
+ use_colors = 0
293
158
  }
294
159
  }
295
- enum difficulty {
296
- easy = 0,
297
- hard = 2,
298
- normal = 1,
299
- }
300
- namespace difficulty_settings {
301
- enum recipe_difficulty {
302
- expensive = 1,
303
- normal = 0,
304
- }
305
- enum technology_difficulty {
306
- expensive = 1,
307
- normal = 0,
160
+ namespace logistic_container {
161
+ enum circuit_mode_of_operation {
162
+ send_contents = 0,
163
+ set_requests = 1
308
164
  }
309
165
  }
310
- enum direction {
311
- east = 2,
312
- north = 0,
313
- northeast = 1,
314
- northwest = 7,
315
- south = 4,
316
- southeast = 3,
317
- southwest = 5,
318
- west = 6,
319
- }
320
- enum disconnect_reason {
321
- afk = 6,
322
- banned = 9,
323
- cannot_keep_up = 5,
324
- desync_limit_reached = 4,
325
- dropped = 1,
326
- kicked = 7,
327
- kicked_and_deleted = 8,
328
- quit = 0,
329
- reconnect = 2,
330
- switching_servers = 10,
331
- wrong_input = 3,
166
+ namespace mining_drill {
167
+ enum resource_read_mode {
168
+ entire_patch = 1,
169
+ this_miner = 0
170
+ }
332
171
  }
333
- enum distraction {
334
- /**
335
- * Attack closer enemy entities, including entities "built" by player (belts, inserters, chests).
336
- */
337
- by_anything = 2,
338
- /**
339
- * Attack when attacked.
340
- */
341
- by_damage = 3,
342
- /**
343
- * Attack closer enemy entities with force.
344
- */
345
- by_enemy = 1,
346
- /**
347
- * Perform command even if someone attacks the unit.
348
- */
349
- none = 0,
172
+ namespace transport_belt {
173
+ enum content_read_mode {
174
+ hold = 1,
175
+ pulse = 0
176
+ }
350
177
  }
351
- enum entity_status {
352
- /**
353
- * Used by rail signals.
354
- */
355
- cant_divide_segments = 43,
356
- /**
357
- * Used by accumulators.
358
- */
359
- charging = 13,
360
- closed_by_circuit_network = 7,
361
- /**
362
- * Used by constant combinators: Combinator is turned off via switch in GUI.
363
- */
364
- disabled = 40,
365
- disabled_by_control_behavior = 5,
366
- disabled_by_script = 8,
367
- /**
368
- * Used by accumulators.
369
- */
370
- discharging = 14,
371
- /**
372
- * Used by crafting machines.
373
- */
374
- fluid_ingredient_shortage = 23,
375
- /**
376
- * Used by burner energy sources.
377
- */
378
- full_burnt_result_output = 25,
379
- /**
380
- * Used by crafting machines, boilers, burner energy sources and reactors: Reactor/burner has full burnt result inventory, boiler has full output fluidbox.
381
- */
382
- full_output = 24,
383
- /**
384
- * Used by accumulators.
385
- */
386
- fully_charged = 15,
387
- /**
388
- * Used by crafting machines.
389
- */
390
- item_ingredient_shortage = 26,
391
- /**
392
- * Used by the rocket silo.
393
- */
394
- launching_rocket = 33,
395
- /**
396
- * Used by boilers and fluid turrets: Boiler still has some fluid but is about to run out.
397
- */
398
- low_input_fluid = 22,
399
- low_power = 3,
400
- /**
401
- * Used by heat energy sources.
402
- */
403
- low_temperature = 39,
404
- marked_for_deconstruction = 9,
405
- /**
406
- * Used by mining drills when the mining fluid is missing.
407
- */
408
- missing_required_fluid = 27,
409
- /**
410
- * Used by labs.
411
- */
412
- missing_science_packs = 28,
413
- /**
414
- * Used by power switches.
415
- */
416
- networks_connected = 11,
178
+ enum type {
417
179
  /**
418
- * Used by power switches.
180
+ * {@link LuaAccumulatorControlBehavior | runtime:LuaAccumulatorControlBehavior}
419
181
  */
420
- networks_disconnected = 12,
182
+ accumulator = 12,
421
183
  /**
422
- * Used by ammo turrets.
184
+ * {@link LuaArithmeticCombinatorControlBehavior | runtime:LuaArithmeticCombinatorControlBehavior}
423
185
  */
424
- no_ammo = 38,
425
- no_fuel = 4,
186
+ arithmetic_combinator = 9,
426
187
  /**
427
- * Used by furnaces.
188
+ * {@link LuaConstantCombinatorControlBehavior | runtime:LuaConstantCombinatorControlBehavior}
428
189
  */
429
- no_ingredients = 18,
190
+ constant_combinator = 10,
430
191
  /**
431
- * Used by boilers, fluid turrets and fluid energy sources: Boiler has no fluid to work with.
192
+ * {@link LuaContainerControlBehavior | runtime:LuaContainerControlBehavior}
432
193
  */
433
- no_input_fluid = 19,
194
+ container = 0,
434
195
  /**
435
- * Used by mining drills.
196
+ * {@link LuaDeciderCombinatorControlBehavior | runtime:LuaDeciderCombinatorControlBehavior}
436
197
  */
437
- no_minable_resources = 21,
198
+ decider_combinator = 8,
438
199
  /**
439
- * Used by beacons.
200
+ * {@link LuaGenericOnOffControlBehavior | runtime:LuaGenericOnOffControlBehavior}
440
201
  */
441
- no_modules_to_transmit = 34,
442
- no_power = 2,
202
+ generic_on_off = 1,
443
203
  /**
444
- * Used by assembling machines.
204
+ * {@link LuaInserterControlBehavior | runtime:LuaInserterControlBehavior}
445
205
  */
446
- no_recipe = 17,
206
+ inserter = 2,
447
207
  /**
448
- * Used by labs.
208
+ * {@link LuaLampControlBehavior | runtime:LuaLampControlBehavior}
449
209
  */
450
- no_research_in_progress = 20,
451
- normal = 1,
210
+ lamp = 3,
452
211
  /**
453
- * Used by rail signals.
212
+ * {@link LuaLogisticContainerControlBehavior | runtime:LuaLogisticContainerControlBehavior}
454
213
  */
455
- not_connected_to_rail = 42,
214
+ logistic_container = 4,
456
215
  /**
457
- * Used by generators and solar panels.
216
+ * {@link LuaMiningDrillControlBehavior | runtime:LuaMiningDrillControlBehavior}
458
217
  */
459
- not_plugged_in_electric_network = 10,
460
- opened_by_circuit_network = 6,
218
+ mining_drill = 16,
461
219
  /**
462
- * Used by logistic containers.
220
+ * {@link LuaProgrammableSpeakerControlBehavior | runtime:LuaProgrammableSpeakerControlBehavior}
463
221
  */
464
- out_of_logistic_network = 16,
222
+ programmable_speaker = 17,
465
223
  /**
466
- * Used by the rocket silo.
224
+ * {@link LuaRailChainSignalControlBehavior | runtime:LuaRailChainSignalControlBehavior}
467
225
  */
468
- preparing_rocket_for_launch = 31,
226
+ rail_chain_signal = 14,
469
227
  /**
470
- * Used by roboports.
228
+ * {@link LuaRailSignalControlBehavior | runtime:LuaRailSignalControlBehavior}
471
229
  */
472
- recharging_after_power_outage = 35,
230
+ rail_signal = 13,
473
231
  /**
474
- * Used by lamps.
232
+ * {@link LuaRoboportControlBehavior | runtime:LuaRoboportControlBehavior}
475
233
  */
476
- turned_off_during_daytime = 41,
234
+ roboport = 5,
477
235
  /**
478
- * Used by inserters.
236
+ * {@link LuaStorageTankControlBehavior | runtime:LuaStorageTankControlBehavior}
479
237
  */
480
- waiting_for_source_items = 29,
238
+ storage_tank = 6,
481
239
  /**
482
- * Used by inserters and mining drills.
240
+ * {@link LuaTrainStopControlBehavior | runtime:LuaTrainStopControlBehavior}
483
241
  */
484
- waiting_for_space_in_destination = 30,
242
+ train_stop = 7,
485
243
  /**
486
- * Used by inserters targeting entity ghosts.
244
+ * {@link LuaTransportBeltControlBehavior | runtime:LuaTransportBeltControlBehavior}
487
245
  */
488
- waiting_for_target_to_be_built = 36,
246
+ transport_belt = 11,
489
247
  /**
490
- * Used by inserters targeting rails.
248
+ * {@link LuaWallControlBehavior | runtime:LuaWallControlBehavior}
491
249
  */
492
- waiting_for_train = 37,
493
- /**
494
- * Used by the rocket silo.
495
- */
496
- waiting_to_launch_rocket = 32,
497
- working = 0,
250
+ wall = 15
498
251
  }
252
+ }
253
+ enum controllers {
254
+ /**
255
+ * The controller controls a character. This is the default controller in freeplay.
256
+ */
257
+ character = 1,
258
+ /**
259
+ * The player can't interact with the world, and the camera pans around in a predefined manner.
260
+ */
261
+ cutscene = 4,
262
+ /**
263
+ * The Editor Controller near ultimate power to do almost anything in the game.
264
+ */
265
+ editor = 3,
266
+ /**
267
+ * Can't interact with the world, can only observe. Used in the multiplayer waiting-to-respawn screen.
268
+ */
269
+ ghost = 0,
270
+ /**
271
+ * The controller isn't tied to a character. This is the default controller in sandbox.
272
+ */
273
+ god = 2,
499
274
  /**
500
- * See the {@link events page | runtime:events} for more info on what events contain and when they get raised.
501
- */
502
- enum events {
503
- on_ai_command_completed = 0,
504
- on_area_cloned = 1,
505
- on_biter_base_built = 2,
506
- on_brush_cloned = 3,
507
- on_build_base_arrived = 4,
508
- on_built_entity = 5,
509
- on_cancelled_deconstruction = 6,
510
- on_cancelled_upgrade = 7,
511
- on_character_corpse_expired = 8,
512
- on_chart_tag_added = 9,
513
- on_chart_tag_modified = 10,
514
- on_chart_tag_removed = 11,
515
- on_chunk_charted = 12,
516
- on_chunk_deleted = 13,
517
- on_chunk_generated = 14,
518
- on_combat_robot_expired = 15,
519
- on_console_chat = 16,
520
- on_console_command = 17,
521
- on_cutscene_cancelled = 18,
522
- on_cutscene_finished = 19,
523
- on_cutscene_started = 20,
524
- on_cutscene_waypoint_reached = 21,
525
- on_difficulty_settings_changed = 22,
526
- on_entity_cloned = 23,
527
- on_entity_color_changed = 24,
528
- on_entity_damaged = 25,
529
- on_entity_destroyed = 26,
530
- on_entity_died = 27,
531
- on_entity_logistic_slot_changed = 28,
532
- on_entity_renamed = 29,
533
- on_entity_settings_pasted = 30,
534
- on_entity_spawned = 31,
535
- on_equipment_inserted = 32,
536
- on_equipment_removed = 33,
537
- on_force_cease_fire_changed = 34,
538
- on_force_created = 35,
539
- on_force_friends_changed = 36,
540
- on_force_reset = 37,
541
- on_forces_merged = 38,
542
- on_forces_merging = 39,
543
- on_game_created_from_scenario = 40,
544
- on_gui_checked_state_changed = 41,
545
- on_gui_click = 42,
546
- on_gui_closed = 43,
547
- on_gui_confirmed = 44,
548
- on_gui_elem_changed = 45,
549
- on_gui_hover = 46,
550
- on_gui_leave = 47,
551
- on_gui_location_changed = 48,
552
- on_gui_opened = 49,
553
- on_gui_selected_tab_changed = 50,
554
- on_gui_selection_state_changed = 51,
555
- on_gui_switch_state_changed = 52,
556
- on_gui_text_changed = 53,
557
- on_gui_value_changed = 54,
558
- on_land_mine_armed = 55,
559
- on_lua_shortcut = 56,
560
- on_marked_for_deconstruction = 57,
561
- on_marked_for_upgrade = 58,
562
- on_market_item_purchased = 59,
563
- on_mod_item_opened = 60,
564
- on_permission_group_added = 61,
565
- on_permission_group_deleted = 62,
566
- on_permission_group_edited = 63,
567
- on_permission_string_imported = 64,
568
- on_picked_up_item = 65,
569
- on_player_alt_reverse_selected_area = 66,
570
- on_player_alt_selected_area = 67,
571
- on_player_ammo_inventory_changed = 68,
572
- on_player_armor_inventory_changed = 69,
573
- on_player_banned = 70,
574
- on_player_built_tile = 71,
575
- on_player_cancelled_crafting = 72,
576
- on_player_changed_force = 73,
577
- on_player_changed_position = 74,
578
- on_player_changed_surface = 75,
579
- on_player_cheat_mode_disabled = 76,
580
- on_player_cheat_mode_enabled = 77,
581
- on_player_clicked_gps_tag = 78,
582
- on_player_configured_blueprint = 79,
583
- on_player_configured_spider_remote = 80,
584
- on_player_crafted_item = 81,
585
- on_player_created = 82,
586
- on_player_cursor_stack_changed = 83,
587
- on_player_deconstructed_area = 84,
588
- on_player_demoted = 85,
589
- on_player_died = 86,
590
- on_player_display_resolution_changed = 87,
591
- on_player_display_scale_changed = 88,
592
- on_player_driving_changed_state = 89,
593
- on_player_dropped_item = 90,
594
- on_player_fast_transferred = 91,
595
- on_player_flushed_fluid = 92,
596
- on_player_gun_inventory_changed = 93,
597
- on_player_input_method_changed = 94,
598
- on_player_joined_game = 95,
599
- on_player_kicked = 96,
600
- on_player_left_game = 97,
601
- on_player_main_inventory_changed = 98,
602
- on_player_mined_entity = 99,
603
- on_player_mined_item = 100,
604
- on_player_mined_tile = 101,
605
- on_player_muted = 102,
606
- on_player_pipette = 103,
607
- on_player_placed_equipment = 104,
608
- on_player_promoted = 105,
609
- on_player_removed = 106,
610
- on_player_removed_equipment = 107,
611
- on_player_repaired_entity = 108,
612
- on_player_respawned = 109,
613
- on_player_reverse_selected_area = 110,
614
- on_player_rotated_entity = 111,
615
- on_player_selected_area = 112,
616
- on_player_set_quick_bar_slot = 113,
617
- on_player_setup_blueprint = 114,
618
- on_player_toggled_alt_mode = 115,
619
- on_player_toggled_map_editor = 116,
620
- on_player_trash_inventory_changed = 117,
621
- on_player_unbanned = 118,
622
- on_player_unmuted = 119,
623
- on_player_used_capsule = 120,
624
- on_player_used_spider_remote = 121,
625
- on_post_entity_died = 122,
626
- on_pre_build = 123,
627
- on_pre_chunk_deleted = 124,
628
- on_pre_entity_settings_pasted = 125,
629
- on_pre_ghost_deconstructed = 126,
630
- on_pre_ghost_upgraded = 127,
631
- on_pre_permission_group_deleted = 128,
632
- on_pre_permission_string_imported = 129,
633
- on_pre_player_crafted_item = 130,
634
- on_pre_player_died = 131,
635
- on_pre_player_left_game = 132,
636
- on_pre_player_mined_item = 133,
637
- on_pre_player_removed = 134,
638
- on_pre_player_toggled_map_editor = 135,
639
- on_pre_robot_exploded_cliff = 136,
640
- on_pre_script_inventory_resized = 137,
641
- on_pre_surface_cleared = 138,
642
- on_pre_surface_deleted = 139,
643
- on_research_cancelled = 140,
644
- on_research_finished = 141,
645
- on_research_reversed = 142,
646
- on_research_started = 143,
647
- on_resource_depleted = 144,
648
- on_robot_built_entity = 145,
649
- on_robot_built_tile = 146,
650
- on_robot_exploded_cliff = 147,
651
- on_robot_mined = 148,
652
- on_robot_mined_entity = 149,
653
- on_robot_mined_tile = 150,
654
- on_robot_pre_mined = 151,
655
- on_rocket_launch_ordered = 152,
656
- on_rocket_launched = 153,
657
- on_runtime_mod_setting_changed = 154,
658
- on_script_inventory_resized = 155,
659
- on_script_path_request_finished = 156,
660
- on_script_trigger_effect = 157,
661
- on_sector_scanned = 158,
662
- on_selected_entity_changed = 159,
663
- on_spider_command_completed = 160,
664
- on_string_translated = 161,
665
- on_surface_cleared = 162,
666
- on_surface_created = 163,
667
- on_surface_deleted = 164,
668
- on_surface_imported = 165,
669
- on_surface_renamed = 166,
670
- on_technology_effects_reset = 167,
671
- on_tick = 168,
672
- on_train_changed_state = 169,
673
- on_train_created = 170,
674
- on_train_schedule_changed = 171,
675
- on_trigger_created_entity = 172,
676
- on_trigger_fired_artillery = 173,
677
- on_unit_added_to_group = 174,
678
- on_unit_group_created = 175,
679
- on_unit_group_finished_gathering = 176,
680
- on_unit_removed_from_group = 177,
681
- on_worker_robot_expired = 178,
682
- script_raised_built = 179,
683
- script_raised_destroy = 180,
684
- script_raised_revive = 181,
685
- script_raised_set_tiles = 182,
686
- script_raised_teleported = 183,
275
+ * Can't change anything in the world but can view anything.
276
+ */
277
+ spectator = 5
278
+ }
279
+ namespace deconstruction_item {
280
+ enum entity_filter_mode {
281
+ blacklist = 1,
282
+ whitelist = 0
687
283
  }
688
- enum flow_precision_index {
689
- fifty_hours = 5,
690
- five_seconds = 0,
691
- one_hour = 3,
692
- one_minute = 1,
693
- one_thousand_hours = 7,
694
- ten_hours = 4,
695
- ten_minutes = 2,
696
- two_hundred_fifty_hours = 6,
284
+ enum tile_filter_mode {
285
+ blacklist = 1,
286
+ whitelist = 0
697
287
  }
698
- enum game_controller_interaction {
699
- /**
700
- * Game controller will always hover this element regardless of type or state.
701
- */
702
- always = 0,
703
- /**
704
- * Never hover this element with a game controller.
705
- */
706
- never = 1,
707
- /**
708
- * Hover according to the element type and implementation.
709
- */
710
- normal = 2,
288
+ enum tile_selection_mode {
289
+ always = 1,
290
+ never = 2,
291
+ normal = 0,
292
+ only = 3
293
+ }
294
+ }
295
+ enum difficulty {
296
+ easy = 0,
297
+ hard = 2,
298
+ normal = 1
299
+ }
300
+ namespace difficulty_settings {
301
+ enum recipe_difficulty {
302
+ expensive = 1,
303
+ normal = 0
711
304
  }
712
- enum group_state {
713
- attacking_distraction = 2,
714
- attacking_target = 3,
715
- finished = 4,
716
- gathering = 0,
717
- moving = 1,
718
- pathfinding = 5,
719
- wander_in_group = 6,
305
+ enum technology_difficulty {
306
+ expensive = 1,
307
+ normal = 0
720
308
  }
721
- enum gui_type {
309
+ }
310
+ enum direction {
311
+ east = 2,
312
+ north = 0,
313
+ northeast = 1,
314
+ northwest = 7,
315
+ south = 4,
316
+ southeast = 3,
317
+ southwest = 5,
318
+ west = 6
319
+ }
320
+ enum disconnect_reason {
321
+ afk = 6,
322
+ banned = 9,
323
+ cannot_keep_up = 5,
324
+ desync_limit_reached = 4,
325
+ dropped = 1,
326
+ kicked = 7,
327
+ kicked_and_deleted = 8,
328
+ quit = 0,
329
+ reconnect = 2,
330
+ switching_servers = 10,
331
+ wrong_input = 3
332
+ }
333
+ enum distraction {
334
+ /**
335
+ * Attack closer enemy entities, including entities "built" by player (belts, inserters, chests).
336
+ */
337
+ by_anything = 2,
338
+ /**
339
+ * Attack when attacked.
340
+ */
341
+ by_damage = 3,
342
+ /**
343
+ * Attack closer enemy entities with force.
344
+ */
345
+ by_enemy = 1,
346
+ /**
347
+ * Perform command even if someone attacks the unit.
348
+ */
349
+ none = 0
350
+ }
351
+ enum entity_status {
352
+ /**
353
+ * Used by rail signals.
354
+ */
355
+ cant_divide_segments = 43,
356
+ /**
357
+ * Used by accumulators.
358
+ */
359
+ charging = 13,
360
+ closed_by_circuit_network = 7,
361
+ /**
362
+ * Used by constant combinators: Combinator is turned off via switch in GUI.
363
+ */
364
+ disabled = 40,
365
+ disabled_by_control_behavior = 5,
366
+ disabled_by_script = 8,
367
+ /**
368
+ * Used by accumulators.
369
+ */
370
+ discharging = 14,
371
+ /**
372
+ * Used by crafting machines.
373
+ */
374
+ fluid_ingredient_shortage = 23,
375
+ /**
376
+ * Used by burner energy sources.
377
+ */
378
+ full_burnt_result_output = 25,
379
+ /**
380
+ * Used by crafting machines, boilers, burner energy sources and reactors: Reactor/burner has full burnt result inventory, boiler has full output fluidbox.
381
+ */
382
+ full_output = 24,
383
+ /**
384
+ * Used by accumulators.
385
+ */
386
+ fully_charged = 15,
387
+ /**
388
+ * Used by crafting machines.
389
+ */
390
+ item_ingredient_shortage = 26,
391
+ /**
392
+ * Used by the rocket silo.
393
+ */
394
+ launching_rocket = 33,
395
+ /**
396
+ * Used by boilers and fluid turrets: Boiler still has some fluid but is about to run out.
397
+ */
398
+ low_input_fluid = 22,
399
+ low_power = 3,
400
+ /**
401
+ * Used by heat energy sources.
402
+ */
403
+ low_temperature = 39,
404
+ marked_for_deconstruction = 9,
405
+ /**
406
+ * Used by mining drills when the mining fluid is missing.
407
+ */
408
+ missing_required_fluid = 27,
409
+ /**
410
+ * Used by labs.
411
+ */
412
+ missing_science_packs = 28,
413
+ /**
414
+ * Used by power switches.
415
+ */
416
+ networks_connected = 11,
417
+ /**
418
+ * Used by power switches.
419
+ */
420
+ networks_disconnected = 12,
421
+ /**
422
+ * Used by ammo turrets.
423
+ */
424
+ no_ammo = 38,
425
+ no_fuel = 4,
426
+ /**
427
+ * Used by furnaces.
428
+ */
429
+ no_ingredients = 18,
430
+ /**
431
+ * Used by boilers, fluid turrets and fluid energy sources: Boiler has no fluid to work with.
432
+ */
433
+ no_input_fluid = 19,
434
+ /**
435
+ * Used by mining drills.
436
+ */
437
+ no_minable_resources = 21,
438
+ /**
439
+ * Used by beacons.
440
+ */
441
+ no_modules_to_transmit = 34,
442
+ no_power = 2,
443
+ /**
444
+ * Used by assembling machines.
445
+ */
446
+ no_recipe = 17,
447
+ /**
448
+ * Used by labs.
449
+ */
450
+ no_research_in_progress = 20,
451
+ normal = 1,
452
+ /**
453
+ * Used by rail signals.
454
+ */
455
+ not_connected_to_rail = 42,
456
+ /**
457
+ * Used by generators and solar panels.
458
+ */
459
+ not_plugged_in_electric_network = 10,
460
+ opened_by_circuit_network = 6,
461
+ /**
462
+ * Used by logistic containers.
463
+ */
464
+ out_of_logistic_network = 16,
465
+ /**
466
+ * Used by the rocket silo.
467
+ */
468
+ preparing_rocket_for_launch = 31,
469
+ /**
470
+ * Used by roboports.
471
+ */
472
+ recharging_after_power_outage = 35,
473
+ /**
474
+ * Used by lamps.
475
+ */
476
+ turned_off_during_daytime = 41,
477
+ /**
478
+ * Used by inserters.
479
+ */
480
+ waiting_for_source_items = 29,
481
+ /**
482
+ * Used by inserters and mining drills.
483
+ */
484
+ waiting_for_space_in_destination = 30,
485
+ /**
486
+ * Used by inserters targeting entity ghosts.
487
+ */
488
+ waiting_for_target_to_be_built = 36,
489
+ /**
490
+ * Used by inserters targeting rails.
491
+ */
492
+ waiting_for_train = 37,
493
+ /**
494
+ * Used by the rocket silo.
495
+ */
496
+ waiting_to_launch_rocket = 32,
497
+ working = 0
498
+ }
499
+ /**
500
+ * See the {@link events page | runtime:events} for more info on what events contain and when they get raised.
501
+ */
502
+ enum events {
503
+ on_ai_command_completed = 0,
504
+ on_area_cloned = 1,
505
+ on_biter_base_built = 2,
506
+ on_brush_cloned = 3,
507
+ on_build_base_arrived = 4,
508
+ on_built_entity = 5,
509
+ on_cancelled_deconstruction = 6,
510
+ on_cancelled_upgrade = 7,
511
+ on_character_corpse_expired = 8,
512
+ on_chart_tag_added = 9,
513
+ on_chart_tag_modified = 10,
514
+ on_chart_tag_removed = 11,
515
+ on_chunk_charted = 12,
516
+ on_chunk_deleted = 13,
517
+ on_chunk_generated = 14,
518
+ on_combat_robot_expired = 15,
519
+ on_console_chat = 16,
520
+ on_console_command = 17,
521
+ on_cutscene_cancelled = 18,
522
+ on_cutscene_finished = 19,
523
+ on_cutscene_started = 20,
524
+ on_cutscene_waypoint_reached = 21,
525
+ on_difficulty_settings_changed = 22,
526
+ on_entity_cloned = 23,
527
+ on_entity_color_changed = 24,
528
+ on_entity_damaged = 25,
529
+ on_entity_destroyed = 26,
530
+ on_entity_died = 27,
531
+ on_entity_logistic_slot_changed = 28,
532
+ on_entity_renamed = 29,
533
+ on_entity_settings_pasted = 30,
534
+ on_entity_spawned = 31,
535
+ on_equipment_inserted = 32,
536
+ on_equipment_removed = 33,
537
+ on_force_cease_fire_changed = 34,
538
+ on_force_created = 35,
539
+ on_force_friends_changed = 36,
540
+ on_force_reset = 37,
541
+ on_forces_merged = 38,
542
+ on_forces_merging = 39,
543
+ on_game_created_from_scenario = 40,
544
+ on_gui_checked_state_changed = 41,
545
+ on_gui_click = 42,
546
+ on_gui_closed = 43,
547
+ on_gui_confirmed = 44,
548
+ on_gui_elem_changed = 45,
549
+ on_gui_hover = 46,
550
+ on_gui_leave = 47,
551
+ on_gui_location_changed = 48,
552
+ on_gui_opened = 49,
553
+ on_gui_selected_tab_changed = 50,
554
+ on_gui_selection_state_changed = 51,
555
+ on_gui_switch_state_changed = 52,
556
+ on_gui_text_changed = 53,
557
+ on_gui_value_changed = 54,
558
+ on_land_mine_armed = 55,
559
+ on_lua_shortcut = 56,
560
+ on_marked_for_deconstruction = 57,
561
+ on_marked_for_upgrade = 58,
562
+ on_market_item_purchased = 59,
563
+ on_mod_item_opened = 60,
564
+ on_permission_group_added = 61,
565
+ on_permission_group_deleted = 62,
566
+ on_permission_group_edited = 63,
567
+ on_permission_string_imported = 64,
568
+ on_picked_up_item = 65,
569
+ on_player_alt_reverse_selected_area = 66,
570
+ on_player_alt_selected_area = 67,
571
+ on_player_ammo_inventory_changed = 68,
572
+ on_player_armor_inventory_changed = 69,
573
+ on_player_banned = 70,
574
+ on_player_built_tile = 71,
575
+ on_player_cancelled_crafting = 72,
576
+ on_player_changed_force = 73,
577
+ on_player_changed_position = 74,
578
+ on_player_changed_surface = 75,
579
+ on_player_cheat_mode_disabled = 76,
580
+ on_player_cheat_mode_enabled = 77,
581
+ on_player_clicked_gps_tag = 78,
582
+ on_player_configured_blueprint = 79,
583
+ on_player_configured_spider_remote = 80,
584
+ on_player_crafted_item = 81,
585
+ on_player_created = 82,
586
+ on_player_cursor_stack_changed = 83,
587
+ on_player_deconstructed_area = 84,
588
+ on_player_demoted = 85,
589
+ on_player_died = 86,
590
+ on_player_display_resolution_changed = 87,
591
+ on_player_display_scale_changed = 88,
592
+ on_player_driving_changed_state = 89,
593
+ on_player_dropped_item = 90,
594
+ on_player_fast_transferred = 91,
595
+ on_player_flushed_fluid = 92,
596
+ on_player_gun_inventory_changed = 93,
597
+ on_player_input_method_changed = 94,
598
+ on_player_joined_game = 95,
599
+ on_player_kicked = 96,
600
+ on_player_left_game = 97,
601
+ on_player_main_inventory_changed = 98,
602
+ on_player_mined_entity = 99,
603
+ on_player_mined_item = 100,
604
+ on_player_mined_tile = 101,
605
+ on_player_muted = 102,
606
+ on_player_pipette = 103,
607
+ on_player_placed_equipment = 104,
608
+ on_player_promoted = 105,
609
+ on_player_removed = 106,
610
+ on_player_removed_equipment = 107,
611
+ on_player_repaired_entity = 108,
612
+ on_player_respawned = 109,
613
+ on_player_reverse_selected_area = 110,
614
+ on_player_rotated_entity = 111,
615
+ on_player_selected_area = 112,
616
+ on_player_set_quick_bar_slot = 113,
617
+ on_player_setup_blueprint = 114,
618
+ on_player_toggled_alt_mode = 115,
619
+ on_player_toggled_map_editor = 116,
620
+ on_player_trash_inventory_changed = 117,
621
+ on_player_unbanned = 118,
622
+ on_player_unmuted = 119,
623
+ on_player_used_capsule = 120,
624
+ on_player_used_spider_remote = 121,
625
+ on_post_entity_died = 122,
626
+ on_pre_build = 123,
627
+ on_pre_chunk_deleted = 124,
628
+ on_pre_entity_settings_pasted = 125,
629
+ on_pre_ghost_deconstructed = 126,
630
+ on_pre_ghost_upgraded = 127,
631
+ on_pre_permission_group_deleted = 128,
632
+ on_pre_permission_string_imported = 129,
633
+ on_pre_player_crafted_item = 130,
634
+ on_pre_player_died = 131,
635
+ on_pre_player_left_game = 132,
636
+ on_pre_player_mined_item = 133,
637
+ on_pre_player_removed = 134,
638
+ on_pre_player_toggled_map_editor = 135,
639
+ on_pre_robot_exploded_cliff = 136,
640
+ on_pre_script_inventory_resized = 137,
641
+ on_pre_surface_cleared = 138,
642
+ on_pre_surface_deleted = 139,
643
+ on_research_cancelled = 140,
644
+ on_research_finished = 141,
645
+ on_research_reversed = 142,
646
+ on_research_started = 143,
647
+ on_resource_depleted = 144,
648
+ on_robot_built_entity = 145,
649
+ on_robot_built_tile = 146,
650
+ on_robot_exploded_cliff = 147,
651
+ on_robot_mined = 148,
652
+ on_robot_mined_entity = 149,
653
+ on_robot_mined_tile = 150,
654
+ on_robot_pre_mined = 151,
655
+ on_rocket_launch_ordered = 152,
656
+ on_rocket_launched = 153,
657
+ on_runtime_mod_setting_changed = 154,
658
+ on_script_inventory_resized = 155,
659
+ on_script_path_request_finished = 156,
660
+ on_script_trigger_effect = 157,
661
+ on_sector_scanned = 158,
662
+ on_selected_entity_changed = 159,
663
+ on_spider_command_completed = 160,
664
+ on_string_translated = 161,
665
+ on_surface_cleared = 162,
666
+ on_surface_created = 163,
667
+ on_surface_deleted = 164,
668
+ on_surface_imported = 165,
669
+ on_surface_renamed = 166,
670
+ on_technology_effects_reset = 167,
671
+ on_tick = 168,
672
+ on_train_changed_state = 169,
673
+ on_train_created = 170,
674
+ on_train_schedule_changed = 171,
675
+ on_trigger_created_entity = 172,
676
+ on_trigger_fired_artillery = 173,
677
+ on_unit_added_to_group = 174,
678
+ on_unit_group_created = 175,
679
+ on_unit_group_finished_gathering = 176,
680
+ on_unit_removed_from_group = 177,
681
+ on_worker_robot_expired = 178,
682
+ script_raised_built = 179,
683
+ script_raised_destroy = 180,
684
+ script_raised_revive = 181,
685
+ script_raised_set_tiles = 182,
686
+ script_raised_teleported = 183
687
+ }
688
+ enum flow_precision_index {
689
+ fifty_hours = 5,
690
+ five_seconds = 0,
691
+ one_hour = 3,
692
+ one_minute = 1,
693
+ one_thousand_hours = 7,
694
+ ten_hours = 4,
695
+ ten_minutes = 2,
696
+ two_hundred_fifty_hours = 6
697
+ }
698
+ enum game_controller_interaction {
699
+ /**
700
+ * Game controller will always hover this element regardless of type or state.
701
+ */
702
+ always = 0,
703
+ /**
704
+ * Never hover this element with a game controller.
705
+ */
706
+ never = 1,
707
+ /**
708
+ * Hover according to the element type and implementation.
709
+ */
710
+ normal = 2
711
+ }
712
+ enum group_state {
713
+ attacking_distraction = 2,
714
+ attacking_target = 3,
715
+ finished = 4,
716
+ gathering = 0,
717
+ moving = 1,
718
+ pathfinding = 5,
719
+ wander_in_group = 6
720
+ }
721
+ enum gui_type {
722
+ achievement = 0,
723
+ blueprint_library = 1,
724
+ bonus = 2,
725
+ controller = 3,
726
+ custom = 4,
727
+ entity = 5,
728
+ equipment = 6,
729
+ item = 7,
730
+ logistic = 8,
731
+ none = 9,
732
+ other_player = 10,
733
+ permissions = 11,
734
+ player_management = 12,
735
+ production = 13,
736
+ research = 14,
737
+ script_inventory = 15,
738
+ server_management = 16,
739
+ tile = 17,
740
+ trains = 18,
741
+ tutorials = 19
742
+ }
743
+ enum input_action {
744
+ activate_copy = 0,
745
+ activate_cut = 1,
746
+ activate_paste = 2,
747
+ add_permission_group = 3,
748
+ add_train_station = 4,
749
+ admin_action = 5,
750
+ alt_reverse_select_area = 6,
751
+ alt_select_area = 7,
752
+ alt_select_blueprint_entities = 8,
753
+ alternative_copy = 9,
754
+ begin_mining = 10,
755
+ begin_mining_terrain = 11,
756
+ build = 12,
757
+ build_rail = 13,
758
+ build_terrain = 14,
759
+ cancel_craft = 15,
760
+ cancel_deconstruct = 16,
761
+ cancel_new_blueprint = 17,
762
+ cancel_research = 18,
763
+ cancel_upgrade = 19,
764
+ change_active_character_tab = 20,
765
+ change_active_item_group_for_crafting = 21,
766
+ change_active_item_group_for_filters = 22,
767
+ change_active_quick_bar = 23,
768
+ change_arithmetic_combinator_parameters = 24,
769
+ change_decider_combinator_parameters = 25,
770
+ change_entity_label = 26,
771
+ change_item_description = 27,
772
+ change_item_label = 28,
773
+ change_multiplayer_config = 29,
774
+ change_picking_state = 30,
775
+ change_programmable_speaker_alert_parameters = 31,
776
+ change_programmable_speaker_circuit_parameters = 32,
777
+ change_programmable_speaker_parameters = 33,
778
+ change_riding_state = 34,
779
+ change_shooting_state = 35,
780
+ change_train_stop_station = 36,
781
+ change_train_wait_condition = 37,
782
+ change_train_wait_condition_data = 38,
783
+ clear_cursor = 39,
784
+ connect_rolling_stock = 40,
785
+ copy = 41,
786
+ copy_entity_settings = 42,
787
+ copy_opened_blueprint = 43,
788
+ copy_opened_item = 44,
789
+ craft = 45,
790
+ cursor_split = 46,
791
+ cursor_transfer = 47,
792
+ custom_input = 48,
793
+ cycle_blueprint_book_backwards = 49,
794
+ cycle_blueprint_book_forwards = 50,
795
+ deconstruct = 51,
796
+ delete_blueprint_library = 52,
797
+ delete_blueprint_record = 53,
798
+ delete_custom_tag = 54,
799
+ delete_permission_group = 55,
800
+ destroy_item = 56,
801
+ destroy_opened_item = 57,
802
+ disconnect_rolling_stock = 58,
803
+ drag_train_schedule = 59,
804
+ drag_train_wait_condition = 60,
805
+ drop_blueprint_record = 61,
806
+ drop_item = 62,
807
+ edit_blueprint_tool_preview = 63,
808
+ edit_custom_tag = 64,
809
+ edit_permission_group = 65,
810
+ export_blueprint = 66,
811
+ fast_entity_split = 67,
812
+ fast_entity_transfer = 68,
813
+ flush_opened_entity_fluid = 69,
814
+ flush_opened_entity_specific_fluid = 70,
815
+ go_to_train_station = 71,
816
+ grab_blueprint_record = 72,
817
+ gui_checked_state_changed = 73,
818
+ gui_click = 74,
819
+ gui_confirmed = 75,
820
+ gui_elem_changed = 76,
821
+ gui_hover = 77,
822
+ gui_leave = 78,
823
+ gui_location_changed = 79,
824
+ gui_selected_tab_changed = 80,
825
+ gui_selection_state_changed = 81,
826
+ gui_switch_state_changed = 82,
827
+ gui_text_changed = 83,
828
+ gui_value_changed = 84,
829
+ import_blueprint = 85,
830
+ import_blueprint_string = 86,
831
+ import_blueprints_filtered = 87,
832
+ import_permissions_string = 88,
833
+ inventory_split = 89,
834
+ inventory_transfer = 90,
835
+ launch_rocket = 91,
836
+ lua_shortcut = 92,
837
+ map_editor_action = 93,
838
+ market_offer = 94,
839
+ mod_settings_changed = 95,
840
+ open_achievements_gui = 96,
841
+ open_blueprint_library_gui = 97,
842
+ open_blueprint_record = 98,
843
+ open_bonus_gui = 99,
844
+ open_character_gui = 100,
845
+ open_current_vehicle_gui = 101,
846
+ open_equipment = 102,
847
+ open_gui = 103,
848
+ open_item = 104,
849
+ open_logistic_gui = 105,
850
+ open_mod_item = 106,
851
+ open_parent_of_opened_item = 107,
852
+ open_production_gui = 108,
853
+ open_technology_gui = 109,
854
+ open_tips_and_tricks_gui = 110,
855
+ open_train_gui = 111,
856
+ open_train_station_gui = 112,
857
+ open_trains_gui = 113,
858
+ paste_entity_settings = 114,
859
+ place_equipment = 115,
860
+ quick_bar_pick_slot = 116,
861
+ quick_bar_set_selected_page = 117,
862
+ quick_bar_set_slot = 118,
863
+ reassign_blueprint = 119,
864
+ remove_cables = 120,
865
+ remove_train_station = 121,
866
+ reset_assembling_machine = 122,
867
+ reset_item = 123,
868
+ reverse_select_area = 124,
869
+ rotate_entity = 125,
870
+ select_area = 126,
871
+ select_blueprint_entities = 127,
872
+ select_entity_slot = 128,
873
+ select_item = 129,
874
+ select_mapper_slot = 130,
875
+ select_next_valid_gun = 131,
876
+ select_tile_slot = 132,
877
+ send_spidertron = 133,
878
+ set_auto_launch_rocket = 134,
879
+ set_autosort_inventory = 135,
880
+ set_behavior_mode = 136,
881
+ set_car_weapons_control = 137,
882
+ set_circuit_condition = 138,
883
+ set_circuit_mode_of_operation = 139,
884
+ set_controller_logistic_trash_filter_item = 140,
885
+ set_deconstruction_item_tile_selection_mode = 141,
886
+ set_deconstruction_item_trees_and_rocks_only = 142,
887
+ set_entity_color = 143,
888
+ set_entity_energy_property = 144,
889
+ set_entity_logistic_trash_filter_item = 145,
890
+ set_filter = 146,
891
+ set_flat_controller_gui = 147,
892
+ set_heat_interface_mode = 148,
893
+ set_heat_interface_temperature = 149,
894
+ set_infinity_container_filter_item = 150,
895
+ set_infinity_container_remove_unfiltered_items = 151,
896
+ set_infinity_pipe_filter = 152,
897
+ set_inserter_max_stack_size = 153,
898
+ set_inventory_bar = 154,
899
+ set_linked_container_link_i_d = 155,
900
+ set_logistic_filter_item = 156,
901
+ set_logistic_filter_signal = 157,
902
+ set_player_color = 158,
903
+ set_recipe_notifications = 159,
904
+ set_request_from_buffers = 160,
905
+ set_research_finished_stops_game = 161,
906
+ set_signal = 162,
907
+ set_splitter_priority = 163,
908
+ set_train_stopped = 164,
909
+ set_trains_limit = 165,
910
+ set_vehicle_automatic_targeting_parameters = 166,
911
+ setup_assembling_machine = 167,
912
+ setup_blueprint = 168,
913
+ setup_single_blueprint_record = 169,
914
+ smart_pipette = 170,
915
+ spawn_item = 171,
916
+ stack_split = 172,
917
+ stack_transfer = 173,
918
+ start_repair = 174,
919
+ start_research = 175,
920
+ start_walking = 176,
921
+ stop_building_by_moving = 177,
922
+ switch_connect_to_logistic_network = 178,
923
+ switch_constant_combinator_state = 179,
924
+ switch_inserter_filter_mode_state = 180,
925
+ switch_power_switch_state = 181,
926
+ switch_to_rename_stop_gui = 182,
927
+ take_equipment = 183,
928
+ toggle_deconstruction_item_entity_filter_mode = 184,
929
+ toggle_deconstruction_item_tile_filter_mode = 185,
930
+ toggle_driving = 186,
931
+ toggle_enable_vehicle_logistics_while_moving = 187,
932
+ toggle_entity_logistic_requests = 188,
933
+ toggle_equipment_movement_bonus = 189,
934
+ toggle_map_editor = 190,
935
+ toggle_personal_logistic_requests = 191,
936
+ toggle_personal_roboport = 192,
937
+ toggle_show_entity_info = 193,
938
+ translate_string = 194,
939
+ undo = 195,
940
+ upgrade = 196,
941
+ upgrade_opened_blueprint_by_item = 197,
942
+ upgrade_opened_blueprint_by_record = 198,
943
+ use_artillery_remote = 199,
944
+ use_item = 200,
945
+ wire_dragging = 201,
946
+ write_to_console = 202
947
+ }
948
+ enum input_method {
949
+ game_controller = 1,
950
+ keyboard_and_mouse = 0
951
+ }
952
+ enum inventory {
953
+ artillery_turret_ammo = 40,
954
+ artillery_wagon_ammo = 41,
955
+ assembling_machine_input = 21,
956
+ assembling_machine_modules = 23,
957
+ assembling_machine_output = 22,
958
+ beacon_modules = 38,
959
+ burnt_result = 1,
960
+ car_ammo = 35,
961
+ car_trunk = 34,
962
+ cargo_wagon = 36,
963
+ character_ammo = 8,
964
+ character_armor = 9,
965
+ character_corpse = 39,
966
+ character_guns = 7,
967
+ character_main = 6,
968
+ character_trash = 11,
969
+ character_vehicle = 10,
970
+ chest = 2,
971
+ editor_ammo = 15,
972
+ editor_armor = 16,
973
+ editor_guns = 14,
974
+ editor_main = 13,
975
+ fuel = 0,
976
+ furnace_modules = 5,
977
+ furnace_result = 4,
978
+ furnace_source = 3,
979
+ god_main = 12,
980
+ item_main = 27,
981
+ lab_input = 24,
982
+ lab_modules = 25,
983
+ mining_drill_modules = 26,
984
+ roboport_material = 18,
985
+ roboport_robot = 17,
986
+ robot_cargo = 19,
987
+ robot_repair = 20,
988
+ rocket = 33,
989
+ rocket_silo_input = 30,
990
+ rocket_silo_modules = 32,
991
+ rocket_silo_output = 31,
992
+ rocket_silo_result = 29,
993
+ rocket_silo_rocket = 28,
994
+ spider_ammo = 43,
995
+ spider_trash = 44,
996
+ spider_trunk = 42,
997
+ turret_ammo = 37
998
+ }
999
+ enum logistic_member_index {
1000
+ character_provider = 4,
1001
+ character_requester = 2,
1002
+ character_storage = 3,
1003
+ generic_on_off_behavior = 5,
1004
+ logistic_container = 0,
1005
+ vehicle_storage = 1
1006
+ }
1007
+ enum logistic_mode {
1008
+ active_provider = 1,
1009
+ buffer = 5,
1010
+ none = 0,
1011
+ passive_provider = 4,
1012
+ requester = 3,
1013
+ storage = 2
1014
+ }
1015
+ enum mouse_button_type {
1016
+ left = 1,
1017
+ middle = 3,
1018
+ none = 0,
1019
+ right = 2
1020
+ }
1021
+ enum print_skip {
1022
+ /**
1023
+ * Print will be skipped if same text was recently printed (within last 60 ticks). Used by most game messages.
1024
+ */
1025
+ if_redundant = 1,
1026
+ /**
1027
+ * Print will be skipped if same text is still visible (printed within last 1152 ticks). Used by some notifications.
1028
+ */
1029
+ if_visible = 2,
1030
+ /**
1031
+ * Print will not be skipped.
1032
+ */
1033
+ never = 0
1034
+ }
1035
+ enum print_sound {
1036
+ always = 0,
1037
+ never = 1,
1038
+ use_player_settings = 2
1039
+ }
1040
+ /**
1041
+ * This define describes all top-level prototypes and their associated subtypes. It is organized as a lookup table, meaning the values of all the defines is `0`. As an example, `defines.prototypes['entity']` looks like `{furnace=0, inserter=0, container=0, ...}`.
1042
+ */
1043
+ namespace prototypes {
1044
+ enum achievement {
722
1045
  achievement = 0,
723
- blueprint_library = 1,
724
- bonus = 2,
725
- controller = 3,
726
- custom = 4,
727
- entity = 5,
728
- equipment = 6,
729
- item = 7,
730
- logistic = 8,
731
- none = 9,
732
- other_player = 10,
733
- permissions = 11,
734
- player_management = 12,
735
- production = 13,
736
- research = 14,
737
- script_inventory = 15,
738
- server_management = 16,
739
- tile = 17,
740
- trains = 18,
741
- tutorials = 19,
1046
+ 'build-entity-achievement' = 1,
1047
+ 'combat-robot-count' = 2,
1048
+ 'construct-with-robots-achievement' = 3,
1049
+ 'deconstruct-with-robots-achievement' = 4,
1050
+ 'deliver-by-robots-achievement' = 5,
1051
+ 'dont-build-entity-achievement' = 6,
1052
+ 'dont-craft-manually-achievement' = 7,
1053
+ 'dont-use-entity-in-energy-production-achievement' = 8,
1054
+ 'finish-the-game-achievement' = 9,
1055
+ 'group-attack-achievement' = 10,
1056
+ 'kill-achievement' = 11,
1057
+ 'player-damaged-achievement' = 12,
1058
+ 'produce-achievement' = 13,
1059
+ 'produce-per-hour-achievement' = 14,
1060
+ 'research-achievement' = 15,
1061
+ 'train-path-achievement' = 16
742
1062
  }
743
- enum input_action {
744
- activate_copy = 0,
745
- activate_cut = 1,
746
- activate_paste = 2,
747
- add_permission_group = 3,
748
- add_train_station = 4,
749
- admin_action = 5,
750
- alt_reverse_select_area = 6,
751
- alt_select_area = 7,
752
- alt_select_blueprint_entities = 8,
753
- alternative_copy = 9,
754
- begin_mining = 10,
755
- begin_mining_terrain = 11,
756
- build = 12,
757
- build_rail = 13,
758
- build_terrain = 14,
759
- cancel_craft = 15,
760
- cancel_deconstruct = 16,
761
- cancel_new_blueprint = 17,
762
- cancel_research = 18,
763
- cancel_upgrade = 19,
764
- change_active_character_tab = 20,
765
- change_active_item_group_for_crafting = 21,
766
- change_active_item_group_for_filters = 22,
767
- change_active_quick_bar = 23,
768
- change_arithmetic_combinator_parameters = 24,
769
- change_decider_combinator_parameters = 25,
770
- change_entity_label = 26,
771
- change_item_description = 27,
772
- change_item_label = 28,
773
- change_multiplayer_config = 29,
774
- change_picking_state = 30,
775
- change_programmable_speaker_alert_parameters = 31,
776
- change_programmable_speaker_circuit_parameters = 32,
777
- change_programmable_speaker_parameters = 33,
778
- change_riding_state = 34,
779
- change_shooting_state = 35,
780
- change_train_stop_station = 36,
781
- change_train_wait_condition = 37,
782
- change_train_wait_condition_data = 38,
783
- clear_cursor = 39,
784
- connect_rolling_stock = 40,
785
- copy = 41,
786
- copy_entity_settings = 42,
787
- copy_opened_blueprint = 43,
788
- copy_opened_item = 44,
789
- craft = 45,
790
- cursor_split = 46,
791
- cursor_transfer = 47,
792
- custom_input = 48,
793
- cycle_blueprint_book_backwards = 49,
794
- cycle_blueprint_book_forwards = 50,
795
- deconstruct = 51,
796
- delete_blueprint_library = 52,
797
- delete_blueprint_record = 53,
798
- delete_custom_tag = 54,
799
- delete_permission_group = 55,
800
- destroy_item = 56,
801
- destroy_opened_item = 57,
802
- disconnect_rolling_stock = 58,
803
- drag_train_schedule = 59,
804
- drag_train_wait_condition = 60,
805
- drop_blueprint_record = 61,
806
- drop_item = 62,
807
- edit_blueprint_tool_preview = 63,
808
- edit_custom_tag = 64,
809
- edit_permission_group = 65,
810
- export_blueprint = 66,
811
- fast_entity_split = 67,
812
- fast_entity_transfer = 68,
813
- flush_opened_entity_fluid = 69,
814
- flush_opened_entity_specific_fluid = 70,
815
- go_to_train_station = 71,
816
- grab_blueprint_record = 72,
817
- gui_checked_state_changed = 73,
818
- gui_click = 74,
819
- gui_confirmed = 75,
820
- gui_elem_changed = 76,
821
- gui_hover = 77,
822
- gui_leave = 78,
823
- gui_location_changed = 79,
824
- gui_selected_tab_changed = 80,
825
- gui_selection_state_changed = 81,
826
- gui_switch_state_changed = 82,
827
- gui_text_changed = 83,
828
- gui_value_changed = 84,
829
- import_blueprint = 85,
830
- import_blueprint_string = 86,
831
- import_blueprints_filtered = 87,
832
- import_permissions_string = 88,
833
- inventory_split = 89,
834
- inventory_transfer = 90,
835
- launch_rocket = 91,
836
- lua_shortcut = 92,
837
- map_editor_action = 93,
838
- market_offer = 94,
839
- mod_settings_changed = 95,
840
- open_achievements_gui = 96,
841
- open_blueprint_library_gui = 97,
842
- open_blueprint_record = 98,
843
- open_bonus_gui = 99,
844
- open_character_gui = 100,
845
- open_current_vehicle_gui = 101,
846
- open_equipment = 102,
847
- open_gui = 103,
848
- open_item = 104,
849
- open_logistic_gui = 105,
850
- open_mod_item = 106,
851
- open_parent_of_opened_item = 107,
852
- open_production_gui = 108,
853
- open_technology_gui = 109,
854
- open_tips_and_tricks_gui = 110,
855
- open_train_gui = 111,
856
- open_train_station_gui = 112,
857
- open_trains_gui = 113,
858
- paste_entity_settings = 114,
859
- place_equipment = 115,
860
- quick_bar_pick_slot = 116,
861
- quick_bar_set_selected_page = 117,
862
- quick_bar_set_slot = 118,
863
- reassign_blueprint = 119,
864
- remove_cables = 120,
865
- remove_train_station = 121,
866
- reset_assembling_machine = 122,
867
- reset_item = 123,
868
- reverse_select_area = 124,
869
- rotate_entity = 125,
870
- select_area = 126,
871
- select_blueprint_entities = 127,
872
- select_entity_slot = 128,
873
- select_item = 129,
874
- select_mapper_slot = 130,
875
- select_next_valid_gun = 131,
876
- select_tile_slot = 132,
877
- send_spidertron = 133,
878
- set_auto_launch_rocket = 134,
879
- set_autosort_inventory = 135,
880
- set_behavior_mode = 136,
881
- set_car_weapons_control = 137,
882
- set_circuit_condition = 138,
883
- set_circuit_mode_of_operation = 139,
884
- set_controller_logistic_trash_filter_item = 140,
885
- set_deconstruction_item_tile_selection_mode = 141,
886
- set_deconstruction_item_trees_and_rocks_only = 142,
887
- set_entity_color = 143,
888
- set_entity_energy_property = 144,
889
- set_entity_logistic_trash_filter_item = 145,
890
- set_filter = 146,
891
- set_flat_controller_gui = 147,
892
- set_heat_interface_mode = 148,
893
- set_heat_interface_temperature = 149,
894
- set_infinity_container_filter_item = 150,
895
- set_infinity_container_remove_unfiltered_items = 151,
896
- set_infinity_pipe_filter = 152,
897
- set_inserter_max_stack_size = 153,
898
- set_inventory_bar = 154,
899
- set_linked_container_link_i_d = 155,
900
- set_logistic_filter_item = 156,
901
- set_logistic_filter_signal = 157,
902
- set_player_color = 158,
903
- set_recipe_notifications = 159,
904
- set_request_from_buffers = 160,
905
- set_research_finished_stops_game = 161,
906
- set_signal = 162,
907
- set_splitter_priority = 163,
908
- set_train_stopped = 164,
909
- set_trains_limit = 165,
910
- set_vehicle_automatic_targeting_parameters = 166,
911
- setup_assembling_machine = 167,
912
- setup_blueprint = 168,
913
- setup_single_blueprint_record = 169,
914
- smart_pipette = 170,
915
- spawn_item = 171,
916
- stack_split = 172,
917
- stack_transfer = 173,
918
- start_repair = 174,
919
- start_research = 175,
920
- start_walking = 176,
921
- stop_building_by_moving = 177,
922
- switch_connect_to_logistic_network = 178,
923
- switch_constant_combinator_state = 179,
924
- switch_inserter_filter_mode_state = 180,
925
- switch_power_switch_state = 181,
926
- switch_to_rename_stop_gui = 182,
927
- take_equipment = 183,
928
- toggle_deconstruction_item_entity_filter_mode = 184,
929
- toggle_deconstruction_item_tile_filter_mode = 185,
930
- toggle_driving = 186,
931
- toggle_enable_vehicle_logistics_while_moving = 187,
932
- toggle_entity_logistic_requests = 188,
933
- toggle_equipment_movement_bonus = 189,
934
- toggle_map_editor = 190,
935
- toggle_personal_logistic_requests = 191,
936
- toggle_personal_roboport = 192,
937
- toggle_show_entity_info = 193,
938
- translate_string = 194,
939
- undo = 195,
940
- upgrade = 196,
941
- upgrade_opened_blueprint_by_item = 197,
942
- upgrade_opened_blueprint_by_record = 198,
943
- use_artillery_remote = 199,
944
- use_item = 200,
945
- wire_dragging = 201,
946
- write_to_console = 202,
1063
+ /**
1064
+ * @customName ambient-sound
1065
+ */
1066
+ enum ambient_sound {
1067
+ 'ambient-sound' = 0
947
1068
  }
948
- enum input_method {
949
- game_controller = 1,
950
- keyboard_and_mouse = 0,
1069
+ /**
1070
+ * @customName ammo-category
1071
+ */
1072
+ enum ammo_category {
1073
+ 'ammo-category' = 0
951
1074
  }
952
- enum inventory {
953
- artillery_turret_ammo = 40,
954
- artillery_wagon_ammo = 41,
955
- assembling_machine_input = 21,
956
- assembling_machine_modules = 23,
957
- assembling_machine_output = 22,
958
- beacon_modules = 38,
959
- burnt_result = 1,
960
- car_ammo = 35,
961
- car_trunk = 34,
962
- cargo_wagon = 36,
963
- character_ammo = 8,
964
- character_armor = 9,
965
- character_corpse = 39,
966
- character_guns = 7,
967
- character_main = 6,
968
- character_trash = 11,
969
- character_vehicle = 10,
970
- chest = 2,
971
- editor_ammo = 15,
972
- editor_armor = 16,
973
- editor_guns = 14,
974
- editor_main = 13,
975
- fuel = 0,
976
- furnace_modules = 5,
977
- furnace_result = 4,
978
- furnace_source = 3,
979
- god_main = 12,
980
- item_main = 27,
981
- lab_input = 24,
982
- lab_modules = 25,
983
- mining_drill_modules = 26,
984
- roboport_material = 18,
985
- roboport_robot = 17,
986
- robot_cargo = 19,
987
- robot_repair = 20,
988
- rocket = 33,
989
- rocket_silo_input = 30,
990
- rocket_silo_modules = 32,
991
- rocket_silo_output = 31,
992
- rocket_silo_result = 29,
993
- rocket_silo_rocket = 28,
994
- spider_ammo = 43,
995
- spider_trash = 44,
996
- spider_trunk = 42,
997
- turret_ammo = 37,
1075
+ enum animation {
1076
+ animation = 0
998
1077
  }
999
- enum logistic_member_index {
1000
- character_provider = 4,
1001
- character_requester = 2,
1002
- character_storage = 3,
1003
- generic_on_off_behavior = 5,
1004
- logistic_container = 0,
1005
- vehicle_storage = 1,
1078
+ /**
1079
+ * @customName autoplace-control
1080
+ */
1081
+ enum autoplace_control {
1082
+ 'autoplace-control' = 0
1006
1083
  }
1007
- enum logistic_mode {
1008
- active_provider = 1,
1009
- buffer = 5,
1010
- none = 0,
1011
- passive_provider = 4,
1012
- requester = 3,
1013
- storage = 2,
1084
+ /**
1085
+ * @customName custom-input
1086
+ */
1087
+ enum custom_input {
1088
+ 'custom-input' = 0
1014
1089
  }
1015
- enum mouse_button_type {
1016
- left = 1,
1017
- middle = 3,
1018
- none = 0,
1019
- right = 2,
1090
+ /**
1091
+ * @customName damage-type
1092
+ */
1093
+ enum damage_type {
1094
+ 'damage-type' = 0
1020
1095
  }
1021
- enum print_skip {
1022
- /**
1023
- * Print will be skipped if same text was recently printed (within last 60 ticks). Used by most game messages.
1024
- */
1025
- if_redundant = 1,
1026
- /**
1027
- * Print will be skipped if same text is still visible (printed within last 1152 ticks). Used by some notifications.
1028
- */
1029
- if_visible = 2,
1030
- /**
1031
- * Print will not be skipped.
1032
- */
1033
- never = 0,
1096
+ enum decorative {
1097
+ 'optimized-decorative' = 0
1098
+ }
1099
+ /**
1100
+ * @customName editor-controller
1101
+ */
1102
+ enum editor_controller {
1103
+ 'editor-controller' = 0
1104
+ }
1105
+ enum entity {
1106
+ accumulator = 0,
1107
+ 'ammo-turret' = 1,
1108
+ 'arithmetic-combinator' = 2,
1109
+ arrow = 3,
1110
+ 'artillery-flare' = 4,
1111
+ 'artillery-projectile' = 5,
1112
+ 'artillery-turret' = 6,
1113
+ 'artillery-wagon' = 7,
1114
+ 'assembling-machine' = 8,
1115
+ beacon = 9,
1116
+ beam = 10,
1117
+ boiler = 11,
1118
+ 'burner-generator' = 12,
1119
+ car = 13,
1120
+ 'cargo-wagon' = 14,
1121
+ character = 15,
1122
+ 'character-corpse' = 16,
1123
+ cliff = 17,
1124
+ 'combat-robot' = 18,
1125
+ 'constant-combinator' = 19,
1126
+ 'construction-robot' = 20,
1127
+ container = 21,
1128
+ corpse = 22,
1129
+ 'curved-rail' = 23,
1130
+ 'decider-combinator' = 24,
1131
+ 'deconstructible-tile-proxy' = 25,
1132
+ 'electric-energy-interface' = 26,
1133
+ 'electric-pole' = 27,
1134
+ 'electric-turret' = 28,
1135
+ 'entity-ghost' = 29,
1136
+ explosion = 30,
1137
+ fire = 31,
1138
+ fish = 32,
1139
+ 'flame-thrower-explosion' = 33,
1140
+ 'fluid-turret' = 34,
1141
+ 'fluid-wagon' = 35,
1142
+ 'flying-text' = 36,
1143
+ furnace = 37,
1144
+ gate = 38,
1145
+ generator = 39,
1146
+ 'heat-interface' = 40,
1147
+ 'heat-pipe' = 41,
1148
+ 'highlight-box' = 42,
1149
+ 'infinity-container' = 43,
1150
+ 'infinity-pipe' = 44,
1151
+ inserter = 45,
1152
+ 'item-entity' = 46,
1153
+ 'item-request-proxy' = 47,
1154
+ lab = 48,
1155
+ lamp = 49,
1156
+ 'land-mine' = 50,
1157
+ 'leaf-particle' = 51,
1158
+ 'linked-belt' = 52,
1159
+ 'linked-container' = 53,
1160
+ loader = 54,
1161
+ 'loader-1x1' = 55,
1162
+ locomotive = 56,
1163
+ 'logistic-container' = 57,
1164
+ 'logistic-robot' = 58,
1165
+ market = 59,
1166
+ 'mining-drill' = 60,
1167
+ 'offshore-pump' = 61,
1168
+ particle = 62,
1169
+ 'particle-source' = 63,
1170
+ pipe = 64,
1171
+ 'pipe-to-ground' = 65,
1172
+ 'player-port' = 66,
1173
+ 'power-switch' = 67,
1174
+ 'programmable-speaker' = 68,
1175
+ projectile = 69,
1176
+ pump = 70,
1177
+ radar = 71,
1178
+ 'rail-chain-signal' = 72,
1179
+ 'rail-remnants' = 73,
1180
+ 'rail-signal' = 74,
1181
+ reactor = 75,
1182
+ resource = 76,
1183
+ roboport = 77,
1184
+ 'rocket-silo' = 78,
1185
+ 'rocket-silo-rocket' = 79,
1186
+ 'rocket-silo-rocket-shadow' = 80,
1187
+ 'simple-entity' = 81,
1188
+ 'simple-entity-with-force' = 82,
1189
+ 'simple-entity-with-owner' = 83,
1190
+ smoke = 84,
1191
+ 'smoke-with-trigger' = 85,
1192
+ 'solar-panel' = 86,
1193
+ 'speech-bubble' = 87,
1194
+ 'spider-leg' = 88,
1195
+ 'spider-vehicle' = 89,
1196
+ splitter = 90,
1197
+ sticker = 91,
1198
+ 'storage-tank' = 92,
1199
+ 'straight-rail' = 93,
1200
+ stream = 94,
1201
+ 'tile-ghost' = 95,
1202
+ 'train-stop' = 96,
1203
+ 'transport-belt' = 97,
1204
+ tree = 98,
1205
+ turret = 99,
1206
+ 'underground-belt' = 100,
1207
+ unit = 101,
1208
+ 'unit-spawner' = 102,
1209
+ wall = 103
1034
1210
  }
1035
- enum print_sound {
1036
- always = 0,
1037
- never = 1,
1038
- use_player_settings = 2,
1211
+ enum equipment {
1212
+ 'active-defense-equipment' = 0,
1213
+ 'battery-equipment' = 1,
1214
+ 'belt-immunity-equipment' = 2,
1215
+ 'energy-shield-equipment' = 3,
1216
+ 'generator-equipment' = 4,
1217
+ 'movement-bonus-equipment' = 5,
1218
+ 'night-vision-equipment' = 6,
1219
+ 'roboport-equipment' = 7,
1220
+ 'solar-panel-equipment' = 8
1039
1221
  }
1040
1222
  /**
1041
- * A dictionary mapping all top-level prototypes by name to a list of their associated subtypes. This list is organized as a lookup table, meaning it maps the sub-prototype names to `0`. As an example, `defines.prototypes['entity']` looks like this: `{furnace=0, inserter=0, container=0, ...}`.
1223
+ * @customName equipment-category
1042
1224
  */
1043
- enum prototypes {
1225
+ enum equipment_category {
1226
+ 'equipment-category' = 0
1044
1227
  }
1045
- enum rail_connection_direction {
1046
- left = 0,
1047
- none = 3,
1048
- right = 2,
1049
- straight = 1,
1228
+ /**
1229
+ * @customName equipment-grid
1230
+ */
1231
+ enum equipment_grid {
1232
+ 'equipment-grid' = 0
1050
1233
  }
1051
- enum rail_direction {
1052
- back = 1,
1053
- front = 0,
1234
+ enum fluid {
1235
+ fluid = 0
1054
1236
  }
1055
- enum relative_gui_position {
1056
- bottom = 1,
1057
- left = 2,
1058
- right = 3,
1059
- top = 0,
1237
+ enum font {
1238
+ font = 0
1060
1239
  }
1061
- enum relative_gui_type {
1062
- accumulator_gui = 0,
1063
- achievement_gui = 1,
1064
- additional_entity_info_gui = 2,
1065
- admin_gui = 3,
1066
- arithmetic_combinator_gui = 4,
1067
- armor_gui = 5,
1068
- assembling_machine_gui = 6,
1069
- assembling_machine_select_recipe_gui = 7,
1070
- beacon_gui = 8,
1071
- blueprint_book_gui = 9,
1072
- blueprint_library_gui = 10,
1073
- blueprint_setup_gui = 11,
1074
- bonus_gui = 12,
1075
- burner_equipment_gui = 13,
1076
- car_gui = 14,
1077
- constant_combinator_gui = 15,
1078
- container_gui = 16,
1079
- controller_gui = 17,
1080
- decider_combinator_gui = 18,
1081
- deconstruction_item_gui = 19,
1082
- electric_energy_interface_gui = 20,
1083
- electric_network_gui = 21,
1084
- entity_variations_gui = 22,
1085
- entity_with_energy_source_gui = 23,
1086
- equipment_grid_gui = 24,
1087
- furnace_gui = 25,
1088
- generic_on_off_entity_gui = 26,
1089
- heat_interface_gui = 27,
1090
- infinity_pipe_gui = 28,
1091
- inserter_gui = 29,
1092
- item_with_inventory_gui = 30,
1093
- lab_gui = 31,
1094
- lamp_gui = 32,
1095
- linked_container_gui = 33,
1096
- loader_gui = 34,
1097
- logistic_gui = 35,
1098
- market_gui = 36,
1099
- mining_drill_gui = 37,
1100
- other_player_gui = 38,
1101
- permissions_gui = 39,
1102
- pipe_gui = 40,
1103
- power_switch_gui = 41,
1104
- production_gui = 42,
1105
- programmable_speaker_gui = 43,
1106
- rail_chain_signal_gui = 44,
1107
- rail_signal_gui = 45,
1108
- reactor_gui = 46,
1109
- rename_stop_gui = 47,
1110
- resource_entity_gui = 48,
1111
- roboport_gui = 49,
1112
- rocket_silo_gui = 50,
1113
- script_inventory_gui = 51,
1114
- server_config_gui = 52,
1115
- spider_vehicle_gui = 53,
1116
- splitter_gui = 54,
1117
- standalone_character_gui = 55,
1118
- storage_tank_gui = 56,
1119
- tile_variations_gui = 57,
1120
- train_gui = 58,
1121
- train_stop_gui = 59,
1122
- trains_gui = 60,
1123
- transport_belt_gui = 61,
1124
- upgrade_item_gui = 62,
1125
- wall_gui = 63,
1240
+ /**
1241
+ * @customName fuel-category
1242
+ */
1243
+ enum fuel_category {
1244
+ 'fuel-category' = 0
1126
1245
  }
1127
- enum render_mode {
1128
- chart = 1,
1129
- chart_zoomed_in = 2,
1130
- game = 0,
1246
+ /**
1247
+ * @customName god-controller
1248
+ */
1249
+ enum god_controller {
1250
+ 'god-controller' = 0
1131
1251
  }
1132
- enum rich_text_setting {
1133
- disabled = 1,
1134
- enabled = 0,
1135
- highlight = 2,
1252
+ /**
1253
+ * @customName gui-style
1254
+ */
1255
+ enum gui_style {
1256
+ 'gui-style' = 0
1136
1257
  }
1137
- namespace riding {
1138
- enum acceleration {
1139
- accelerating = 1,
1140
- braking = 2,
1141
- nothing = 0,
1142
- reversing = 3,
1143
- }
1144
- enum direction {
1145
- left = 0,
1146
- right = 2,
1147
- straight = 1,
1148
- }
1258
+ enum item {
1259
+ ammo = 0,
1260
+ armor = 1,
1261
+ blueprint = 2,
1262
+ 'blueprint-book' = 3,
1263
+ capsule = 4,
1264
+ 'copy-paste-tool' = 5,
1265
+ 'deconstruction-item' = 6,
1266
+ gun = 7,
1267
+ item = 8,
1268
+ 'item-with-entity-data' = 9,
1269
+ 'item-with-inventory' = 10,
1270
+ 'item-with-label' = 11,
1271
+ 'item-with-tags' = 12,
1272
+ 'mining-tool' = 13,
1273
+ module = 14,
1274
+ 'rail-planner' = 15,
1275
+ 'repair-tool' = 16,
1276
+ 'selection-tool' = 17,
1277
+ 'spidertron-remote' = 18,
1278
+ tool = 19,
1279
+ 'upgrade-item' = 20
1149
1280
  }
1150
1281
  /**
1151
- * The various parts of the launch sequence of the rocket silo.
1282
+ * @customName item-group
1152
1283
  */
1153
- enum rocket_silo_status {
1154
- /**
1155
- * The next state is `rocket_ready` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting prepared for launch.
1156
- */
1157
- arms_advance = 6,
1158
- /**
1159
- * The next state is `rocket_flying` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting launched.
1160
- */
1161
- arms_retract = 10,
1162
- /**
1163
- * The rocket silo is crafting rocket parts. When there are enough rocket parts, the silo will switch into the `create_rocket` state.
1164
- */
1165
- building_rocket = 0,
1166
- /**
1167
- * The next state is `lights_blinking_open`. The rocket silo rocket entity gets created.
1168
- */
1169
- create_rocket = 1,
1170
- /**
1171
- * The next state is `building_rocket`.
1172
- */
1173
- doors_closing = 13,
1174
- /**
1175
- * The next state is `rocket_rising` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting prepared for launch.
1176
- */
1177
- doors_opened = 4,
1178
- /**
1179
- * The next state is `doors_opened`. The rocket is getting prepared for launch.
1180
- */
1181
- doors_opening = 3,
1182
- /**
1183
- * The next state is `arms_retract` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting launched.
1184
- */
1185
- engine_starting = 9,
1186
- /**
1187
- * The next state is `engine_starting` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting launched.
1188
- */
1189
- launch_started = 14,
1190
- /**
1191
- * The next state is `launch_started`.
1192
- */
1193
- launch_starting = 8,
1194
- /**
1195
- * The next state is `doors_closing`.
1196
- */
1197
- lights_blinking_close = 12,
1198
- /**
1199
- * The next state is `doors_opening`. The rocket is getting prepared for launch.
1200
- */
1201
- lights_blinking_open = 2,
1202
- /**
1203
- * The next state is `lights_blinking_close`. The rocket is getting launched.
1204
- */
1205
- rocket_flying = 11,
1206
- /**
1207
- * The rocket launch can be started by the player. When the launch is started, the silo switches into the `launch_starting` state.
1208
- */
1209
- rocket_ready = 7,
1210
- /**
1211
- * The next state is `arms_advance` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting prepared for launch.
1212
- */
1213
- rocket_rising = 5,
1284
+ enum item_group {
1285
+ 'item-group' = 0
1214
1286
  }
1215
- enum shooting {
1216
- not_shooting = 0,
1217
- shooting_enemies = 1,
1218
- shooting_selected = 2,
1287
+ /**
1288
+ * @customName item-subgroup
1289
+ */
1290
+ enum item_subgroup {
1291
+ 'item-subgroup' = 0
1219
1292
  }
1220
1293
  /**
1221
- * State of an ordinary rail signal.
1294
+ * @customName map-gen-presets
1222
1295
  */
1223
- enum signal_state {
1224
- /**
1225
- * Red.
1226
- */
1227
- closed = 1,
1228
- /**
1229
- * Green.
1230
- */
1231
- open = 0,
1232
- /**
1233
- * Orange.
1234
- */
1235
- reserved = 2,
1236
- /**
1237
- * Red - From circuit network.
1238
- */
1239
- reserved_by_circuit_network = 3,
1296
+ enum map_gen_presets {
1297
+ 'map-gen-presets' = 0
1240
1298
  }
1241
- enum train_state {
1242
- /**
1243
- * Braking before a rail signal.
1244
- */
1245
- arrive_signal = 4,
1246
- /**
1247
- * Braking before a station.
1248
- */
1249
- arrive_station = 6,
1250
- /**
1251
- * Same as no_path but all candidate train stops are full
1252
- */
1253
- destination_full = 10,
1254
- /**
1255
- * Can move if user explicitly sits in and rides the train.
1256
- */
1257
- manual_control = 9,
1258
- /**
1259
- * Switched to manual control and has to stop.
1260
- */
1261
- manual_control_stop = 8,
1262
- /**
1263
- * Has no path and is stopped.
1264
- */
1265
- no_path = 3,
1266
- /**
1267
- * Doesn't have anywhere to go.
1268
- */
1269
- no_schedule = 2,
1270
- /**
1271
- * Normal state -- following the path.
1272
- */
1273
- on_the_path = 0,
1274
- /**
1275
- * Had path and lost it -- must stop.
1276
- */
1277
- path_lost = 1,
1278
- /**
1279
- * Waiting at a signal.
1280
- */
1281
- wait_signal = 5,
1282
- /**
1283
- * Waiting at a station.
1284
- */
1285
- wait_station = 7,
1299
+ /**
1300
+ * @customName map-settings
1301
+ */
1302
+ enum map_settings {
1303
+ 'map-settings' = 0
1286
1304
  }
1287
- enum transport_line {
1288
- left_line = 0,
1289
- left_split_line = 6,
1290
- left_underground_line = 2,
1291
- right_line = 1,
1292
- right_split_line = 7,
1293
- right_underground_line = 3,
1294
- secondary_left_line = 4,
1295
- secondary_left_split_line = 8,
1296
- secondary_right_line = 5,
1297
- secondary_right_split_line = 9,
1305
+ /**
1306
+ * @customName module-category
1307
+ */
1308
+ enum module_category {
1309
+ 'module-category' = 0
1298
1310
  }
1299
- enum wire_connection_id {
1300
- electric_pole = 0,
1301
- power_switch_left = 1,
1302
- power_switch_right = 2,
1311
+ /**
1312
+ * @customName mouse-cursor
1313
+ */
1314
+ enum mouse_cursor {
1315
+ 'mouse-cursor' = 0
1303
1316
  }
1304
- enum wire_type {
1305
- copper = 2,
1306
- green = 1,
1307
- red = 0,
1317
+ /**
1318
+ * @customName noise-expression
1319
+ */
1320
+ enum noise_expression {
1321
+ 'noise-expression' = 0
1308
1322
  }
1323
+ /**
1324
+ * @customName noise-layer
1325
+ */
1326
+ enum noise_layer {
1327
+ 'noise-layer' = 0
1328
+ }
1329
+ enum particle {
1330
+ 'optimized-particle' = 0
1331
+ }
1332
+ enum recipe {
1333
+ recipe = 0
1334
+ }
1335
+ /**
1336
+ * @customName recipe-category
1337
+ */
1338
+ enum recipe_category {
1339
+ 'recipe-category' = 0
1340
+ }
1341
+ /**
1342
+ * @customName resource-category
1343
+ */
1344
+ enum resource_category {
1345
+ 'resource-category' = 0
1346
+ }
1347
+ enum shortcut {
1348
+ shortcut = 0
1349
+ }
1350
+ enum sound {
1351
+ sound = 0
1352
+ }
1353
+ /**
1354
+ * @customName spectator-controller
1355
+ */
1356
+ enum spectator_controller {
1357
+ 'spectator-controller' = 0
1358
+ }
1359
+ enum sprite {
1360
+ sprite = 0
1361
+ }
1362
+ enum technology {
1363
+ technology = 0
1364
+ }
1365
+ enum tile {
1366
+ tile = 0
1367
+ }
1368
+ /**
1369
+ * @customName tile-effect
1370
+ */
1371
+ enum tile_effect {
1372
+ 'tile-effect' = 0
1373
+ }
1374
+ /**
1375
+ * @customName tips-and-tricks-item
1376
+ */
1377
+ enum tips_and_tricks_item {
1378
+ 'tips-and-tricks-item' = 0
1379
+ }
1380
+ /**
1381
+ * @customName tips-and-tricks-item-category
1382
+ */
1383
+ enum tips_and_tricks_item_category {
1384
+ 'tips-and-tricks-item-category' = 0
1385
+ }
1386
+ /**
1387
+ * @customName trigger-target-type
1388
+ */
1389
+ enum trigger_target_type {
1390
+ 'trigger-target-type' = 0
1391
+ }
1392
+ /**
1393
+ * @customName trivial-smoke
1394
+ */
1395
+ enum trivial_smoke {
1396
+ 'trivial-smoke' = 0
1397
+ }
1398
+ enum tutorial {
1399
+ tutorial = 0
1400
+ }
1401
+ /**
1402
+ * @customName utility-constants
1403
+ */
1404
+ enum utility_constants {
1405
+ 'utility-constants' = 0
1406
+ }
1407
+ /**
1408
+ * @customName utility-sounds
1409
+ */
1410
+ enum utility_sounds {
1411
+ 'utility-sounds' = 0
1412
+ }
1413
+ /**
1414
+ * @customName utility-sprites
1415
+ */
1416
+ enum utility_sprites {
1417
+ 'utility-sprites' = 0
1418
+ }
1419
+ /**
1420
+ * @customName virtual-signal
1421
+ */
1422
+ enum virtual_signal {
1423
+ 'virtual-signal' = 0
1424
+ }
1425
+ /**
1426
+ * @customName wind-sound
1427
+ */
1428
+ enum wind_sound {
1429
+ 'wind-sound' = 0
1430
+ }
1431
+ }
1432
+ enum rail_connection_direction {
1433
+ left = 0,
1434
+ none = 3,
1435
+ right = 2,
1436
+ straight = 1
1437
+ }
1438
+ enum rail_direction {
1439
+ back = 1,
1440
+ front = 0
1441
+ }
1442
+ enum relative_gui_position {
1443
+ bottom = 1,
1444
+ left = 2,
1445
+ right = 3,
1446
+ top = 0
1447
+ }
1448
+ enum relative_gui_type {
1449
+ accumulator_gui = 0,
1450
+ achievement_gui = 1,
1451
+ additional_entity_info_gui = 2,
1452
+ admin_gui = 3,
1453
+ arithmetic_combinator_gui = 4,
1454
+ armor_gui = 5,
1455
+ assembling_machine_gui = 6,
1456
+ assembling_machine_select_recipe_gui = 7,
1457
+ beacon_gui = 8,
1458
+ blueprint_book_gui = 9,
1459
+ blueprint_library_gui = 10,
1460
+ blueprint_setup_gui = 11,
1461
+ bonus_gui = 12,
1462
+ burner_equipment_gui = 13,
1463
+ car_gui = 14,
1464
+ constant_combinator_gui = 15,
1465
+ container_gui = 16,
1466
+ controller_gui = 17,
1467
+ decider_combinator_gui = 18,
1468
+ deconstruction_item_gui = 19,
1469
+ electric_energy_interface_gui = 20,
1470
+ electric_network_gui = 21,
1471
+ entity_variations_gui = 22,
1472
+ entity_with_energy_source_gui = 23,
1473
+ equipment_grid_gui = 24,
1474
+ furnace_gui = 25,
1475
+ generic_on_off_entity_gui = 26,
1476
+ heat_interface_gui = 27,
1477
+ infinity_pipe_gui = 28,
1478
+ inserter_gui = 29,
1479
+ item_with_inventory_gui = 30,
1480
+ lab_gui = 31,
1481
+ lamp_gui = 32,
1482
+ linked_container_gui = 33,
1483
+ loader_gui = 34,
1484
+ logistic_gui = 35,
1485
+ market_gui = 36,
1486
+ mining_drill_gui = 37,
1487
+ other_player_gui = 38,
1488
+ permissions_gui = 39,
1489
+ pipe_gui = 40,
1490
+ power_switch_gui = 41,
1491
+ production_gui = 42,
1492
+ programmable_speaker_gui = 43,
1493
+ rail_chain_signal_gui = 44,
1494
+ rail_signal_gui = 45,
1495
+ reactor_gui = 46,
1496
+ rename_stop_gui = 47,
1497
+ resource_entity_gui = 48,
1498
+ roboport_gui = 49,
1499
+ rocket_silo_gui = 50,
1500
+ script_inventory_gui = 51,
1501
+ server_config_gui = 52,
1502
+ spider_vehicle_gui = 53,
1503
+ splitter_gui = 54,
1504
+ standalone_character_gui = 55,
1505
+ storage_tank_gui = 56,
1506
+ tile_variations_gui = 57,
1507
+ train_gui = 58,
1508
+ train_stop_gui = 59,
1509
+ trains_gui = 60,
1510
+ transport_belt_gui = 61,
1511
+ upgrade_item_gui = 62,
1512
+ wall_gui = 63
1513
+ }
1514
+ enum render_mode {
1515
+ chart = 1,
1516
+ chart_zoomed_in = 2,
1517
+ game = 0
1518
+ }
1519
+ enum rich_text_setting {
1520
+ disabled = 1,
1521
+ enabled = 0,
1522
+ highlight = 2
1523
+ }
1524
+ namespace riding {
1525
+ enum acceleration {
1526
+ accelerating = 1,
1527
+ braking = 2,
1528
+ nothing = 0,
1529
+ reversing = 3
1530
+ }
1531
+ enum direction {
1532
+ left = 0,
1533
+ right = 2,
1534
+ straight = 1
1535
+ }
1536
+ }
1537
+ /**
1538
+ * The various parts of the launch sequence of the rocket silo.
1539
+ */
1540
+ enum rocket_silo_status {
1541
+ /**
1542
+ * The next state is `rocket_ready` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting prepared for launch.
1543
+ */
1544
+ arms_advance = 6,
1545
+ /**
1546
+ * The next state is `rocket_flying` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting launched.
1547
+ */
1548
+ arms_retract = 10,
1549
+ /**
1550
+ * The rocket silo is crafting rocket parts. When there are enough rocket parts, the silo will switch into the `create_rocket` state.
1551
+ */
1552
+ building_rocket = 0,
1553
+ /**
1554
+ * The next state is `lights_blinking_open`. The rocket silo rocket entity gets created.
1555
+ */
1556
+ create_rocket = 1,
1557
+ /**
1558
+ * The next state is `building_rocket`.
1559
+ */
1560
+ doors_closing = 13,
1561
+ /**
1562
+ * The next state is `rocket_rising` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting prepared for launch.
1563
+ */
1564
+ doors_opened = 4,
1565
+ /**
1566
+ * The next state is `doors_opened`. The rocket is getting prepared for launch.
1567
+ */
1568
+ doors_opening = 3,
1569
+ /**
1570
+ * The next state is `arms_retract` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting launched.
1571
+ */
1572
+ engine_starting = 9,
1573
+ /**
1574
+ * The next state is `engine_starting` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting launched.
1575
+ */
1576
+ launch_started = 14,
1577
+ /**
1578
+ * The next state is `launch_started`.
1579
+ */
1580
+ launch_starting = 8,
1581
+ /**
1582
+ * The next state is `doors_closing`.
1583
+ */
1584
+ lights_blinking_close = 12,
1585
+ /**
1586
+ * The next state is `doors_opening`. The rocket is getting prepared for launch.
1587
+ */
1588
+ lights_blinking_open = 2,
1589
+ /**
1590
+ * The next state is `lights_blinking_close`. The rocket is getting launched.
1591
+ */
1592
+ rocket_flying = 11,
1593
+ /**
1594
+ * The rocket launch can be started by the player. When the launch is started, the silo switches into the `launch_starting` state.
1595
+ */
1596
+ rocket_ready = 7,
1597
+ /**
1598
+ * The next state is `arms_advance` or if the rocket is destroyed in this state then the next state will be `lights_blinking_close`. The rocket is getting prepared for launch.
1599
+ */
1600
+ rocket_rising = 5
1601
+ }
1602
+ enum shooting {
1603
+ not_shooting = 0,
1604
+ shooting_enemies = 1,
1605
+ shooting_selected = 2
1606
+ }
1607
+ /**
1608
+ * State of an ordinary rail signal.
1609
+ */
1610
+ enum signal_state {
1611
+ /**
1612
+ * Red.
1613
+ */
1614
+ closed = 1,
1615
+ /**
1616
+ * Green.
1617
+ */
1618
+ open = 0,
1619
+ /**
1620
+ * Orange.
1621
+ */
1622
+ reserved = 2,
1623
+ /**
1624
+ * Red - From circuit network.
1625
+ */
1626
+ reserved_by_circuit_network = 3
1627
+ }
1628
+ enum train_state {
1629
+ /**
1630
+ * Braking before a rail signal.
1631
+ */
1632
+ arrive_signal = 4,
1633
+ /**
1634
+ * Braking before a station.
1635
+ */
1636
+ arrive_station = 6,
1637
+ /**
1638
+ * Same as no_path but all candidate train stops are full
1639
+ */
1640
+ destination_full = 10,
1641
+ /**
1642
+ * Can move if user explicitly sits in and rides the train.
1643
+ */
1644
+ manual_control = 9,
1645
+ /**
1646
+ * Switched to manual control and has to stop.
1647
+ */
1648
+ manual_control_stop = 8,
1649
+ /**
1650
+ * Has no path and is stopped.
1651
+ */
1652
+ no_path = 3,
1653
+ /**
1654
+ * Doesn't have anywhere to go.
1655
+ */
1656
+ no_schedule = 2,
1657
+ /**
1658
+ * Normal state -- following the path.
1659
+ */
1660
+ on_the_path = 0,
1661
+ /**
1662
+ * Had path and lost it -- must stop.
1663
+ */
1664
+ path_lost = 1,
1665
+ /**
1666
+ * Waiting at a signal.
1667
+ */
1668
+ wait_signal = 5,
1669
+ /**
1670
+ * Waiting at a station.
1671
+ */
1672
+ wait_station = 7
1673
+ }
1674
+ enum transport_line {
1675
+ left_line = 0,
1676
+ left_split_line = 6,
1677
+ left_underground_line = 2,
1678
+ right_line = 1,
1679
+ right_split_line = 7,
1680
+ right_underground_line = 3,
1681
+ secondary_left_line = 4,
1682
+ secondary_left_split_line = 8,
1683
+ secondary_right_line = 5,
1684
+ secondary_right_split_line = 9
1685
+ }
1686
+ enum wire_connection_id {
1687
+ electric_pole = 0,
1688
+ power_switch_left = 1,
1689
+ power_switch_right = 2
1690
+ }
1691
+ enum wire_type {
1692
+ copper = 2,
1693
+ green = 1,
1694
+ red = 0
1695
+ }
1696
+
1309
1697
  }