This commit is contained in:
evanpelle
2025-12-15 15:36:50 -08:00
parent 58c7cdd46f
commit d9e7785608
43 changed files with 4581 additions and 36 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ const gitignorePath = path.resolve(__dirname, ".gitignore");
/** @type {import('eslint').Linter.Config[]} */
export default [
includeIgnoreFile(gitignorePath),
{ ignores: ["src/server/gatekeeper/**"] },
{ ignores: ["src/generated/**"] },
{ files: ["**/*.{js,mjs,cjs,ts}"] },
{ languageOptions: { globals: { ...globals.browser, ...globals.node } } },
pluginJs.configs.recommended,
+19 -33
View File
@@ -25,6 +25,7 @@
"express": "^4.21.1",
"express-rate-limit": "^7.5.0",
"fastpriorityqueue": "^0.7.5",
"flatbuffers": "^25.9.23",
"howler": "^2.2.4",
"intl-messageformat": "^10.7.16",
"ip-anonymize": "^0.1.0",
@@ -1049,7 +1050,6 @@
"integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.27.1",
@@ -2922,7 +2922,6 @@
}
],
"license": "MIT",
"peer": true,
"engines": {
"node": ">=18"
},
@@ -2946,7 +2945,6 @@
}
],
"license": "MIT",
"peer": true,
"engines": {
"node": ">=18"
}
@@ -5101,7 +5099,6 @@
"resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz",
"integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==",
"license": "Apache-2.0",
"peer": true,
"engines": {
"node": ">=8.0.0"
}
@@ -6420,6 +6417,7 @@
"os": [
"darwin"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6436,6 +6434,7 @@
"os": [
"darwin"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6452,6 +6451,7 @@
"os": [
"linux"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6468,6 +6468,7 @@
"os": [
"linux"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6484,6 +6485,7 @@
"os": [
"linux"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6500,6 +6502,7 @@
"os": [
"linux"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6516,6 +6519,7 @@
"os": [
"linux"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6532,6 +6536,7 @@
"os": [
"win32"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6548,6 +6553,7 @@
"os": [
"win32"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6564,6 +6570,7 @@
"os": [
"win32"
],
"peer": true,
"engines": {
"node": ">=10"
}
@@ -6599,6 +6606,7 @@
"integrity": "sha512-u1iIVZV9Q0jxY+yM2vw/hZGDNudsN85bBpTqzAQ9rzkxW9D+e3aEM4Han+ow518gSewkXgjmEK0BD79ZcNVgPw==",
"devOptional": true,
"license": "Apache-2.0",
"peer": true,
"dependencies": {
"@swc/counter": "^0.1.3"
}
@@ -7253,7 +7261,6 @@
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.32.tgz",
"integrity": "sha512-3jigKqgSjsH6gYZv2nEsqdXfZqIFGAV36XYYjf9KGZ3PSG+IhLecqPnI310RvjutyMwifE2hhhNEklOUrvx/wA==",
"license": "MIT",
"peer": true,
"dependencies": {
"undici-types": "~6.21.0"
}
@@ -7488,7 +7495,6 @@
"integrity": "sha512-4O3idHxhyzjClSMJ0a29AcoK0+YwnEqzI6oz3vlRf3xw0zbzt15MzXwItOlnr5nIth6zlY2RENLsOPvhyrKAQA==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@typescript-eslint/scope-manager": "8.34.1",
"@typescript-eslint/types": "8.34.1",
@@ -8259,7 +8265,6 @@
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
"integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",
"license": "MIT",
"peer": true,
"bin": {
"acorn": "bin/acorn"
},
@@ -8318,7 +8323,6 @@
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.1",
"fast-json-stable-stringify": "^2.0.0",
@@ -8884,7 +8888,6 @@
}
],
"license": "MIT",
"peer": true,
"dependencies": {
"caniuse-lite": "^1.0.30001718",
"electron-to-chromium": "^1.5.160",
@@ -9063,7 +9066,6 @@
"dev": true,
"hasInstallScript": true,
"license": "MIT",
"peer": true,
"dependencies": {
"node-addon-api": "^7.0.0",
"prebuild-install": "^7.1.1"
@@ -9085,7 +9087,6 @@
"integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"assertion-error": "^2.0.1",
"check-error": "^2.1.1",
@@ -9690,7 +9691,6 @@
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
@@ -10278,7 +10278,6 @@
"integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==",
"dev": true,
"license": "ISC",
"peer": true,
"engines": {
"node": ">=12"
}
@@ -11021,7 +11020,6 @@
"integrity": "sha512-GsGizj2Y1rCWDu6XoEekL3RLilp0voSePurjZIkxL3wlm5o5EC9VpgaP7lrCvjnkuLvzFBQWB3vWB3K5KQTveQ==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.12.1",
@@ -11191,7 +11189,6 @@
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
@@ -11550,7 +11547,6 @@
"resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz",
"integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==",
"license": "MIT",
"peer": true,
"dependencies": {
"accepts": "~1.3.8",
"array-flatten": "1.1.1",
@@ -11904,6 +11900,12 @@
"node": ">=16"
}
},
"node_modules/flatbuffers": {
"version": "25.9.23",
"resolved": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-25.9.23.tgz",
"integrity": "sha512-MI1qs7Lo4Syw0EOzUl0xjs2lsoeqFku44KpngfIduHBYvzm8h2+7K8YMQh1JtVVVrUvhLpNwqVi4DERegUJhPQ==",
"license": "Apache-2.0"
},
"node_modules/flatted": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz",
@@ -12451,7 +12453,6 @@
"integrity": "sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@types/html-minifier-terser": "^6.0.0",
"html-minifier-terser": "^6.0.2",
@@ -14981,7 +14982,6 @@
"integrity": "sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"cssstyle": "^4.2.1",
"data-urls": "^5.0.0",
@@ -16695,7 +16695,6 @@
"integrity": "sha512-dyuThzncsgEgJZnvd/A/5x6IkUERbK+phXqUQrI+0C6WE+8xqGH5VChRTLecemhgZF0kQ+gZOM3tJTX9937xpg==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@pixi/colord": "^2.9.6",
"@types/css-font-loading-module": "^0.0.12",
@@ -16753,7 +16752,6 @@
}
],
"license": "MIT",
"peer": true,
"dependencies": {
"nanoid": "^3.3.11",
"picocolors": "^1.1.1",
@@ -17092,7 +17090,6 @@
"integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==",
"dev": true,
"license": "MIT",
"peer": true,
"bin": {
"prettier": "bin/prettier.cjs"
},
@@ -18362,7 +18359,6 @@
"integrity": "sha512-TOgRcwFPbfGtpqvZw+hyqJDvqfapr1qUlOizROIk4bBLjlsjlB00Pg6wMFXNtJRpu+eCZuVOaLatG7M8105kAw==",
"dev": true,
"license": "BSD-3-Clause",
"peer": true,
"dependencies": {
"@sinonjs/commons": "^3.0.1",
"@sinonjs/fake-timers": "^13.0.5",
@@ -19075,7 +19071,6 @@
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
@@ -19307,7 +19302,6 @@
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"dev": true,
"license": "MIT",
"peer": true,
"engines": {
"node": ">=12"
},
@@ -19495,7 +19489,6 @@
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz",
"integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"@cspotcode/source-map-support": "^0.8.0",
"@tsconfig/node10": "^1.0.7",
@@ -19578,8 +19571,7 @@
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
"license": "0BSD",
"peer": true
"license": "0BSD"
},
"node_modules/tsx": {
"version": "4.20.3",
@@ -19668,7 +19660,6 @@
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz",
"integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
"license": "Apache-2.0",
"peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -19963,7 +19954,6 @@
"integrity": "sha512-QaNKAvGCDRh3wW1dsDjeMdDXwZm2vqq3zn6Pvq4rHOEOGSaUMgOOjG2Y9ZbIGzpfkJk9ZYTHpDqgDfeBDcnLaw==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@types/eslint-scope": "^3.7.7",
"@types/estree": "^1.0.8",
@@ -20013,7 +20003,6 @@
"integrity": "sha512-MfwFQ6SfwinsUVi0rNJm7rHZ31GyTcpVE5pgVA3hwFRb7COD4TzjUUwhGWKfO50+xdc2MQPuEBBJoqIMGt3JDw==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@discoveryjs/json-ext": "^0.6.1",
"@webpack-cli/configtest": "^3.0.1",
@@ -20097,7 +20086,6 @@
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
@@ -20213,7 +20201,6 @@
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
@@ -20306,7 +20293,6 @@
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
+3 -1
View File
@@ -18,7 +18,8 @@
"lint": "eslint",
"lint:fix": "eslint --fix",
"prepare": "husky",
"gen-maps": "cd map-generator && go run . && npm run format"
"gen-maps": "cd map-generator && go run . && npm run format",
"gen:fb": "flatc --ts -o ./src/generated ./src/core/game/GameUpdates.fbs"
},
"lint-staged": {
"**/*": [
@@ -121,6 +122,7 @@
"express": "^4.21.1",
"express-rate-limit": "^7.5.0",
"fastpriorityqueue": "^0.7.5",
"flatbuffers": "^25.9.23",
"howler": "^2.2.4",
"intl-messageformat": "^10.7.16",
"ip-anonymize": "^0.1.0",
+308
View File
@@ -0,0 +1,308 @@
// GameUpdates FlatBuffer Schema
namespace GameUpdates;
// Basic types
table TileRef {
x: int;
y: int;
}
table NameViewData {
name: string;
display_name: string;
color: uint;
}
// Enums
enum GameUpdateType : byte {
Tile = 0,
Unit = 1,
Player = 2,
DisplayEvent = 3,
DisplayChatEvent = 4,
AllianceRequest = 5,
AllianceRequestReply = 6,
BrokeAlliance = 7,
AllianceExpired = 8,
AllianceExtension = 9,
TargetPlayer = 10,
Emoji = 11,
Win = 12,
Hash = 13,
UnitIncoming = 14,
BonusEvent = 15,
RailroadEvent = 16,
ConquestEvent = 17,
EmbargoEvent = 18
}
enum RailType : byte {
VERTICAL = 0,
HORIZONTAL = 1,
TOP_LEFT = 2,
TOP_RIGHT = 3,
BOTTOM_LEFT = 4,
BOTTOM_RIGHT = 5
}
enum UnitType : byte {
Infantry = 0,
Tank = 1,
Ship = 2,
Plane = 3,
Nuke = 4,
Train = 5
}
enum TrainType : byte {
Passenger = 0,
Freight = 1
}
enum PlayerType : byte {
Human = 0,
Bot = 1,
Spectator = 2
}
enum MessageType : byte {
Info = 0,
Warning = 1,
Error = 2,
Success = 3
}
// Update structures
table TileUpdate {
tile_ref: TileRef;
owner_id: int = -1;
troops: int;
gold: long;
is_city: bool;
is_capital: bool;
has_train_station: bool;
}
table TileUpdateWrapper {
update: TileUpdate;
}
table UnitUpdate {
unit_type: UnitType;
troops: int;
id: int;
owner_id: int;
last_owner_id: int = -1;
pos: TileRef;
last_pos: TileRef;
is_active: bool;
reached_target: bool;
retreating: bool;
targetable: bool;
marked_for_deletion: int = -1;
target_unit_id: int = -1;
target_tile: TileRef;
health: int = 100;
under_construction: bool = false;
missile_timer_queue: [int];
level: int = 1;
has_train_station: bool = false;
train_type: TrainType;
loaded: bool = false;
}
table AttackUpdate {
attacker_id: int;
target_id: int;
troops: int;
id: string;
retreating: bool;
}
table EmojiMessage {
player_id: int;
emoji: string;
target_player_id: int = -1;
tick: int;
}
table AllianceView {
id: int;
other: int;
created_at: int;
expires_at: int;
has_extension_request: bool;
}
table PlayerUpdate {
name_view_data: NameViewData;
client_id: string;
name: string;
display_name: string;
id: int;
team: int = -1;
small_id: int;
player_type: PlayerType;
is_alive: bool;
is_disconnected: bool;
tiles_owned: int;
gold: long;
troops: int;
allies: [int];
embargoes: [int];
is_traitor: bool;
traitor_remaining_ticks: int = -1;
targets: [int];
outgoing_emojis: [EmojiMessage];
outgoing_attacks: [AttackUpdate];
incoming_attacks: [AttackUpdate];
outgoing_alliance_requests: [int];
alliances: [AllianceView];
has_spawned: bool;
betrayals: int;
last_delete_unit_tick: int;
}
table AllianceRequestUpdate {
requestor_id: int;
recipient_id: int;
created_at: int;
}
table AllianceRequestReplyUpdate {
request: AllianceRequestUpdate;
accepted: bool;
}
table BrokeAllianceUpdate {
traitor_id: int;
betrayed_id: int;
}
table AllianceExpiredUpdate {
player1_id: int;
player2_id: int;
}
table AllianceExtensionUpdate {
player_id: int;
alliance_id: int;
}
table TargetPlayerUpdate {
player_id: int;
target_id: int;
}
table EmojiUpdate {
emoji: EmojiMessage;
}
table DisplayMessageUpdate {
message: string;
message_type: MessageType;
gold_amount: long = 0;
player_id: int = -1;
params_keys: [string];
params_values: [string];
}
table DisplayChatMessageUpdate {
key: string;
category: string;
target: string;
player_id: int = -1;
is_from: bool;
recipient: string;
}
table WinUpdate {
all_players_stats: string; // JSON serialized
winner: string; // JSON serialized
}
table HashUpdate {
tick: int;
hash: int;
}
table UnitIncomingUpdate {
unit_id: int;
message: string;
message_type: MessageType;
player_id: int;
}
table BonusEventUpdate {
player: int;
tile: TileRef;
gold: int;
troops: int;
}
table RailTile {
tile: TileRef;
rail_type: RailType;
}
table RailroadUpdate {
is_active: bool;
rail_tiles: [RailTile];
}
table ConquestUpdate {
conqueror_id: int;
conquered_id: int;
gold: long;
}
table EmbargoUpdate {
event: string; // "start" or "stop"
player_id: int;
embargoed_id: int;
}
table ErrorUpdate {
err_msg: string;
stack: string;
}
// Union for all update types
union GameUpdateUnion {
TileUpdateWrapper,
UnitUpdate,
PlayerUpdate,
AllianceRequestUpdate,
AllianceRequestReplyUpdate,
BrokeAllianceUpdate,
AllianceExpiredUpdate,
DisplayMessageUpdate,
DisplayChatMessageUpdate,
TargetPlayerUpdate,
EmojiUpdate,
WinUpdate,
HashUpdate,
UnitIncomingUpdate,
AllianceExtensionUpdate,
BonusEventUpdate,
RailroadUpdate,
ConquestUpdate,
EmbargoUpdate
}
table GameUpdate {
type: GameUpdateType;
update: GameUpdateUnion;
}
table GameUpdateViewData {
tick: int;
updates: [GameUpdate];
packed_tile_updates: [ulong];
player_name_view_data_keys: [string];
player_name_view_data_values: [NameViewData];
tick_execution_duration: float = 0.0;
}
root_type GameUpdateViewData;
+5
View File
@@ -0,0 +1,5 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export * as GameUpdates from "./game-updates.js";
+40
View File
@@ -0,0 +1,40 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export { AllianceExpiredUpdate } from "./game-updates/alliance-expired-update.js";
export { AllianceExtensionUpdate } from "./game-updates/alliance-extension-update.js";
export { AllianceRequestReplyUpdate } from "./game-updates/alliance-request-reply-update.js";
export { AllianceRequestUpdate } from "./game-updates/alliance-request-update.js";
export { AllianceView } from "./game-updates/alliance-view.js";
export { AttackUpdate } from "./game-updates/attack-update.js";
export { BonusEventUpdate } from "./game-updates/bonus-event-update.js";
export { BrokeAllianceUpdate } from "./game-updates/broke-alliance-update.js";
export { ConquestUpdate } from "./game-updates/conquest-update.js";
export { DisplayChatMessageUpdate } from "./game-updates/display-chat-message-update.js";
export { DisplayMessageUpdate } from "./game-updates/display-message-update.js";
export { EmbargoUpdate } from "./game-updates/embargo-update.js";
export { EmojiMessage } from "./game-updates/emoji-message.js";
export { EmojiUpdate } from "./game-updates/emoji-update.js";
export { ErrorUpdate } from "./game-updates/error-update.js";
export { GameUpdateType } from "./game-updates/game-update-type.js";
export { GameUpdateUnion } from "./game-updates/game-update-union.js";
export { GameUpdateViewData } from "./game-updates/game-update-view-data.js";
export { GameUpdate } from "./game-updates/game-update.js";
export { HashUpdate } from "./game-updates/hash-update.js";
export { MessageType } from "./game-updates/message-type.js";
export { NameViewData } from "./game-updates/name-view-data.js";
export { PlayerType } from "./game-updates/player-type.js";
export { PlayerUpdate } from "./game-updates/player-update.js";
export { RailTile } from "./game-updates/rail-tile.js";
export { RailType } from "./game-updates/rail-type.js";
export { RailroadUpdate } from "./game-updates/railroad-update.js";
export { TargetPlayerUpdate } from "./game-updates/target-player-update.js";
export { TileRef } from "./game-updates/tile-ref.js";
export { TileUpdateWrapper } from "./game-updates/tile-update-wrapper.js";
export { TileUpdate } from "./game-updates/tile-update.js";
export { TrainType } from "./game-updates/train-type.js";
export { UnitIncomingUpdate } from "./game-updates/unit-incoming-update.js";
export { UnitType } from "./game-updates/unit-type.js";
export { UnitUpdate } from "./game-updates/unit-update.js";
export { WinUpdate } from "./game-updates/win-update.js";
@@ -0,0 +1,76 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class AllianceExpiredUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): AllianceExpiredUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsAllianceExpiredUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceExpiredUpdate,
): AllianceExpiredUpdate {
return (obj || new AllianceExpiredUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsAllianceExpiredUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceExpiredUpdate,
): AllianceExpiredUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new AllianceExpiredUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
player1Id(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
player2Id(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startAllianceExpiredUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addPlayer1Id(builder: flatbuffers.Builder, player1Id: number) {
builder.addFieldInt32(0, player1Id, 0);
}
static addPlayer2Id(builder: flatbuffers.Builder, player2Id: number) {
builder.addFieldInt32(1, player2Id, 0);
}
static endAllianceExpiredUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createAllianceExpiredUpdate(
builder: flatbuffers.Builder,
player1Id: number,
player2Id: number,
): flatbuffers.Offset {
AllianceExpiredUpdate.startAllianceExpiredUpdate(builder);
AllianceExpiredUpdate.addPlayer1Id(builder, player1Id);
AllianceExpiredUpdate.addPlayer2Id(builder, player2Id);
return AllianceExpiredUpdate.endAllianceExpiredUpdate(builder);
}
}
@@ -0,0 +1,76 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class AllianceExtensionUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): AllianceExtensionUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsAllianceExtensionUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceExtensionUpdate,
): AllianceExtensionUpdate {
return (obj || new AllianceExtensionUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsAllianceExtensionUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceExtensionUpdate,
): AllianceExtensionUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new AllianceExtensionUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
allianceId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startAllianceExtensionUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(0, playerId, 0);
}
static addAllianceId(builder: flatbuffers.Builder, allianceId: number) {
builder.addFieldInt32(1, allianceId, 0);
}
static endAllianceExtensionUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createAllianceExtensionUpdate(
builder: flatbuffers.Builder,
playerId: number,
allianceId: number,
): flatbuffers.Offset {
AllianceExtensionUpdate.startAllianceExtensionUpdate(builder);
AllianceExtensionUpdate.addPlayerId(builder, playerId);
AllianceExtensionUpdate.addAllianceId(builder, allianceId);
return AllianceExtensionUpdate.endAllianceExtensionUpdate(builder);
}
}
@@ -0,0 +1,86 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { AllianceRequestUpdate } from "../game-updates/alliance-request-update.js";
export class AllianceRequestReplyUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): AllianceRequestReplyUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsAllianceRequestReplyUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceRequestReplyUpdate,
): AllianceRequestReplyUpdate {
return (obj || new AllianceRequestReplyUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsAllianceRequestReplyUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceRequestReplyUpdate,
): AllianceRequestReplyUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new AllianceRequestReplyUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
request(obj?: AllianceRequestUpdate): AllianceRequestUpdate | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? (obj || new AllianceRequestUpdate()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
accepted(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
static startAllianceRequestReplyUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addRequest(
builder: flatbuffers.Builder,
requestOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, requestOffset, 0);
}
static addAccepted(builder: flatbuffers.Builder, accepted: boolean) {
builder.addFieldInt8(1, +accepted, +false);
}
static endAllianceRequestReplyUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createAllianceRequestReplyUpdate(
builder: flatbuffers.Builder,
requestOffset: flatbuffers.Offset,
accepted: boolean,
): flatbuffers.Offset {
AllianceRequestReplyUpdate.startAllianceRequestReplyUpdate(builder);
AllianceRequestReplyUpdate.addRequest(builder, requestOffset);
AllianceRequestReplyUpdate.addAccepted(builder, accepted);
return AllianceRequestReplyUpdate.endAllianceRequestReplyUpdate(builder);
}
}
@@ -0,0 +1,87 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class AllianceRequestUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): AllianceRequestUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsAllianceRequestUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceRequestUpdate,
): AllianceRequestUpdate {
return (obj || new AllianceRequestUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsAllianceRequestUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AllianceRequestUpdate,
): AllianceRequestUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new AllianceRequestUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
requestorId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
recipientId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
createdAt(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startAllianceRequestUpdate(builder: flatbuffers.Builder) {
builder.startObject(3);
}
static addRequestorId(builder: flatbuffers.Builder, requestorId: number) {
builder.addFieldInt32(0, requestorId, 0);
}
static addRecipientId(builder: flatbuffers.Builder, recipientId: number) {
builder.addFieldInt32(1, recipientId, 0);
}
static addCreatedAt(builder: flatbuffers.Builder, createdAt: number) {
builder.addFieldInt32(2, createdAt, 0);
}
static endAllianceRequestUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createAllianceRequestUpdate(
builder: flatbuffers.Builder,
requestorId: number,
recipientId: number,
createdAt: number,
): flatbuffers.Offset {
AllianceRequestUpdate.startAllianceRequestUpdate(builder);
AllianceRequestUpdate.addRequestorId(builder, requestorId);
AllianceRequestUpdate.addRecipientId(builder, recipientId);
AllianceRequestUpdate.addCreatedAt(builder, createdAt);
return AllianceRequestUpdate.endAllianceRequestUpdate(builder);
}
}
+110
View File
@@ -0,0 +1,110 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class AllianceView {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): AllianceView {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsAllianceView(
bb: flatbuffers.ByteBuffer,
obj?: AllianceView,
): AllianceView {
return (obj || new AllianceView()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsAllianceView(
bb: flatbuffers.ByteBuffer,
obj?: AllianceView,
): AllianceView {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new AllianceView()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
id(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
other(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
createdAt(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
expiresAt(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
hasExtensionRequest(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
static startAllianceView(builder: flatbuffers.Builder) {
builder.startObject(5);
}
static addId(builder: flatbuffers.Builder, id: number) {
builder.addFieldInt32(0, id, 0);
}
static addOther(builder: flatbuffers.Builder, other: number) {
builder.addFieldInt32(1, other, 0);
}
static addCreatedAt(builder: flatbuffers.Builder, createdAt: number) {
builder.addFieldInt32(2, createdAt, 0);
}
static addExpiresAt(builder: flatbuffers.Builder, expiresAt: number) {
builder.addFieldInt32(3, expiresAt, 0);
}
static addHasExtensionRequest(
builder: flatbuffers.Builder,
hasExtensionRequest: boolean,
) {
builder.addFieldInt8(4, +hasExtensionRequest, +false);
}
static endAllianceView(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createAllianceView(
builder: flatbuffers.Builder,
id: number,
other: number,
createdAt: number,
expiresAt: number,
hasExtensionRequest: boolean,
): flatbuffers.Offset {
AllianceView.startAllianceView(builder);
AllianceView.addId(builder, id);
AllianceView.addOther(builder, other);
AllianceView.addCreatedAt(builder, createdAt);
AllianceView.addExpiresAt(builder, expiresAt);
AllianceView.addHasExtensionRequest(builder, hasExtensionRequest);
return AllianceView.endAllianceView(builder);
}
}
+111
View File
@@ -0,0 +1,111 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class AttackUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): AttackUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsAttackUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AttackUpdate,
): AttackUpdate {
return (obj || new AttackUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsAttackUpdate(
bb: flatbuffers.ByteBuffer,
obj?: AttackUpdate,
): AttackUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new AttackUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
attackerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
targetId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
troops(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
id(): string | null;
id(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
id(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
retreating(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
static startAttackUpdate(builder: flatbuffers.Builder) {
builder.startObject(5);
}
static addAttackerId(builder: flatbuffers.Builder, attackerId: number) {
builder.addFieldInt32(0, attackerId, 0);
}
static addTargetId(builder: flatbuffers.Builder, targetId: number) {
builder.addFieldInt32(1, targetId, 0);
}
static addTroops(builder: flatbuffers.Builder, troops: number) {
builder.addFieldInt32(2, troops, 0);
}
static addId(builder: flatbuffers.Builder, idOffset: flatbuffers.Offset) {
builder.addFieldOffset(3, idOffset, 0);
}
static addRetreating(builder: flatbuffers.Builder, retreating: boolean) {
builder.addFieldInt8(4, +retreating, +false);
}
static endAttackUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createAttackUpdate(
builder: flatbuffers.Builder,
attackerId: number,
targetId: number,
troops: number,
idOffset: flatbuffers.Offset,
retreating: boolean,
): flatbuffers.Offset {
AttackUpdate.startAttackUpdate(builder);
AttackUpdate.addAttackerId(builder, attackerId);
AttackUpdate.addTargetId(builder, targetId);
AttackUpdate.addTroops(builder, troops);
AttackUpdate.addId(builder, idOffset);
AttackUpdate.addRetreating(builder, retreating);
return AttackUpdate.endAttackUpdate(builder);
}
}
@@ -0,0 +1,88 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { TileRef } from "../game-updates/tile-ref.js";
export class BonusEventUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): BonusEventUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsBonusEventUpdate(
bb: flatbuffers.ByteBuffer,
obj?: BonusEventUpdate,
): BonusEventUpdate {
return (obj || new BonusEventUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsBonusEventUpdate(
bb: flatbuffers.ByteBuffer,
obj?: BonusEventUpdate,
): BonusEventUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new BonusEventUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
player(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
tile(obj?: TileRef): TileRef | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? (obj || new TileRef()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
gold(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
troops(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startBonusEventUpdate(builder: flatbuffers.Builder) {
builder.startObject(4);
}
static addPlayer(builder: flatbuffers.Builder, player: number) {
builder.addFieldInt32(0, player, 0);
}
static addTile(builder: flatbuffers.Builder, tileOffset: flatbuffers.Offset) {
builder.addFieldOffset(1, tileOffset, 0);
}
static addGold(builder: flatbuffers.Builder, gold: number) {
builder.addFieldInt32(2, gold, 0);
}
static addTroops(builder: flatbuffers.Builder, troops: number) {
builder.addFieldInt32(3, troops, 0);
}
static endBonusEventUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
}
@@ -0,0 +1,76 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class BrokeAllianceUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): BrokeAllianceUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsBrokeAllianceUpdate(
bb: flatbuffers.ByteBuffer,
obj?: BrokeAllianceUpdate,
): BrokeAllianceUpdate {
return (obj || new BrokeAllianceUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsBrokeAllianceUpdate(
bb: flatbuffers.ByteBuffer,
obj?: BrokeAllianceUpdate,
): BrokeAllianceUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new BrokeAllianceUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
traitorId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
betrayedId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startBrokeAllianceUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addTraitorId(builder: flatbuffers.Builder, traitorId: number) {
builder.addFieldInt32(0, traitorId, 0);
}
static addBetrayedId(builder: flatbuffers.Builder, betrayedId: number) {
builder.addFieldInt32(1, betrayedId, 0);
}
static endBrokeAllianceUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createBrokeAllianceUpdate(
builder: flatbuffers.Builder,
traitorId: number,
betrayedId: number,
): flatbuffers.Offset {
BrokeAllianceUpdate.startBrokeAllianceUpdate(builder);
BrokeAllianceUpdate.addTraitorId(builder, traitorId);
BrokeAllianceUpdate.addBetrayedId(builder, betrayedId);
return BrokeAllianceUpdate.endBrokeAllianceUpdate(builder);
}
}
@@ -0,0 +1,85 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class ConquestUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): ConquestUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsConquestUpdate(
bb: flatbuffers.ByteBuffer,
obj?: ConquestUpdate,
): ConquestUpdate {
return (obj || new ConquestUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsConquestUpdate(
bb: flatbuffers.ByteBuffer,
obj?: ConquestUpdate,
): ConquestUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new ConquestUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
conquerorId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
conqueredId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
gold(): bigint {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt64(this.bb_pos + offset) : BigInt("0");
}
static startConquestUpdate(builder: flatbuffers.Builder) {
builder.startObject(3);
}
static addConquerorId(builder: flatbuffers.Builder, conquerorId: number) {
builder.addFieldInt32(0, conquerorId, 0);
}
static addConqueredId(builder: flatbuffers.Builder, conqueredId: number) {
builder.addFieldInt32(1, conqueredId, 0);
}
static addGold(builder: flatbuffers.Builder, gold: bigint) {
builder.addFieldInt64(2, gold, BigInt("0"));
}
static endConquestUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createConquestUpdate(
builder: flatbuffers.Builder,
conquerorId: number,
conqueredId: number,
gold: bigint,
): flatbuffers.Offset {
ConquestUpdate.startConquestUpdate(builder);
ConquestUpdate.addConquerorId(builder, conquerorId);
ConquestUpdate.addConqueredId(builder, conqueredId);
ConquestUpdate.addGold(builder, gold);
return ConquestUpdate.endConquestUpdate(builder);
}
}
@@ -0,0 +1,145 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class DisplayChatMessageUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): DisplayChatMessageUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsDisplayChatMessageUpdate(
bb: flatbuffers.ByteBuffer,
obj?: DisplayChatMessageUpdate,
): DisplayChatMessageUpdate {
return (obj || new DisplayChatMessageUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsDisplayChatMessageUpdate(
bb: flatbuffers.ByteBuffer,
obj?: DisplayChatMessageUpdate,
): DisplayChatMessageUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new DisplayChatMessageUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
key(): string | null;
key(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
key(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
category(): string | null;
category(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
category(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
target(): string | null;
target(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
target(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
isFrom(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
recipient(): string | null;
recipient(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
recipient(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
static startDisplayChatMessageUpdate(builder: flatbuffers.Builder) {
builder.startObject(6);
}
static addKey(builder: flatbuffers.Builder, keyOffset: flatbuffers.Offset) {
builder.addFieldOffset(0, keyOffset, 0);
}
static addCategory(
builder: flatbuffers.Builder,
categoryOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, categoryOffset, 0);
}
static addTarget(
builder: flatbuffers.Builder,
targetOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(2, targetOffset, 0);
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(3, playerId, -1);
}
static addIsFrom(builder: flatbuffers.Builder, isFrom: boolean) {
builder.addFieldInt8(4, +isFrom, +false);
}
static addRecipient(
builder: flatbuffers.Builder,
recipientOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(5, recipientOffset, 0);
}
static endDisplayChatMessageUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createDisplayChatMessageUpdate(
builder: flatbuffers.Builder,
keyOffset: flatbuffers.Offset,
categoryOffset: flatbuffers.Offset,
targetOffset: flatbuffers.Offset,
playerId: number,
isFrom: boolean,
recipientOffset: flatbuffers.Offset,
): flatbuffers.Offset {
DisplayChatMessageUpdate.startDisplayChatMessageUpdate(builder);
DisplayChatMessageUpdate.addKey(builder, keyOffset);
DisplayChatMessageUpdate.addCategory(builder, categoryOffset);
DisplayChatMessageUpdate.addTarget(builder, targetOffset);
DisplayChatMessageUpdate.addPlayerId(builder, playerId);
DisplayChatMessageUpdate.addIsFrom(builder, isFrom);
DisplayChatMessageUpdate.addRecipient(builder, recipientOffset);
return DisplayChatMessageUpdate.endDisplayChatMessageUpdate(builder);
}
}
@@ -0,0 +1,207 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { MessageType } from "../game-updates/message-type.js";
export class DisplayMessageUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): DisplayMessageUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsDisplayMessageUpdate(
bb: flatbuffers.ByteBuffer,
obj?: DisplayMessageUpdate,
): DisplayMessageUpdate {
return (obj || new DisplayMessageUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsDisplayMessageUpdate(
bb: flatbuffers.ByteBuffer,
obj?: DisplayMessageUpdate,
): DisplayMessageUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new DisplayMessageUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
message(): string | null;
message(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
message(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
messageType(): MessageType {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt8(this.bb_pos + offset) : MessageType.Info;
}
goldAmount(): bigint {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt64(this.bb_pos + offset) : BigInt("0");
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
paramsKeys(index: number): string;
paramsKeys(
index: number,
optionalEncoding: flatbuffers.Encoding,
): string | Uint8Array;
paramsKeys(
index: number,
optionalEncoding?: any,
): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset
? this.bb!.__string(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
optionalEncoding,
)
: null;
}
paramsKeysLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
paramsValues(index: number): string;
paramsValues(
index: number,
optionalEncoding: flatbuffers.Encoding,
): string | Uint8Array;
paramsValues(
index: number,
optionalEncoding?: any,
): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset
? this.bb!.__string(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
optionalEncoding,
)
: null;
}
paramsValuesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
static startDisplayMessageUpdate(builder: flatbuffers.Builder) {
builder.startObject(6);
}
static addMessage(
builder: flatbuffers.Builder,
messageOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, messageOffset, 0);
}
static addMessageType(
builder: flatbuffers.Builder,
messageType: MessageType,
) {
builder.addFieldInt8(1, messageType, MessageType.Info);
}
static addGoldAmount(builder: flatbuffers.Builder, goldAmount: bigint) {
builder.addFieldInt64(2, goldAmount, BigInt("0"));
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(3, playerId, -1);
}
static addParamsKeys(
builder: flatbuffers.Builder,
paramsKeysOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(4, paramsKeysOffset, 0);
}
static createParamsKeysVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startParamsKeysVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static addParamsValues(
builder: flatbuffers.Builder,
paramsValuesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(5, paramsValuesOffset, 0);
}
static createParamsValuesVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startParamsValuesVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static endDisplayMessageUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createDisplayMessageUpdate(
builder: flatbuffers.Builder,
messageOffset: flatbuffers.Offset,
messageType: MessageType,
goldAmount: bigint,
playerId: number,
paramsKeysOffset: flatbuffers.Offset,
paramsValuesOffset: flatbuffers.Offset,
): flatbuffers.Offset {
DisplayMessageUpdate.startDisplayMessageUpdate(builder);
DisplayMessageUpdate.addMessage(builder, messageOffset);
DisplayMessageUpdate.addMessageType(builder, messageType);
DisplayMessageUpdate.addGoldAmount(builder, goldAmount);
DisplayMessageUpdate.addPlayerId(builder, playerId);
DisplayMessageUpdate.addParamsKeys(builder, paramsKeysOffset);
DisplayMessageUpdate.addParamsValues(builder, paramsValuesOffset);
return DisplayMessageUpdate.endDisplayMessageUpdate(builder);
}
}
@@ -0,0 +1,92 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class EmbargoUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): EmbargoUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsEmbargoUpdate(
bb: flatbuffers.ByteBuffer,
obj?: EmbargoUpdate,
): EmbargoUpdate {
return (obj || new EmbargoUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsEmbargoUpdate(
bb: flatbuffers.ByteBuffer,
obj?: EmbargoUpdate,
): EmbargoUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new EmbargoUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
event(): string | null;
event(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
event(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
embargoedId(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startEmbargoUpdate(builder: flatbuffers.Builder) {
builder.startObject(3);
}
static addEvent(
builder: flatbuffers.Builder,
eventOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, eventOffset, 0);
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(1, playerId, 0);
}
static addEmbargoedId(builder: flatbuffers.Builder, embargoedId: number) {
builder.addFieldInt32(2, embargoedId, 0);
}
static endEmbargoUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createEmbargoUpdate(
builder: flatbuffers.Builder,
eventOffset: flatbuffers.Offset,
playerId: number,
embargoedId: number,
): flatbuffers.Offset {
EmbargoUpdate.startEmbargoUpdate(builder);
EmbargoUpdate.addEvent(builder, eventOffset);
EmbargoUpdate.addPlayerId(builder, playerId);
EmbargoUpdate.addEmbargoedId(builder, embargoedId);
return EmbargoUpdate.endEmbargoUpdate(builder);
}
}
+106
View File
@@ -0,0 +1,106 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class EmojiMessage {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): EmojiMessage {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsEmojiMessage(
bb: flatbuffers.ByteBuffer,
obj?: EmojiMessage,
): EmojiMessage {
return (obj || new EmojiMessage()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsEmojiMessage(
bb: flatbuffers.ByteBuffer,
obj?: EmojiMessage,
): EmojiMessage {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new EmojiMessage()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
emoji(): string | null;
emoji(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
emoji(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
targetPlayerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
tick(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startEmojiMessage(builder: flatbuffers.Builder) {
builder.startObject(4);
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(0, playerId, 0);
}
static addEmoji(
builder: flatbuffers.Builder,
emojiOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, emojiOffset, 0);
}
static addTargetPlayerId(
builder: flatbuffers.Builder,
targetPlayerId: number,
) {
builder.addFieldInt32(2, targetPlayerId, -1);
}
static addTick(builder: flatbuffers.Builder, tick: number) {
builder.addFieldInt32(3, tick, 0);
}
static endEmojiMessage(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createEmojiMessage(
builder: flatbuffers.Builder,
playerId: number,
emojiOffset: flatbuffers.Offset,
targetPlayerId: number,
tick: number,
): flatbuffers.Offset {
EmojiMessage.startEmojiMessage(builder);
EmojiMessage.addPlayerId(builder, playerId);
EmojiMessage.addEmoji(builder, emojiOffset);
EmojiMessage.addTargetPlayerId(builder, targetPlayerId);
EmojiMessage.addTick(builder, tick);
return EmojiMessage.endEmojiMessage(builder);
}
}
@@ -0,0 +1,73 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { EmojiMessage } from "../game-updates/emoji-message.js";
export class EmojiUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): EmojiUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsEmojiUpdate(
bb: flatbuffers.ByteBuffer,
obj?: EmojiUpdate,
): EmojiUpdate {
return (obj || new EmojiUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsEmojiUpdate(
bb: flatbuffers.ByteBuffer,
obj?: EmojiUpdate,
): EmojiUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new EmojiUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
emoji(obj?: EmojiMessage): EmojiMessage | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? (obj || new EmojiMessage()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
static startEmojiUpdate(builder: flatbuffers.Builder) {
builder.startObject(1);
}
static addEmoji(
builder: flatbuffers.Builder,
emojiOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, emojiOffset, 0);
}
static endEmojiUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createEmojiUpdate(
builder: flatbuffers.Builder,
emojiOffset: flatbuffers.Offset,
): flatbuffers.Offset {
EmojiUpdate.startEmojiUpdate(builder);
EmojiUpdate.addEmoji(builder, emojiOffset);
return EmojiUpdate.endEmojiUpdate(builder);
}
}
@@ -0,0 +1,88 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class ErrorUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): ErrorUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsErrorUpdate(
bb: flatbuffers.ByteBuffer,
obj?: ErrorUpdate,
): ErrorUpdate {
return (obj || new ErrorUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsErrorUpdate(
bb: flatbuffers.ByteBuffer,
obj?: ErrorUpdate,
): ErrorUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new ErrorUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
errMsg(): string | null;
errMsg(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
errMsg(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
stack(): string | null;
stack(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
stack(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
static startErrorUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addErrMsg(
builder: flatbuffers.Builder,
errMsgOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, errMsgOffset, 0);
}
static addStack(
builder: flatbuffers.Builder,
stackOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, stackOffset, 0);
}
static endErrorUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createErrorUpdate(
builder: flatbuffers.Builder,
errMsgOffset: flatbuffers.Offset,
stackOffset: flatbuffers.Offset,
): flatbuffers.Offset {
ErrorUpdate.startErrorUpdate(builder);
ErrorUpdate.addErrMsg(builder, errMsgOffset);
ErrorUpdate.addStack(builder, stackOffset);
return ErrorUpdate.endErrorUpdate(builder);
}
}
@@ -0,0 +1,25 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export enum GameUpdateType {
Tile = 0,
Unit = 1,
Player = 2,
DisplayEvent = 3,
DisplayChatEvent = 4,
AllianceRequest = 5,
AllianceRequestReply = 6,
BrokeAlliance = 7,
AllianceExpired = 8,
AllianceExtension = 9,
TargetPlayer = 10,
Emoji = 11,
Win = 12,
Hash = 13,
UnitIncoming = 14,
BonusEvent = 15,
RailroadEvent = 16,
ConquestEvent = 17,
EmbargoEvent = 18,
}
@@ -0,0 +1,294 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import { AllianceExpiredUpdate } from "../game-updates/alliance-expired-update.js";
import { AllianceExtensionUpdate } from "../game-updates/alliance-extension-update.js";
import { AllianceRequestReplyUpdate } from "../game-updates/alliance-request-reply-update.js";
import { AllianceRequestUpdate } from "../game-updates/alliance-request-update.js";
import { BonusEventUpdate } from "../game-updates/bonus-event-update.js";
import { BrokeAllianceUpdate } from "../game-updates/broke-alliance-update.js";
import { ConquestUpdate } from "../game-updates/conquest-update.js";
import { DisplayChatMessageUpdate } from "../game-updates/display-chat-message-update.js";
import { DisplayMessageUpdate } from "../game-updates/display-message-update.js";
import { EmbargoUpdate } from "../game-updates/embargo-update.js";
import { EmojiUpdate } from "../game-updates/emoji-update.js";
import { HashUpdate } from "../game-updates/hash-update.js";
import { PlayerUpdate } from "../game-updates/player-update.js";
import { RailroadUpdate } from "../game-updates/railroad-update.js";
import { TargetPlayerUpdate } from "../game-updates/target-player-update.js";
import { TileUpdateWrapper } from "../game-updates/tile-update-wrapper.js";
import { UnitIncomingUpdate } from "../game-updates/unit-incoming-update.js";
import { UnitUpdate } from "../game-updates/unit-update.js";
import { WinUpdate } from "../game-updates/win-update.js";
export enum GameUpdateUnion {
NONE = 0,
TileUpdateWrapper = 1,
UnitUpdate = 2,
PlayerUpdate = 3,
AllianceRequestUpdate = 4,
AllianceRequestReplyUpdate = 5,
BrokeAllianceUpdate = 6,
AllianceExpiredUpdate = 7,
DisplayMessageUpdate = 8,
DisplayChatMessageUpdate = 9,
TargetPlayerUpdate = 10,
EmojiUpdate = 11,
WinUpdate = 12,
HashUpdate = 13,
UnitIncomingUpdate = 14,
AllianceExtensionUpdate = 15,
BonusEventUpdate = 16,
RailroadUpdate = 17,
ConquestUpdate = 18,
EmbargoUpdate = 19,
}
export function unionToGameUpdateUnion(
type: GameUpdateUnion,
accessor: (
obj:
| AllianceExpiredUpdate
| AllianceExtensionUpdate
| AllianceRequestReplyUpdate
| AllianceRequestUpdate
| BonusEventUpdate
| BrokeAllianceUpdate
| ConquestUpdate
| DisplayChatMessageUpdate
| DisplayMessageUpdate
| EmbargoUpdate
| EmojiUpdate
| HashUpdate
| PlayerUpdate
| RailroadUpdate
| TargetPlayerUpdate
| TileUpdateWrapper
| UnitIncomingUpdate
| UnitUpdate
| WinUpdate,
) =>
| AllianceExpiredUpdate
| AllianceExtensionUpdate
| AllianceRequestReplyUpdate
| AllianceRequestUpdate
| BonusEventUpdate
| BrokeAllianceUpdate
| ConquestUpdate
| DisplayChatMessageUpdate
| DisplayMessageUpdate
| EmbargoUpdate
| EmojiUpdate
| HashUpdate
| PlayerUpdate
| RailroadUpdate
| TargetPlayerUpdate
| TileUpdateWrapper
| UnitIncomingUpdate
| UnitUpdate
| WinUpdate
| null,
):
| AllianceExpiredUpdate
| AllianceExtensionUpdate
| AllianceRequestReplyUpdate
| AllianceRequestUpdate
| BonusEventUpdate
| BrokeAllianceUpdate
| ConquestUpdate
| DisplayChatMessageUpdate
| DisplayMessageUpdate
| EmbargoUpdate
| EmojiUpdate
| HashUpdate
| PlayerUpdate
| RailroadUpdate
| TargetPlayerUpdate
| TileUpdateWrapper
| UnitIncomingUpdate
| UnitUpdate
| WinUpdate
| null {
switch (GameUpdateUnion[type]) {
case "NONE":
return null;
case "TileUpdateWrapper":
return accessor(new TileUpdateWrapper())! as TileUpdateWrapper;
case "UnitUpdate":
return accessor(new UnitUpdate())! as UnitUpdate;
case "PlayerUpdate":
return accessor(new PlayerUpdate())! as PlayerUpdate;
case "AllianceRequestUpdate":
return accessor(new AllianceRequestUpdate())! as AllianceRequestUpdate;
case "AllianceRequestReplyUpdate":
return accessor(
new AllianceRequestReplyUpdate(),
)! as AllianceRequestReplyUpdate;
case "BrokeAllianceUpdate":
return accessor(new BrokeAllianceUpdate())! as BrokeAllianceUpdate;
case "AllianceExpiredUpdate":
return accessor(new AllianceExpiredUpdate())! as AllianceExpiredUpdate;
case "DisplayMessageUpdate":
return accessor(new DisplayMessageUpdate())! as DisplayMessageUpdate;
case "DisplayChatMessageUpdate":
return accessor(
new DisplayChatMessageUpdate(),
)! as DisplayChatMessageUpdate;
case "TargetPlayerUpdate":
return accessor(new TargetPlayerUpdate())! as TargetPlayerUpdate;
case "EmojiUpdate":
return accessor(new EmojiUpdate())! as EmojiUpdate;
case "WinUpdate":
return accessor(new WinUpdate())! as WinUpdate;
case "HashUpdate":
return accessor(new HashUpdate())! as HashUpdate;
case "UnitIncomingUpdate":
return accessor(new UnitIncomingUpdate())! as UnitIncomingUpdate;
case "AllianceExtensionUpdate":
return accessor(
new AllianceExtensionUpdate(),
)! as AllianceExtensionUpdate;
case "BonusEventUpdate":
return accessor(new BonusEventUpdate())! as BonusEventUpdate;
case "RailroadUpdate":
return accessor(new RailroadUpdate())! as RailroadUpdate;
case "ConquestUpdate":
return accessor(new ConquestUpdate())! as ConquestUpdate;
case "EmbargoUpdate":
return accessor(new EmbargoUpdate())! as EmbargoUpdate;
default:
return null;
}
}
export function unionListToGameUpdateUnion(
type: GameUpdateUnion,
accessor: (
index: number,
obj:
| AllianceExpiredUpdate
| AllianceExtensionUpdate
| AllianceRequestReplyUpdate
| AllianceRequestUpdate
| BonusEventUpdate
| BrokeAllianceUpdate
| ConquestUpdate
| DisplayChatMessageUpdate
| DisplayMessageUpdate
| EmbargoUpdate
| EmojiUpdate
| HashUpdate
| PlayerUpdate
| RailroadUpdate
| TargetPlayerUpdate
| TileUpdateWrapper
| UnitIncomingUpdate
| UnitUpdate
| WinUpdate,
) =>
| AllianceExpiredUpdate
| AllianceExtensionUpdate
| AllianceRequestReplyUpdate
| AllianceRequestUpdate
| BonusEventUpdate
| BrokeAllianceUpdate
| ConquestUpdate
| DisplayChatMessageUpdate
| DisplayMessageUpdate
| EmbargoUpdate
| EmojiUpdate
| HashUpdate
| PlayerUpdate
| RailroadUpdate
| TargetPlayerUpdate
| TileUpdateWrapper
| UnitIncomingUpdate
| UnitUpdate
| WinUpdate
| null,
index: number,
):
| AllianceExpiredUpdate
| AllianceExtensionUpdate
| AllianceRequestReplyUpdate
| AllianceRequestUpdate
| BonusEventUpdate
| BrokeAllianceUpdate
| ConquestUpdate
| DisplayChatMessageUpdate
| DisplayMessageUpdate
| EmbargoUpdate
| EmojiUpdate
| HashUpdate
| PlayerUpdate
| RailroadUpdate
| TargetPlayerUpdate
| TileUpdateWrapper
| UnitIncomingUpdate
| UnitUpdate
| WinUpdate
| null {
switch (GameUpdateUnion[type]) {
case "NONE":
return null;
case "TileUpdateWrapper":
return accessor(index, new TileUpdateWrapper())! as TileUpdateWrapper;
case "UnitUpdate":
return accessor(index, new UnitUpdate())! as UnitUpdate;
case "PlayerUpdate":
return accessor(index, new PlayerUpdate())! as PlayerUpdate;
case "AllianceRequestUpdate":
return accessor(
index,
new AllianceRequestUpdate(),
)! as AllianceRequestUpdate;
case "AllianceRequestReplyUpdate":
return accessor(
index,
new AllianceRequestReplyUpdate(),
)! as AllianceRequestReplyUpdate;
case "BrokeAllianceUpdate":
return accessor(index, new BrokeAllianceUpdate())! as BrokeAllianceUpdate;
case "AllianceExpiredUpdate":
return accessor(
index,
new AllianceExpiredUpdate(),
)! as AllianceExpiredUpdate;
case "DisplayMessageUpdate":
return accessor(
index,
new DisplayMessageUpdate(),
)! as DisplayMessageUpdate;
case "DisplayChatMessageUpdate":
return accessor(
index,
new DisplayChatMessageUpdate(),
)! as DisplayChatMessageUpdate;
case "TargetPlayerUpdate":
return accessor(index, new TargetPlayerUpdate())! as TargetPlayerUpdate;
case "EmojiUpdate":
return accessor(index, new EmojiUpdate())! as EmojiUpdate;
case "WinUpdate":
return accessor(index, new WinUpdate())! as WinUpdate;
case "HashUpdate":
return accessor(index, new HashUpdate())! as HashUpdate;
case "UnitIncomingUpdate":
return accessor(index, new UnitIncomingUpdate())! as UnitIncomingUpdate;
case "AllianceExtensionUpdate":
return accessor(
index,
new AllianceExtensionUpdate(),
)! as AllianceExtensionUpdate;
case "BonusEventUpdate":
return accessor(index, new BonusEventUpdate())! as BonusEventUpdate;
case "RailroadUpdate":
return accessor(index, new RailroadUpdate())! as RailroadUpdate;
case "ConquestUpdate":
return accessor(index, new ConquestUpdate())! as ConquestUpdate;
case "EmbargoUpdate":
return accessor(index, new EmbargoUpdate())! as EmbargoUpdate;
default:
return null;
}
}
@@ -0,0 +1,279 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { GameUpdate } from "../game-updates/game-update.js";
import { NameViewData } from "../game-updates/name-view-data.js";
export class GameUpdateViewData {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): GameUpdateViewData {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsGameUpdateViewData(
bb: flatbuffers.ByteBuffer,
obj?: GameUpdateViewData,
): GameUpdateViewData {
return (obj || new GameUpdateViewData()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsGameUpdateViewData(
bb: flatbuffers.ByteBuffer,
obj?: GameUpdateViewData,
): GameUpdateViewData {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new GameUpdateViewData()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
tick(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
updates(index: number, obj?: GameUpdate): GameUpdate | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? (obj || new GameUpdate()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
updatesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
packedTileUpdates(index: number): bigint | null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset
? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8)
: BigInt(0);
}
packedTileUpdatesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
playerNameViewDataKeys(index: number): string;
playerNameViewDataKeys(
index: number,
optionalEncoding: flatbuffers.Encoding,
): string | Uint8Array;
playerNameViewDataKeys(
index: number,
optionalEncoding?: any,
): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset
? this.bb!.__string(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
optionalEncoding,
)
: null;
}
playerNameViewDataKeysLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
playerNameViewDataValues(
index: number,
obj?: NameViewData,
): NameViewData | null {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset
? (obj || new NameViewData()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
playerNameViewDataValuesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
tickExecutionDuration(): number {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
}
static startGameUpdateViewData(builder: flatbuffers.Builder) {
builder.startObject(6);
}
static addTick(builder: flatbuffers.Builder, tick: number) {
builder.addFieldInt32(0, tick, 0);
}
static addUpdates(
builder: flatbuffers.Builder,
updatesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, updatesOffset, 0);
}
static createUpdatesVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startUpdatesVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static addPackedTileUpdates(
builder: flatbuffers.Builder,
packedTileUpdatesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(2, packedTileUpdatesOffset, 0);
}
static createPackedTileUpdatesVector(
builder: flatbuffers.Builder,
data: bigint[],
): flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt64(data[i]!);
}
return builder.endVector();
}
static startPackedTileUpdatesVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(8, numElems, 8);
}
static addPlayerNameViewDataKeys(
builder: flatbuffers.Builder,
playerNameViewDataKeysOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(3, playerNameViewDataKeysOffset, 0);
}
static createPlayerNameViewDataKeysVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startPlayerNameViewDataKeysVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addPlayerNameViewDataValues(
builder: flatbuffers.Builder,
playerNameViewDataValuesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(4, playerNameViewDataValuesOffset, 0);
}
static createPlayerNameViewDataValuesVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startPlayerNameViewDataValuesVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addTickExecutionDuration(
builder: flatbuffers.Builder,
tickExecutionDuration: number,
) {
builder.addFieldFloat32(5, tickExecutionDuration, 0.0);
}
static endGameUpdateViewData(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static finishGameUpdateViewDataBuffer(
builder: flatbuffers.Builder,
offset: flatbuffers.Offset,
) {
builder.finish(offset);
}
static finishSizePrefixedGameUpdateViewDataBuffer(
builder: flatbuffers.Builder,
offset: flatbuffers.Offset,
) {
builder.finish(offset, undefined, true);
}
static createGameUpdateViewData(
builder: flatbuffers.Builder,
tick: number,
updatesOffset: flatbuffers.Offset,
packedTileUpdatesOffset: flatbuffers.Offset,
playerNameViewDataKeysOffset: flatbuffers.Offset,
playerNameViewDataValuesOffset: flatbuffers.Offset,
tickExecutionDuration: number,
): flatbuffers.Offset {
GameUpdateViewData.startGameUpdateViewData(builder);
GameUpdateViewData.addTick(builder, tick);
GameUpdateViewData.addUpdates(builder, updatesOffset);
GameUpdateViewData.addPackedTileUpdates(builder, packedTileUpdatesOffset);
GameUpdateViewData.addPlayerNameViewDataKeys(
builder,
playerNameViewDataKeysOffset,
);
GameUpdateViewData.addPlayerNameViewDataValues(
builder,
playerNameViewDataValuesOffset,
);
GameUpdateViewData.addTickExecutionDuration(builder, tickExecutionDuration);
return GameUpdateViewData.endGameUpdateViewData(builder);
}
}
+98
View File
@@ -0,0 +1,98 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { GameUpdateType } from "../game-updates/game-update-type.js";
import { GameUpdateUnion } from "../game-updates/game-update-union.js";
export class GameUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): GameUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsGameUpdate(
bb: flatbuffers.ByteBuffer,
obj?: GameUpdate,
): GameUpdate {
return (obj || new GameUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsGameUpdate(
bb: flatbuffers.ByteBuffer,
obj?: GameUpdate,
): GameUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new GameUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
type(): GameUpdateType {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.readInt8(this.bb_pos + offset)
: GameUpdateType.Tile;
}
updateType(): GameUpdateUnion {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.readUint8(this.bb_pos + offset)
: GameUpdateUnion.NONE;
}
update<T extends flatbuffers.Table>(obj: any): any | null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__union(obj, this.bb_pos + offset) : null;
}
static startGameUpdate(builder: flatbuffers.Builder) {
builder.startObject(3);
}
static addType(builder: flatbuffers.Builder, type: GameUpdateType) {
builder.addFieldInt8(0, type, GameUpdateType.Tile);
}
static addUpdateType(
builder: flatbuffers.Builder,
updateType: GameUpdateUnion,
) {
builder.addFieldInt8(1, updateType, GameUpdateUnion.NONE);
}
static addUpdate(
builder: flatbuffers.Builder,
updateOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(2, updateOffset, 0);
}
static endGameUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createGameUpdate(
builder: flatbuffers.Builder,
type: GameUpdateType,
updateType: GameUpdateUnion,
updateOffset: flatbuffers.Offset,
): flatbuffers.Offset {
GameUpdate.startGameUpdate(builder);
GameUpdate.addType(builder, type);
GameUpdate.addUpdateType(builder, updateType);
GameUpdate.addUpdate(builder, updateOffset);
return GameUpdate.endGameUpdate(builder);
}
}
+74
View File
@@ -0,0 +1,74 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class HashUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): HashUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsHashUpdate(
bb: flatbuffers.ByteBuffer,
obj?: HashUpdate,
): HashUpdate {
return (obj || new HashUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsHashUpdate(
bb: flatbuffers.ByteBuffer,
obj?: HashUpdate,
): HashUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new HashUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
tick(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
hash(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startHashUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addTick(builder: flatbuffers.Builder, tick: number) {
builder.addFieldInt32(0, tick, 0);
}
static addHash(builder: flatbuffers.Builder, hash: number) {
builder.addFieldInt32(1, hash, 0);
}
static endHashUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createHashUpdate(
builder: flatbuffers.Builder,
tick: number,
hash: number,
): flatbuffers.Offset {
HashUpdate.startHashUpdate(builder);
HashUpdate.addTick(builder, tick);
HashUpdate.addHash(builder, hash);
return HashUpdate.endHashUpdate(builder);
}
}
@@ -0,0 +1,10 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export enum MessageType {
Info = 0,
Warning = 1,
Error = 2,
Success = 3,
}
@@ -0,0 +1,98 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class NameViewData {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): NameViewData {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsNameViewData(
bb: flatbuffers.ByteBuffer,
obj?: NameViewData,
): NameViewData {
return (obj || new NameViewData()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsNameViewData(
bb: flatbuffers.ByteBuffer,
obj?: NameViewData,
): NameViewData {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new NameViewData()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
name(): string | null;
name(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
name(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
displayName(): string | null;
displayName(
optionalEncoding: flatbuffers.Encoding,
): string | Uint8Array | null;
displayName(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
color(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
}
static startNameViewData(builder: flatbuffers.Builder) {
builder.startObject(3);
}
static addName(builder: flatbuffers.Builder, nameOffset: flatbuffers.Offset) {
builder.addFieldOffset(0, nameOffset, 0);
}
static addDisplayName(
builder: flatbuffers.Builder,
displayNameOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, displayNameOffset, 0);
}
static addColor(builder: flatbuffers.Builder, color: number) {
builder.addFieldInt32(2, color, 0);
}
static endNameViewData(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createNameViewData(
builder: flatbuffers.Builder,
nameOffset: flatbuffers.Offset,
displayNameOffset: flatbuffers.Offset,
color: number,
): flatbuffers.Offset {
NameViewData.startNameViewData(builder);
NameViewData.addName(builder, nameOffset);
NameViewData.addDisplayName(builder, displayNameOffset);
NameViewData.addColor(builder, color);
return NameViewData.endNameViewData(builder);
}
}
@@ -0,0 +1,9 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export enum PlayerType {
Human = 0,
Bot = 1,
Spectator = 2,
}
+704
View File
@@ -0,0 +1,704 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { AllianceView } from "../game-updates/alliance-view.js";
import { AttackUpdate } from "../game-updates/attack-update.js";
import { EmojiMessage } from "../game-updates/emoji-message.js";
import { NameViewData } from "../game-updates/name-view-data.js";
import { PlayerType } from "../game-updates/player-type.js";
export class PlayerUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): PlayerUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsPlayerUpdate(
bb: flatbuffers.ByteBuffer,
obj?: PlayerUpdate,
): PlayerUpdate {
return (obj || new PlayerUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsPlayerUpdate(
bb: flatbuffers.ByteBuffer,
obj?: PlayerUpdate,
): PlayerUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new PlayerUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
nameViewData(obj?: NameViewData): NameViewData | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? (obj || new NameViewData()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
clientId(): string | null;
clientId(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
clientId(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
name(): string | null;
name(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
name(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
displayName(): string | null;
displayName(
optionalEncoding: flatbuffers.Encoding,
): string | Uint8Array | null;
displayName(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
id(): number {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
team(): number {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
smallId(): number {
const offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
playerType(): PlayerType {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? this.bb!.readInt8(this.bb_pos + offset) : PlayerType.Human;
}
isAlive(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 20);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
isDisconnected(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 22);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
tilesOwned(): number {
const offset = this.bb!.__offset(this.bb_pos, 24);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
gold(): bigint {
const offset = this.bb!.__offset(this.bb_pos, 26);
return offset ? this.bb!.readInt64(this.bb_pos + offset) : BigInt("0");
}
troops(): number {
const offset = this.bb!.__offset(this.bb_pos, 28);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
allies(index: number): number | null {
const offset = this.bb!.__offset(this.bb_pos, 30);
return offset
? this.bb!.readInt32(this.bb!.__vector(this.bb_pos + offset) + index * 4)
: 0;
}
alliesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 30);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
alliesArray(): Int32Array | null {
const offset = this.bb!.__offset(this.bb_pos, 30);
return offset
? new Int32Array(
this.bb!.bytes().buffer,
this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset),
this.bb!.__vector_len(this.bb_pos + offset),
)
: null;
}
embargoes(index: number): number | null {
const offset = this.bb!.__offset(this.bb_pos, 32);
return offset
? this.bb!.readInt32(this.bb!.__vector(this.bb_pos + offset) + index * 4)
: 0;
}
embargoesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 32);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
embargoesArray(): Int32Array | null {
const offset = this.bb!.__offset(this.bb_pos, 32);
return offset
? new Int32Array(
this.bb!.bytes().buffer,
this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset),
this.bb!.__vector_len(this.bb_pos + offset),
)
: null;
}
isTraitor(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 34);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
traitorRemainingTicks(): number {
const offset = this.bb!.__offset(this.bb_pos, 36);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
targets(index: number): number | null {
const offset = this.bb!.__offset(this.bb_pos, 38);
return offset
? this.bb!.readInt32(this.bb!.__vector(this.bb_pos + offset) + index * 4)
: 0;
}
targetsLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 38);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
targetsArray(): Int32Array | null {
const offset = this.bb!.__offset(this.bb_pos, 38);
return offset
? new Int32Array(
this.bb!.bytes().buffer,
this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset),
this.bb!.__vector_len(this.bb_pos + offset),
)
: null;
}
outgoingEmojis(index: number, obj?: EmojiMessage): EmojiMessage | null {
const offset = this.bb!.__offset(this.bb_pos, 40);
return offset
? (obj || new EmojiMessage()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
outgoingEmojisLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 40);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
outgoingAttacks(index: number, obj?: AttackUpdate): AttackUpdate | null {
const offset = this.bb!.__offset(this.bb_pos, 42);
return offset
? (obj || new AttackUpdate()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
outgoingAttacksLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 42);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
incomingAttacks(index: number, obj?: AttackUpdate): AttackUpdate | null {
const offset = this.bb!.__offset(this.bb_pos, 44);
return offset
? (obj || new AttackUpdate()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
incomingAttacksLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 44);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
outgoingAllianceRequests(index: number): number | null {
const offset = this.bb!.__offset(this.bb_pos, 46);
return offset
? this.bb!.readInt32(this.bb!.__vector(this.bb_pos + offset) + index * 4)
: 0;
}
outgoingAllianceRequestsLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 46);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
outgoingAllianceRequestsArray(): Int32Array | null {
const offset = this.bb!.__offset(this.bb_pos, 46);
return offset
? new Int32Array(
this.bb!.bytes().buffer,
this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset),
this.bb!.__vector_len(this.bb_pos + offset),
)
: null;
}
alliances(index: number, obj?: AllianceView): AllianceView | null {
const offset = this.bb!.__offset(this.bb_pos, 48);
return offset
? (obj || new AllianceView()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
alliancesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 48);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
hasSpawned(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 50);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
betrayals(): number {
const offset = this.bb!.__offset(this.bb_pos, 52);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
lastDeleteUnitTick(): number {
const offset = this.bb!.__offset(this.bb_pos, 54);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startPlayerUpdate(builder: flatbuffers.Builder) {
builder.startObject(26);
}
static addNameViewData(
builder: flatbuffers.Builder,
nameViewDataOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, nameViewDataOffset, 0);
}
static addClientId(
builder: flatbuffers.Builder,
clientIdOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, clientIdOffset, 0);
}
static addName(builder: flatbuffers.Builder, nameOffset: flatbuffers.Offset) {
builder.addFieldOffset(2, nameOffset, 0);
}
static addDisplayName(
builder: flatbuffers.Builder,
displayNameOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(3, displayNameOffset, 0);
}
static addId(builder: flatbuffers.Builder, id: number) {
builder.addFieldInt32(4, id, 0);
}
static addTeam(builder: flatbuffers.Builder, team: number) {
builder.addFieldInt32(5, team, -1);
}
static addSmallId(builder: flatbuffers.Builder, smallId: number) {
builder.addFieldInt32(6, smallId, 0);
}
static addPlayerType(builder: flatbuffers.Builder, playerType: PlayerType) {
builder.addFieldInt8(7, playerType, PlayerType.Human);
}
static addIsAlive(builder: flatbuffers.Builder, isAlive: boolean) {
builder.addFieldInt8(8, +isAlive, +false);
}
static addIsDisconnected(
builder: flatbuffers.Builder,
isDisconnected: boolean,
) {
builder.addFieldInt8(9, +isDisconnected, +false);
}
static addTilesOwned(builder: flatbuffers.Builder, tilesOwned: number) {
builder.addFieldInt32(10, tilesOwned, 0);
}
static addGold(builder: flatbuffers.Builder, gold: bigint) {
builder.addFieldInt64(11, gold, BigInt("0"));
}
static addTroops(builder: flatbuffers.Builder, troops: number) {
builder.addFieldInt32(12, troops, 0);
}
static addAllies(
builder: flatbuffers.Builder,
alliesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(13, alliesOffset, 0);
}
static createAlliesVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array,
): flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createAlliesVector(
builder: flatbuffers.Builder,
data: number[] | Uint8Array,
): flatbuffers.Offset;
static createAlliesVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array | Uint8Array,
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt32(data[i]!);
}
return builder.endVector();
}
static startAlliesVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static addEmbargoes(
builder: flatbuffers.Builder,
embargoesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(14, embargoesOffset, 0);
}
static createEmbargoesVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array,
): flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createEmbargoesVector(
builder: flatbuffers.Builder,
data: number[] | Uint8Array,
): flatbuffers.Offset;
static createEmbargoesVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array | Uint8Array,
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt32(data[i]!);
}
return builder.endVector();
}
static startEmbargoesVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static addIsTraitor(builder: flatbuffers.Builder, isTraitor: boolean) {
builder.addFieldInt8(15, +isTraitor, +false);
}
static addTraitorRemainingTicks(
builder: flatbuffers.Builder,
traitorRemainingTicks: number,
) {
builder.addFieldInt32(16, traitorRemainingTicks, -1);
}
static addTargets(
builder: flatbuffers.Builder,
targetsOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(17, targetsOffset, 0);
}
static createTargetsVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array,
): flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createTargetsVector(
builder: flatbuffers.Builder,
data: number[] | Uint8Array,
): flatbuffers.Offset;
static createTargetsVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array | Uint8Array,
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt32(data[i]!);
}
return builder.endVector();
}
static startTargetsVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static addOutgoingEmojis(
builder: flatbuffers.Builder,
outgoingEmojisOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(18, outgoingEmojisOffset, 0);
}
static createOutgoingEmojisVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startOutgoingEmojisVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addOutgoingAttacks(
builder: flatbuffers.Builder,
outgoingAttacksOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(19, outgoingAttacksOffset, 0);
}
static createOutgoingAttacksVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startOutgoingAttacksVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addIncomingAttacks(
builder: flatbuffers.Builder,
incomingAttacksOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(20, incomingAttacksOffset, 0);
}
static createIncomingAttacksVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startIncomingAttacksVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addOutgoingAllianceRequests(
builder: flatbuffers.Builder,
outgoingAllianceRequestsOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(21, outgoingAllianceRequestsOffset, 0);
}
static createOutgoingAllianceRequestsVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array,
): flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createOutgoingAllianceRequestsVector(
builder: flatbuffers.Builder,
data: number[] | Uint8Array,
): flatbuffers.Offset;
static createOutgoingAllianceRequestsVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array | Uint8Array,
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt32(data[i]!);
}
return builder.endVector();
}
static startOutgoingAllianceRequestsVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addAlliances(
builder: flatbuffers.Builder,
alliancesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(22, alliancesOffset, 0);
}
static createAlliancesVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startAlliancesVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static addHasSpawned(builder: flatbuffers.Builder, hasSpawned: boolean) {
builder.addFieldInt8(23, +hasSpawned, +false);
}
static addBetrayals(builder: flatbuffers.Builder, betrayals: number) {
builder.addFieldInt32(24, betrayals, 0);
}
static addLastDeleteUnitTick(
builder: flatbuffers.Builder,
lastDeleteUnitTick: number,
) {
builder.addFieldInt32(25, lastDeleteUnitTick, 0);
}
static endPlayerUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createPlayerUpdate(
builder: flatbuffers.Builder,
nameViewDataOffset: flatbuffers.Offset,
clientIdOffset: flatbuffers.Offset,
nameOffset: flatbuffers.Offset,
displayNameOffset: flatbuffers.Offset,
id: number,
team: number,
smallId: number,
playerType: PlayerType,
isAlive: boolean,
isDisconnected: boolean,
tilesOwned: number,
gold: bigint,
troops: number,
alliesOffset: flatbuffers.Offset,
embargoesOffset: flatbuffers.Offset,
isTraitor: boolean,
traitorRemainingTicks: number,
targetsOffset: flatbuffers.Offset,
outgoingEmojisOffset: flatbuffers.Offset,
outgoingAttacksOffset: flatbuffers.Offset,
incomingAttacksOffset: flatbuffers.Offset,
outgoingAllianceRequestsOffset: flatbuffers.Offset,
alliancesOffset: flatbuffers.Offset,
hasSpawned: boolean,
betrayals: number,
lastDeleteUnitTick: number,
): flatbuffers.Offset {
PlayerUpdate.startPlayerUpdate(builder);
PlayerUpdate.addNameViewData(builder, nameViewDataOffset);
PlayerUpdate.addClientId(builder, clientIdOffset);
PlayerUpdate.addName(builder, nameOffset);
PlayerUpdate.addDisplayName(builder, displayNameOffset);
PlayerUpdate.addId(builder, id);
PlayerUpdate.addTeam(builder, team);
PlayerUpdate.addSmallId(builder, smallId);
PlayerUpdate.addPlayerType(builder, playerType);
PlayerUpdate.addIsAlive(builder, isAlive);
PlayerUpdate.addIsDisconnected(builder, isDisconnected);
PlayerUpdate.addTilesOwned(builder, tilesOwned);
PlayerUpdate.addGold(builder, gold);
PlayerUpdate.addTroops(builder, troops);
PlayerUpdate.addAllies(builder, alliesOffset);
PlayerUpdate.addEmbargoes(builder, embargoesOffset);
PlayerUpdate.addIsTraitor(builder, isTraitor);
PlayerUpdate.addTraitorRemainingTicks(builder, traitorRemainingTicks);
PlayerUpdate.addTargets(builder, targetsOffset);
PlayerUpdate.addOutgoingEmojis(builder, outgoingEmojisOffset);
PlayerUpdate.addOutgoingAttacks(builder, outgoingAttacksOffset);
PlayerUpdate.addIncomingAttacks(builder, incomingAttacksOffset);
PlayerUpdate.addOutgoingAllianceRequests(
builder,
outgoingAllianceRequestsOffset,
);
PlayerUpdate.addAlliances(builder, alliancesOffset);
PlayerUpdate.addHasSpawned(builder, hasSpawned);
PlayerUpdate.addBetrayals(builder, betrayals);
PlayerUpdate.addLastDeleteUnitTick(builder, lastDeleteUnitTick);
return PlayerUpdate.endPlayerUpdate(builder);
}
}
+82
View File
@@ -0,0 +1,82 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { RailType } from "../game-updates/rail-type.js";
import { TileRef } from "../game-updates/tile-ref.js";
export class RailTile {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): RailTile {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsRailTile(
bb: flatbuffers.ByteBuffer,
obj?: RailTile,
): RailTile {
return (obj || new RailTile()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsRailTile(
bb: flatbuffers.ByteBuffer,
obj?: RailTile,
): RailTile {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new RailTile()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
tile(obj?: TileRef): TileRef | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? (obj || new TileRef()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
railType(): RailType {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt8(this.bb_pos + offset) : RailType.VERTICAL;
}
static startRailTile(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addTile(builder: flatbuffers.Builder, tileOffset: flatbuffers.Offset) {
builder.addFieldOffset(0, tileOffset, 0);
}
static addRailType(builder: flatbuffers.Builder, railType: RailType) {
builder.addFieldInt8(1, railType, RailType.VERTICAL);
}
static endRailTile(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createRailTile(
builder: flatbuffers.Builder,
tileOffset: flatbuffers.Offset,
railType: RailType,
): flatbuffers.Offset {
RailTile.startRailTile(builder);
RailTile.addTile(builder, tileOffset);
RailTile.addRailType(builder, railType);
return RailTile.endRailTile(builder);
}
}
+12
View File
@@ -0,0 +1,12 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export enum RailType {
VERTICAL = 0,
HORIZONTAL = 1,
TOP_LEFT = 2,
TOP_RIGHT = 3,
BOTTOM_LEFT = 4,
BOTTOM_RIGHT = 5,
}
@@ -0,0 +1,106 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { RailTile } from "../game-updates/rail-tile.js";
export class RailroadUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): RailroadUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsRailroadUpdate(
bb: flatbuffers.ByteBuffer,
obj?: RailroadUpdate,
): RailroadUpdate {
return (obj || new RailroadUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsRailroadUpdate(
bb: flatbuffers.ByteBuffer,
obj?: RailroadUpdate,
): RailroadUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new RailroadUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
isActive(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
railTiles(index: number, obj?: RailTile): RailTile | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? (obj || new RailTile()).__init(
this.bb!.__indirect(
this.bb!.__vector(this.bb_pos + offset) + index * 4,
),
this.bb!,
)
: null;
}
railTilesLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
static startRailroadUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addIsActive(builder: flatbuffers.Builder, isActive: boolean) {
builder.addFieldInt8(0, +isActive, +false);
}
static addRailTiles(
builder: flatbuffers.Builder,
railTilesOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, railTilesOffset, 0);
}
static createRailTilesVector(
builder: flatbuffers.Builder,
data: flatbuffers.Offset[],
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startRailTilesVector(builder: flatbuffers.Builder, numElems: number) {
builder.startVector(4, numElems, 4);
}
static endRailroadUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createRailroadUpdate(
builder: flatbuffers.Builder,
isActive: boolean,
railTilesOffset: flatbuffers.Offset,
): flatbuffers.Offset {
RailroadUpdate.startRailroadUpdate(builder);
RailroadUpdate.addIsActive(builder, isActive);
RailroadUpdate.addRailTiles(builder, railTilesOffset);
return RailroadUpdate.endRailroadUpdate(builder);
}
}
@@ -0,0 +1,76 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class TargetPlayerUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): TargetPlayerUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsTargetPlayerUpdate(
bb: flatbuffers.ByteBuffer,
obj?: TargetPlayerUpdate,
): TargetPlayerUpdate {
return (obj || new TargetPlayerUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsTargetPlayerUpdate(
bb: flatbuffers.ByteBuffer,
obj?: TargetPlayerUpdate,
): TargetPlayerUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new TargetPlayerUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
targetId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startTargetPlayerUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(0, playerId, 0);
}
static addTargetId(builder: flatbuffers.Builder, targetId: number) {
builder.addFieldInt32(1, targetId, 0);
}
static endTargetPlayerUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createTargetPlayerUpdate(
builder: flatbuffers.Builder,
playerId: number,
targetId: number,
): flatbuffers.Offset {
TargetPlayerUpdate.startTargetPlayerUpdate(builder);
TargetPlayerUpdate.addPlayerId(builder, playerId);
TargetPlayerUpdate.addTargetId(builder, targetId);
return TargetPlayerUpdate.endTargetPlayerUpdate(builder);
}
}
+71
View File
@@ -0,0 +1,71 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class TileRef {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): TileRef {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsTileRef(bb: flatbuffers.ByteBuffer, obj?: TileRef): TileRef {
return (obj || new TileRef()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsTileRef(
bb: flatbuffers.ByteBuffer,
obj?: TileRef,
): TileRef {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new TileRef()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
x(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
y(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startTileRef(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addX(builder: flatbuffers.Builder, x: number) {
builder.addFieldInt32(0, x, 0);
}
static addY(builder: flatbuffers.Builder, y: number) {
builder.addFieldInt32(1, y, 0);
}
static endTileRef(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createTileRef(
builder: flatbuffers.Builder,
x: number,
y: number,
): flatbuffers.Offset {
TileRef.startTileRef(builder);
TileRef.addX(builder, x);
TileRef.addY(builder, y);
return TileRef.endTileRef(builder);
}
}
@@ -0,0 +1,75 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { TileUpdate } from "../game-updates/tile-update.js";
export class TileUpdateWrapper {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): TileUpdateWrapper {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsTileUpdateWrapper(
bb: flatbuffers.ByteBuffer,
obj?: TileUpdateWrapper,
): TileUpdateWrapper {
return (obj || new TileUpdateWrapper()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsTileUpdateWrapper(
bb: flatbuffers.ByteBuffer,
obj?: TileUpdateWrapper,
): TileUpdateWrapper {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new TileUpdateWrapper()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
update(obj?: TileUpdate): TileUpdate | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? (obj || new TileUpdate()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
static startTileUpdateWrapper(builder: flatbuffers.Builder) {
builder.startObject(1);
}
static addUpdate(
builder: flatbuffers.Builder,
updateOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, updateOffset, 0);
}
static endTileUpdateWrapper(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createTileUpdateWrapper(
builder: flatbuffers.Builder,
updateOffset: flatbuffers.Offset,
): flatbuffers.Offset {
TileUpdateWrapper.startTileUpdateWrapper(builder);
TileUpdateWrapper.addUpdate(builder, updateOffset);
return TileUpdateWrapper.endTileUpdateWrapper(builder);
}
}
+142
View File
@@ -0,0 +1,142 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { TileRef } from "../game-updates/tile-ref.js";
export class TileUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): TileUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsTileUpdate(
bb: flatbuffers.ByteBuffer,
obj?: TileUpdate,
): TileUpdate {
return (obj || new TileUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsTileUpdate(
bb: flatbuffers.ByteBuffer,
obj?: TileUpdate,
): TileUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new TileUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
tileRef(obj?: TileRef): TileRef | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? (obj || new TileRef()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
ownerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
troops(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
gold(): bigint {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt64(this.bb_pos + offset) : BigInt("0");
}
isCity(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
isCapital(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
hasTrainStation(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
static startTileUpdate(builder: flatbuffers.Builder) {
builder.startObject(7);
}
static addTileRef(
builder: flatbuffers.Builder,
tileRefOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, tileRefOffset, 0);
}
static addOwnerId(builder: flatbuffers.Builder, ownerId: number) {
builder.addFieldInt32(1, ownerId, -1);
}
static addTroops(builder: flatbuffers.Builder, troops: number) {
builder.addFieldInt32(2, troops, 0);
}
static addGold(builder: flatbuffers.Builder, gold: bigint) {
builder.addFieldInt64(3, gold, BigInt("0"));
}
static addIsCity(builder: flatbuffers.Builder, isCity: boolean) {
builder.addFieldInt8(4, +isCity, +false);
}
static addIsCapital(builder: flatbuffers.Builder, isCapital: boolean) {
builder.addFieldInt8(5, +isCapital, +false);
}
static addHasTrainStation(
builder: flatbuffers.Builder,
hasTrainStation: boolean,
) {
builder.addFieldInt8(6, +hasTrainStation, +false);
}
static endTileUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createTileUpdate(
builder: flatbuffers.Builder,
tileRefOffset: flatbuffers.Offset,
ownerId: number,
troops: number,
gold: bigint,
isCity: boolean,
isCapital: boolean,
hasTrainStation: boolean,
): flatbuffers.Offset {
TileUpdate.startTileUpdate(builder);
TileUpdate.addTileRef(builder, tileRefOffset);
TileUpdate.addOwnerId(builder, ownerId);
TileUpdate.addTroops(builder, troops);
TileUpdate.addGold(builder, gold);
TileUpdate.addIsCity(builder, isCity);
TileUpdate.addIsCapital(builder, isCapital);
TileUpdate.addHasTrainStation(builder, hasTrainStation);
return TileUpdate.endTileUpdate(builder);
}
}
+8
View File
@@ -0,0 +1,8 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export enum TrainType {
Passenger = 0,
Freight = 1,
}
@@ -0,0 +1,110 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { MessageType } from "../game-updates/message-type.js";
export class UnitIncomingUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): UnitIncomingUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsUnitIncomingUpdate(
bb: flatbuffers.ByteBuffer,
obj?: UnitIncomingUpdate,
): UnitIncomingUpdate {
return (obj || new UnitIncomingUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsUnitIncomingUpdate(
bb: flatbuffers.ByteBuffer,
obj?: UnitIncomingUpdate,
): UnitIncomingUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new UnitIncomingUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
unitId(): number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
message(): string | null;
message(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
message(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
messageType(): MessageType {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt8(this.bb_pos + offset) : MessageType.Info;
}
playerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
static startUnitIncomingUpdate(builder: flatbuffers.Builder) {
builder.startObject(4);
}
static addUnitId(builder: flatbuffers.Builder, unitId: number) {
builder.addFieldInt32(0, unitId, 0);
}
static addMessage(
builder: flatbuffers.Builder,
messageOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, messageOffset, 0);
}
static addMessageType(
builder: flatbuffers.Builder,
messageType: MessageType,
) {
builder.addFieldInt8(2, messageType, MessageType.Info);
}
static addPlayerId(builder: flatbuffers.Builder, playerId: number) {
builder.addFieldInt32(3, playerId, 0);
}
static endUnitIncomingUpdate(
builder: flatbuffers.Builder,
): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createUnitIncomingUpdate(
builder: flatbuffers.Builder,
unitId: number,
messageOffset: flatbuffers.Offset,
messageType: MessageType,
playerId: number,
): flatbuffers.Offset {
UnitIncomingUpdate.startUnitIncomingUpdate(builder);
UnitIncomingUpdate.addUnitId(builder, unitId);
UnitIncomingUpdate.addMessage(builder, messageOffset);
UnitIncomingUpdate.addMessageType(builder, messageType);
UnitIncomingUpdate.addPlayerId(builder, playerId);
return UnitIncomingUpdate.endUnitIncomingUpdate(builder);
}
}
+12
View File
@@ -0,0 +1,12 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
export enum UnitType {
Infantry = 0,
Tank = 1,
Ship = 2,
Plane = 3,
Nuke = 4,
Train = 5,
}
+323
View File
@@ -0,0 +1,323 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
import { TileRef } from "../game-updates/tile-ref.js";
import { TrainType } from "../game-updates/train-type.js";
import { UnitType } from "../game-updates/unit-type.js";
export class UnitUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): UnitUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsUnitUpdate(
bb: flatbuffers.ByteBuffer,
obj?: UnitUpdate,
): UnitUpdate {
return (obj || new UnitUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsUnitUpdate(
bb: flatbuffers.ByteBuffer,
obj?: UnitUpdate,
): UnitUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new UnitUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
unitType(): UnitType {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readInt8(this.bb_pos + offset) : UnitType.Infantry;
}
troops(): number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
id(): number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
ownerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
lastOwnerId(): number {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
pos(obj?: TileRef): TileRef | null {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset
? (obj || new TileRef()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
lastPos(obj?: TileRef): TileRef | null {
const offset = this.bb!.__offset(this.bb_pos, 16);
return offset
? (obj || new TileRef()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
isActive(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
reachedTarget(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 20);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
retreating(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 22);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
targetable(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 24);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
markedForDeletion(): number {
const offset = this.bb!.__offset(this.bb_pos, 26);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
targetUnitId(): number {
const offset = this.bb!.__offset(this.bb_pos, 28);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
targetTile(obj?: TileRef): TileRef | null {
const offset = this.bb!.__offset(this.bb_pos, 30);
return offset
? (obj || new TileRef()).__init(
this.bb!.__indirect(this.bb_pos + offset),
this.bb!,
)
: null;
}
health(): number {
const offset = this.bb!.__offset(this.bb_pos, 32);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 100;
}
underConstruction(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 34);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
missileTimerQueue(index: number): number | null {
const offset = this.bb!.__offset(this.bb_pos, 36);
return offset
? this.bb!.readInt32(this.bb!.__vector(this.bb_pos + offset) + index * 4)
: 0;
}
missileTimerQueueLength(): number {
const offset = this.bb!.__offset(this.bb_pos, 36);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
missileTimerQueueArray(): Int32Array | null {
const offset = this.bb!.__offset(this.bb_pos, 36);
return offset
? new Int32Array(
this.bb!.bytes().buffer,
this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset),
this.bb!.__vector_len(this.bb_pos + offset),
)
: null;
}
level(): number {
const offset = this.bb!.__offset(this.bb_pos, 38);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 1;
}
hasTrainStation(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 40);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
trainType(): TrainType {
const offset = this.bb!.__offset(this.bb_pos, 42);
return offset
? this.bb!.readInt8(this.bb_pos + offset)
: TrainType.Passenger;
}
loaded(): boolean {
const offset = this.bb!.__offset(this.bb_pos, 44);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
static startUnitUpdate(builder: flatbuffers.Builder) {
builder.startObject(21);
}
static addUnitType(builder: flatbuffers.Builder, unitType: UnitType) {
builder.addFieldInt8(0, unitType, UnitType.Infantry);
}
static addTroops(builder: flatbuffers.Builder, troops: number) {
builder.addFieldInt32(1, troops, 0);
}
static addId(builder: flatbuffers.Builder, id: number) {
builder.addFieldInt32(2, id, 0);
}
static addOwnerId(builder: flatbuffers.Builder, ownerId: number) {
builder.addFieldInt32(3, ownerId, 0);
}
static addLastOwnerId(builder: flatbuffers.Builder, lastOwnerId: number) {
builder.addFieldInt32(4, lastOwnerId, -1);
}
static addPos(builder: flatbuffers.Builder, posOffset: flatbuffers.Offset) {
builder.addFieldOffset(5, posOffset, 0);
}
static addLastPos(
builder: flatbuffers.Builder,
lastPosOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(6, lastPosOffset, 0);
}
static addIsActive(builder: flatbuffers.Builder, isActive: boolean) {
builder.addFieldInt8(7, +isActive, +false);
}
static addReachedTarget(
builder: flatbuffers.Builder,
reachedTarget: boolean,
) {
builder.addFieldInt8(8, +reachedTarget, +false);
}
static addRetreating(builder: flatbuffers.Builder, retreating: boolean) {
builder.addFieldInt8(9, +retreating, +false);
}
static addTargetable(builder: flatbuffers.Builder, targetable: boolean) {
builder.addFieldInt8(10, +targetable, +false);
}
static addMarkedForDeletion(
builder: flatbuffers.Builder,
markedForDeletion: number,
) {
builder.addFieldInt32(11, markedForDeletion, -1);
}
static addTargetUnitId(builder: flatbuffers.Builder, targetUnitId: number) {
builder.addFieldInt32(12, targetUnitId, -1);
}
static addTargetTile(
builder: flatbuffers.Builder,
targetTileOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(13, targetTileOffset, 0);
}
static addHealth(builder: flatbuffers.Builder, health: number) {
builder.addFieldInt32(14, health, 100);
}
static addUnderConstruction(
builder: flatbuffers.Builder,
underConstruction: boolean,
) {
builder.addFieldInt8(15, +underConstruction, +false);
}
static addMissileTimerQueue(
builder: flatbuffers.Builder,
missileTimerQueueOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(16, missileTimerQueueOffset, 0);
}
static createMissileTimerQueueVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array,
): flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createMissileTimerQueueVector(
builder: flatbuffers.Builder,
data: number[] | Uint8Array,
): flatbuffers.Offset;
static createMissileTimerQueueVector(
builder: flatbuffers.Builder,
data: number[] | Int32Array | Uint8Array,
): flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt32(data[i]!);
}
return builder.endVector();
}
static startMissileTimerQueueVector(
builder: flatbuffers.Builder,
numElems: number,
) {
builder.startVector(4, numElems, 4);
}
static addLevel(builder: flatbuffers.Builder, level: number) {
builder.addFieldInt32(17, level, 1);
}
static addHasTrainStation(
builder: flatbuffers.Builder,
hasTrainStation: boolean,
) {
builder.addFieldInt8(18, +hasTrainStation, +false);
}
static addTrainType(builder: flatbuffers.Builder, trainType: TrainType) {
builder.addFieldInt8(19, trainType, TrainType.Passenger);
}
static addLoaded(builder: flatbuffers.Builder, loaded: boolean) {
builder.addFieldInt8(20, +loaded, +false);
}
static endUnitUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
}
+90
View File
@@ -0,0 +1,90 @@
// automatically generated by the FlatBuffers compiler, do not modify
/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
import * as flatbuffers from "flatbuffers";
export class WinUpdate {
bb: flatbuffers.ByteBuffer | null = null;
bb_pos = 0;
__init(i: number, bb: flatbuffers.ByteBuffer): WinUpdate {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsWinUpdate(
bb: flatbuffers.ByteBuffer,
obj?: WinUpdate,
): WinUpdate {
return (obj || new WinUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
static getSizePrefixedRootAsWinUpdate(
bb: flatbuffers.ByteBuffer,
obj?: WinUpdate,
): WinUpdate {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new WinUpdate()).__init(
bb.readInt32(bb.position()) + bb.position(),
bb,
);
}
allPlayersStats(): string | null;
allPlayersStats(
optionalEncoding: flatbuffers.Encoding,
): string | Uint8Array | null;
allPlayersStats(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
winner(): string | null;
winner(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
winner(optionalEncoding?: any): string | Uint8Array | null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset
? this.bb!.__string(this.bb_pos + offset, optionalEncoding)
: null;
}
static startWinUpdate(builder: flatbuffers.Builder) {
builder.startObject(2);
}
static addAllPlayersStats(
builder: flatbuffers.Builder,
allPlayersStatsOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(0, allPlayersStatsOffset, 0);
}
static addWinner(
builder: flatbuffers.Builder,
winnerOffset: flatbuffers.Offset,
) {
builder.addFieldOffset(1, winnerOffset, 0);
}
static endWinUpdate(builder: flatbuffers.Builder): flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createWinUpdate(
builder: flatbuffers.Builder,
allPlayersStatsOffset: flatbuffers.Offset,
winnerOffset: flatbuffers.Offset,
): flatbuffers.Offset {
WinUpdate.startWinUpdate(builder);
WinUpdate.addAllPlayersStats(builder, allPlayersStatsOffset);
WinUpdate.addWinner(builder, winnerOffset);
return WinUpdate.endWinUpdate(builder);
}
}
+1 -1
View File
@@ -27,7 +27,7 @@
"src/**/*",
"resources/**/*",
"proprietary/**/*",
"generated/**/*",
"src/generated/**/*",
"tests/**/*",
"src/scripts"
],