Add vehicle timetable get/set support
Timetables have no GameScript API surface, so this implements real DoCommands over the game port (ClientCommand/ServerCommand) instead of the Admin GameScript relay used for list_vehicles(): change_timetable(), autofill_timetable(), set_timetable_start(), and set_vehicle_on_time() send commands, while get_vehicle_timetable() reconstructs state purely by observing ServerCommand broadcasts, since no query command exists. Includes the custom varuint wire codec these commands require, a full usage guide (docs/TIMETABLES.md), and a worked demo in main.py. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -38,7 +38,6 @@ def test_protocol_static_parsers():
|
||||
assert res["token"] == 7
|
||||
|
||||
assert OpenTTDProtocol.receive_ServerExternalChat(None, b"") == {}
|
||||
assert OpenTTDProtocol.receive_ServerCommand(None, b"") == {}
|
||||
assert OpenTTDProtocol.receive_ServerFull(None, b"") == {}
|
||||
assert OpenTTDProtocol.receive_ServerBanned(None, b"") == {}
|
||||
assert OpenTTDProtocol.receive_ClientIdentify(None, b"") == {}
|
||||
|
||||
Reference in New Issue
Block a user