From ad10aa03c1e6ad0fdad398520e291feb9f650120 Mon Sep 17 00:00:00 2001 From: fallenoak Date: Sun, 5 Oct 2025 23:30:16 -0500 Subject: [PATCH] feat(object): implement CGUnit_C::GetDisplayClassNameFromRecord --- src/object/client/Unit_C.cpp | 43 ++++++++++++++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 2 deletions(-) diff --git a/src/object/client/Unit_C.cpp b/src/object/client/Unit_C.cpp index b4da551..86e1f65 100644 --- a/src/object/client/Unit_C.cpp +++ b/src/object/client/Unit_C.cpp @@ -2,8 +2,47 @@ #include "db/Db.hpp" const char* CGUnit_C::GetDisplayClassNameFromRecord(const ChrClassesRec* classRec, UNIT_SEX sex, UNIT_SEX* displaySex) { - // TODO - return nullptr; + if (displaySex) { + *displaySex = sex; + } + + if (!classRec) { + return nullptr; + } + + if (sex == UNITSEX_MALE) { + if (*classRec->m_nameMale) { + return classRec->m_nameMale; + } + + if (*classRec->m_nameFemale) { + if (displaySex) { + *displaySex = UNITSEX_FEMALE; + } + + return classRec->m_nameFemale; + } + + return classRec->m_name; + } + + if (sex == UNITSEX_FEMALE) { + if (*classRec->m_nameFemale) { + return classRec->m_nameFemale; + } + + if (*classRec->m_nameMale) { + if (displaySex) { + *displaySex = UNITSEX_MALE; + } + + return classRec->m_nameMale; + } + + return classRec->m_name; + } + + return classRec->m_name; } const char* CGUnit_C::GetDisplayRaceNameFromRecord(const ChrRacesRec* raceRec, UNIT_SEX sex, UNIT_SEX* displaySex) {