From bfef9e2531163f2423c903392c59ce5a18eac94c Mon Sep 17 00:00:00 2001 From: Jan Date: Sun, 19 May 2024 13:31:37 +0200 Subject: [PATCH 1/2] fix: not properly checking for xpColId and prestigeColId on leaderboards for iw4/iw5 --- .../Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp | 4 ++-- .../Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp b/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp index c6daa2d4..19e229fa 100644 --- a/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp +++ b/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp @@ -59,9 +59,9 @@ namespace { jLeaderboardDef.id = leaderboardDef.id; - if (leaderboardDef.xpColId != 0) + if (leaderboardDef.xpColId >= 0) jLeaderboardDef.xpColId = leaderboardDef.xpColId; - if (leaderboardDef.prestigeColId != 0) + if (leaderboardDef.prestigeColId >= 0) jLeaderboardDef.prestigeColId = leaderboardDef.prestigeColId; jLeaderboardDef.columns.resize(leaderboardDef.columnCount); diff --git a/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp b/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp index 51fd5703..2e8cc7da 100644 --- a/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp +++ b/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp @@ -65,9 +65,9 @@ namespace { jLeaderboardDef.id = leaderboardDef.id; - if (leaderboardDef.xpColId != 0) + if (leaderboardDef.xpColId >= 0) jLeaderboardDef.xpColId = leaderboardDef.xpColId; - if (leaderboardDef.prestigeColId != 0) + if (leaderboardDef.prestigeColId >= 0) jLeaderboardDef.prestigeColId = leaderboardDef.prestigeColId; jLeaderboardDef.columns.resize(leaderboardDef.columnCount); From e8ab3ba92d8c0425f5d36fa51af1a26d018ecb4a Mon Sep 17 00:00:00 2001 From: Jan Date: Sun, 19 May 2024 13:31:53 +0200 Subject: [PATCH 2/2] chore: rename iw4/iw5 column id property to colId --- src/ObjCommon/Game/IW4/Leaderboard/JsonLeaderboardDef.h | 4 ++-- src/ObjCommon/Game/IW5/Leaderboard/JsonLeaderboardDef.h | 4 ++-- .../Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp | 2 +- .../Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/ObjCommon/Game/IW4/Leaderboard/JsonLeaderboardDef.h b/src/ObjCommon/Game/IW4/Leaderboard/JsonLeaderboardDef.h index b4ba09ef..82114665 100644 --- a/src/ObjCommon/Game/IW4/Leaderboard/JsonLeaderboardDef.h +++ b/src/ObjCommon/Game/IW4/Leaderboard/JsonLeaderboardDef.h @@ -34,7 +34,7 @@ namespace IW4 { public: std::string name; - int id; + int colId; int propertyId; bool hidden; std::string statName; @@ -43,7 +43,7 @@ namespace IW4 LbAggType aggregationFunction; }; - NLOHMANN_DEFINE_TYPE_EXTENSION(JsonColumnDef, name, id, propertyId, hidden, statName, type, precision, aggregationFunction); + NLOHMANN_DEFINE_TYPE_EXTENSION(JsonColumnDef, name, colId, propertyId, hidden, statName, type, precision, aggregationFunction); class JsonLeaderboardDef { diff --git a/src/ObjCommon/Game/IW5/Leaderboard/JsonLeaderboardDef.h b/src/ObjCommon/Game/IW5/Leaderboard/JsonLeaderboardDef.h index 8b3c6687..cd2a9ccb 100644 --- a/src/ObjCommon/Game/IW5/Leaderboard/JsonLeaderboardDef.h +++ b/src/ObjCommon/Game/IW5/Leaderboard/JsonLeaderboardDef.h @@ -54,7 +54,7 @@ namespace IW5 { public: std::string name; - int id; + int colId; std::optional propertyId; std::optional hidden; std::optional statName; @@ -65,7 +65,7 @@ namespace IW5 std::optional uiCalColY; }; - NLOHMANN_DEFINE_TYPE_EXTENSION(JsonColumnDef, name, id, propertyId, hidden, statName, type, precision, aggregationFunction, uiCalColX, uiCalColY); + NLOHMANN_DEFINE_TYPE_EXTENSION(JsonColumnDef, name, colId, propertyId, hidden, statName, type, precision, aggregationFunction, uiCalColX, uiCalColY); class JsonLeaderboardDef { diff --git a/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp b/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp index 19e229fa..3523c0d6 100644 --- a/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp +++ b/src/ObjWriting/Game/IW4/Leaderboard/JsonLeaderboardDefWriter.cpp @@ -36,7 +36,7 @@ namespace static void CreateJsonColumnDef(JsonColumnDef& jColumnDef, const LbColumnDef& lbColumnDef) { jColumnDef.name = lbColumnDef.name; - jColumnDef.id = lbColumnDef.id; + jColumnDef.colId = lbColumnDef.id; if (lbColumnDef.propertyId != 0) jColumnDef.propertyId = lbColumnDef.propertyId; diff --git a/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp b/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp index 2e8cc7da..88dcfa42 100644 --- a/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp +++ b/src/ObjWriting/Game/IW5/Leaderboard/JsonLeaderboardDefWriter.cpp @@ -36,7 +36,7 @@ namespace static void CreateJsonColumnDef(JsonColumnDef& jColumnDef, const LbColumnDef& lbColumnDef) { jColumnDef.name = lbColumnDef.name; - jColumnDef.id = lbColumnDef.id; + jColumnDef.colId = lbColumnDef.id; if (lbColumnDef.propertyId != 0) jColumnDef.propertyId = lbColumnDef.propertyId;