typed-factorio 2.8.0 → 2.10.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -7,12 +7,12 @@ import type { LocalisedString, table, uint } from "factorio:runtime"
7
7
  declare global {
8
8
  /**
9
9
  * `log()` can print {@link LocalisedString LocalisedStrings} to the Factorio {@linkplain https://wiki.factorio.com/Log_file log file}. This, in combination with the serpent library, makes debugging in the data stage easier because it allows the inspection of entire prototype tables. For example, printing all properties of the sulfur item prototype can be done like so: `log(serpent.block(data.raw["item"]["sulfur"]))`
10
- * @see {@link https://lua-api.factorio.com/1.1.104/auxiliary/libraries.html#new-functions Online documentation}
10
+ * @see {@link https://lua-api.factorio.com/1.1.107/auxiliary/libraries.html#new-functions Online documentation}
11
11
  */
12
12
  function log(string: LocalisedString): void
13
13
  /**
14
14
  * `localised_print()` allows printing {@link LocalisedString} to stdout without polluting the Factorio {@linkplain https://wiki.factorio.com/Log_file log file}. This is primarily useful when communicating with external tools that launch Factorio as a child process.
15
- * @see {@link https://lua-api.factorio.com/1.1.104/auxiliary/libraries.html#new-functions Online documentation}
15
+ * @see {@link https://lua-api.factorio.com/1.1.107/auxiliary/libraries.html#new-functions Online documentation}
16
16
  */
17
17
  function localised_print(string: LocalisedString): void
18
18
  /**
@@ -29,7 +29,7 @@ declare global {
29
29
  * ```
30
30
  *
31
31
  * Note that `table_size()` does not work correctly for {@link LuaCustomTable}, their size has to be determined with {@link LuaCustomTable#length LuaCustomTable::length_operator} instead.
32
- * @see {@link https://lua-api.factorio.com/1.1.104/auxiliary/libraries.html#new-functions Online documentation}
32
+ * @see {@link https://lua-api.factorio.com/1.1.107/auxiliary/libraries.html#new-functions Online documentation}
33
33
  */
34
34
  function table_size(table: table): uint
35
35
  }
@@ -14,33 +14,33 @@ import type {
14
14
  declare global {
15
15
  /**
16
16
  * The main scripting interface through which most of the API is accessed.
17
- * @see {@link https://lua-api.factorio.com/1.1.104/index-runtime.html Online documentation}
17
+ * @see {@link https://lua-api.factorio.com/1.1.107/index-runtime.html Online documentation}
18
18
  */
19
19
  const game: LuaGameScript
20
20
  /**
21
21
  * Provides an interface for registering game event handlers.
22
- * @see {@link https://lua-api.factorio.com/1.1.104/index-runtime.html Online documentation}
22
+ * @see {@link https://lua-api.factorio.com/1.1.107/index-runtime.html Online documentation}
23
23
  */
24
24
  const script: LuaBootstrap
25
25
  /**
26
26
  * Allows registration and use of functions to communicate between mods.
27
- * @see {@link https://lua-api.factorio.com/1.1.104/index-runtime.html Online documentation}
27
+ * @see {@link https://lua-api.factorio.com/1.1.107/index-runtime.html Online documentation}
28
28
  */
29
29
  const remote: LuaRemote
30
30
  /**
31
31
  * Allows registration of custom commands for the in-game console.
32
- * @see {@link https://lua-api.factorio.com/1.1.104/index-runtime.html Online documentation}
32
+ * @see {@link https://lua-api.factorio.com/1.1.107/index-runtime.html Online documentation}
33
33
  */
34
34
  const commands: LuaCommandProcessor
35
35
  //The "settings" global is declared in common/settings-global.d.ts; its runtime type is handled below.
36
36
  /**
37
37
  * Allows printing messages to the calling RCON instance, if any.
38
- * @see {@link https://lua-api.factorio.com/1.1.104/index-runtime.html Online documentation}
38
+ * @see {@link https://lua-api.factorio.com/1.1.107/index-runtime.html Online documentation}
39
39
  */
40
40
  const rcon: LuaRCON
41
41
  /**
42
42
  * Allows rendering of geometric shapes, text and sprites in the game world.
43
- * @see {@link https://lua-api.factorio.com/1.1.104/index-runtime.html Online documentation}
43
+ * @see {@link https://lua-api.factorio.com/1.1.107/index-runtime.html Online documentation}
44
44
  */
45
45
  const rendering: LuaRendering
46
46
  }
@@ -2,8 +2,8 @@
2
2
 
3
3
  /** @noResolution */
4
4
  declare module "factorio:settings" {
5
- import { LocalisedString } from "factorio:prototype"
6
- export type SettingType = "bool-setting" | "int-setting" | "double-setting" | "string-setting"
5
+ import { Color, LocalisedString } from "factorio:prototype"
6
+ export type SettingType = "bool-setting" | "int-setting" | "double-setting" | "string-setting" | "color-setting"
7
7
 
8
8
  export interface BaseSettingDefinition {
9
9
  readonly type: SettingType
@@ -12,9 +12,8 @@ declare module "factorio:settings" {
12
12
  * all mods. Because of that it is recommended to prefix mod settings with your mod name,
13
13
  */
14
14
  name: string
15
- localized_name?: LocalisedString
16
- localized_description?: LocalisedString
17
-
15
+ localised_name?: LocalisedString
16
+ localised_description?: LocalisedString
18
17
  /**
19
18
  * The order property can be used to change how the mod settings are ordered in the settings gui. Mod settings are sorted
20
19
  *
@@ -41,7 +40,6 @@ declare module "factorio:settings" {
41
40
  *
42
41
  * This "setting_type" also determines in which tab the setting is showed in the mod settings menu.
43
42
  */
44
-
45
43
  setting_type: "startup" | "runtime-global" | "runtime-per-user"
46
44
  }
47
45
  /** A true/false checkbox */
@@ -101,12 +99,19 @@ declare module "factorio:settings" {
101
99
  */
102
100
  allowed_values?: string[]
103
101
  }
102
+ /** a color picker (sliders), with whole number textfields. Includes alpha. */
103
+ export interface ColorSettingDefinition extends BaseSettingDefinition {
104
+ readonly type: "color-setting"
105
+ /** Defines the default value of the setting. */
106
+ default_value: Color
107
+ }
104
108
 
105
109
  export interface PrototypeMap {
106
110
  "bool-setting": BoolSettingDefinition
107
111
  "int-setting": IntSettingDefinition
108
112
  "double-setting": DoubleSettingDefinition
109
113
  "string-setting": StringSettingDefinition
114
+ "color-setting": ColorSettingDefinition
110
115
  }
111
116
 
112
117
  export type SettingsPrototypeMap = PrototypeMap