@expcluster/legacy 7.0.1

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.
Files changed (108) hide show
  1. package/LICENSE.md +21 -0
  2. package/dist/browser/package.json +40 -0
  3. package/dist/browser/tsconfig.browser.tsbuildinfo +1 -0
  4. package/dist/browser/web/index.d.ts +1 -0
  5. package/dist/browser/web/index.d.ts.map +1 -0
  6. package/dist/browser/web/index.js +2 -0
  7. package/dist/browser/web/index.js.map +1 -0
  8. package/dist/node/index.d.ts +3 -0
  9. package/dist/node/index.d.ts.map +1 -0
  10. package/dist/node/index.js +10 -0
  11. package/dist/node/index.js.map +1 -0
  12. package/dist/node/instance.d.ts +4 -0
  13. package/dist/node/instance.d.ts.map +1 -0
  14. package/dist/node/instance.js +8 -0
  15. package/dist/node/instance.js.map +1 -0
  16. package/dist/node/tsconfig.node.tsbuildinfo +1 -0
  17. package/dist/web/manifest.json +7 -0
  18. package/dist/web/static/exp_legacy.9b6538559ed5e689539c.js +355 -0
  19. package/dist/web/static/index_ts.8f9d451c8d3f7f293da6.js +22 -0
  20. package/dist/web/static/main.94e1b48804112ca8bdfc.js +118 -0
  21. package/dist/web/static/package_json.a83729efdb0697b12396.js +22 -0
  22. package/dist/web/static/web_index_tsx.e5a01ac0e4b0a6f6517f.js +21 -0
  23. package/index.ts +8 -0
  24. package/instance.ts +7 -0
  25. package/module/config/_file_loader.lua +29 -0
  26. package/module/config/advanced_start.lua +112 -0
  27. package/module/config/afk_kick.lua +14 -0
  28. package/module/config/bonus.lua +105 -0
  29. package/module/config/chat_reply.lua +136 -0
  30. package/module/config/compilatron.lua +25 -0
  31. package/module/config/death_logger.lua +15 -0
  32. package/module/config/deconlog.lua +11 -0
  33. package/module/config/discord_alerts.lua +25 -0
  34. package/module/config/expcore/permission_groups.lua +143 -0
  35. package/module/config/graftorio.lua +7 -0
  36. package/module/config/gui/autofill.lua +129 -0
  37. package/module/config/gui/player_list_actions.lua +201 -0
  38. package/module/config/gui/rockets.lua +47 -0
  39. package/module/config/gui/science.lua +21 -0
  40. package/module/config/gui/tasks.lua +13 -0
  41. package/module/config/gui/warps.lua +52 -0
  42. package/module/config/inventory_clear.lua +9 -0
  43. package/module/config/join_messages.lua +8 -0
  44. package/module/config/lawnmower.lua +6 -0
  45. package/module/config/logging.lua +30 -0
  46. package/module/config/miner.lua +8 -0
  47. package/module/config/module.lua +86 -0
  48. package/module/config/nukeprotect.lua +30 -0
  49. package/module/config/pollution_grading.lua +9 -0
  50. package/module/config/popup_messages.lua +10 -0
  51. package/module/config/preset_player_colours.lua +33 -0
  52. package/module/config/preset_player_quickbar.lua +6 -0
  53. package/module/config/protection.lua +17 -0
  54. package/module/config/repair.lua +8 -0
  55. package/module/config/research.lua +179 -0
  56. package/module/config/scorched_earth.lua +116 -0
  57. package/module/config/spawn_area.lua +255 -0
  58. package/module/config/station_auto_name.lua +11 -0
  59. package/module/config/statistics.lua +46 -0
  60. package/module/config/vlayer.lua +180 -0
  61. package/module/config/warnings.lua +38 -0
  62. package/module/control.lua +46 -0
  63. package/module/expcore/datastore.lua +884 -0
  64. package/module/expcore/external.lua +146 -0
  65. package/module/expcore/permission_groups.lua +355 -0
  66. package/module/expcore/player_data.lua +152 -0
  67. package/module/locale/en/addons.cfg +31 -0
  68. package/module/locale/en/data.cfg +114 -0
  69. package/module/locale/en/expcore.cfg +16 -0
  70. package/module/locale/en/gui.cfg +114 -0
  71. package/module/locale/zh-CN/addons.cfg +31 -0
  72. package/module/locale/zh-CN/data.cfg +114 -0
  73. package/module/locale/zh-CN/expcore.cfg +16 -0
  74. package/module/locale/zh-CN/gui.cfg +122 -0
  75. package/module/locale/zh-TW/addons.cfg +31 -0
  76. package/module/locale/zh-TW/data.cfg +114 -0
  77. package/module/locale/zh-TW/expcore.cfg +16 -0
  78. package/module/locale/zh-TW/gui.cfg +122 -0
  79. package/module/module.json +14 -0
  80. package/module/module_exports.lua +3 -0
  81. package/module/modules/control/jail.lua +119 -0
  82. package/module/modules/control/protection.lua +204 -0
  83. package/module/modules/control/reports.lua +225 -0
  84. package/module/modules/control/spectate.lua +173 -0
  85. package/module/modules/control/vlayer.lua +807 -0
  86. package/module/modules/control/warnings.lua +331 -0
  87. package/module/modules/control/warps.lua +488 -0
  88. package/module/modules/data/alt-view.lua +26 -0
  89. package/module/modules/data/greetings.lua +45 -0
  90. package/module/modules/data/language.lua +21 -0
  91. package/module/modules/data/player-colours.lua +63 -0
  92. package/module/modules/data/quickbar.lua +72 -0
  93. package/module/modules/data/statistics.lua +181 -0
  94. package/module/modules/data/tag.lua +82 -0
  95. package/module/modules/data/toolbar.lua +31 -0
  96. package/module/modules/graftorio/forcestats.lua +196 -0
  97. package/module/modules/graftorio/general.lua +63 -0
  98. package/module/modules/graftorio/require.lua +28 -0
  99. package/module/modules/graftorio/statics.lua +36 -0
  100. package/module/modules/gui/vlayer.lua +547 -0
  101. package/module/modules/gui/warp-list.lua +909 -0
  102. package/module/utils/event.lua +86 -0
  103. package/package.json +38 -0
  104. package/tsconfig.browser.json +4 -0
  105. package/tsconfig.json +7 -0
  106. package/tsconfig.node.json +5 -0
  107. package/web/index.tsx +0 -0
  108. package/webpack.config.js +29 -0
