feat: armors

This commit is contained in:
tresabhi committed 2025-03-20 00:18:00 -05:00
1 parent 652f36ba6c
commit f5c00643e4
14 files changed
+1434 -2002

No files matched your search

+1 -1
View File
@@ -18,7 +18,7 @@ export interface I18n_LocalesEntry {
value: string; value: string;
} }
export function createBaseI18n(): I18n { function createBaseI18n(): I18n {
return { locales: {} }; return { locales: {} };
} }
@@ -5,10 +5,10 @@
// source: packages/core/src/protos/legacy_camouflage_definitions.proto // source: packages/core/src/protos/legacy_camouflage_definitions.proto
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { I18nString, createBaseI18nString } from './legacy_i18n'; import { I18nString } from "./legacy_i18n";
export const protobufPackage = 'blitzkit'; export const protobufPackage = "blitzkit";
export interface CamouflageDefinitions { export interface CamouflageDefinitions {
camouflages: { [key: number]: Camouflage }; camouflages: { [key: number]: Camouflage };
@@ -31,25 +31,15 @@ function createBaseCamouflageDefinitions(): CamouflageDefinitions {
} }
export const CamouflageDefinitions: MessageFns<CamouflageDefinitions> = { export const CamouflageDefinitions: MessageFns<CamouflageDefinitions> = {
encode( encode(message: CamouflageDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: CamouflageDefinitions,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
Object.entries(message.camouflages).forEach(([key, value]) => { Object.entries(message.camouflages).forEach(([key, value]) => {
CamouflageDefinitions_CamouflagesEntry.encode( CamouflageDefinitions_CamouflagesEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();
{ key: key as any, value },
writer.uint32(10).fork(),
).join();
}); });
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): CamouflageDefinitions {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): CamouflageDefinitions {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseCamouflageDefinitions(); const message = createBaseCamouflageDefinitions();
while (reader.pos < end) { while (reader.pos < end) {
@@ -60,10 +50,7 @@ export const CamouflageDefinitions: MessageFns<CamouflageDefinitions> = {
break; break;
} }
const entry1 = CamouflageDefinitions_CamouflagesEntry.decode( const entry1 = CamouflageDefinitions_CamouflagesEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry1.value !== undefined) { if (entry1.value !== undefined) {
message.camouflages[entry1.key] = entry1.value; message.camouflages[entry1.key] = entry1.value;
} }
@@ -81,9 +68,7 @@ export const CamouflageDefinitions: MessageFns<CamouflageDefinitions> = {
fromJSON(object: any): CamouflageDefinitions { fromJSON(object: any): CamouflageDefinitions {
return { return {
camouflages: isObject(object.camouflages) camouflages: isObject(object.camouflages)
? Object.entries(object.camouflages).reduce<{ ? Object.entries(object.camouflages).reduce<{ [key: number]: Camouflage }>((acc, [key, value]) => {
[key: number]: Camouflage;
}>((acc, [key, value]) => {
acc[globalThis.Number(key)] = Camouflage.fromJSON(value); acc[globalThis.Number(key)] = Camouflage.fromJSON(value);
return acc; return acc;
}, {}) }, {})
@@ -105,23 +90,20 @@ export const CamouflageDefinitions: MessageFns<CamouflageDefinitions> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<CamouflageDefinitions>, I>>( create<I extends Exact<DeepPartial<CamouflageDefinitions>, I>>(base?: I): CamouflageDefinitions {
base?: I,
): CamouflageDefinitions {
return CamouflageDefinitions.fromPartial(base ?? ({} as any)); return CamouflageDefinitions.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<CamouflageDefinitions>, I>>( fromPartial<I extends Exact<DeepPartial<CamouflageDefinitions>, I>>(object: I): CamouflageDefinitions {
object: I,
): CamouflageDefinitions {
const message = createBaseCamouflageDefinitions(); const message = createBaseCamouflageDefinitions();
message.camouflages = Object.entries(object.camouflages ?? {}).reduce<{ message.camouflages = Object.entries(object.camouflages ?? {}).reduce<{ [key: number]: Camouflage }>(
[key: number]: Camouflage; (acc, [key, value]) => {
}>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = Camouflage.fromPartial(value); acc[globalThis.Number(key)] = Camouflage.fromPartial(value);
} }
return acc; return acc;
}, {}); },
{},
);
return message; return message;
}, },
}; };
@@ -130,12 +112,8 @@ function createBaseCamouflageDefinitions_CamouflagesEntry(): CamouflageDefinitio
return { key: 0, value: createBaseCamouflage() }; return { key: 0, value: createBaseCamouflage() };
} }
export const CamouflageDefinitions_CamouflagesEntry: MessageFns<CamouflageDefinitions_CamouflagesEntry> = export const CamouflageDefinitions_CamouflagesEntry: MessageFns<CamouflageDefinitions_CamouflagesEntry> = {
{ encode(message: CamouflageDefinitions_CamouflagesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: CamouflageDefinitions_CamouflagesEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).uint32(message.key); writer.uint32(8).uint32(message.key);
} }
@@ -145,12 +123,8 @@ export const CamouflageDefinitions_CamouflagesEntry: MessageFns<CamouflageDefini
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): CamouflageDefinitions_CamouflagesEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): CamouflageDefinitions_CamouflagesEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseCamouflageDefinitions_CamouflagesEntry(); const message = createBaseCamouflageDefinitions_CamouflagesEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -183,15 +157,8 @@ export const CamouflageDefinitions_CamouflagesEntry: MessageFns<CamouflageDefini
fromJSON(object: any): CamouflageDefinitions_CamouflagesEntry { fromJSON(object: any): CamouflageDefinitions_CamouflagesEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("CamouflageDefinitions_CamouflagesEntry.key", object.key)),
assertSet('CamouflageDefinitions_CamouflagesEntry.key', object.key), value: Camouflage.fromJSON(assertSet("CamouflageDefinitions_CamouflagesEntry.value", object.value)),
),
value: Camouflage.fromJSON(
assertSet(
'CamouflageDefinitions_CamouflagesEntry.value',
object.value,
),
),
}; };
}, },
@@ -206,20 +173,17 @@ export const CamouflageDefinitions_CamouflagesEntry: MessageFns<CamouflageDefini
return obj; return obj;
}, },
create< create<I extends Exact<DeepPartial<CamouflageDefinitions_CamouflagesEntry>, I>>(
I extends Exact<DeepPartial<CamouflageDefinitions_CamouflagesEntry>, I>, base?: I,
>(base?: I): CamouflageDefinitions_CamouflagesEntry { ): CamouflageDefinitions_CamouflagesEntry {
return CamouflageDefinitions_CamouflagesEntry.fromPartial( return CamouflageDefinitions_CamouflagesEntry.fromPartial(base ?? ({} as any));
base ?? ({} as any),
);
}, },
fromPartial< fromPartial<I extends Exact<DeepPartial<CamouflageDefinitions_CamouflagesEntry>, I>>(
I extends Exact<DeepPartial<CamouflageDefinitions_CamouflagesEntry>, I>, object: I,
>(object: I): CamouflageDefinitions_CamouflagesEntry { ): CamouflageDefinitions_CamouflagesEntry {
const message = createBaseCamouflageDefinitions_CamouflagesEntry(); const message = createBaseCamouflageDefinitions_CamouflagesEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? Camouflage.fromPartial(object.value) ? Camouflage.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -227,19 +191,11 @@ export const CamouflageDefinitions_CamouflagesEntry: MessageFns<CamouflageDefini
}; };
function createBaseCamouflage(): Camouflage { function createBaseCamouflage(): Camouflage {
return { return { id: 0, name: createBaseI18nString(), tank_name: undefined, tank_name_full: undefined };
id: 0,
name: createBaseI18nString(),
tank_name: undefined,
tank_name_full: undefined,
};
} }
export const Camouflage: MessageFns<Camouflage> = { export const Camouflage: MessageFns<Camouflage> = {
encode( encode(message: Camouflage, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: Camouflage,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.id !== 0) { if (message.id !== 0) {
writer.uint32(8).uint32(message.id); writer.uint32(8).uint32(message.id);
} }
@@ -250,17 +206,13 @@ export const Camouflage: MessageFns<Camouflage> = {
I18nString.encode(message.tank_name, writer.uint32(26).fork()).join(); I18nString.encode(message.tank_name, writer.uint32(26).fork()).join();
} }
if (message.tank_name_full !== undefined) { if (message.tank_name_full !== undefined) {
I18nString.encode( I18nString.encode(message.tank_name_full, writer.uint32(34).fork()).join();
message.tank_name_full,
writer.uint32(34).fork(),
).join();
} }
return writer; return writer;
}, },
decode(input: BinaryReader | Uint8Array, length?: number): Camouflage { decode(input: BinaryReader | Uint8Array, length?: number): Camouflage {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseCamouflage(); const message = createBaseCamouflage();
while (reader.pos < end) { while (reader.pos < end) {
@@ -309,14 +261,10 @@ export const Camouflage: MessageFns<Camouflage> = {
fromJSON(object: any): Camouflage { fromJSON(object: any): Camouflage {
return { return {
id: globalThis.Number(assertSet('Camouflage.id', object.id)), id: globalThis.Number(assertSet("Camouflage.id", object.id)),
name: I18nString.fromJSON(assertSet('Camouflage.name', object.name)), name: I18nString.fromJSON(assertSet("Camouflage.name", object.name)),
tank_name: isSet(object.tank_name) tank_name: isSet(object.tank_name) ? I18nString.fromJSON(object.tank_name) : undefined,
? I18nString.fromJSON(object.tank_name) tank_name_full: isSet(object.tank_name_full) ? I18nString.fromJSON(object.tank_name_full) : undefined,
: undefined,
tank_name_full: isSet(object.tank_name_full)
? I18nString.fromJSON(object.tank_name_full)
: undefined,
}; };
}, },
@@ -340,57 +288,37 @@ export const Camouflage: MessageFns<Camouflage> = {
create<I extends Exact<DeepPartial<Camouflage>, I>>(base?: I): Camouflage { create<I extends Exact<DeepPartial<Camouflage>, I>>(base?: I): Camouflage {
return Camouflage.fromPartial(base ?? ({} as any)); return Camouflage.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<Camouflage>, I>>( fromPartial<I extends Exact<DeepPartial<Camouflage>, I>>(object: I): Camouflage {
object: I,
): Camouflage {
const message = createBaseCamouflage(); const message = createBaseCamouflage();
message.id = object.id ?? 0; message.id = object.id ?? 0;
message.name = message.name = (object.name !== undefined && object.name !== null)
object.name !== undefined && object.name !== null
? I18nString.fromPartial(object.name) ? I18nString.fromPartial(object.name)
: createBaseI18nString(); : createBaseI18nString();
message.tank_name = message.tank_name = (object.tank_name !== undefined && object.tank_name !== null)
object.tank_name !== undefined && object.tank_name !== null
? I18nString.fromPartial(object.tank_name) ? I18nString.fromPartial(object.tank_name)
: undefined; : undefined;
message.tank_name_full = message.tank_name_full = (object.tank_name_full !== undefined && object.tank_name_full !== null)
object.tank_name_full !== undefined && object.tank_name_full !== null
? I18nString.fromPartial(object.tank_name_full) ? I18nString.fromPartial(object.tank_name_full)
: undefined; : undefined;
return message; return message;
}, },
}; };
type Builtin = type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
| Date
| Function
| Uint8Array
| string
| number
| boolean
| undefined;
export type DeepPartial<T> = T extends Builtin export type DeepPartial<T> = T extends Builtin ? T
? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends globalThis.Array<infer U> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
? globalThis.Array<DeepPartial<U>> : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial<T["value"]> }
: T extends ReadonlyArray<infer U> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
? ReadonlyArray<DeepPartial<U>>
: T extends { $case: string; value: unknown }
? { $case: T['$case']; value?: DeepPartial<T['value']> }
: T extends {}
? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>; : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never; type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin export type Exact<P, I extends P> = P extends Builtin ? P
? P : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
: P & { [K in keyof P]: Exact<P[K], I[K]> } & {
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
function isObject(value: any): boolean { function isObject(value: any): boolean {
return typeof value === 'object' && value !== null; return typeof value === "object" && value !== null;
} }
function isSet(value: any): boolean { function isSet(value: any): boolean {
@@ -5,42 +5,34 @@
// source: packages/core/src/protos/legacy_consumable_definitions.proto // source: packages/core/src/protos/legacy_consumable_definitions.proto
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { I18nString, createBaseI18nString } from './legacy_i18n'; import { I18nString } from "./legacy_i18n";
export const protobufPackage = 'blitzkit'; export const protobufPackage = "blitzkit";
export enum ConsumableTankCategoryFilterCategory { export enum ConsumableTankCategoryFilterCategory {
CLIP = 0, CLIP = 0,
} }
export function consumableTankCategoryFilterCategoryFromJSON( export function consumableTankCategoryFilterCategoryFromJSON(object: any): ConsumableTankCategoryFilterCategory {
object: any,
): ConsumableTankCategoryFilterCategory {
switch (object) { switch (object) {
case 0: case 0:
case 'CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP': case "CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP":
return ConsumableTankCategoryFilterCategory.CLIP; return ConsumableTankCategoryFilterCategory.CLIP;
default: default:
throw new globalThis.Error( throw new globalThis.Error(
'Unrecognized enum value ' + "Unrecognized enum value " + object + " for enum ConsumableTankCategoryFilterCategory",
object +
' for enum ConsumableTankCategoryFilterCategory',
); );
} }
} }
export function consumableTankCategoryFilterCategoryToJSON( export function consumableTankCategoryFilterCategoryToJSON(object: ConsumableTankCategoryFilterCategory): string {
object: ConsumableTankCategoryFilterCategory,
): string {
switch (object) { switch (object) {
case ConsumableTankCategoryFilterCategory.CLIP: case ConsumableTankCategoryFilterCategory.CLIP:
return 'CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP'; return "CONSUMABLE_TANK_CATEGORY_FILTER_CATEGORY_CLIP";
default: default:
throw new globalThis.Error( throw new globalThis.Error(
'Unrecognized enum value ' + "Unrecognized enum value " + object + " for enum ConsumableTankCategoryFilterCategory",
object +
' for enum ConsumableTankCategoryFilterCategory',
); );
} }
} }
@@ -66,10 +58,10 @@ export interface Consumable {
export interface ConsumableTankFilter { export interface ConsumableTankFilter {
filter_type?: filter_type?:
| { $case: 'tiers'; value: ConsumableTankTierFilter } | { $case: "tiers"; value: ConsumableTankTierFilter }
| { $case: 'ids'; value: ConsumableTankIdsFilter } | { $case: "ids"; value: ConsumableTankIdsFilter }
| { $case: 'categories'; value: ConsumableTankCategoryFilter } | { $case: "categories"; value: ConsumableTankCategoryFilter }
| { $case: 'nations'; value: ConsumableTankNationFilter } | { $case: "nations"; value: ConsumableTankNationFilter }
| undefined; | undefined;
} }
@@ -95,25 +87,15 @@ function createBaseConsumableDefinitions(): ConsumableDefinitions {
} }
export const ConsumableDefinitions: MessageFns<ConsumableDefinitions> = { export const ConsumableDefinitions: MessageFns<ConsumableDefinitions> = {
encode( encode(message: ConsumableDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: ConsumableDefinitions,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
Object.entries(message.consumables).forEach(([key, value]) => { Object.entries(message.consumables).forEach(([key, value]) => {
ConsumableDefinitions_ConsumablesEntry.encode( ConsumableDefinitions_ConsumablesEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();
{ key: key as any, value },
writer.uint32(10).fork(),
).join();
}); });
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableDefinitions {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableDefinitions {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableDefinitions(); const message = createBaseConsumableDefinitions();
while (reader.pos < end) { while (reader.pos < end) {
@@ -124,10 +106,7 @@ export const ConsumableDefinitions: MessageFns<ConsumableDefinitions> = {
break; break;
} }
const entry1 = ConsumableDefinitions_ConsumablesEntry.decode( const entry1 = ConsumableDefinitions_ConsumablesEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry1.value !== undefined) { if (entry1.value !== undefined) {
message.consumables[entry1.key] = entry1.value; message.consumables[entry1.key] = entry1.value;
} }
@@ -145,9 +124,7 @@ export const ConsumableDefinitions: MessageFns<ConsumableDefinitions> = {
fromJSON(object: any): ConsumableDefinitions { fromJSON(object: any): ConsumableDefinitions {
return { return {
consumables: isObject(object.consumables) consumables: isObject(object.consumables)
? Object.entries(object.consumables).reduce<{ ? Object.entries(object.consumables).reduce<{ [key: number]: Consumable }>((acc, [key, value]) => {
[key: number]: Consumable;
}>((acc, [key, value]) => {
acc[globalThis.Number(key)] = Consumable.fromJSON(value); acc[globalThis.Number(key)] = Consumable.fromJSON(value);
return acc; return acc;
}, {}) }, {})
@@ -169,23 +146,20 @@ export const ConsumableDefinitions: MessageFns<ConsumableDefinitions> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ConsumableDefinitions>, I>>( create<I extends Exact<DeepPartial<ConsumableDefinitions>, I>>(base?: I): ConsumableDefinitions {
base?: I,
): ConsumableDefinitions {
return ConsumableDefinitions.fromPartial(base ?? ({} as any)); return ConsumableDefinitions.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ConsumableDefinitions>, I>>( fromPartial<I extends Exact<DeepPartial<ConsumableDefinitions>, I>>(object: I): ConsumableDefinitions {
object: I,
): ConsumableDefinitions {
const message = createBaseConsumableDefinitions(); const message = createBaseConsumableDefinitions();
message.consumables = Object.entries(object.consumables ?? {}).reduce<{ message.consumables = Object.entries(object.consumables ?? {}).reduce<{ [key: number]: Consumable }>(
[key: number]: Consumable; (acc, [key, value]) => {
}>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = Consumable.fromPartial(value); acc[globalThis.Number(key)] = Consumable.fromPartial(value);
} }
return acc; return acc;
}, {}); },
{},
);
return message; return message;
}, },
}; };
@@ -194,12 +168,8 @@ function createBaseConsumableDefinitions_ConsumablesEntry(): ConsumableDefinitio
return { key: 0, value: createBaseConsumable() }; return { key: 0, value: createBaseConsumable() };
} }
export const ConsumableDefinitions_ConsumablesEntry: MessageFns<ConsumableDefinitions_ConsumablesEntry> = export const ConsumableDefinitions_ConsumablesEntry: MessageFns<ConsumableDefinitions_ConsumablesEntry> = {
{ encode(message: ConsumableDefinitions_ConsumablesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: ConsumableDefinitions_ConsumablesEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).uint32(message.key); writer.uint32(8).uint32(message.key);
} }
@@ -209,12 +179,8 @@ export const ConsumableDefinitions_ConsumablesEntry: MessageFns<ConsumableDefini
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableDefinitions_ConsumablesEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableDefinitions_ConsumablesEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableDefinitions_ConsumablesEntry(); const message = createBaseConsumableDefinitions_ConsumablesEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -247,15 +213,8 @@ export const ConsumableDefinitions_ConsumablesEntry: MessageFns<ConsumableDefini
fromJSON(object: any): ConsumableDefinitions_ConsumablesEntry { fromJSON(object: any): ConsumableDefinitions_ConsumablesEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("ConsumableDefinitions_ConsumablesEntry.key", object.key)),
assertSet('ConsumableDefinitions_ConsumablesEntry.key', object.key), value: Consumable.fromJSON(assertSet("ConsumableDefinitions_ConsumablesEntry.value", object.value)),
),
value: Consumable.fromJSON(
assertSet(
'ConsumableDefinitions_ConsumablesEntry.value',
object.value,
),
),
}; };
}, },
@@ -270,20 +229,17 @@ export const ConsumableDefinitions_ConsumablesEntry: MessageFns<ConsumableDefini
return obj; return obj;
}, },
create< create<I extends Exact<DeepPartial<ConsumableDefinitions_ConsumablesEntry>, I>>(
I extends Exact<DeepPartial<ConsumableDefinitions_ConsumablesEntry>, I>, base?: I,
>(base?: I): ConsumableDefinitions_ConsumablesEntry { ): ConsumableDefinitions_ConsumablesEntry {
return ConsumableDefinitions_ConsumablesEntry.fromPartial( return ConsumableDefinitions_ConsumablesEntry.fromPartial(base ?? ({} as any));
base ?? ({} as any),
);
}, },
fromPartial< fromPartial<I extends Exact<DeepPartial<ConsumableDefinitions_ConsumablesEntry>, I>>(
I extends Exact<DeepPartial<ConsumableDefinitions_ConsumablesEntry>, I>, object: I,
>(object: I): ConsumableDefinitions_ConsumablesEntry { ): ConsumableDefinitions_ConsumablesEntry {
const message = createBaseConsumableDefinitions_ConsumablesEntry(); const message = createBaseConsumableDefinitions_ConsumablesEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? Consumable.fromPartial(object.value) ? Consumable.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -303,10 +259,7 @@ function createBaseConsumable(): Consumable {
} }
export const Consumable: MessageFns<Consumable> = { export const Consumable: MessageFns<Consumable> = {
encode( encode(message: Consumable, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: Consumable,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.id !== 0) { if (message.id !== 0) {
writer.uint32(8).uint32(message.id); writer.uint32(8).uint32(message.id);
} }
@@ -332,8 +285,7 @@ export const Consumable: MessageFns<Consumable> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): Consumable { decode(input: BinaryReader | Uint8Array, length?: number): Consumable {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumable(); const message = createBaseConsumable();
while (reader.pos < end) { while (reader.pos < end) {
@@ -384,9 +336,7 @@ export const Consumable: MessageFns<Consumable> = {
break; break;
} }
message.include.push( message.include.push(ConsumableTankFilter.decode(reader, reader.uint32()));
ConsumableTankFilter.decode(reader, reader.uint32()),
);
continue; continue;
} }
case 7: { case 7: {
@@ -394,9 +344,7 @@ export const Consumable: MessageFns<Consumable> = {
break; break;
} }
message.exclude.push( message.exclude.push(ConsumableTankFilter.decode(reader, reader.uint32()));
ConsumableTankFilter.decode(reader, reader.uint32()),
);
continue; continue;
} }
} }
@@ -410,17 +358,11 @@ export const Consumable: MessageFns<Consumable> = {
fromJSON(object: any): Consumable { fromJSON(object: any): Consumable {
return { return {
id: globalThis.Number(assertSet('Consumable.id', object.id)), id: globalThis.Number(assertSet("Consumable.id", object.id)),
name: I18nString.fromJSON(assertSet('Consumable.name', object.name)), name: I18nString.fromJSON(assertSet("Consumable.name", object.name)),
cooldown: globalThis.Number( cooldown: globalThis.Number(assertSet("Consumable.cooldown", object.cooldown)),
assertSet('Consumable.cooldown', object.cooldown), duration: isSet(object.duration) ? globalThis.Number(object.duration) : undefined,
), game_mode_exclusive: globalThis.Boolean(assertSet("Consumable.game_mode_exclusive", object.game_mode_exclusive)),
duration: isSet(object.duration)
? globalThis.Number(object.duration)
: undefined,
game_mode_exclusive: globalThis.Boolean(
assertSet('Consumable.game_mode_exclusive', object.game_mode_exclusive),
),
include: globalThis.Array.isArray(object?.include) include: globalThis.Array.isArray(object?.include)
? object.include.map((e: any) => ConsumableTankFilter.fromJSON(e)) ? object.include.map((e: any) => ConsumableTankFilter.fromJSON(e))
: [], : [],
@@ -459,22 +401,17 @@ export const Consumable: MessageFns<Consumable> = {
create<I extends Exact<DeepPartial<Consumable>, I>>(base?: I): Consumable { create<I extends Exact<DeepPartial<Consumable>, I>>(base?: I): Consumable {
return Consumable.fromPartial(base ?? ({} as any)); return Consumable.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<Consumable>, I>>( fromPartial<I extends Exact<DeepPartial<Consumable>, I>>(object: I): Consumable {
object: I,
): Consumable {
const message = createBaseConsumable(); const message = createBaseConsumable();
message.id = object.id ?? 0; message.id = object.id ?? 0;
message.name = message.name = (object.name !== undefined && object.name !== null)
object.name !== undefined && object.name !== null
? I18nString.fromPartial(object.name) ? I18nString.fromPartial(object.name)
: createBaseI18nString(); : createBaseI18nString();
message.cooldown = object.cooldown ?? 0; message.cooldown = object.cooldown ?? 0;
message.duration = object.duration ?? undefined; message.duration = object.duration ?? undefined;
message.game_mode_exclusive = object.game_mode_exclusive ?? false; message.game_mode_exclusive = object.game_mode_exclusive ?? false;
message.include = message.include = object.include?.map((e) => ConsumableTankFilter.fromPartial(e)) || [];
object.include?.map((e) => ConsumableTankFilter.fromPartial(e)) || []; message.exclude = object.exclude?.map((e) => ConsumableTankFilter.fromPartial(e)) || [];
message.exclude =
object.exclude?.map((e) => ConsumableTankFilter.fromPartial(e)) || [];
return message; return message;
}, },
}; };
@@ -484,45 +421,26 @@ function createBaseConsumableTankFilter(): ConsumableTankFilter {
} }
export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = { export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = {
encode( encode(message: ConsumableTankFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: ConsumableTankFilter,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
switch (message.filter_type?.$case) { switch (message.filter_type?.$case) {
case 'tiers': case "tiers":
ConsumableTankTierFilter.encode( ConsumableTankTierFilter.encode(message.filter_type.value, writer.uint32(10).fork()).join();
message.filter_type.value,
writer.uint32(10).fork(),
).join();
break; break;
case 'ids': case "ids":
ConsumableTankIdsFilter.encode( ConsumableTankIdsFilter.encode(message.filter_type.value, writer.uint32(18).fork()).join();
message.filter_type.value,
writer.uint32(18).fork(),
).join();
break; break;
case 'categories': case "categories":
ConsumableTankCategoryFilter.encode( ConsumableTankCategoryFilter.encode(message.filter_type.value, writer.uint32(26).fork()).join();
message.filter_type.value,
writer.uint32(26).fork(),
).join();
break; break;
case 'nations': case "nations":
ConsumableTankNationFilter.encode( ConsumableTankNationFilter.encode(message.filter_type.value, writer.uint32(34).fork()).join();
message.filter_type.value,
writer.uint32(34).fork(),
).join();
break; break;
} }
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankFilter {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableTankFilter {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableTankFilter(); const message = createBaseConsumableTankFilter();
while (reader.pos < end) { while (reader.pos < end) {
@@ -533,10 +451,7 @@ export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = {
break; break;
} }
message.filter_type = { message.filter_type = { $case: "tiers", value: ConsumableTankTierFilter.decode(reader, reader.uint32()) };
$case: 'tiers',
value: ConsumableTankTierFilter.decode(reader, reader.uint32()),
};
continue; continue;
} }
case 2: { case 2: {
@@ -544,10 +459,7 @@ export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = {
break; break;
} }
message.filter_type = { message.filter_type = { $case: "ids", value: ConsumableTankIdsFilter.decode(reader, reader.uint32()) };
$case: 'ids',
value: ConsumableTankIdsFilter.decode(reader, reader.uint32()),
};
continue; continue;
} }
case 3: { case 3: {
@@ -556,7 +468,7 @@ export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = {
} }
message.filter_type = { message.filter_type = {
$case: 'categories', $case: "categories",
value: ConsumableTankCategoryFilter.decode(reader, reader.uint32()), value: ConsumableTankCategoryFilter.decode(reader, reader.uint32()),
}; };
continue; continue;
@@ -566,10 +478,7 @@ export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = {
break; break;
} }
message.filter_type = { message.filter_type = { $case: "nations", value: ConsumableTankNationFilter.decode(reader, reader.uint32()) };
$case: 'nations',
value: ConsumableTankNationFilter.decode(reader, reader.uint32()),
};
continue; continue;
} }
} }
@@ -584,98 +493,70 @@ export const ConsumableTankFilter: MessageFns<ConsumableTankFilter> = {
fromJSON(object: any): ConsumableTankFilter { fromJSON(object: any): ConsumableTankFilter {
return { return {
filter_type: isSet(object.tiers) filter_type: isSet(object.tiers)
? { ? { $case: "tiers", value: ConsumableTankTierFilter.fromJSON(object.tiers) }
$case: 'tiers',
value: ConsumableTankTierFilter.fromJSON(object.tiers),
}
: isSet(object.ids) : isSet(object.ids)
? { ? { $case: "ids", value: ConsumableTankIdsFilter.fromJSON(object.ids) }
$case: 'ids',
value: ConsumableTankIdsFilter.fromJSON(object.ids),
}
: isSet(object.categories) : isSet(object.categories)
? { ? { $case: "categories", value: ConsumableTankCategoryFilter.fromJSON(object.categories) }
$case: 'categories',
value: ConsumableTankCategoryFilter.fromJSON(object.categories),
}
: isSet(object.nations) : isSet(object.nations)
? { ? { $case: "nations", value: ConsumableTankNationFilter.fromJSON(object.nations) }
$case: 'nations',
value: ConsumableTankNationFilter.fromJSON(object.nations),
}
: undefined, : undefined,
}; };
}, },
toJSON(message: ConsumableTankFilter): unknown { toJSON(message: ConsumableTankFilter): unknown {
const obj: any = {}; const obj: any = {};
if (message.filter_type?.$case === 'tiers') { if (message.filter_type?.$case === "tiers") {
obj.tiers = ConsumableTankTierFilter.toJSON(message.filter_type.value); obj.tiers = ConsumableTankTierFilter.toJSON(message.filter_type.value);
} }
if (message.filter_type?.$case === 'ids') { if (message.filter_type?.$case === "ids") {
obj.ids = ConsumableTankIdsFilter.toJSON(message.filter_type.value); obj.ids = ConsumableTankIdsFilter.toJSON(message.filter_type.value);
} }
if (message.filter_type?.$case === 'categories') { if (message.filter_type?.$case === "categories") {
obj.categories = ConsumableTankCategoryFilter.toJSON( obj.categories = ConsumableTankCategoryFilter.toJSON(message.filter_type.value);
message.filter_type.value,
);
} }
if (message.filter_type?.$case === 'nations') { if (message.filter_type?.$case === "nations") {
obj.nations = ConsumableTankNationFilter.toJSON( obj.nations = ConsumableTankNationFilter.toJSON(message.filter_type.value);
message.filter_type.value,
);
} }
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ConsumableTankFilter>, I>>( create<I extends Exact<DeepPartial<ConsumableTankFilter>, I>>(base?: I): ConsumableTankFilter {
base?: I,
): ConsumableTankFilter {
return ConsumableTankFilter.fromPartial(base ?? ({} as any)); return ConsumableTankFilter.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ConsumableTankFilter>, I>>( fromPartial<I extends Exact<DeepPartial<ConsumableTankFilter>, I>>(object: I): ConsumableTankFilter {
object: I,
): ConsumableTankFilter {
const message = createBaseConsumableTankFilter(); const message = createBaseConsumableTankFilter();
if ( if (
object.filter_type?.$case === 'tiers' && object.filter_type?.$case === "tiers" &&
object.filter_type?.value !== undefined &&
object.filter_type?.value !== null
) {
message.filter_type = { $case: "tiers", value: ConsumableTankTierFilter.fromPartial(object.filter_type.value) };
}
if (
object.filter_type?.$case === "ids" &&
object.filter_type?.value !== undefined &&
object.filter_type?.value !== null
) {
message.filter_type = { $case: "ids", value: ConsumableTankIdsFilter.fromPartial(object.filter_type.value) };
}
if (
object.filter_type?.$case === "categories" &&
object.filter_type?.value !== undefined && object.filter_type?.value !== undefined &&
object.filter_type?.value !== null object.filter_type?.value !== null
) { ) {
message.filter_type = { message.filter_type = {
$case: 'tiers', $case: "categories",
value: ConsumableTankTierFilter.fromPartial(object.filter_type.value), value: ConsumableTankCategoryFilter.fromPartial(object.filter_type.value),
}; };
} }
if ( if (
object.filter_type?.$case === 'ids' && object.filter_type?.$case === "nations" &&
object.filter_type?.value !== undefined && object.filter_type?.value !== undefined &&
object.filter_type?.value !== null object.filter_type?.value !== null
) { ) {
message.filter_type = { message.filter_type = {
$case: 'ids', $case: "nations",
value: ConsumableTankIdsFilter.fromPartial(object.filter_type.value),
};
}
if (
object.filter_type?.$case === 'categories' &&
object.filter_type?.value !== undefined &&
object.filter_type?.value !== null
) {
message.filter_type = {
$case: 'categories',
value: ConsumableTankCategoryFilter.fromPartial(
object.filter_type.value,
),
};
}
if (
object.filter_type?.$case === 'nations' &&
object.filter_type?.value !== undefined &&
object.filter_type?.value !== null
) {
message.filter_type = {
$case: 'nations',
value: ConsumableTankNationFilter.fromPartial(object.filter_type.value), value: ConsumableTankNationFilter.fromPartial(object.filter_type.value),
}; };
} }
@@ -688,10 +569,7 @@ function createBaseConsumableTankTierFilter(): ConsumableTankTierFilter {
} }
export const ConsumableTankTierFilter: MessageFns<ConsumableTankTierFilter> = { export const ConsumableTankTierFilter: MessageFns<ConsumableTankTierFilter> = {
encode( encode(message: ConsumableTankTierFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: ConsumableTankTierFilter,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.min !== 0) { if (message.min !== 0) {
writer.uint32(8).uint32(message.min); writer.uint32(8).uint32(message.min);
} }
@@ -701,12 +579,8 @@ export const ConsumableTankTierFilter: MessageFns<ConsumableTankTierFilter> = {
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankTierFilter {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableTankTierFilter {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableTankTierFilter(); const message = createBaseConsumableTankTierFilter();
while (reader.pos < end) { while (reader.pos < end) {
@@ -739,12 +613,8 @@ export const ConsumableTankTierFilter: MessageFns<ConsumableTankTierFilter> = {
fromJSON(object: any): ConsumableTankTierFilter { fromJSON(object: any): ConsumableTankTierFilter {
return { return {
min: globalThis.Number( min: globalThis.Number(assertSet("ConsumableTankTierFilter.min", object.min)),
assertSet('ConsumableTankTierFilter.min', object.min), max: globalThis.Number(assertSet("ConsumableTankTierFilter.max", object.max)),
),
max: globalThis.Number(
assertSet('ConsumableTankTierFilter.max', object.max),
),
}; };
}, },
@@ -759,14 +629,10 @@ export const ConsumableTankTierFilter: MessageFns<ConsumableTankTierFilter> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ConsumableTankTierFilter>, I>>( create<I extends Exact<DeepPartial<ConsumableTankTierFilter>, I>>(base?: I): ConsumableTankTierFilter {
base?: I,
): ConsumableTankTierFilter {
return ConsumableTankTierFilter.fromPartial(base ?? ({} as any)); return ConsumableTankTierFilter.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ConsumableTankTierFilter>, I>>( fromPartial<I extends Exact<DeepPartial<ConsumableTankTierFilter>, I>>(object: I): ConsumableTankTierFilter {
object: I,
): ConsumableTankTierFilter {
const message = createBaseConsumableTankTierFilter(); const message = createBaseConsumableTankTierFilter();
message.min = object.min ?? 0; message.min = object.min ?? 0;
message.max = object.max ?? 0; message.max = object.max ?? 0;
@@ -779,10 +645,7 @@ function createBaseConsumableTankIdsFilter(): ConsumableTankIdsFilter {
} }
export const ConsumableTankIdsFilter: MessageFns<ConsumableTankIdsFilter> = { export const ConsumableTankIdsFilter: MessageFns<ConsumableTankIdsFilter> = {
encode( encode(message: ConsumableTankIdsFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: ConsumableTankIdsFilter,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
writer.uint32(10).fork(); writer.uint32(10).fork();
for (const v of message.ids) { for (const v of message.ids) {
writer.uint32(v); writer.uint32(v);
@@ -791,12 +654,8 @@ export const ConsumableTankIdsFilter: MessageFns<ConsumableTankIdsFilter> = {
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankIdsFilter {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableTankIdsFilter {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableTankIdsFilter(); const message = createBaseConsumableTankIdsFilter();
while (reader.pos < end) { while (reader.pos < end) {
@@ -830,11 +689,7 @@ export const ConsumableTankIdsFilter: MessageFns<ConsumableTankIdsFilter> = {
}, },
fromJSON(object: any): ConsumableTankIdsFilter { fromJSON(object: any): ConsumableTankIdsFilter {
return { return { ids: globalThis.Array.isArray(object?.ids) ? object.ids.map((e: any) => globalThis.Number(e)) : [] };
ids: globalThis.Array.isArray(object?.ids)
? object.ids.map((e: any) => globalThis.Number(e))
: [],
};
}, },
toJSON(message: ConsumableTankIdsFilter): unknown { toJSON(message: ConsumableTankIdsFilter): unknown {
@@ -845,14 +700,10 @@ export const ConsumableTankIdsFilter: MessageFns<ConsumableTankIdsFilter> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ConsumableTankIdsFilter>, I>>( create<I extends Exact<DeepPartial<ConsumableTankIdsFilter>, I>>(base?: I): ConsumableTankIdsFilter {
base?: I,
): ConsumableTankIdsFilter {
return ConsumableTankIdsFilter.fromPartial(base ?? ({} as any)); return ConsumableTankIdsFilter.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ConsumableTankIdsFilter>, I>>( fromPartial<I extends Exact<DeepPartial<ConsumableTankIdsFilter>, I>>(object: I): ConsumableTankIdsFilter {
object: I,
): ConsumableTankIdsFilter {
const message = createBaseConsumableTankIdsFilter(); const message = createBaseConsumableTankIdsFilter();
message.ids = object.ids?.map((e) => e) || []; message.ids = object.ids?.map((e) => e) || [];
return message; return message;
@@ -863,12 +714,8 @@ function createBaseConsumableTankCategoryFilter(): ConsumableTankCategoryFilter
return { categories: [] }; return { categories: [] };
} }
export const ConsumableTankCategoryFilter: MessageFns<ConsumableTankCategoryFilter> = export const ConsumableTankCategoryFilter: MessageFns<ConsumableTankCategoryFilter> = {
{ encode(message: ConsumableTankCategoryFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: ConsumableTankCategoryFilter,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
writer.uint32(10).fork(); writer.uint32(10).fork();
for (const v of message.categories) { for (const v of message.categories) {
writer.int32(v); writer.int32(v);
@@ -877,12 +724,8 @@ export const ConsumableTankCategoryFilter: MessageFns<ConsumableTankCategoryFilt
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankCategoryFilter {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableTankCategoryFilter {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableTankCategoryFilter(); const message = createBaseConsumableTankCategoryFilter();
while (reader.pos < end) { while (reader.pos < end) {
@@ -918,9 +761,7 @@ export const ConsumableTankCategoryFilter: MessageFns<ConsumableTankCategoryFilt
fromJSON(object: any): ConsumableTankCategoryFilter { fromJSON(object: any): ConsumableTankCategoryFilter {
return { return {
categories: globalThis.Array.isArray(object?.categories) categories: globalThis.Array.isArray(object?.categories)
? object.categories.map((e: any) => ? object.categories.map((e: any) => consumableTankCategoryFilterCategoryFromJSON(e))
consumableTankCategoryFilterCategoryFromJSON(e),
)
: [], : [],
}; };
}, },
@@ -928,21 +769,15 @@ export const ConsumableTankCategoryFilter: MessageFns<ConsumableTankCategoryFilt
toJSON(message: ConsumableTankCategoryFilter): unknown { toJSON(message: ConsumableTankCategoryFilter): unknown {
const obj: any = {}; const obj: any = {};
if (message.categories?.length) { if (message.categories?.length) {
obj.categories = message.categories.map((e) => obj.categories = message.categories.map((e) => consumableTankCategoryFilterCategoryToJSON(e));
consumableTankCategoryFilterCategoryToJSON(e),
);
} }
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ConsumableTankCategoryFilter>, I>>( create<I extends Exact<DeepPartial<ConsumableTankCategoryFilter>, I>>(base?: I): ConsumableTankCategoryFilter {
base?: I,
): ConsumableTankCategoryFilter {
return ConsumableTankCategoryFilter.fromPartial(base ?? ({} as any)); return ConsumableTankCategoryFilter.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ConsumableTankCategoryFilter>, I>>( fromPartial<I extends Exact<DeepPartial<ConsumableTankCategoryFilter>, I>>(object: I): ConsumableTankCategoryFilter {
object: I,
): ConsumableTankCategoryFilter {
const message = createBaseConsumableTankCategoryFilter(); const message = createBaseConsumableTankCategoryFilter();
message.categories = object.categories?.map((e) => e) || []; message.categories = object.categories?.map((e) => e) || [];
return message; return message;
@@ -953,24 +788,16 @@ function createBaseConsumableTankNationFilter(): ConsumableTankNationFilter {
return { nations: [] }; return { nations: [] };
} }
export const ConsumableTankNationFilter: MessageFns<ConsumableTankNationFilter> = export const ConsumableTankNationFilter: MessageFns<ConsumableTankNationFilter> = {
{ encode(message: ConsumableTankNationFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: ConsumableTankNationFilter,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
for (const v of message.nations) { for (const v of message.nations) {
writer.uint32(10).string(v!); writer.uint32(10).string(v!);
} }
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ConsumableTankNationFilter {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ConsumableTankNationFilter {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseConsumableTankNationFilter(); const message = createBaseConsumableTankNationFilter();
while (reader.pos < end) { while (reader.pos < end) {
@@ -995,9 +822,7 @@ export const ConsumableTankNationFilter: MessageFns<ConsumableTankNationFilter>
fromJSON(object: any): ConsumableTankNationFilter { fromJSON(object: any): ConsumableTankNationFilter {
return { return {
nations: globalThis.Array.isArray(object?.nations) nations: globalThis.Array.isArray(object?.nations) ? object.nations.map((e: any) => globalThis.String(e)) : [],
? object.nations.map((e: any) => globalThis.String(e))
: [],
}; };
}, },
@@ -1009,50 +834,31 @@ export const ConsumableTankNationFilter: MessageFns<ConsumableTankNationFilter>
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ConsumableTankNationFilter>, I>>( create<I extends Exact<DeepPartial<ConsumableTankNationFilter>, I>>(base?: I): ConsumableTankNationFilter {
base?: I,
): ConsumableTankNationFilter {
return ConsumableTankNationFilter.fromPartial(base ?? ({} as any)); return ConsumableTankNationFilter.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ConsumableTankNationFilter>, I>>( fromPartial<I extends Exact<DeepPartial<ConsumableTankNationFilter>, I>>(object: I): ConsumableTankNationFilter {
object: I,
): ConsumableTankNationFilter {
const message = createBaseConsumableTankNationFilter(); const message = createBaseConsumableTankNationFilter();
message.nations = object.nations?.map((e) => e) || []; message.nations = object.nations?.map((e) => e) || [];
return message; return message;
}, },
}; };
type Builtin = type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
| Date
| Function
| Uint8Array
| string
| number
| boolean
| undefined;
export type DeepPartial<T> = T extends Builtin export type DeepPartial<T> = T extends Builtin ? T
? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends globalThis.Array<infer U> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
? globalThis.Array<DeepPartial<U>> : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial<T["value"]> }
: T extends ReadonlyArray<infer U> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
? ReadonlyArray<DeepPartial<U>>
: T extends { $case: string; value: unknown }
? { $case: T['$case']; value?: DeepPartial<T['value']> }
: T extends {}
? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>; : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never; type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin export type Exact<P, I extends P> = P extends Builtin ? P
? P : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
: P & { [K in keyof P]: Exact<P[K], I[K]> } & {
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
function isObject(value: any): boolean { function isObject(value: any): boolean {
return typeof value === 'object' && value !== null; return typeof value === "object" && value !== null;
} }
function isSet(value: any): boolean { function isSet(value: any): boolean {
@@ -5,10 +5,10 @@
// source: packages/core/src/protos/legacy_equipment_definitions.proto // source: packages/core/src/protos/legacy_equipment_definitions.proto
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { I18nString, createBaseI18nString } from './legacy_i18n'; import { I18nString } from "./legacy_i18n";
export const protobufPackage = 'blitzkit'; export const protobufPackage = "blitzkit";
export interface EquipmentDefinitions { export interface EquipmentDefinitions {
presets: { [key: string]: EquipmentPreset }; presets: { [key: string]: EquipmentPreset };
@@ -44,31 +44,18 @@ function createBaseEquipmentDefinitions(): EquipmentDefinitions {
} }
export const EquipmentDefinitions: MessageFns<EquipmentDefinitions> = { export const EquipmentDefinitions: MessageFns<EquipmentDefinitions> = {
encode( encode(message: EquipmentDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: EquipmentDefinitions,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
Object.entries(message.presets).forEach(([key, value]) => { Object.entries(message.presets).forEach(([key, value]) => {
EquipmentDefinitions_PresetsEntry.encode( EquipmentDefinitions_PresetsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();
{ key: key as any, value },
writer.uint32(10).fork(),
).join();
}); });
Object.entries(message.equipments).forEach(([key, value]) => { Object.entries(message.equipments).forEach(([key, value]) => {
EquipmentDefinitions_EquipmentsEntry.encode( EquipmentDefinitions_EquipmentsEntry.encode({ key: key as any, value }, writer.uint32(18).fork()).join();
{ key: key as any, value },
writer.uint32(18).fork(),
).join();
}); });
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): EquipmentDefinitions {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): EquipmentDefinitions {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseEquipmentDefinitions(); const message = createBaseEquipmentDefinitions();
while (reader.pos < end) { while (reader.pos < end) {
@@ -79,10 +66,7 @@ export const EquipmentDefinitions: MessageFns<EquipmentDefinitions> = {
break; break;
} }
const entry1 = EquipmentDefinitions_PresetsEntry.decode( const entry1 = EquipmentDefinitions_PresetsEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry1.value !== undefined) { if (entry1.value !== undefined) {
message.presets[entry1.key] = entry1.value; message.presets[entry1.key] = entry1.value;
} }
@@ -93,10 +77,7 @@ export const EquipmentDefinitions: MessageFns<EquipmentDefinitions> = {
break; break;
} }
const entry2 = EquipmentDefinitions_EquipmentsEntry.decode( const entry2 = EquipmentDefinitions_EquipmentsEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry2.value !== undefined) { if (entry2.value !== undefined) {
message.equipments[entry2.key] = entry2.value; message.equipments[entry2.key] = entry2.value;
} }
@@ -114,17 +95,13 @@ export const EquipmentDefinitions: MessageFns<EquipmentDefinitions> = {
fromJSON(object: any): EquipmentDefinitions { fromJSON(object: any): EquipmentDefinitions {
return { return {
presets: isObject(object.presets) presets: isObject(object.presets)
? Object.entries(object.presets).reduce<{ ? Object.entries(object.presets).reduce<{ [key: string]: EquipmentPreset }>((acc, [key, value]) => {
[key: string]: EquipmentPreset;
}>((acc, [key, value]) => {
acc[key] = EquipmentPreset.fromJSON(value); acc[key] = EquipmentPreset.fromJSON(value);
return acc; return acc;
}, {}) }, {})
: {}, : {},
equipments: isObject(object.equipments) equipments: isObject(object.equipments)
? Object.entries(object.equipments).reduce<{ ? Object.entries(object.equipments).reduce<{ [key: number]: Equipment }>((acc, [key, value]) => {
[key: number]: Equipment;
}>((acc, [key, value]) => {
acc[globalThis.Number(key)] = Equipment.fromJSON(value); acc[globalThis.Number(key)] = Equipment.fromJSON(value);
return acc; return acc;
}, {}) }, {})
@@ -155,45 +132,39 @@ export const EquipmentDefinitions: MessageFns<EquipmentDefinitions> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<EquipmentDefinitions>, I>>( create<I extends Exact<DeepPartial<EquipmentDefinitions>, I>>(base?: I): EquipmentDefinitions {
base?: I,
): EquipmentDefinitions {
return EquipmentDefinitions.fromPartial(base ?? ({} as any)); return EquipmentDefinitions.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<EquipmentDefinitions>, I>>( fromPartial<I extends Exact<DeepPartial<EquipmentDefinitions>, I>>(object: I): EquipmentDefinitions {
object: I,
): EquipmentDefinitions {
const message = createBaseEquipmentDefinitions(); const message = createBaseEquipmentDefinitions();
message.presets = Object.entries(object.presets ?? {}).reduce<{ message.presets = Object.entries(object.presets ?? {}).reduce<{ [key: string]: EquipmentPreset }>(
[key: string]: EquipmentPreset; (acc, [key, value]) => {
}>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[key] = EquipmentPreset.fromPartial(value); acc[key] = EquipmentPreset.fromPartial(value);
} }
return acc; return acc;
}, {}); },
message.equipments = Object.entries(object.equipments ?? {}).reduce<{ {},
[key: number]: Equipment; );
}>((acc, [key, value]) => { message.equipments = Object.entries(object.equipments ?? {}).reduce<{ [key: number]: Equipment }>(
(acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = Equipment.fromPartial(value); acc[globalThis.Number(key)] = Equipment.fromPartial(value);
} }
return acc; return acc;
}, {}); },
{},
);
return message; return message;
}, },
}; };
function createBaseEquipmentDefinitions_PresetsEntry(): EquipmentDefinitions_PresetsEntry { function createBaseEquipmentDefinitions_PresetsEntry(): EquipmentDefinitions_PresetsEntry {
return { key: '', value: createBaseEquipmentPreset() }; return { key: "", value: createBaseEquipmentPreset() };
} }
export const EquipmentDefinitions_PresetsEntry: MessageFns<EquipmentDefinitions_PresetsEntry> = export const EquipmentDefinitions_PresetsEntry: MessageFns<EquipmentDefinitions_PresetsEntry> = {
{ encode(message: EquipmentDefinitions_PresetsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: EquipmentDefinitions_PresetsEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(10).string(message.key); writer.uint32(10).string(message.key);
} }
@@ -203,12 +174,8 @@ export const EquipmentDefinitions_PresetsEntry: MessageFns<EquipmentDefinitions_
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): EquipmentDefinitions_PresetsEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): EquipmentDefinitions_PresetsEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseEquipmentDefinitions_PresetsEntry(); const message = createBaseEquipmentDefinitions_PresetsEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -241,12 +208,8 @@ export const EquipmentDefinitions_PresetsEntry: MessageFns<EquipmentDefinitions_
fromJSON(object: any): EquipmentDefinitions_PresetsEntry { fromJSON(object: any): EquipmentDefinitions_PresetsEntry {
return { return {
key: globalThis.String( key: globalThis.String(assertSet("EquipmentDefinitions_PresetsEntry.key", object.key)),
assertSet('EquipmentDefinitions_PresetsEntry.key', object.key), value: EquipmentPreset.fromJSON(assertSet("EquipmentDefinitions_PresetsEntry.value", object.value)),
),
value: EquipmentPreset.fromJSON(
assertSet('EquipmentDefinitions_PresetsEntry.value', object.value),
),
}; };
}, },
@@ -266,13 +229,12 @@ export const EquipmentDefinitions_PresetsEntry: MessageFns<EquipmentDefinitions_
): EquipmentDefinitions_PresetsEntry { ): EquipmentDefinitions_PresetsEntry {
return EquipmentDefinitions_PresetsEntry.fromPartial(base ?? ({} as any)); return EquipmentDefinitions_PresetsEntry.fromPartial(base ?? ({} as any));
}, },
fromPartial< fromPartial<I extends Exact<DeepPartial<EquipmentDefinitions_PresetsEntry>, I>>(
I extends Exact<DeepPartial<EquipmentDefinitions_PresetsEntry>, I>, object: I,
>(object: I): EquipmentDefinitions_PresetsEntry { ): EquipmentDefinitions_PresetsEntry {
const message = createBaseEquipmentDefinitions_PresetsEntry(); const message = createBaseEquipmentDefinitions_PresetsEntry();
message.key = object.key ?? ''; message.key = object.key ?? "";
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? EquipmentPreset.fromPartial(object.value) ? EquipmentPreset.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -283,12 +245,8 @@ function createBaseEquipmentDefinitions_EquipmentsEntry(): EquipmentDefinitions_
return { key: 0, value: createBaseEquipment() }; return { key: 0, value: createBaseEquipment() };
} }
export const EquipmentDefinitions_EquipmentsEntry: MessageFns<EquipmentDefinitions_EquipmentsEntry> = export const EquipmentDefinitions_EquipmentsEntry: MessageFns<EquipmentDefinitions_EquipmentsEntry> = {
{ encode(message: EquipmentDefinitions_EquipmentsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: EquipmentDefinitions_EquipmentsEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).uint32(message.key); writer.uint32(8).uint32(message.key);
} }
@@ -298,12 +256,8 @@ export const EquipmentDefinitions_EquipmentsEntry: MessageFns<EquipmentDefinitio
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): EquipmentDefinitions_EquipmentsEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): EquipmentDefinitions_EquipmentsEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseEquipmentDefinitions_EquipmentsEntry(); const message = createBaseEquipmentDefinitions_EquipmentsEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -336,12 +290,8 @@ export const EquipmentDefinitions_EquipmentsEntry: MessageFns<EquipmentDefinitio
fromJSON(object: any): EquipmentDefinitions_EquipmentsEntry { fromJSON(object: any): EquipmentDefinitions_EquipmentsEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("EquipmentDefinitions_EquipmentsEntry.key", object.key)),
assertSet('EquipmentDefinitions_EquipmentsEntry.key', object.key), value: Equipment.fromJSON(assertSet("EquipmentDefinitions_EquipmentsEntry.value", object.value)),
),
value: Equipment.fromJSON(
assertSet('EquipmentDefinitions_EquipmentsEntry.value', object.value),
),
}; };
}, },
@@ -356,20 +306,17 @@ export const EquipmentDefinitions_EquipmentsEntry: MessageFns<EquipmentDefinitio
return obj; return obj;
}, },
create< create<I extends Exact<DeepPartial<EquipmentDefinitions_EquipmentsEntry>, I>>(
I extends Exact<DeepPartial<EquipmentDefinitions_EquipmentsEntry>, I>, base?: I,
>(base?: I): EquipmentDefinitions_EquipmentsEntry { ): EquipmentDefinitions_EquipmentsEntry {
return EquipmentDefinitions_EquipmentsEntry.fromPartial( return EquipmentDefinitions_EquipmentsEntry.fromPartial(base ?? ({} as any));
base ?? ({} as any),
);
}, },
fromPartial< fromPartial<I extends Exact<DeepPartial<EquipmentDefinitions_EquipmentsEntry>, I>>(
I extends Exact<DeepPartial<EquipmentDefinitions_EquipmentsEntry>, I>, object: I,
>(object: I): EquipmentDefinitions_EquipmentsEntry { ): EquipmentDefinitions_EquipmentsEntry {
const message = createBaseEquipmentDefinitions_EquipmentsEntry(); const message = createBaseEquipmentDefinitions_EquipmentsEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? Equipment.fromPartial(object.value) ? Equipment.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -381,10 +328,7 @@ function createBaseEquipment(): Equipment {
} }
export const Equipment: MessageFns<Equipment> = { export const Equipment: MessageFns<Equipment> = {
encode( encode(message: Equipment, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: Equipment,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.name !== undefined) { if (message.name !== undefined) {
I18nString.encode(message.name, writer.uint32(10).fork()).join(); I18nString.encode(message.name, writer.uint32(10).fork()).join();
} }
@@ -395,8 +339,7 @@ export const Equipment: MessageFns<Equipment> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): Equipment { decode(input: BinaryReader | Uint8Array, length?: number): Equipment {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseEquipment(); const message = createBaseEquipment();
while (reader.pos < end) { while (reader.pos < end) {
@@ -429,10 +372,8 @@ export const Equipment: MessageFns<Equipment> = {
fromJSON(object: any): Equipment { fromJSON(object: any): Equipment {
return { return {
name: I18nString.fromJSON(assertSet('Equipment.name', object.name)), name: I18nString.fromJSON(assertSet("Equipment.name", object.name)),
description: I18nString.fromJSON( description: I18nString.fromJSON(assertSet("Equipment.description", object.description)),
assertSet('Equipment.description', object.description),
),
}; };
}, },
@@ -450,16 +391,12 @@ export const Equipment: MessageFns<Equipment> = {
create<I extends Exact<DeepPartial<Equipment>, I>>(base?: I): Equipment { create<I extends Exact<DeepPartial<Equipment>, I>>(base?: I): Equipment {
return Equipment.fromPartial(base ?? ({} as any)); return Equipment.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<Equipment>, I>>( fromPartial<I extends Exact<DeepPartial<Equipment>, I>>(object: I): Equipment {
object: I,
): Equipment {
const message = createBaseEquipment(); const message = createBaseEquipment();
message.name = message.name = (object.name !== undefined && object.name !== null)
object.name !== undefined && object.name !== null
? I18nString.fromPartial(object.name) ? I18nString.fromPartial(object.name)
: createBaseI18nString(); : createBaseI18nString();
message.description = message.description = (object.description !== undefined && object.description !== null)
object.description !== undefined && object.description !== null
? I18nString.fromPartial(object.description) ? I18nString.fromPartial(object.description)
: createBaseI18nString(); : createBaseI18nString();
return message; return message;
@@ -471,10 +408,7 @@ function createBaseEquipmentPreset(): EquipmentPreset {
} }
export const EquipmentPreset: MessageFns<EquipmentPreset> = { export const EquipmentPreset: MessageFns<EquipmentPreset> = {
encode( encode(message: EquipmentPreset, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: EquipmentPreset,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
for (const v of message.slots) { for (const v of message.slots) {
EquipmentSlot.encode(v!, writer.uint32(10).fork()).join(); EquipmentSlot.encode(v!, writer.uint32(10).fork()).join();
} }
@@ -482,8 +416,7 @@ export const EquipmentPreset: MessageFns<EquipmentPreset> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): EquipmentPreset { decode(input: BinaryReader | Uint8Array, length?: number): EquipmentPreset {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseEquipmentPreset(); const message = createBaseEquipmentPreset();
while (reader.pos < end) { while (reader.pos < end) {
@@ -508,9 +441,7 @@ export const EquipmentPreset: MessageFns<EquipmentPreset> = {
fromJSON(object: any): EquipmentPreset { fromJSON(object: any): EquipmentPreset {
return { return {
slots: globalThis.Array.isArray(object?.slots) slots: globalThis.Array.isArray(object?.slots) ? object.slots.map((e: any) => EquipmentSlot.fromJSON(e)) : [],
? object.slots.map((e: any) => EquipmentSlot.fromJSON(e))
: [],
}; };
}, },
@@ -522,17 +453,12 @@ export const EquipmentPreset: MessageFns<EquipmentPreset> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<EquipmentPreset>, I>>( create<I extends Exact<DeepPartial<EquipmentPreset>, I>>(base?: I): EquipmentPreset {
base?: I,
): EquipmentPreset {
return EquipmentPreset.fromPartial(base ?? ({} as any)); return EquipmentPreset.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<EquipmentPreset>, I>>( fromPartial<I extends Exact<DeepPartial<EquipmentPreset>, I>>(object: I): EquipmentPreset {
object: I,
): EquipmentPreset {
const message = createBaseEquipmentPreset(); const message = createBaseEquipmentPreset();
message.slots = message.slots = object.slots?.map((e) => EquipmentSlot.fromPartial(e)) || [];
object.slots?.map((e) => EquipmentSlot.fromPartial(e)) || [];
return message; return message;
}, },
}; };
@@ -542,10 +468,7 @@ function createBaseEquipmentSlot(): EquipmentSlot {
} }
export const EquipmentSlot: MessageFns<EquipmentSlot> = { export const EquipmentSlot: MessageFns<EquipmentSlot> = {
encode( encode(message: EquipmentSlot, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: EquipmentSlot,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.left !== 0) { if (message.left !== 0) {
writer.uint32(8).uint32(message.left); writer.uint32(8).uint32(message.left);
} }
@@ -556,8 +479,7 @@ export const EquipmentSlot: MessageFns<EquipmentSlot> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): EquipmentSlot { decode(input: BinaryReader | Uint8Array, length?: number): EquipmentSlot {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseEquipmentSlot(); const message = createBaseEquipmentSlot();
while (reader.pos < end) { while (reader.pos < end) {
@@ -590,8 +512,8 @@ export const EquipmentSlot: MessageFns<EquipmentSlot> = {
fromJSON(object: any): EquipmentSlot { fromJSON(object: any): EquipmentSlot {
return { return {
left: globalThis.Number(assertSet('EquipmentSlot.left', object.left)), left: globalThis.Number(assertSet("EquipmentSlot.left", object.left)),
right: globalThis.Number(assertSet('EquipmentSlot.right', object.right)), right: globalThis.Number(assertSet("EquipmentSlot.right", object.right)),
}; };
}, },
@@ -606,14 +528,10 @@ export const EquipmentSlot: MessageFns<EquipmentSlot> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<EquipmentSlot>, I>>( create<I extends Exact<DeepPartial<EquipmentSlot>, I>>(base?: I): EquipmentSlot {
base?: I,
): EquipmentSlot {
return EquipmentSlot.fromPartial(base ?? ({} as any)); return EquipmentSlot.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<EquipmentSlot>, I>>( fromPartial<I extends Exact<DeepPartial<EquipmentSlot>, I>>(object: I): EquipmentSlot {
object: I,
): EquipmentSlot {
const message = createBaseEquipmentSlot(); const message = createBaseEquipmentSlot();
message.left = object.left ?? 0; message.left = object.left ?? 0;
message.right = object.right ?? 0; message.right = object.right ?? 0;
@@ -621,36 +539,21 @@ export const EquipmentSlot: MessageFns<EquipmentSlot> = {
}, },
}; };
type Builtin = type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
| Date
| Function
| Uint8Array
| string
| number
| boolean
| undefined;
export type DeepPartial<T> = T extends Builtin export type DeepPartial<T> = T extends Builtin ? T
? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends globalThis.Array<infer U> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
? globalThis.Array<DeepPartial<U>> : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial<T["value"]> }
: T extends ReadonlyArray<infer U> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
? ReadonlyArray<DeepPartial<U>>
: T extends { $case: string; value: unknown }
? { $case: T['$case']; value?: DeepPartial<T['value']> }
: T extends {}
? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>; : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never; type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin export type Exact<P, I extends P> = P extends Builtin ? P
? P : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
: P & { [K in keyof P]: Exact<P[K], I[K]> } & {
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
function isObject(value: any): boolean { function isObject(value: any): boolean {
return typeof value === 'object' && value !== null; return typeof value === "object" && value !== null;
} }
function isSet(value: any): boolean { function isSet(value: any): boolean {
@@ -5,10 +5,10 @@
// source: packages/core/src/protos/legacy_game_definitions.proto // source: packages/core/src/protos/legacy_game_definitions.proto
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { I18nString, createBaseI18nString } from './legacy_i18n'; import { I18nString } from "./legacy_i18n";
export const protobufPackage = 'blitzkit'; export const protobufPackage = "blitzkit";
export interface GameDefinitions { export interface GameDefinitions {
version: string; version: string;
@@ -37,38 +37,28 @@ export interface GameModeRole {
} }
function createBaseGameDefinitions(): GameDefinitions { function createBaseGameDefinitions(): GameDefinitions {
return { version: '', nations: [], gameModes: {}, roles: {} }; return { version: "", nations: [], gameModes: {}, roles: {} };
} }
export const GameDefinitions: MessageFns<GameDefinitions> = { export const GameDefinitions: MessageFns<GameDefinitions> = {
encode( encode(message: GameDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: GameDefinitions, if (message.version !== "") {
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.version !== '') {
writer.uint32(10).string(message.version); writer.uint32(10).string(message.version);
} }
for (const v of message.nations) { for (const v of message.nations) {
writer.uint32(18).string(v!); writer.uint32(18).string(v!);
} }
Object.entries(message.gameModes).forEach(([key, value]) => { Object.entries(message.gameModes).forEach(([key, value]) => {
GameDefinitions_GameModesEntry.encode( GameDefinitions_GameModesEntry.encode({ key: key as any, value }, writer.uint32(26).fork()).join();
{ key: key as any, value },
writer.uint32(26).fork(),
).join();
}); });
Object.entries(message.roles).forEach(([key, value]) => { Object.entries(message.roles).forEach(([key, value]) => {
GameDefinitions_RolesEntry.encode( GameDefinitions_RolesEntry.encode({ key: key as any, value }, writer.uint32(34).fork()).join();
{ key: key as any, value },
writer.uint32(34).fork(),
).join();
}); });
return writer; return writer;
}, },
decode(input: BinaryReader | Uint8Array, length?: number): GameDefinitions { decode(input: BinaryReader | Uint8Array, length?: number): GameDefinitions {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGameDefinitions(); const message = createBaseGameDefinitions();
while (reader.pos < end) { while (reader.pos < end) {
@@ -95,10 +85,7 @@ export const GameDefinitions: MessageFns<GameDefinitions> = {
break; break;
} }
const entry3 = GameDefinitions_GameModesEntry.decode( const entry3 = GameDefinitions_GameModesEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry3.value !== undefined) { if (entry3.value !== undefined) {
message.gameModes[entry3.key] = entry3.value; message.gameModes[entry3.key] = entry3.value;
} }
@@ -109,10 +96,7 @@ export const GameDefinitions: MessageFns<GameDefinitions> = {
break; break;
} }
const entry4 = GameDefinitions_RolesEntry.decode( const entry4 = GameDefinitions_RolesEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry4.value !== undefined) { if (entry4.value !== undefined) {
message.roles[entry4.key] = entry4.value; message.roles[entry4.key] = entry4.value;
} }
@@ -129,36 +113,26 @@ export const GameDefinitions: MessageFns<GameDefinitions> = {
fromJSON(object: any): GameDefinitions { fromJSON(object: any): GameDefinitions {
return { return {
version: globalThis.String( version: globalThis.String(assertSet("GameDefinitions.version", object.version)),
assertSet('GameDefinitions.version', object.version), nations: globalThis.Array.isArray(object?.nations) ? object.nations.map((e: any) => globalThis.String(e)) : [],
),
nations: globalThis.Array.isArray(object?.nations)
? object.nations.map((e: any) => globalThis.String(e))
: [],
gameModes: isObject(object.gameModes) gameModes: isObject(object.gameModes)
? Object.entries(object.gameModes).reduce<{ [key: number]: GameMode }>( ? Object.entries(object.gameModes).reduce<{ [key: number]: GameMode }>((acc, [key, value]) => {
(acc, [key, value]) => {
acc[globalThis.Number(key)] = GameMode.fromJSON(value); acc[globalThis.Number(key)] = GameMode.fromJSON(value);
return acc; return acc;
}, }, {})
{},
)
: {}, : {},
roles: isObject(object.roles) roles: isObject(object.roles)
? Object.entries(object.roles).reduce<{ [key: number]: GameModeRole }>( ? Object.entries(object.roles).reduce<{ [key: number]: GameModeRole }>((acc, [key, value]) => {
(acc, [key, value]) => {
acc[globalThis.Number(key)] = GameModeRole.fromJSON(value); acc[globalThis.Number(key)] = GameModeRole.fromJSON(value);
return acc; return acc;
}, }, {})
{},
)
: {}, : {},
}; };
}, },
toJSON(message: GameDefinitions): unknown { toJSON(message: GameDefinitions): unknown {
const obj: any = {}; const obj: any = {};
if (message.version !== '') { if (message.version !== "") {
obj.version = message.version; obj.version = message.version;
} }
if (message.nations?.length) { if (message.nations?.length) {
@@ -185,28 +159,23 @@ export const GameDefinitions: MessageFns<GameDefinitions> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<GameDefinitions>, I>>( create<I extends Exact<DeepPartial<GameDefinitions>, I>>(base?: I): GameDefinitions {
base?: I,
): GameDefinitions {
return GameDefinitions.fromPartial(base ?? ({} as any)); return GameDefinitions.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<GameDefinitions>, I>>( fromPartial<I extends Exact<DeepPartial<GameDefinitions>, I>>(object: I): GameDefinitions {
object: I,
): GameDefinitions {
const message = createBaseGameDefinitions(); const message = createBaseGameDefinitions();
message.version = object.version ?? ''; message.version = object.version ?? "";
message.nations = object.nations?.map((e) => e) || []; message.nations = object.nations?.map((e) => e) || [];
message.gameModes = Object.entries(object.gameModes ?? {}).reduce<{ message.gameModes = Object.entries(object.gameModes ?? {}).reduce<{ [key: number]: GameMode }>(
[key: number]: GameMode; (acc, [key, value]) => {
}>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = GameMode.fromPartial(value); acc[globalThis.Number(key)] = GameMode.fromPartial(value);
} }
return acc; return acc;
}, {}); },
message.roles = Object.entries(object.roles ?? {}).reduce<{ {},
[key: number]: GameModeRole; );
}>((acc, [key, value]) => { message.roles = Object.entries(object.roles ?? {}).reduce<{ [key: number]: GameModeRole }>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = GameModeRole.fromPartial(value); acc[globalThis.Number(key)] = GameModeRole.fromPartial(value);
} }
@@ -220,12 +189,8 @@ function createBaseGameDefinitions_GameModesEntry(): GameDefinitions_GameModesEn
return { key: 0, value: createBaseGameMode() }; return { key: 0, value: createBaseGameMode() };
} }
export const GameDefinitions_GameModesEntry: MessageFns<GameDefinitions_GameModesEntry> = export const GameDefinitions_GameModesEntry: MessageFns<GameDefinitions_GameModesEntry> = {
{ encode(message: GameDefinitions_GameModesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: GameDefinitions_GameModesEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).uint32(message.key); writer.uint32(8).uint32(message.key);
} }
@@ -235,12 +200,8 @@ export const GameDefinitions_GameModesEntry: MessageFns<GameDefinitions_GameMode
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): GameDefinitions_GameModesEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): GameDefinitions_GameModesEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGameDefinitions_GameModesEntry(); const message = createBaseGameDefinitions_GameModesEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -273,12 +234,8 @@ export const GameDefinitions_GameModesEntry: MessageFns<GameDefinitions_GameMode
fromJSON(object: any): GameDefinitions_GameModesEntry { fromJSON(object: any): GameDefinitions_GameModesEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("GameDefinitions_GameModesEntry.key", object.key)),
assertSet('GameDefinitions_GameModesEntry.key', object.key), value: GameMode.fromJSON(assertSet("GameDefinitions_GameModesEntry.value", object.value)),
),
value: GameMode.fromJSON(
assertSet('GameDefinitions_GameModesEntry.value', object.value),
),
}; };
}, },
@@ -293,18 +250,15 @@ export const GameDefinitions_GameModesEntry: MessageFns<GameDefinitions_GameMode
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<GameDefinitions_GameModesEntry>, I>>( create<I extends Exact<DeepPartial<GameDefinitions_GameModesEntry>, I>>(base?: I): GameDefinitions_GameModesEntry {
base?: I,
): GameDefinitions_GameModesEntry {
return GameDefinitions_GameModesEntry.fromPartial(base ?? ({} as any)); return GameDefinitions_GameModesEntry.fromPartial(base ?? ({} as any));
}, },
fromPartial< fromPartial<I extends Exact<DeepPartial<GameDefinitions_GameModesEntry>, I>>(
I extends Exact<DeepPartial<GameDefinitions_GameModesEntry>, I>, object: I,
>(object: I): GameDefinitions_GameModesEntry { ): GameDefinitions_GameModesEntry {
const message = createBaseGameDefinitions_GameModesEntry(); const message = createBaseGameDefinitions_GameModesEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? GameMode.fromPartial(object.value) ? GameMode.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -315,12 +269,8 @@ function createBaseGameDefinitions_RolesEntry(): GameDefinitions_RolesEntry {
return { key: 0, value: createBaseGameModeRole() }; return { key: 0, value: createBaseGameModeRole() };
} }
export const GameDefinitions_RolesEntry: MessageFns<GameDefinitions_RolesEntry> = export const GameDefinitions_RolesEntry: MessageFns<GameDefinitions_RolesEntry> = {
{ encode(message: GameDefinitions_RolesEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: GameDefinitions_RolesEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).uint32(message.key); writer.uint32(8).uint32(message.key);
} }
@@ -330,12 +280,8 @@ export const GameDefinitions_RolesEntry: MessageFns<GameDefinitions_RolesEntry>
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): GameDefinitions_RolesEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): GameDefinitions_RolesEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGameDefinitions_RolesEntry(); const message = createBaseGameDefinitions_RolesEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -368,12 +314,8 @@ export const GameDefinitions_RolesEntry: MessageFns<GameDefinitions_RolesEntry>
fromJSON(object: any): GameDefinitions_RolesEntry { fromJSON(object: any): GameDefinitions_RolesEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("GameDefinitions_RolesEntry.key", object.key)),
assertSet('GameDefinitions_RolesEntry.key', object.key), value: GameModeRole.fromJSON(assertSet("GameDefinitions_RolesEntry.value", object.value)),
),
value: GameModeRole.fromJSON(
assertSet('GameDefinitions_RolesEntry.value', object.value),
),
}; };
}, },
@@ -388,18 +330,13 @@ export const GameDefinitions_RolesEntry: MessageFns<GameDefinitions_RolesEntry>
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<GameDefinitions_RolesEntry>, I>>( create<I extends Exact<DeepPartial<GameDefinitions_RolesEntry>, I>>(base?: I): GameDefinitions_RolesEntry {
base?: I,
): GameDefinitions_RolesEntry {
return GameDefinitions_RolesEntry.fromPartial(base ?? ({} as any)); return GameDefinitions_RolesEntry.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<GameDefinitions_RolesEntry>, I>>( fromPartial<I extends Exact<DeepPartial<GameDefinitions_RolesEntry>, I>>(object: I): GameDefinitions_RolesEntry {
object: I,
): GameDefinitions_RolesEntry {
const message = createBaseGameDefinitions_RolesEntry(); const message = createBaseGameDefinitions_RolesEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? GameModeRole.fromPartial(object.value) ? GameModeRole.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -411,10 +348,7 @@ function createBaseGameMode(): GameMode {
} }
export const GameMode: MessageFns<GameMode> = { export const GameMode: MessageFns<GameMode> = {
encode( encode(message: GameMode, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: GameMode,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.name !== undefined) { if (message.name !== undefined) {
I18nString.encode(message.name, writer.uint32(10).fork()).join(); I18nString.encode(message.name, writer.uint32(10).fork()).join();
} }
@@ -422,8 +356,7 @@ export const GameMode: MessageFns<GameMode> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): GameMode { decode(input: BinaryReader | Uint8Array, length?: number): GameMode {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGameMode(); const message = createBaseGameMode();
while (reader.pos < end) { while (reader.pos < end) {
@@ -447,9 +380,7 @@ export const GameMode: MessageFns<GameMode> = {
}, },
fromJSON(object: any): GameMode { fromJSON(object: any): GameMode {
return { return { name: I18nString.fromJSON(assertSet("GameMode.name", object.name)) };
name: I18nString.fromJSON(assertSet('GameMode.name', object.name)),
};
}, },
toJSON(message: GameMode): unknown { toJSON(message: GameMode): unknown {
@@ -465,8 +396,7 @@ export const GameMode: MessageFns<GameMode> = {
}, },
fromPartial<I extends Exact<DeepPartial<GameMode>, I>>(object: I): GameMode { fromPartial<I extends Exact<DeepPartial<GameMode>, I>>(object: I): GameMode {
const message = createBaseGameMode(); const message = createBaseGameMode();
message.name = message.name = (object.name !== undefined && object.name !== null)
object.name !== undefined && object.name !== null
? I18nString.fromPartial(object.name) ? I18nString.fromPartial(object.name)
: createBaseI18nString(); : createBaseI18nString();
return message; return message;
@@ -478,10 +408,7 @@ function createBaseGameModeRole(): GameModeRole {
} }
export const GameModeRole: MessageFns<GameModeRole> = { export const GameModeRole: MessageFns<GameModeRole> = {
encode( encode(message: GameModeRole, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: GameModeRole,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
writer.uint32(10).fork(); writer.uint32(10).fork();
for (const v of message.provisions) { for (const v of message.provisions) {
writer.uint32(v); writer.uint32(v);
@@ -496,8 +423,7 @@ export const GameModeRole: MessageFns<GameModeRole> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): GameModeRole { decode(input: BinaryReader | Uint8Array, length?: number): GameModeRole {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseGameModeRole(); const message = createBaseGameModeRole();
while (reader.pos < end) { while (reader.pos < end) {
@@ -570,14 +496,10 @@ export const GameModeRole: MessageFns<GameModeRole> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<GameModeRole>, I>>( create<I extends Exact<DeepPartial<GameModeRole>, I>>(base?: I): GameModeRole {
base?: I,
): GameModeRole {
return GameModeRole.fromPartial(base ?? ({} as any)); return GameModeRole.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<GameModeRole>, I>>( fromPartial<I extends Exact<DeepPartial<GameModeRole>, I>>(object: I): GameModeRole {
object: I,
): GameModeRole {
const message = createBaseGameModeRole(); const message = createBaseGameModeRole();
message.provisions = object.provisions?.map((e) => e) || []; message.provisions = object.provisions?.map((e) => e) || [];
message.consumables = object.consumables?.map((e) => e) || []; message.consumables = object.consumables?.map((e) => e) || [];
@@ -585,36 +507,21 @@ export const GameModeRole: MessageFns<GameModeRole> = {
}, },
}; };
type Builtin = type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
| Date
| Function
| Uint8Array
| string
| number
| boolean
| undefined;
export type DeepPartial<T> = T extends Builtin export type DeepPartial<T> = T extends Builtin ? T
? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends globalThis.Array<infer U> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
? globalThis.Array<DeepPartial<U>> : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial<T["value"]> }
: T extends ReadonlyArray<infer U> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
? ReadonlyArray<DeepPartial<U>>
: T extends { $case: string; value: unknown }
? { $case: T['$case']; value?: DeepPartial<T['value']> }
: T extends {}
? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>; : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never; type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin export type Exact<P, I extends P> = P extends Builtin ? P
? P : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
: P & { [K in keyof P]: Exact<P[K], I[K]> } & {
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
function isObject(value: any): boolean { function isObject(value: any): boolean {
return typeof value === 'object' && value !== null; return typeof value === "object" && value !== null;
} }
function isSet(value: any): boolean { function isSet(value: any): boolean {
+1 -1
View File
@@ -18,7 +18,7 @@ export interface I18nString_LocalesEntry {
value: string; value: string;
} }
export function createBaseI18nString(): I18nString { function createBaseI18nString(): I18nString {
return { locales: {} }; return { locales: {} };
} }
@@ -5,10 +5,10 @@
// source: packages/core/src/protos/legacy_map_definitions.proto // source: packages/core/src/protos/legacy_map_definitions.proto
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { I18nString, createBaseI18nString } from './legacy_i18n'; import { I18nString } from "./legacy_i18n";
export const protobufPackage = 'blitzkit'; export const protobufPackage = "blitzkit";
export interface MapDefinitions { export interface MapDefinitions {
maps: { [key: number]: MapDefinition }; maps: { [key: number]: MapDefinition };
@@ -29,22 +29,15 @@ function createBaseMapDefinitions(): MapDefinitions {
} }
export const MapDefinitions: MessageFns<MapDefinitions> = { export const MapDefinitions: MessageFns<MapDefinitions> = {
encode( encode(message: MapDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: MapDefinitions,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
Object.entries(message.maps).forEach(([key, value]) => { Object.entries(message.maps).forEach(([key, value]) => {
MapDefinitions_MapsEntry.encode( MapDefinitions_MapsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();
{ key: key as any, value },
writer.uint32(10).fork(),
).join();
}); });
return writer; return writer;
}, },
decode(input: BinaryReader | Uint8Array, length?: number): MapDefinitions { decode(input: BinaryReader | Uint8Array, length?: number): MapDefinitions {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseMapDefinitions(); const message = createBaseMapDefinitions();
while (reader.pos < end) { while (reader.pos < end) {
@@ -55,10 +48,7 @@ export const MapDefinitions: MessageFns<MapDefinitions> = {
break; break;
} }
const entry1 = MapDefinitions_MapsEntry.decode( const entry1 = MapDefinitions_MapsEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry1.value !== undefined) { if (entry1.value !== undefined) {
message.maps[entry1.key] = entry1.value; message.maps[entry1.key] = entry1.value;
} }
@@ -76,13 +66,10 @@ export const MapDefinitions: MessageFns<MapDefinitions> = {
fromJSON(object: any): MapDefinitions { fromJSON(object: any): MapDefinitions {
return { return {
maps: isObject(object.maps) maps: isObject(object.maps)
? Object.entries(object.maps).reduce<{ [key: number]: MapDefinition }>( ? Object.entries(object.maps).reduce<{ [key: number]: MapDefinition }>((acc, [key, value]) => {
(acc, [key, value]) => {
acc[globalThis.Number(key)] = MapDefinition.fromJSON(value); acc[globalThis.Number(key)] = MapDefinition.fromJSON(value);
return acc; return acc;
}, }, {})
{},
)
: {}, : {},
}; };
}, },
@@ -101,18 +88,12 @@ export const MapDefinitions: MessageFns<MapDefinitions> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<MapDefinitions>, I>>( create<I extends Exact<DeepPartial<MapDefinitions>, I>>(base?: I): MapDefinitions {
base?: I,
): MapDefinitions {
return MapDefinitions.fromPartial(base ?? ({} as any)); return MapDefinitions.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<MapDefinitions>, I>>( fromPartial<I extends Exact<DeepPartial<MapDefinitions>, I>>(object: I): MapDefinitions {
object: I,
): MapDefinitions {
const message = createBaseMapDefinitions(); const message = createBaseMapDefinitions();
message.maps = Object.entries(object.maps ?? {}).reduce<{ message.maps = Object.entries(object.maps ?? {}).reduce<{ [key: number]: MapDefinition }>((acc, [key, value]) => {
[key: number]: MapDefinition;
}>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = MapDefinition.fromPartial(value); acc[globalThis.Number(key)] = MapDefinition.fromPartial(value);
} }
@@ -127,10 +108,7 @@ function createBaseMapDefinitions_MapsEntry(): MapDefinitions_MapsEntry {
} }
export const MapDefinitions_MapsEntry: MessageFns<MapDefinitions_MapsEntry> = { export const MapDefinitions_MapsEntry: MessageFns<MapDefinitions_MapsEntry> = {
encode( encode(message: MapDefinitions_MapsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: MapDefinitions_MapsEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).int32(message.key); writer.uint32(8).int32(message.key);
} }
@@ -140,12 +118,8 @@ export const MapDefinitions_MapsEntry: MessageFns<MapDefinitions_MapsEntry> = {
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): MapDefinitions_MapsEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): MapDefinitions_MapsEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseMapDefinitions_MapsEntry(); const message = createBaseMapDefinitions_MapsEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -178,12 +152,8 @@ export const MapDefinitions_MapsEntry: MessageFns<MapDefinitions_MapsEntry> = {
fromJSON(object: any): MapDefinitions_MapsEntry { fromJSON(object: any): MapDefinitions_MapsEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("MapDefinitions_MapsEntry.key", object.key)),
assertSet('MapDefinitions_MapsEntry.key', object.key), value: MapDefinition.fromJSON(assertSet("MapDefinitions_MapsEntry.value", object.value)),
),
value: MapDefinition.fromJSON(
assertSet('MapDefinitions_MapsEntry.value', object.value),
),
}; };
}, },
@@ -198,18 +168,13 @@ export const MapDefinitions_MapsEntry: MessageFns<MapDefinitions_MapsEntry> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<MapDefinitions_MapsEntry>, I>>( create<I extends Exact<DeepPartial<MapDefinitions_MapsEntry>, I>>(base?: I): MapDefinitions_MapsEntry {
base?: I,
): MapDefinitions_MapsEntry {
return MapDefinitions_MapsEntry.fromPartial(base ?? ({} as any)); return MapDefinitions_MapsEntry.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<MapDefinitions_MapsEntry>, I>>( fromPartial<I extends Exact<DeepPartial<MapDefinitions_MapsEntry>, I>>(object: I): MapDefinitions_MapsEntry {
object: I,
): MapDefinitions_MapsEntry {
const message = createBaseMapDefinitions_MapsEntry(); const message = createBaseMapDefinitions_MapsEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? MapDefinition.fromPartial(object.value) ? MapDefinition.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -221,10 +186,7 @@ function createBaseMapDefinition(): MapDefinition {
} }
export const MapDefinition: MessageFns<MapDefinition> = { export const MapDefinition: MessageFns<MapDefinition> = {
encode( encode(message: MapDefinition, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: MapDefinition,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.id !== 0) { if (message.id !== 0) {
writer.uint32(8).uint32(message.id); writer.uint32(8).uint32(message.id);
} }
@@ -235,8 +197,7 @@ export const MapDefinition: MessageFns<MapDefinition> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): MapDefinition { decode(input: BinaryReader | Uint8Array, length?: number): MapDefinition {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseMapDefinition(); const message = createBaseMapDefinition();
while (reader.pos < end) { while (reader.pos < end) {
@@ -269,8 +230,8 @@ export const MapDefinition: MessageFns<MapDefinition> = {
fromJSON(object: any): MapDefinition { fromJSON(object: any): MapDefinition {
return { return {
id: globalThis.Number(assertSet('MapDefinition.id', object.id)), id: globalThis.Number(assertSet("MapDefinition.id", object.id)),
name: I18nString.fromJSON(assertSet('MapDefinition.name', object.name)), name: I18nString.fromJSON(assertSet("MapDefinition.name", object.name)),
}; };
}, },
@@ -285,54 +246,34 @@ export const MapDefinition: MessageFns<MapDefinition> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<MapDefinition>, I>>( create<I extends Exact<DeepPartial<MapDefinition>, I>>(base?: I): MapDefinition {
base?: I,
): MapDefinition {
return MapDefinition.fromPartial(base ?? ({} as any)); return MapDefinition.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<MapDefinition>, I>>( fromPartial<I extends Exact<DeepPartial<MapDefinition>, I>>(object: I): MapDefinition {
object: I,
): MapDefinition {
const message = createBaseMapDefinition(); const message = createBaseMapDefinition();
message.id = object.id ?? 0; message.id = object.id ?? 0;
message.name = message.name = (object.name !== undefined && object.name !== null)
object.name !== undefined && object.name !== null
? I18nString.fromPartial(object.name) ? I18nString.fromPartial(object.name)
: createBaseI18nString(); : createBaseI18nString();
return message; return message;
}, },
}; };
type Builtin = type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
| Date
| Function
| Uint8Array
| string
| number
| boolean
| undefined;
export type DeepPartial<T> = T extends Builtin export type DeepPartial<T> = T extends Builtin ? T
? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends globalThis.Array<infer U> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
? globalThis.Array<DeepPartial<U>> : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial<T["value"]> }
: T extends ReadonlyArray<infer U> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
? ReadonlyArray<DeepPartial<U>>
: T extends { $case: string; value: unknown }
? { $case: T['$case']; value?: DeepPartial<T['value']> }
: T extends {}
? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>; : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never; type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin export type Exact<P, I extends P> = P extends Builtin ? P
? P : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
: P & { [K in keyof P]: Exact<P[K], I[K]> } & {
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
function isObject(value: any): boolean { function isObject(value: any): boolean {
return typeof value === 'object' && value !== null; return typeof value === "object" && value !== null;
} }
function isSet(value: any): boolean { function isSet(value: any): boolean {
@@ -5,11 +5,11 @@
// source: packages/core/src/protos/legacy_provision_definitions.proto // source: packages/core/src/protos/legacy_provision_definitions.proto
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from '@bufbuild/protobuf/wire'; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { ConsumableTankFilter } from './legacy_consumable_definitions'; import { ConsumableTankFilter } from "./legacy_consumable_definitions";
import { I18nString, createBaseI18nString } from './legacy_i18n'; import { I18nString } from "./legacy_i18n";
export const protobufPackage = 'blitzkit'; export const protobufPackage = "blitzkit";
export interface ProvisionDefinitions { export interface ProvisionDefinitions {
provisions: { [key: number]: Provision }; provisions: { [key: number]: Provision };
@@ -34,25 +34,15 @@ function createBaseProvisionDefinitions(): ProvisionDefinitions {
} }
export const ProvisionDefinitions: MessageFns<ProvisionDefinitions> = { export const ProvisionDefinitions: MessageFns<ProvisionDefinitions> = {
encode( encode(message: ProvisionDefinitions, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: ProvisionDefinitions,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
Object.entries(message.provisions).forEach(([key, value]) => { Object.entries(message.provisions).forEach(([key, value]) => {
ProvisionDefinitions_ProvisionsEntry.encode( ProvisionDefinitions_ProvisionsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();
{ key: key as any, value },
writer.uint32(10).fork(),
).join();
}); });
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ProvisionDefinitions {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ProvisionDefinitions {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseProvisionDefinitions(); const message = createBaseProvisionDefinitions();
while (reader.pos < end) { while (reader.pos < end) {
@@ -63,10 +53,7 @@ export const ProvisionDefinitions: MessageFns<ProvisionDefinitions> = {
break; break;
} }
const entry1 = ProvisionDefinitions_ProvisionsEntry.decode( const entry1 = ProvisionDefinitions_ProvisionsEntry.decode(reader, reader.uint32());
reader,
reader.uint32(),
);
if (entry1.value !== undefined) { if (entry1.value !== undefined) {
message.provisions[entry1.key] = entry1.value; message.provisions[entry1.key] = entry1.value;
} }
@@ -84,9 +71,7 @@ export const ProvisionDefinitions: MessageFns<ProvisionDefinitions> = {
fromJSON(object: any): ProvisionDefinitions { fromJSON(object: any): ProvisionDefinitions {
return { return {
provisions: isObject(object.provisions) provisions: isObject(object.provisions)
? Object.entries(object.provisions).reduce<{ ? Object.entries(object.provisions).reduce<{ [key: number]: Provision }>((acc, [key, value]) => {
[key: number]: Provision;
}>((acc, [key, value]) => {
acc[globalThis.Number(key)] = Provision.fromJSON(value); acc[globalThis.Number(key)] = Provision.fromJSON(value);
return acc; return acc;
}, {}) }, {})
@@ -108,23 +93,20 @@ export const ProvisionDefinitions: MessageFns<ProvisionDefinitions> = {
return obj; return obj;
}, },
create<I extends Exact<DeepPartial<ProvisionDefinitions>, I>>( create<I extends Exact<DeepPartial<ProvisionDefinitions>, I>>(base?: I): ProvisionDefinitions {
base?: I,
): ProvisionDefinitions {
return ProvisionDefinitions.fromPartial(base ?? ({} as any)); return ProvisionDefinitions.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<ProvisionDefinitions>, I>>( fromPartial<I extends Exact<DeepPartial<ProvisionDefinitions>, I>>(object: I): ProvisionDefinitions {
object: I,
): ProvisionDefinitions {
const message = createBaseProvisionDefinitions(); const message = createBaseProvisionDefinitions();
message.provisions = Object.entries(object.provisions ?? {}).reduce<{ message.provisions = Object.entries(object.provisions ?? {}).reduce<{ [key: number]: Provision }>(
[key: number]: Provision; (acc, [key, value]) => {
}>((acc, [key, value]) => {
if (value !== undefined) { if (value !== undefined) {
acc[globalThis.Number(key)] = Provision.fromPartial(value); acc[globalThis.Number(key)] = Provision.fromPartial(value);
} }
return acc; return acc;
}, {}); },
{},
);
return message; return message;
}, },
}; };
@@ -133,12 +115,8 @@ function createBaseProvisionDefinitions_ProvisionsEntry(): ProvisionDefinitions_
return { key: 0, value: createBaseProvision() }; return { key: 0, value: createBaseProvision() };
} }
export const ProvisionDefinitions_ProvisionsEntry: MessageFns<ProvisionDefinitions_ProvisionsEntry> = export const ProvisionDefinitions_ProvisionsEntry: MessageFns<ProvisionDefinitions_ProvisionsEntry> = {
{ encode(message: ProvisionDefinitions_ProvisionsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
encode(
message: ProvisionDefinitions_ProvisionsEntry,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.key !== undefined) { if (message.key !== undefined) {
writer.uint32(8).uint32(message.key); writer.uint32(8).uint32(message.key);
} }
@@ -148,12 +126,8 @@ export const ProvisionDefinitions_ProvisionsEntry: MessageFns<ProvisionDefinitio
return writer; return writer;
}, },
decode( decode(input: BinaryReader | Uint8Array, length?: number): ProvisionDefinitions_ProvisionsEntry {
input: BinaryReader | Uint8Array, const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
length?: number,
): ProvisionDefinitions_ProvisionsEntry {
const reader =
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseProvisionDefinitions_ProvisionsEntry(); const message = createBaseProvisionDefinitions_ProvisionsEntry();
while (reader.pos < end) { while (reader.pos < end) {
@@ -186,12 +160,8 @@ export const ProvisionDefinitions_ProvisionsEntry: MessageFns<ProvisionDefinitio
fromJSON(object: any): ProvisionDefinitions_ProvisionsEntry { fromJSON(object: any): ProvisionDefinitions_ProvisionsEntry {
return { return {
key: globalThis.Number( key: globalThis.Number(assertSet("ProvisionDefinitions_ProvisionsEntry.key", object.key)),
assertSet('ProvisionDefinitions_ProvisionsEntry.key', object.key), value: Provision.fromJSON(assertSet("ProvisionDefinitions_ProvisionsEntry.value", object.value)),
),
value: Provision.fromJSON(
assertSet('ProvisionDefinitions_ProvisionsEntry.value', object.value),
),
}; };
}, },
@@ -206,20 +176,17 @@ export const ProvisionDefinitions_ProvisionsEntry: MessageFns<ProvisionDefinitio
return obj; return obj;
}, },
create< create<I extends Exact<DeepPartial<ProvisionDefinitions_ProvisionsEntry>, I>>(
I extends Exact<DeepPartial<ProvisionDefinitions_ProvisionsEntry>, I>, base?: I,
>(base?: I): ProvisionDefinitions_ProvisionsEntry { ): ProvisionDefinitions_ProvisionsEntry {
return ProvisionDefinitions_ProvisionsEntry.fromPartial( return ProvisionDefinitions_ProvisionsEntry.fromPartial(base ?? ({} as any));
base ?? ({} as any),
);
}, },
fromPartial< fromPartial<I extends Exact<DeepPartial<ProvisionDefinitions_ProvisionsEntry>, I>>(
I extends Exact<DeepPartial<ProvisionDefinitions_ProvisionsEntry>, I>, object: I,
>(object: I): ProvisionDefinitions_ProvisionsEntry { ): ProvisionDefinitions_ProvisionsEntry {
const message = createBaseProvisionDefinitions_ProvisionsEntry(); const message = createBaseProvisionDefinitions_ProvisionsEntry();
message.key = object.key ?? 0; message.key = object.key ?? 0;
message.value = message.value = (object.value !== undefined && object.value !== null)
object.value !== undefined && object.value !== null
? Provision.fromPartial(object.value) ? Provision.fromPartial(object.value)
: undefined; : undefined;
return message; return message;
@@ -227,21 +194,11 @@ export const ProvisionDefinitions_ProvisionsEntry: MessageFns<ProvisionDefinitio
}; };
function createBaseProvision(): Provision { function createBaseProvision(): Provision {
return { return { id: 0, name: createBaseI18nString(), crew: undefined, game_mode_exclusive: false, include: [], exclude: [] };
id: 0,
name: createBaseI18nString(),
crew: undefined,
game_mode_exclusive: false,
include: [],
exclude: [],
};
} }
export const Provision: MessageFns<Provision> = { export const Provision: MessageFns<Provision> = {
encode( encode(message: Provision, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
message: Provision,
writer: BinaryWriter = new BinaryWriter(),
): BinaryWriter {
if (message.id !== 0) { if (message.id !== 0) {
writer.uint32(8).uint32(message.id); writer.uint32(8).uint32(message.id);
} }
@@ -264,8 +221,7 @@ export const Provision: MessageFns<Provision> = {
}, },
decode(input: BinaryReader | Uint8Array, length?: number): Provision { decode(input: BinaryReader | Uint8Array, length?: number): Provision {
const reader = const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length; let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseProvision(); const message = createBaseProvision();
while (reader.pos < end) { while (reader.pos < end) {
@@ -308,9 +264,7 @@ export const Provision: MessageFns<Provision> = {
break; break;
} }
message.include.push( message.include.push(ConsumableTankFilter.decode(reader, reader.uint32()));
ConsumableTankFilter.decode(reader, reader.uint32()),
);
continue; continue;
} }
case 7: { case 7: {
@@ -318,9 +272,7 @@ export const Provision: MessageFns<Provision> = {
break; break;
} }
message.exclude.push( message.exclude.push(ConsumableTankFilter.decode(reader, reader.uint32()));
ConsumableTankFilter.decode(reader, reader.uint32()),
);
continue; continue;
} }
} }
@@ -334,12 +286,10 @@ export const Provision: MessageFns<Provision> = {
fromJSON(object: any): Provision { fromJSON(object: any): Provision {
return { return {
id: globalThis.Number(assertSet('Provision.id', object.id)), id: globalThis.Number(assertSet("Provision.id", object.id)),
name: I18nString.fromJSON(assertSet('Provision.name', object.name)), name: I18nString.fromJSON(assertSet("Provision.name", object.name)),
crew: isSet(object.crew) ? globalThis.Number(object.crew) : undefined, crew: isSet(object.crew) ? globalThis.Number(object.crew) : undefined,
game_mode_exclusive: globalThis.Boolean( game_mode_exclusive: globalThis.Boolean(assertSet("Provision.game_mode_exclusive", object.game_mode_exclusive)),
assertSet('Provision.game_mode_exclusive', object.game_mode_exclusive),
),
include: globalThis.Array.isArray(object?.include) include: globalThis.Array.isArray(object?.include)
? object.include.map((e: any) => ConsumableTankFilter.fromJSON(e)) ? object.include.map((e: any) => ConsumableTankFilter.fromJSON(e))
: [], : [],
@@ -375,55 +325,35 @@ export const Provision: MessageFns<Provision> = {
create<I extends Exact<DeepPartial<Provision>, I>>(base?: I): Provision { create<I extends Exact<DeepPartial<Provision>, I>>(base?: I): Provision {
return Provision.fromPartial(base ?? ({} as any)); return Provision.fromPartial(base ?? ({} as any));
}, },
fromPartial<I extends Exact<DeepPartial<Provision>, I>>( fromPartial<I extends Exact<DeepPartial<Provision>, I>>(object: I): Provision {
object: I,
): Provision {
const message = createBaseProvision(); const message = createBaseProvision();
message.id = object.id ?? 0; message.id = object.id ?? 0;
message.name = message.name = (object.name !== undefined && object.name !== null)
object.name !== undefined && object.name !== null
? I18nString.fromPartial(object.name) ? I18nString.fromPartial(object.name)
: createBaseI18nString(); : createBaseI18nString();
message.crew = object.crew ?? undefined; message.crew = object.crew ?? undefined;
message.game_mode_exclusive = object.game_mode_exclusive ?? false; message.game_mode_exclusive = object.game_mode_exclusive ?? false;
message.include = message.include = object.include?.map((e) => ConsumableTankFilter.fromPartial(e)) || [];
object.include?.map((e) => ConsumableTankFilter.fromPartial(e)) || []; message.exclude = object.exclude?.map((e) => ConsumableTankFilter.fromPartial(e)) || [];
message.exclude =
object.exclude?.map((e) => ConsumableTankFilter.fromPartial(e)) || [];
return message; return message;
}, },
}; };
type Builtin = type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
| Date
| Function
| Uint8Array
| string
| number
| boolean
| undefined;
export type DeepPartial<T> = T extends Builtin export type DeepPartial<T> = T extends Builtin ? T
? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
: T extends globalThis.Array<infer U> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
? globalThis.Array<DeepPartial<U>> : T extends { $case: string; value: unknown } ? { $case: T["$case"]; value?: DeepPartial<T["value"]> }
: T extends ReadonlyArray<infer U> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
? ReadonlyArray<DeepPartial<U>>
: T extends { $case: string; value: unknown }
? { $case: T['$case']; value?: DeepPartial<T['value']> }
: T extends {}
? { [K in keyof T]?: DeepPartial<T[K]> }
: Partial<T>; : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never; type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin export type Exact<P, I extends P> = P extends Builtin ? P
? P : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
: P & { [K in keyof P]: Exact<P[K], I[K]> } & {
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
function isObject(value: any): boolean { function isObject(value: any): boolean {
return typeof value === 'object' && value !== null; return typeof value === "object" && value !== null;
} }
function isSet(value: any): boolean { function isSet(value: any): boolean {
File diff suppressed because it is too large. Load diff
+8
View File
@@ -8,4 +8,12 @@ message Tank {
required string id = 1; required string id = 1;
required string slug = 2; required string slug = 2;
required I18n name = 3; required I18n name = 3;
// key can only ever be "chassis", "hull", "turret", or "gun"
map<string, PenetrationGroup> penetration_groups = 4;
}
message PenetrationGroup {
// keys are mostly "armor_xyz" where xyz is an integer but sometimes can be
// things like "commander", "rightTrack", etc.
map<string, float> armors = 1;
} }
+292 -2
View File
@@ -6,7 +6,7 @@
/* eslint-disable */ /* eslint-disable */
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { I18n, createBaseI18n } from "./i18n"; import { I18n } from "./i18n";
export const protobufPackage = "blitzkit"; export const protobufPackage = "blitzkit";
@@ -14,10 +14,26 @@ export interface Tank {
id: string; id: string;
slug: string; slug: string;
name: I18n; name: I18n;
/** key can only ever be "chassis", "hull", "turret", or "gun" */
penetration_groups: { [key: string]: PenetrationGroup };
}
export interface Tank_PenetrationGroupsEntry {
key: string;
value: PenetrationGroup | undefined;
}
export interface PenetrationGroup {
armors: { [key: string]: number };
}
export interface PenetrationGroup_ArmorsEntry {
key: string;
value: number;
} }
function createBaseTank(): Tank { function createBaseTank(): Tank {
return { id: "", slug: "", name: createBaseI18n() }; return { id: "", slug: "", name: createBaseI18n(), penetration_groups: {} };
} }
export const Tank: MessageFns<Tank> = { export const Tank: MessageFns<Tank> = {
@@ -31,6 +47,9 @@ export const Tank: MessageFns<Tank> = {
if (message.name !== undefined) { if (message.name !== undefined) {
I18n.encode(message.name, writer.uint32(26).fork()).join(); I18n.encode(message.name, writer.uint32(26).fork()).join();
} }
Object.entries(message.penetration_groups).forEach(([key, value]) => {
Tank_PenetrationGroupsEntry.encode({ key: key as any, value }, writer.uint32(34).fork()).join();
});
return writer; return writer;
}, },
@@ -65,6 +84,17 @@ export const Tank: MessageFns<Tank> = {
message.name = I18n.decode(reader, reader.uint32()); message.name = I18n.decode(reader, reader.uint32());
continue; continue;
} }
case 4: {
if (tag !== 34) {
break;
}
const entry4 = Tank_PenetrationGroupsEntry.decode(reader, reader.uint32());
if (entry4.value !== undefined) {
message.penetration_groups[entry4.key] = entry4.value;
}
continue;
}
} }
if ((tag & 7) === 4 || tag === 0) { if ((tag & 7) === 4 || tag === 0) {
break; break;
@@ -79,6 +109,12 @@ export const Tank: MessageFns<Tank> = {
id: globalThis.String(assertSet("Tank.id", object.id)), id: globalThis.String(assertSet("Tank.id", object.id)),
slug: globalThis.String(assertSet("Tank.slug", object.slug)), slug: globalThis.String(assertSet("Tank.slug", object.slug)),
name: I18n.fromJSON(assertSet("Tank.name", object.name)), name: I18n.fromJSON(assertSet("Tank.name", object.name)),
penetration_groups: isObject(object.penetration_groups)
? Object.entries(object.penetration_groups).reduce<{ [key: string]: PenetrationGroup }>((acc, [key, value]) => {
acc[key] = PenetrationGroup.fromJSON(value);
return acc;
}, {})
: {},
}; };
}, },
@@ -93,6 +129,15 @@ export const Tank: MessageFns<Tank> = {
if (message.name !== undefined) { if (message.name !== undefined) {
obj.name = I18n.toJSON(message.name); obj.name = I18n.toJSON(message.name);
} }
if (message.penetration_groups) {
const entries = Object.entries(message.penetration_groups);
if (entries.length > 0) {
obj.penetration_groups = {};
entries.forEach(([k, v]) => {
obj.penetration_groups[k] = PenetrationGroup.toJSON(v);
});
}
}
return obj; return obj;
}, },
@@ -106,6 +151,247 @@ export const Tank: MessageFns<Tank> = {
message.name = (object.name !== undefined && object.name !== null) message.name = (object.name !== undefined && object.name !== null)
? I18n.fromPartial(object.name) ? I18n.fromPartial(object.name)
: createBaseI18n(); : createBaseI18n();
message.penetration_groups = Object.entries(object.penetration_groups ?? {}).reduce<
{ [key: string]: PenetrationGroup }
>((acc, [key, value]) => {
if (value !== undefined) {
acc[key] = PenetrationGroup.fromPartial(value);
}
return acc;
}, {});
return message;
},
};
function createBaseTank_PenetrationGroupsEntry(): Tank_PenetrationGroupsEntry {
return { key: "", value: createBasePenetrationGroup() };
}
export const Tank_PenetrationGroupsEntry: MessageFns<Tank_PenetrationGroupsEntry> = {
encode(message: Tank_PenetrationGroupsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
if (message.key !== undefined) {
writer.uint32(10).string(message.key);
}
if (message.value !== undefined) {
PenetrationGroup.encode(message.value, writer.uint32(18).fork()).join();
}
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): Tank_PenetrationGroupsEntry {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseTank_PenetrationGroupsEntry();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.key = reader.string();
continue;
}
case 2: {
if (tag !== 18) {
break;
}
message.value = PenetrationGroup.decode(reader, reader.uint32());
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object: any): Tank_PenetrationGroupsEntry {
return {
key: globalThis.String(assertSet("Tank_PenetrationGroupsEntry.key", object.key)),
value: PenetrationGroup.fromJSON(assertSet("Tank_PenetrationGroupsEntry.value", object.value)),
};
},
toJSON(message: Tank_PenetrationGroupsEntry): unknown {
const obj: any = {};
if (message.key !== undefined) {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = PenetrationGroup.toJSON(message.value);
}
return obj;
},
create<I extends Exact<DeepPartial<Tank_PenetrationGroupsEntry>, I>>(base?: I): Tank_PenetrationGroupsEntry {
return Tank_PenetrationGroupsEntry.fromPartial(base ?? ({} as any));
},
fromPartial<I extends Exact<DeepPartial<Tank_PenetrationGroupsEntry>, I>>(object: I): Tank_PenetrationGroupsEntry {
const message = createBaseTank_PenetrationGroupsEntry();
message.key = object.key ?? "";
message.value = (object.value !== undefined && object.value !== null)
? PenetrationGroup.fromPartial(object.value)
: undefined;
return message;
},
};
function createBasePenetrationGroup(): PenetrationGroup {
return { armors: {} };
}
export const PenetrationGroup: MessageFns<PenetrationGroup> = {
encode(message: PenetrationGroup, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
Object.entries(message.armors).forEach(([key, value]) => {
PenetrationGroup_ArmorsEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).join();
});
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): PenetrationGroup {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBasePenetrationGroup();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
const entry1 = PenetrationGroup_ArmorsEntry.decode(reader, reader.uint32());
if (entry1.value !== undefined) {
message.armors[entry1.key] = entry1.value;
}
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object: any): PenetrationGroup {
return {
armors: isObject(object.armors)
? Object.entries(object.armors).reduce<{ [key: string]: number }>((acc, [key, value]) => {
acc[key] = Number(value);
return acc;
}, {})
: {},
};
},
toJSON(message: PenetrationGroup): unknown {
const obj: any = {};
if (message.armors) {
const entries = Object.entries(message.armors);
if (entries.length > 0) {
obj.armors = {};
entries.forEach(([k, v]) => {
obj.armors[k] = v;
});
}
}
return obj;
},
create<I extends Exact<DeepPartial<PenetrationGroup>, I>>(base?: I): PenetrationGroup {
return PenetrationGroup.fromPartial(base ?? ({} as any));
},
fromPartial<I extends Exact<DeepPartial<PenetrationGroup>, I>>(object: I): PenetrationGroup {
const message = createBasePenetrationGroup();
message.armors = Object.entries(object.armors ?? {}).reduce<{ [key: string]: number }>((acc, [key, value]) => {
if (value !== undefined) {
acc[key] = globalThis.Number(value);
}
return acc;
}, {});
return message;
},
};
function createBasePenetrationGroup_ArmorsEntry(): PenetrationGroup_ArmorsEntry {
return { key: "", value: 0 };
}
export const PenetrationGroup_ArmorsEntry: MessageFns<PenetrationGroup_ArmorsEntry> = {
encode(message: PenetrationGroup_ArmorsEntry, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
if (message.key !== undefined) {
writer.uint32(10).string(message.key);
}
if (message.value !== undefined) {
writer.uint32(21).float(message.value);
}
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): PenetrationGroup_ArmorsEntry {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBasePenetrationGroup_ArmorsEntry();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1: {
if (tag !== 10) {
break;
}
message.key = reader.string();
continue;
}
case 2: {
if (tag !== 21) {
break;
}
message.value = reader.float();
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
fromJSON(object: any): PenetrationGroup_ArmorsEntry {
return {
key: globalThis.String(assertSet("PenetrationGroup_ArmorsEntry.key", object.key)),
value: globalThis.Number(assertSet("PenetrationGroup_ArmorsEntry.value", object.value)),
};
},
toJSON(message: PenetrationGroup_ArmorsEntry): unknown {
const obj: any = {};
if (message.key !== undefined) {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = message.value;
}
return obj;
},
create<I extends Exact<DeepPartial<PenetrationGroup_ArmorsEntry>, I>>(base?: I): PenetrationGroup_ArmorsEntry {
return PenetrationGroup_ArmorsEntry.fromPartial(base ?? ({} as any));
},
fromPartial<I extends Exact<DeepPartial<PenetrationGroup_ArmorsEntry>, I>>(object: I): PenetrationGroup_ArmorsEntry {
const message = createBasePenetrationGroup_ArmorsEntry();
message.key = object.key ?? "";
message.value = object.value ?? 0;
return message; return message;
}, },
}; };
@@ -123,6 +409,10 @@ type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin ? P export type Exact<P, I extends P> = P extends Builtin ? P
: P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never }; : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
function isObject(value: any): boolean {
return typeof value === "object" && value !== null;
}
function isSet(value: any): boolean { function isSet(value: any): boolean {
return value !== null && value !== undefined; return value !== null && value !== undefined;
} }
@@ -27,14 +27,21 @@ export function Page({ id }: PageProps) {
function Model({ id }: { id: string }) { function Model({ id }: { id: string }) {
const gltf = useLoader(GLTFLoader, asset(`/tanks/${id}/collision/hull.glb`)); const gltf = useLoader(GLTFLoader, asset(`/tanks/${id}/collision/hull.glb`));
console.log(gltf);
return jsxTree(gltf.scene, { return jsxTree(gltf.scene, {
mesh: () => ({ mesh: (mesh) => ({
material: new MeshBasicMaterial({ material: new MeshBasicMaterial({
color: `rgb(${randInt(0, 255)}, ${randInt(0, 255)}, ${randInt( color: `rgb(${randInt(0, 255)}, ${randInt(0, 255)}, ${randInt(
0, 0,
255, 255,
)})`, )})`,
}), }),
onClick: (event) => {
if (!(mesh.material instanceof MeshBasicMaterial)) return;
event.stopPropagation();
console.log(mesh.material.name)
},
}), }),
}); });
} }
+70 -4
View File
@@ -9,15 +9,40 @@ using CUE4Parse.UE4.Assets.Exports.Engine;
using CUE4Parse.UE4.Assets.Exports.StaticMesh; using CUE4Parse.UE4.Assets.Exports.StaticMesh;
using CUE4Parse.UE4.Assets.Exports.Texture; using CUE4Parse.UE4.Assets.Exports.Texture;
using CUE4Parse.UE4.Assets.Objects; using CUE4Parse.UE4.Assets.Objects;
using CUE4Parse.UE4.Assets.Objects.Properties;
using CUE4Parse.UE4.Objects.UObject; using CUE4Parse.UE4.Objects.UObject;
using CUE4Parse.Utils; using CUE4Parse.Utils;
using Google.Protobuf; using Google.Protobuf;
using Google.Protobuf.Collections;
using Org.BouncyCastle.Asn1.Misc;
using YamlDotNet.Serialization; using YamlDotNet.Serialization;
namespace BlitzKit.CLI.Functions namespace BlitzKit.CLI.Functions
{ {
public class Mangler(string[] args) public partial class Mangler(string[] args)
{ {
static readonly string PenetrationGroupNameMapPrefix =
"EMintSDKProtoData_BlitzStaticTankUpgradeSingleStage_PenetrationGroupUpgrade_TankPart";
static readonly Dictionary<string, string> PenetrationGroupNameMap = new Dictionary<
string,
string
>
{
{ $"{PenetrationGroupNameMapPrefix}::TANK_PART_CHASSIS", "chassis" },
{ $"{PenetrationGroupNameMapPrefix}::TANK_PART_HULL", "hull" },
{ $"{PenetrationGroupNameMapPrefix}::TANK_PART_TURRET", "turret" },
{ $"{PenetrationGroupNameMapPrefix}::TANK_PART_GUN", "gun" },
};
[GeneratedRegex("[^a-z0-9]")]
private static partial Regex NonAlphanumericRegex();
[GeneratedRegex("--+")]
private static partial Regex MultipleDashesRegex();
[GeneratedRegex("-$")]
private static partial Regex TrailingDashRegex();
readonly BlitzProvider provider = new(args.Contains("--depot")); readonly BlitzProvider provider = new(args.Contains("--depot"));
Locales? locales; Locales? locales;
readonly Dictionary<string, Dictionary<string, string>> strings = []; readonly Dictionary<string, Dictionary<string, string>> strings = [];
@@ -192,9 +217,9 @@ namespace BlitzKit.CLI.Functions
var id = PropertyUtil.Get<FName>(pda, "TankId").Text; var id = PropertyUtil.Get<FName>(pda, "TankId").Text;
var name = GetString($"TankEntity__{id.ToLowerInvariant()}__Short_Name"); var name = GetString($"TankEntity__{id.ToLowerInvariant()}__Short_Name");
var slug = Diacritics.Remove(name.Locales["en"]).ToLower(); var slug = Diacritics.Remove(name.Locales["en"]).ToLower();
slug = Regex.Replace(slug, "[^a-z0-9]", "-"); slug = NonAlphanumericRegex().Replace(slug, "-");
slug = Regex.Replace(slug, "--+", "-"); slug = MultipleDashesRegex().Replace(slug, "-");
slug = Regex.Replace(slug, "-$", ""); slug = TrailingDashRegex().Replace(slug, "");
// await MangleHull(pda); // await MangleHull(pda);
// await MangleIcon(pda); // await MangleIcon(pda);
@@ -206,9 +231,50 @@ namespace BlitzKit.CLI.Functions
Slug = slug, Slug = slug,
}; };
tank.PenetrationGroups.MergeFrom(MangleArmor(pda));
return tank; return tank;
} }
MapField<string, PenetrationGroup> MangleArmor(UObject pda)
{
var id = PropertyUtil.Get<FName>(pda, "TankId").Text;
MapField<string, PenetrationGroup> groups = [];
var attributes = PropertyUtil.Get<UObject>(pda, "DA_Attributes");
PropertyUtil.TryGet<UScriptMap>(attributes, "PenetrationGroups", out var penetrationGroups);
if (penetrationGroups == null)
{
PrettyLog.Warn($"Penetration groups missing for {id}; returning empty list");
return groups;
}
foreach (var group in penetrationGroups.Properties)
{
var rawName = ((FName)group.Key.GenericValue!).Text;
var name = PenetrationGroupNameMap[rawName];
var armors = PropertyUtil.Get<UScriptMap>(
group.Value!.GetValue<FStructFallback>()!,
"PenetrationGroups"
);
PenetrationGroup penetrationGroup = new();
foreach (var armorProperty in armors.Properties)
{
var armorName = ((FName)armorProperty.Key.GenericValue!).Text;
var armorThickness = PropertyUtil.Get<float>(
armorProperty.Value!.GetValue<FStructFallback>()!,
"Armor"
);
penetrationGroup.Armors[armorName] = armorThickness;
}
groups[name] = penetrationGroup;
}
return groups;
}
async Task MangleIcon(UObject pda) async Task MangleIcon(UObject pda)
{ {
var id = PropertyUtil.Get<FName>(pda, "TankId").Text; var id = PropertyUtil.Get<FName>(pda, "TankId").Text;
+227 -4
View File
@@ -25,13 +25,20 @@ namespace Blitzkit {
byte[] descriptorData = global::System.Convert.FromBase64String( byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat( string.Concat(
"CiNwYWNrYWdlcy9jb3JlL3NyYy9wcm90b3MvdGFuay5wcm90bxIIYmxpdHpr", "CiNwYWNrYWdlcy9jb3JlL3NyYy9wcm90b3MvdGFuay5wcm90bxIIYmxpdHpr",
"aXQaI3BhY2thZ2VzL2NvcmUvc3JjL3Byb3Rvcy9pMThuLnByb3RvIj4KBFRh", "aXQaI3BhY2thZ2VzL2NvcmUvc3JjL3Byb3Rvcy9pMThuLnByb3RvItcBCgRU",
"bmsSCgoCaWQYASACKAkSDAoEc2x1ZxgCIAIoCRIcCgRuYW1lGAMgAigLMg4u", "YW5rEgoKAmlkGAEgAigJEgwKBHNsdWcYAiACKAkSHAoEbmFtZRgDIAIoCzIO",
"YmxpdHpraXQuSTE4bg==")); "LmJsaXR6a2l0LkkxOG4SQQoScGVuZXRyYXRpb25fZ3JvdXBzGAQgAygLMiUu",
"YmxpdHpraXQuVGFuay5QZW5ldHJhdGlvbkdyb3Vwc0VudHJ5GlQKFlBlbmV0",
"cmF0aW9uR3JvdXBzRW50cnkSCwoDa2V5GAEgASgJEikKBXZhbHVlGAIgASgL",
"MhouYmxpdHpraXQuUGVuZXRyYXRpb25Hcm91cDoCOAEieQoQUGVuZXRyYXRp",
"b25Hcm91cBI2CgZhcm1vcnMYASADKAsyJi5ibGl0emtpdC5QZW5ldHJhdGlv",
"bkdyb3VwLkFybW9yc0VudHJ5Gi0KC0FybW9yc0VudHJ5EgsKA2tleRgBIAEo",
"CRINCgV2YWx1ZRgCIAEoAjoCOAE="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Blitzkit.I18NReflection.Descriptor, }, new pbr::FileDescriptor[] { global::Blitzkit.I18NReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::Blitzkit.Tank), global::Blitzkit.Tank.Parser, new[]{ "Id", "Slug", "Name" }, null, null, null, null) new pbr::GeneratedClrTypeInfo(typeof(global::Blitzkit.Tank), global::Blitzkit.Tank.Parser, new[]{ "Id", "Slug", "Name", "PenetrationGroups" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, }),
new pbr::GeneratedClrTypeInfo(typeof(global::Blitzkit.PenetrationGroup), global::Blitzkit.PenetrationGroup.Parser, new[]{ "Armors" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { null, })
})); }));
} }
#endregion #endregion
@@ -76,6 +83,7 @@ namespace Blitzkit {
id_ = other.id_; id_ = other.id_;
slug_ = other.slug_; slug_ = other.slug_;
name_ = other.name_ != null ? other.name_.Clone() : null; name_ = other.name_ != null ? other.name_.Clone() : null;
penetrationGroups_ = other.penetrationGroups_.Clone();
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
} }
@@ -149,6 +157,20 @@ namespace Blitzkit {
} }
} }
/// <summary>Field number for the "penetration_groups" field.</summary>
public const int PenetrationGroupsFieldNumber = 4;
private static readonly pbc::MapField<string, global::Blitzkit.PenetrationGroup>.Codec _map_penetrationGroups_codec
= new pbc::MapField<string, global::Blitzkit.PenetrationGroup>.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForMessage(18, global::Blitzkit.PenetrationGroup.Parser), 34);
private readonly pbc::MapField<string, global::Blitzkit.PenetrationGroup> penetrationGroups_ = new pbc::MapField<string, global::Blitzkit.PenetrationGroup>();
/// <summary>
/// key can only ever be "chassis", "hull", "turret", or "gun"
/// </summary>
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::MapField<string, global::Blitzkit.PenetrationGroup> PenetrationGroups {
get { return penetrationGroups_; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute] [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)] [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) { public override bool Equals(object other) {
@@ -167,6 +189,7 @@ namespace Blitzkit {
if (Id != other.Id) return false; if (Id != other.Id) return false;
if (Slug != other.Slug) return false; if (Slug != other.Slug) return false;
if (!object.Equals(Name, other.Name)) return false; if (!object.Equals(Name, other.Name)) return false;
if (!PenetrationGroups.Equals(other.PenetrationGroups)) return false;
return Equals(_unknownFields, other._unknownFields); return Equals(_unknownFields, other._unknownFields);
} }
@@ -177,6 +200,7 @@ namespace Blitzkit {
if (HasId) hash ^= Id.GetHashCode(); if (HasId) hash ^= Id.GetHashCode();
if (HasSlug) hash ^= Slug.GetHashCode(); if (HasSlug) hash ^= Slug.GetHashCode();
if (name_ != null) hash ^= Name.GetHashCode(); if (name_ != null) hash ^= Name.GetHashCode();
hash ^= PenetrationGroups.GetHashCode();
if (_unknownFields != null) { if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode(); hash ^= _unknownFields.GetHashCode();
} }
@@ -207,6 +231,7 @@ namespace Blitzkit {
output.WriteRawTag(26); output.WriteRawTag(26);
output.WriteMessage(Name); output.WriteMessage(Name);
} }
penetrationGroups_.WriteTo(output, _map_penetrationGroups_codec);
if (_unknownFields != null) { if (_unknownFields != null) {
_unknownFields.WriteTo(output); _unknownFields.WriteTo(output);
} }
@@ -229,6 +254,7 @@ namespace Blitzkit {
output.WriteRawTag(26); output.WriteRawTag(26);
output.WriteMessage(Name); output.WriteMessage(Name);
} }
penetrationGroups_.WriteTo(ref output, _map_penetrationGroups_codec);
if (_unknownFields != null) { if (_unknownFields != null) {
_unknownFields.WriteTo(ref output); _unknownFields.WriteTo(ref output);
} }
@@ -248,6 +274,7 @@ namespace Blitzkit {
if (name_ != null) { if (name_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Name); size += 1 + pb::CodedOutputStream.ComputeMessageSize(Name);
} }
size += penetrationGroups_.CalculateSize(_map_penetrationGroups_codec);
if (_unknownFields != null) { if (_unknownFields != null) {
size += _unknownFields.CalculateSize(); size += _unknownFields.CalculateSize();
} }
@@ -272,6 +299,7 @@ namespace Blitzkit {
} }
Name.MergeFrom(other.Name); Name.MergeFrom(other.Name);
} }
penetrationGroups_.MergeFrom(other.penetrationGroups_);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
} }
@@ -306,6 +334,10 @@ namespace Blitzkit {
input.ReadMessage(Name); input.ReadMessage(Name);
break; break;
} }
case 34: {
penetrationGroups_.AddEntriesFrom(input, _map_penetrationGroups_codec);
break;
}
} }
} }
#endif #endif
@@ -340,6 +372,197 @@ namespace Blitzkit {
input.ReadMessage(Name); input.ReadMessage(Name);
break; break;
} }
case 34: {
penetrationGroups_.AddEntriesFrom(ref input, _map_penetrationGroups_codec);
break;
}
}
}
}
#endif
}
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class PenetrationGroup : pb::IMessage<PenetrationGroup>
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser<PenetrationGroup> _parser = new pb::MessageParser<PenetrationGroup>(() => new PenetrationGroup());
private pb::UnknownFieldSet _unknownFields;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser<PenetrationGroup> Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::Blitzkit.TankReflection.Descriptor.MessageTypes[1]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public PenetrationGroup() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public PenetrationGroup(PenetrationGroup other) : this() {
armors_ = other.armors_.Clone();
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public PenetrationGroup Clone() {
return new PenetrationGroup(this);
}
/// <summary>Field number for the "armors" field.</summary>
public const int ArmorsFieldNumber = 1;
private static readonly pbc::MapField<string, float>.Codec _map_armors_codec
= new pbc::MapField<string, float>.Codec(pb::FieldCodec.ForString(10, ""), pb::FieldCodec.ForFloat(21, 0F), 10);
private readonly pbc::MapField<string, float> armors_ = new pbc::MapField<string, float>();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::MapField<string, float> Armors {
get { return armors_; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as PenetrationGroup);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(PenetrationGroup other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (!Armors.Equals(other.Armors)) return false;
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
hash ^= Armors.GetHashCode();
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
armors_.WriteTo(output, _map_armors_codec);
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
armors_.WriteTo(ref output, _map_armors_codec);
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
size += armors_.CalculateSize(_map_armors_codec);
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(PenetrationGroup other) {
if (other == null) {
return;
}
armors_.MergeFrom(other.armors_);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
break;
case 10: {
armors_.AddEntriesFrom(input, _map_armors_codec);
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
break;
case 10: {
armors_.AddEntriesFrom(ref input, _map_armors_codec);
break;
}
} }
} }
} }