Commit Graph
32 Commits
Author SHA1 Message Date
bbassieandClaude Opus 5 d78ae40c5d Correct partial table types
`_display_data` is a cache keyed by force name, not a single record.
The auto complete accumulator starts empty, so its fields are optional.
Game commands have no usage beyond their own help text.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-07 15:31:18 +00:00
bbassieandClaude Opus 5 164672602d Make the @as casts actually apply
emmylua only parses the inline cast as `--[[@as T]]`, the spaced form
`--[[ @as T ]]` is treated as a plain comment, so all 149 of them were
doing nothing.

LuaGuiElement.style is a union because a style name can be assigned to
it, so reading it back needs the cast.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-07 15:31:18 +00:00
bbassieandClaude Opus 5 c233a9ab06 Defer need-check-nil and clean up stale suppressions
emmylua deserialises an unknown diagnostic code to a catch all that
matches no checker, so every `invisible`, `nil-check` and
`global-element` suppression was silently doing nothing. Renamed to the
emmylua codes. `name-style-check` has no equivalent and is dropped, it
was already disabled under luals.

The `get_tile` suppressions referenced an api typedef bug from 2024
which no longer reproduces.

need-check-nil is deferred rather than disabled on merit: a third of the
407 findings come from MapPosition and BoundingBox being aliased as
`struct|[double, double]`, so every `entity.position.x` reads as
possibly nil. The rest need per site knowledge of runtime invariants.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-07 15:31:18 +00:00
bbassieandClaude Opus 5 b9cfbc9036 Narrow aabb types and give generic aliases their type argument
The aabb functions all index the named members, so passing the
shorthand [MapPosition, MapPosition] form would error at runtime. The
annotations now say so.

emmylua requires a type argument on a generic alias, luals did not.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-07 15:31:18 +00:00
bbassieandClaude Opus 5 90f32699c7 Fix duplicate class and annotation placement lint errors
Classes contributed to by more than one file now carry the `partial`
attribute. trains.lua declared its command as `ExpCommand_Artillery`,
which was a copy paste.

`Color.0` and `MapPosition.0` became `.struct` in fmtk 2.1.6.

emmylua rejects `@type` on a function statement or a `do` block, so
those are moved onto the local or replaced by `@param` and `@return`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-07 15:31:18 +00:00
Cooldude2606 a07be7b7ed Bump version in package jsons 2026-07-14 00:50:00 +01:00
Cooldude2606 a521cdd901 Change to dev env to fix building 2026-05-22 20:15:36 +01:00
Cooldude2606 6bb26f60ad Add webpack to all plugins 2025-09-12 20:47:32 +01:00
Cooldude2606andGitHub 8bcb65101b Switch to sp/mp init events (#404) 2025-08-30 20:39:54 +01:00
Cooldude2606andGitHub 7ab721b4b6 Refactor some of the Guis from the legacy plugin (#399)
* Fix bugs in core and add default args to Gui defs

* Refactor production Gui

* Refactor landfill blueprint button

* Fix more bugs in core

* Consistent naming of new guis

* Refactor module inserter gui

* Refactor surveillance gui

* Add shorthand for data from arguments

* Make element names consistent

* Add types

* Change how table rows work

* Refactor player stats gui

* Refactor quick actions gui

* Refactor research milestones gui

* Refactor player bonus gui

* Refactor science production gui

* Refactor autofill gui

* Cleanup use of aligned flow

* Rename "Gui.element" to "Gui.define"

* Rename Gui types

* Rename property_from_arg

* Add guide for making guis

* Add full reference document

* Add condensed reference

* Apply style guide to refactored guis

* Bug fixes
2025-08-29 14:30:30 +01:00
Cooldude2606andGitHub ce80ae9021 Refactored UPS monitor as clusterio plugin (#398)
* Refactor server ups

* Use catalogs

* Move to own plugin

* Use web config

* Remove External.get_server_ups

* Update workspace version requirement

* Remove need for storage

* Add locale

* Fix CI
2025-08-08 16:36:22 +01:00
Cooldude2606 c5b9138e4e Fix type names for Commands 2025-08-06 16:46:57 +01:00
phidiasandGitHub ed01de3feb Fix Dependencies Version (#396)
* Update package.json

* Update package.json

* Update package.json

* Update package.json

* Update package.json

* Update package.json
2025-08-04 20:58:23 +01:00
Cooldude2606 1a17f11062 Multiple fixes for role commands
- Fix server being 'Guest' for commands
- Make autocomplete of arguments more intuitive
- Fix usage text for commands
2025-01-25 18:26:59 +00:00
Cooldude2606 b29a141d5d Fix sudo command
- Fixes autocomplete using patterns by default
- Fixes required argument for sudo
- Fixes format player name for table type
2025-01-15 21:02:44 +00:00
Cooldude2606 e1c1fa2767 Fix copy error in remote_only 2025-01-13 20:37:27 +00:00
Cooldude2606 3e6ec6a867 Fix issues with util and commands
- Use rawget when testing for locale strings
- Use player index 0 for errors in rcon commands
2025-01-11 00:42:41 +00:00
Cooldude2606 83deb568bf Fix exp_commands logging 2024-12-31 19:02:50 +00:00
Cooldude2606 974b28c3b0 Prepare repo for publish 2024-12-24 20:50:48 +00:00
phidiasandGitHub 79c8f73d9c Add zh locale to commands (#18)
* Create zh-CN.cfg

* Create zh-TW.cfg

* Update zh-CN.cfg

* Update zh-TW.cfg
2024-12-24 14:30:14 +00:00
Cooldude2606 9c4546ab52 Allow plugin discovery 2024-12-20 21:32:12 +00:00
Cooldude2606 99ab54da0a Enable stricter type checks 2024-11-21 00:03:19 +00:00
Cooldude2606 9aee1c425f Fix start, join, formatting, and locale issues 2024-11-19 22:37:49 +00:00
Cooldude2606 c9bf85835f Improvements for ExpCommands 2024-11-19 22:36:06 +00:00
Cooldude2606 e78234898e Setup exp_scenario for commands 2024-11-19 22:35:44 +00:00
Cooldude2606 34a7879761 Quick fix for player physical position 2024-11-19 22:35:41 +00:00
Cooldude2606 88cd64e422 Update Command Lib 2024-11-19 22:34:57 +00:00
Cooldude2606 377fb69152 Migration for new helpers library 2024-11-19 22:34:39 +00:00
Cooldude2606 f8c74c9dd3 Merge Game, FlyingText, Common and table 2024-11-19 22:33:27 +00:00
Cooldude2606 3145f7e904 No more warnings 2024-11-19 22:32:46 +00:00
Cooldude2606 292c1a1b68 Update all code styles 2024-11-19 22:29:35 +00:00
Cooldude2606 446e87b610 Add Clusterio Plugins 2024-11-19 21:51:13 +00:00