From 157fa0c1ddcfed86d550de94637ca7b047f64e79 Mon Sep 17 00:00:00 2001 From: tresabhi <43380238+tresabhi@users.noreply.github.com> Date: Tue, 28 Jan 2025 12:55:02 -0600 Subject: [PATCH] feat: protos --- .gitignore | 2 ++ package.json | 2 +- packages/core/src/protos/tank.proto | 2 +- packages/core/src/protos/tanks.proto | 7 +++++++ src/CLI/CLI.csproj | 1 + src/CLI/Functions/Mangler.cs | 5 ++++- src/CLI/Models/BlitzProvider.cs | 4 ++++ 7 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 packages/core/src/protos/tanks.proto diff --git a/.gitignore b/.gitignore index 56620aa2c..d6d6407c0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +src/CLI/Protos + node_modules _node_modules package-lock.json diff --git a/package.json b/package.json index 9b8e4fabf..662ec3a44 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "update": "yarn upgrade --latest", "tunnel": "cloudflared tunnel --url http://localhost:3000", "discoverids": "scripts/discoverIds.ts", - "build:protos": "bun packages/scripts/src/protos.ts", + "build:protos": "protoc packages/core/src/protos/*.proto --csharp_out=src/CLI/Protos && bun packages/scripts/src/protos.ts", "preview:website": "cd packages/website && bun run preview", "build:reviews": "cd packages/scripts && bun build:reviews", "build:ids": "cd packages/scripts && bun build:ids", diff --git a/packages/core/src/protos/tank.proto b/packages/core/src/protos/tank.proto index 9379dea83..230bf9f5e 100644 --- a/packages/core/src/protos/tank.proto +++ b/packages/core/src/protos/tank.proto @@ -11,7 +11,7 @@ message Tank { required ModuleHealth engine_health = 6; required ModuleHealth fuel_tank_health = 7; - map crew_healths = 8; + map crew_healths = 8; required float max_health = 9; required float concealment_stationary = 10; diff --git a/packages/core/src/protos/tanks.proto b/packages/core/src/protos/tanks.proto new file mode 100644 index 000000000..12a9cbcaf --- /dev/null +++ b/packages/core/src/protos/tanks.proto @@ -0,0 +1,7 @@ +syntax = "proto2"; + +package blitzkit; + +message Tanks { + repeated string tanks = 1; +} \ No newline at end of file diff --git a/src/CLI/CLI.csproj b/src/CLI/CLI.csproj index 567edb11d..4429c69bc 100644 --- a/src/CLI/CLI.csproj +++ b/src/CLI/CLI.csproj @@ -12,5 +12,6 @@ + diff --git a/src/CLI/Functions/Mangler.cs b/src/CLI/Functions/Mangler.cs index 7a3acd5ed..bd80b6ab6 100644 --- a/src/CLI/Functions/Mangler.cs +++ b/src/CLI/Functions/Mangler.cs @@ -15,7 +15,10 @@ namespace CLI.Functions foreach (var tank in nation.Value.Directories) { - Console.WriteLine(tank.Key); + if (!tank.Value.HasFile($"DA_{tank.Key}_Attributes.uasset")) + { + Console.WriteLine($"{nation.Key}/{tank.Key}"); + } } } } diff --git a/src/CLI/Models/BlitzProvider.cs b/src/CLI/Models/BlitzProvider.cs index 2fd17553d..529a9d907 100644 --- a/src/CLI/Models/BlitzProvider.cs +++ b/src/CLI/Models/BlitzProvider.cs @@ -60,6 +60,10 @@ namespace CLI.Models public void AddFile(string name, GameFile file) => Files.TryAdd(name, file); + public bool HasFile(string name) => Files.ContainsKey(name); + + public GameFile GetFile(string name) => Files[name]; + public bool HasDirectory(string name) => Directories.ContainsKey(name); public VfsDirectory GetDirectory(string name)