#include "Contents/JobNames.h" // OFFSET: 0x00E2FE80 // FUNCTION: fn_24165 unsigned JobNames::BaseJob(unsigned job) { switch (job) { case 13: case 4199: return 7; case 21: case 4203: return 14; case 4014: case 4200: return 4008; case 4022: case 4204: return 4015; case 4036: case 4207: return 4030; case 4044: case 4210: return 4037; case 4080: case 4088: case 4090: case 4092: case 4094: case 4202: return 4054; case 4081: case 4089: case 4091: case 4093: case 4095: return 4060; case 4082: case 4201: return 4066; case 4083: return 4073; case 4084: case 4198: return 4056; case 4085: return 4062; case 4086: case 4197: return 4058; case 4087: return 4064; case 4109: case 4209: return 4096; case 4110: case 4208: return 4102; case 4111: case 4206: return 4098; case 4112: case 4205: return 4100; case 4114: return 25; case 4115: return 24; case 4116: return 1; case 4117: return 4049; case 4118: return 4011; case 4119: return 5; case 4120: return 4071; case 4121: return 4019; case 4122: return 3; case 4123: return 4047; case 4124: return 0; case 4125: return 15; case 4126: return 4; case 4127: return 4070; case 4128: return 23; case 4129: return 4057; case 4130: return 2; case 4131: return 16; case 4132: return 4067; case 4133: return 4055; case 4134: return 9; case 4135: return 4017; case 4136: return 4010; case 4137: return 18; case 4138: return 10; case 4139: return 4016; case 4140: return 4059; case 4141: return 6; case 4142: return 17; case 4143: return 4072; case 4144: return 4018; case 4145: return 12; case 4146: return 4013; case 4147: return 20; case 4148: return 4068; case 4149: return 19; case 4150: return 4012; case 4151: return 4069; case 4152: return 4021; case 4153: return 4020; case 4154: return 11; case 4155: return 4046; case 4156: return 8; case 4157: return 4009; case 4158: return 4023; case 4159: return 4024; case 4160: return 4025; case 4161: return 4026; case 4162: return 4027; case 4163: return 4028; case 4164: return 4034; case 4165: return 4035; case 4166: return 4038; case 4167: return 4039; case 4168: return 4040; case 4169: return 4041; case 4170: return 4042; case 4171: return 4043; case 4172: return 4045; case 4173: return 4097; case 4174: return 4099; case 4175: return 4101; case 4176: return 4103; case 4177: return 4104; case 4178: return 4105; case 4179: return 4106; case 4180: return 4107; case 4181: return 4029; case 4182: return 4108; case 4183: return 4001; case 4184: return 4002; case 4185: return 4003; case 4186: return 4004; case 4187: return 4005; case 4188: return 4006; case 4189: return 4007; case 4192: return 4190; case 4193: return 4191; case 4194: return 4031; case 4195: return 4032; case 4196: return 4033; case 4213: return 4211; case 4214: return 4212; case 4216: return 4215; case 4219: return 4218; case 4221: return 4220; case 4230: return 4222; case 4231: return 4223; case 4232: return 4224; case 4233: return 4225; case 4234: return 4226; case 4235: return 4227; case 4236: return 4228; case 4237: return 4229; case 4245: return 4239; case 4246: return 4240; case 4247: return 4241; case 4248: return 4242; case 4265: case 4280: return 4252; case 4266: case 4279: return 4253; case 4267: return 4254; case 4268: return 4255; case 4269: return 4256; case 4270: case 4278: return 4257; case 4271: case 4281: return 4258; case 4272: return 4259; case 4273: return 4260; case 4274: return 4261; case 4275: return 4262; case 4276: return 4263; case 4277: return 4264; case 4309: return 4302; case 4310: return 4303; case 4311: return 4304; case 4312: return 4305; case 4313: return 4306; case 4314: return 4307; case 4315: return 4308; case 4358: return 4351; case 4359: return 4353; case 4360: return 4355; default: return job; } } // OFFSET: 0x00DDE5C0 // FUNCTION: fn_23396 const char* JobNames::Lookup(unsigned job, int sex) { if (this->names.size() <= job) { return ""; } if (job - 4001u > 0x7CEu && job > 30u) { return this->names[job]; } const unsigned base = BaseJob(job); if (sex == -1) { if (this->cachedSex != this->currentSex) { this->cachedSex = this->currentSex; } sex = this->currentSex; } if (sex == 0) { const auto found = this->female.find(base); if (found != this->female.end()) { return found->second; } } else if (sex == 1) { const auto found = this->male.find(base); if (found != this->male.end()) { return found->second; } } return this->names[base]; }