@@ -0,0 +1,86 @@
1
+ local ExpUtil = require("modules/exp_util")
2
+
3
+ local Event = {
4
+ real_handlers = {
5
+ events = {},
6
+ on_nth_tick = {},
7
+ on_init = nil,
8
+ on_load = nil,
9
+ },
10
+ handlers = {
11
+ events = {},
12
+ on_nth_tick = {},
13
+ on_init = nil,
14
+ on_load = nil,
15
+ },
16
+ }
17
+
18
+ local function call_handlers_factory(handlers)
19
+ return function(event)
20
+ for _, handler in ipairs(handlers) do
21
+ handler(event)
22
+ end
23
+ end
24
+ end
25
+
26
+ function Event.add(event_name, handler)
27
+ ExpUtil.assert_not_runtime()
28
+ ExpUtil.assert_argument_type(event_name, "number", 1, "event_name")
29
+ ExpUtil.assert_argument_type(handler, "function", 2, "handler")
30
+
31
+ local handlers = Event.handlers.events[event_name]
32
+ if not handlers then
33
+ handlers = {}
34
+ Event.handlers.events[event_name] = handlers
35
+ Event.real_handlers.events[event_name] = call_handlers_factory(handlers)
36
+ end
37
+
38
+ handlers[#handlers + 1] = handler
39
+ end
40
+
41
+ function Event.on_nth_tick(tick, handler)
42
+ ExpUtil.assert_not_runtime()
43
+ ExpUtil.assert_argument_type(tick, "number", 1, "tick")
44
+ ExpUtil.assert_argument_type(handler, "function", 2, "handler")
45
+
46
+ local handlers = Event.handlers.on_nth_tick[tick]
47
+ if not handlers then
48
+ handlers = {}
49
+ Event.handlers.on_nth_tick[tick] = handlers
50
+ Event.real_handlers.on_nth_tick[tick] = call_handlers_factory(handlers)
51
+ end
52
+
53
+ handlers[#handlers + 1] = handler
54
+ end
55
+
56
+ function Event.on_init(handler)
57
+ ExpUtil.assert_not_runtime()
58
+ ExpUtil.assert_argument_type(handler, "function", 1, "handler")
59
+
60
+ local handlers = Event.handlers.on_init
61
+ if not handlers then
62
+ handlers = {}
63
+ Event.handlers.on_init = handlers
64
+ Event.real_handlers.on_init = call_handlers_factory(handlers)
65
+ end
66
+
67
+ handlers[#handlers + 1] = handler
68
+ Event.add(defines.events.on_singleplayer_init, handler)
69
+ Event.add(defines.events.on_multiplayer_init, handler)
70
+ end
71
+
72
+ function Event.on_load(handler)
73
+ ExpUtil.assert_not_runtime()
74
+ ExpUtil.assert_argument_type(handler, "function", 1, "handler")
75
+
76
+ local handlers = Event.handlers.on_load
77
+ if not handlers then
78
+ handlers = {}
79
+ Event.handlers.on_load = handlers
80
+ Event.real_handlers.on_load = call_handlers_factory(handlers)
81
+ end
82
+
83
+ handlers[#handlers + 1] = handler
84
+ end
85
+
86
+ return Event
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@expcluster/legacy",
3
+ "version": "7.0.1",
4
+ "description": "Clusterio plugin implementing the legacy v6 scenario updated for factorio 2.0",
5
+ "author": "Cooldude2606 <https://github.com/Cooldude2606>",
6
+ "license": "MIT",
7
+ "repository": "explosivegaming/ExpCluster",
8
+ "main": "dist/node/index.js",
9
+ "engines": {
10
+ "node": ">=18"
11
+ },
12
+ "peerDependencies": {
13
+ "@clusterio/lib": "^2.0.0-alpha.27"
14
+ },
15
+ "devDependencies": {
16
+ "@types/node": "^20.17.19",
17
+ "typescript": "^5.7.3",
18
+ "webpack": "^5.98.0",
19
+ "webpack-cli": "^5.1.4",
20
+ "webpack-merge": "^5.9.0",
21
+ "@clusterio/lib": "^2.0.0-alpha.27"
22
+ },
23
+ "dependencies": {
24
+ "@sinclair/typebox": "^0.30.4",
25
+ "@expcluster/lib_commands": "^7.0.1",
26
+ "@expcluster/lib_util": "^7.0.1",
27
+ "@expcluster/lib_gui": "^7.0.1"
28
+ },
29
+ "publishConfig": {
30
+ "access": "public"
31
+ },
32
+ "keywords": [
33
+ "clusterio",
34
+ "clusterio-plugin",
35
+ "factorio"
36
+ ],
37
+ "scripts": {}
38
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "extends": "../tsconfig.browser.json",
3
+ "include": [ "web/**/*.tsx", "web/**/*.ts", "package.json" ],
4
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,7 @@
1
+ {
2
+ "files": [],
3
+ "references": [
4
+ { "path": "./tsconfig.node.json" },
5
+ { "path": "./tsconfig.browser.json" }
6
+ ]
7
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "extends": "../tsconfig.node.json",
3
+ "include": ["./**/*.ts"],
4
+ "exclude": ["test/*", "./dist/*"],
5
+ }
package/web/index.tsx ADDED
File without changes
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ const path = require("path");
3
+ const webpack = require("webpack");
4
+ const { merge } = require("webpack-merge");
5
+
6
+ const common = require("@clusterio/web_ui/webpack.common");
7
+
8
+ module.exports = (env = {}) => merge(common(env), {
9
+ context: __dirname,
10
+ entry: "./web/index.tsx",
11
+ output: {
12
+ path: path.resolve(__dirname, "dist", "web"),
13
+ },
14
+ plugins: [
15
+ new webpack.container.ModuleFederationPlugin({
16
+ name: "exp_legacy",
17
+ library: { type: "window", name: "plugin_exp_legacy" },
18
+ exposes: {
19
+ "./": "./index.ts",
20
+ "./package.json": "./package.json",
21
+ "./web": "./web/index.tsx",
22
+ },
23
+ shared: {
24
+ "@clusterio/lib": { import: false },
25
+ "@clusterio/web_ui": { import: false },
26
+ },
27
+ }),
28
+ ],
29
+ });