From a44741c83773989430f5e3ac4a8a83c93b1341ff Mon Sep 17 00:00:00 2001 From: Ben Longbons Date: Sat, 5 Oct 2013 22:15:20 -0700 Subject: Enumify sex It's amazing some of this code ever worked ... --- src/common/mmo.hpp | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) (limited to 'src/common/mmo.hpp') diff --git a/src/common/mmo.hpp b/src/common/mmo.hpp index 0e1a7d0..6dff03a 100644 --- a/src/common/mmo.hpp +++ b/src/common/mmo.hpp @@ -267,6 +267,36 @@ enum class ItemLook : uint16_t DUAL_26 = 0x16, }; +enum class SEX : uint8_t +{ + FEMALE = 0, + MALE = 1, + SERVER = 2, + ERROR, +}; +inline +char sex_to_char(SEX sex) +{ + switch (sex) + { + case SEX::FEMALE: return 'F'; + case SEX::MALE: return 'M'; + case SEX::SERVER: return 'S'; + default: return '\0'; + } +} +inline +SEX sex_from_char(char c) +{ + switch (c) + { + case 'F': return SEX::FEMALE; + case 'M': return SEX::MALE; + case 'S': return SEX::SERVER; + default: return SEX::ERROR; + } +} + struct mmo_charstatus { int char_id; @@ -290,7 +320,8 @@ struct mmo_charstatus CharName name; unsigned char base_level, job_level; earray attrs; - unsigned char char_num, sex; + unsigned char char_num; + SEX sex; unsigned long mapip; unsigned int mapport; -- cgit v1.2.3-70-g09d2