From 0103a871cc3438fe490ce25362bcfe815cdbadfd Mon Sep 17 00:00:00 2001 From: Asdow <20314541+Asdow@users.noreply.github.com> Date: Thu, 14 Nov 2024 00:43:48 +0200 Subject: [PATCH] Operator overloads for accessing SOLDIERTYPE* through SoldierID --- Tactical/Overhead Types.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Tactical/Overhead Types.h b/Tactical/Overhead Types.h index a8d45707..4f22eed1 100644 --- a/Tactical/Overhead Types.h +++ b/Tactical/Overhead Types.h @@ -376,6 +376,9 @@ typedef struct #define COMPARE_PALETTEREP_ID( a, b ) ( strcmp( a, b ) ? FALSE : TRUE ) +struct SOLDIERTYPE; +extern SOLDIERTYPE *MercPtrs[TOTAL_SOLDIERS]; + typedef struct SoldierID { UINT16 i; @@ -386,6 +389,9 @@ typedef struct SoldierID SoldierID(const UINT16 val = 0) : i(val) {} + + SOLDIERTYPE* operator->() { return MercPtrs[i]; } + const SOLDIERTYPE* operator->() const { return MercPtrs[i]; } } SoldierID; //inline bool operator==(const SoldierID lhs, const SoldierID rhs) { return lhs.i == rhs.i; }