#include "Players.h"
#include "Player.h"
#include "PlayersPacket.h"
#include "Maps.h"
#include "Players.h"
#include "Player.h"
#include "PlayersPacket.h"
#include "Maps.h"
#include "Mobs.h"
#include "Shops.h"
#include "Inventory.h"
#include "Drops.h"
#include "Levels.h"
#include "Server.h"
#include "Skills.h"
#include "SkillsPacket.h"
#include "PacketCreator.h"
#include <fstream>
#include <iostream>
#include "LevelsPacket.h"
#include "MySQLM.h"
using namespace std;
hash_map <int, Player*> Players::players;
short getShort(unsigned char* buf);
int getInt(unsigned char* buf);
int strval(char* buf);
void getString(unsigned char* buf, int len, char* out);
void Players::addPlayer(Player* player){
players[player->getPlayerid()] = player;
}
void Players::deletePlayer(Player* player){
if(players.find(player->getPlayerid()) != players.end()){
for (hash_map<int,Player*>::iterator iter = players.begin();
iter != players.end(); iter++){
if(iter->first == player->getPlayerid()){
players.erase(iter);
break;
}
}
}
}
void Players::handleMoving(Player* player, unsigned char* packet, int size){
Pos cpos;
int pla = packet[5]*14+1;
cpos.x = getShort(packet+size-4);
cpos.y = getShort(packet+size-2);
player->setPos(cpos);
player->setType(packet[5+14*(packet[5]-1)+12]);
if(!player->getHide()) {
PlayersPacket::showMoving(player, Maps::info[player->getMap()].Players, packet, pla);
}
}
void Players::faceExperiment(Player* player, unsigned char* packet){
int face = getInt(packet);
PlayersPacket::faceExperiment(player, Maps::info[player->getMap()].Players, face);
}
void Players::chatHandler(Player* player, unsigned char* packet){
char chat[91];
int chatsize = getShort(packet);
getString(packet+2, chatsize, chat);
if(chat[0] == '!'){
if(!player->isGM()) return;
char* next_token;
char command[90] = "";
if(chatsize>2)
strcpy_s(command, 90, strtok_s(chat+1, " ", &next_token));
if(strcmp(command, "map") == 0){
if(strlen(next_token) > 0){
int mapid = strval(strtok_s(NULL, " ",&next_token));
if(Maps::info.find(mapid) != Maps::info.end())
Maps::changeMap(player ,mapid, 0);
printf ("GM_%s has Changed Map.\n", player->getName());
}
}
else if(strcmp(command, "summon") == 0 || strcmp(command, "spawn") == 0){
int mobid = strval(strtok_s(NULL, " ",&next_token));
if(Mobs::mobinfo.find(mobid) == Mobs::mobinfo.end())
return;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
for(int i=0; i<count && i<100; i++){
Mobs::spawnMob(player, mobid);
printf ("GM_%s has Summoned Monsters.\n", player->getName());
}
}
else if(strcmp(command, "notice") == 0){
PlayersPacket::showMassage(next_token, 0);
printf ("GM_%s has sent in a 'Blue' notice.\n", player->getName());
}
else if(strcmp(command, "notice2") == 0){
PlayersPacket::showMassage(next_token, 1);
printf ("GM_%s has sent in a 'Pop up' notice.\n", player->getName());
}
else if(strcmp(command, "wnotice") == 0){
PlayersPacket::showMassage(next_token, 2);
printf ("GM_%s has sent in a 'White' notice.\n", player->getName());
}
else if(strcmp(command, "rnotice") == 0){
PlayersPacket::showMassage(next_token, 5);
printf ("GM_%s has sent in a 'Red' notice.\n", player->getName());
}
else if(strcmp(command, "cash") == 0){
Shops::showShop(player, 9999995);
printf ("GM_%s has used 'Cash'.\n", player->getName());
}
else if(strcmp(command, "shop") == 0){
Shops::showShop(player, 9999999);
printf ("GM_%s has used 'Shop'.\n", player->getName());
}
else if(strcmp(command, "jail") == 0){
if(strlen(next_token) > 0) {
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0) {
Maps::changeMap(iter->second , 200090300, 0);
printf ("GM_%s has Jailed a User.\n", player->getName());
break;
}
} else
PlayersPacket::ShowNotice(player, "You have entered insufficient parameters.", 5);
}
else if(strcmp(command, "unjail") == 0){
if(strlen(next_token) > 0) {
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0) {
Maps::unjail(iter->second , 100000000, 0);
printf ("GM_%s has Unjailed a User.\n", player->getName());
break;
}
} else
PlayersPacket::ShowNotice(player, "You have entered insufficient parameters.", 5);
}
else if(strcmp(command, "cashweapon") == 0){
Shops::showShop(player, 9999991);
printf ("GM_%s has used 'Cashweapon'.\n", player->getName());
}
else if(strcmp(command, "maple") == 0){
Shops::showShop(player, 9999990);
printf ("GM_%s has used 'Maple'.\n", player->getName());
}
else if(strcmp(command, "warriorshop") == 0){
Shops::showShop(player, 9999998);
printf ("GM_%s has used 'Warriorshop'.\n", player->getName());
}
else if(strcmp(command, "thiefshop") == 0){
Shops::showShop(player, 9999997);
printf ("GM_%s has used 'Thiefshop'.\n", player->getName());
}
else if(strcmp(command, "mageshop") == 0){
Shops::showShop(player, 9999996);
printf ("GM_%s has used 'Mageshop'.\n", player->getName());
}
else if(strcmp(command, "bowmanshop") == 0){
Shops::showShop(player, 9999995);
printf ("GM_%s has 'Bowmanshop'.\n", player->getName());
}
else if(strcmp(command, "potshop") == 0){
Shops::showShop(player, 9999994);
printf ("GM_%s has used 'Potshop' \n", player->getName());
}
else if(strcmp(command, "nxsets") == 0){
Shops::showShop(player, 9999992);
printf ("GM_%s has used 'Nxsets'.\n", player->getName());
}
else if(strcmp(command, "miscequips") == 0){
Shops::showShop(player, 9999989);
printf ("GM_%s has used 'Miscequips'.\n", player->getName());
}
else if(strcmp(command, "pos") == 0){
char text[50];
sprintf_s(text, 50, "X: %d Y: %d", player->getPos().x, player->getPos().y);
PlayersPacket::showMassage(text, 0);
printf ("GM_%s has used his GPS.\n", player->getName());
}
else if(strcmp(command, "item") == 0){
int itemid = strval(strtok_s(NULL, " ",&next_token));
if(Drops::items.find(itemid) == Drops::items.end() && Drops::equips.find(itemid) == Drops::equips.end())
return;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
Inventory::addNewItem(player, itemid, count);
printf ("GM_%s has gained a new Item.\n", player->getName());
}
else if(strcmp(command, "level") == 0){
Levels::setLevel(player, strval(strtok_s(NULL, " ",&next_token)));
printf ("GM_%s has Leveled.\n", player->getName());
}
else if(strcmp(command, "job") == 0){
Levels::setJob(player, strval(strtok_s(NULL, " ",&next_token)));
printf ("GM_%s has a new Job.\n", player->getName());
}
else if(strcmp(command, "emote") == 0){
Mobs::spawnMob(player, 9400566);
printf ("GM_%s has used emote event.\n", player->getName());
}
else if(strcmp(command, "triple") == 0){
if(strlen(next_token) > 0){
int skillid = 4121007;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "boomerang") == 0){
if(strlen(next_token) > 0){
int skillid = 4221007;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "assassinate") == 0){
if(strlen(next_token) > 0){
int skillid = 4221001;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "nlfake") == 0){
if(strlen(next_token) > 0){
int skillid = 4120002;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "sfake") == 0){
if(strlen(next_token) > 0){
int skillid = 4220002;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "hurricane") == 0){
if(strlen(next_token) > 0){
int skillid = 3121004;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "genesis") == 0){
if(strlen(next_token) > 0){
int skillid = 2321008;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "blizzard") == 0){
if(strlen(next_token) > 0){
int skillid = 2221007;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "firem") == 0){
if(strlen(next_token) > 0){
int skillid = 2121007;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "fired") == 0){
if(strlen(next_token) > 0){
int skillid = 2121003;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "iced") == 0){
if(strlen(next_token) > 0){
int skillid = 2221003;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "clight") == 0){
if(strlen(next_token) > 0){
int skillid = 2221006;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "angelray") == 0){
if(strlen(next_token) > 0){
int skillid = 2321007;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "bowdb") == 0){
if(strlen(next_token) > 0){
int skillid = 3121003;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "xbowdb") == 0){
if(strlen(next_token) > 0){
int skillid = 3221003;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "bowexp") == 0){
if(strlen(next_token) > 0){
int skillid = 3120005;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "xbowexp") == 0){
if(strlen(next_token) > 0){
int skillid = 3220005;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
else if(strcmp(command, "blast") == 0){
if(strlen(next_token) > 0){
int skillid = 1221009;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid, count);
SkillsPacket::addSkill(player, skillid, player->skills->getSkillLevel(skillid));
}
}
//AP & SP Commands are broke, what do you need more for anyways??
else if(strcmp(command, "addap") == 0){
if(strlen(next_token) > 0) {
player->setAp(player->getAp()+strval(strtok_s(NULL, " ",&next_token)));
LevelsPacket::changeStat(player, 0x100 + 0x4000, player->getLuk());
printf ("GM_%s has Added AP.\n", player->getName());
}
}
else if(strcmp(command, "killnpc") == 0){
player->setNPC(NULL);
printf ("GM_%s has murdured a an NPC.\n", player->getName());
}
else if(strcmp(command, "killall") == 0){
int size=Mobs::mobs[player->getMap()].size();
for (int j=0; j<size; j++){
Mobs::dieMob(player, Mobs::mobs[player->getMap()][0], 0);
printf ("GM_%s has Killed All monsters.\n", player->getName());
}
}
else if(strcmp(command, "horntail") == 0){
Mobs::spawnMob(player, 8810002);
Mobs::spawnMob(player, 8810003);
Mobs::spawnMob(player, 8810004);
Mobs::spawnMob(player, 8810005);
Mobs::spawnMob(player, 8810006);
Mobs::spawnMob(player, 8810007);
Mobs::spawnMob(player, 8810008);
Mobs::spawnMob(player, 8810009);
printf ("GM_%s has Summoned Horntail.\n", player->getName());
}
else if(strcmp(command, "heal") == 0){
player->setHP(player->getMHP());
player->setMP(player->getMMP());
printf ("GM_%s has Healed.\n", player->getName());
}
else if(strcmp(command, "kill") == 0){
if(strcmp(next_token, "all") == 0){
for (unsigned int x=0; x<Maps::info[player->getMap()].Players.size(); x++){
Player* killpsa;
killpsa = Maps::info[player->getMap()].Players[x];
if(killpsa != player){
killpsa->setHP(0);
printf ("%s has executed a GM command!\n", player->getName());
}
}
}
else if(strcmp(next_token, "gm") == 0){
for (unsigned int x=0; x<Maps::info[player->getMap()].Players.size(); x++){
Player* killpsa;
killpsa = Maps::info[player->getMap()].Players[x];
if(killpsa != player){
if(killpsa->isGM()){
killpsa->setHP(0);
printf ("%s has executed a GM command!\n", player->getName());
}
}
}
}
else if(strcmp(next_token, "players") == 0){
for (unsigned int x=0; x<Maps::info[player->getMap()].Players.size(); x++){
Player* killpsa;
killpsa = Maps::info[player->getMap()].Players[x];
if(killpsa != player){
if(!killpsa->isGM()){
killpsa->setHP(0);
printf ("%s has executed a GM command!\n", player->getName());
}
}
}
}
else if(strcmp(next_token, "me") == 0){
player->setHP(0);
}
else {
for (unsigned int x=0; x<Maps::info[player->getMap()].Players.size(); x++){
Player* killpsa;
killpsa = Maps::info[player->getMap()].Players[x];
if(killpsa != player){
killpsa->setHP(0);
printf ("%s has executed a GM command!\n", player->getName());
}
}
}
}
else if(strcmp(command, "cleardrops") == 0){
for(;;){
if(Drops::drops[player->getMap()].size() != 0){
for(unsigned int i=0; i<Drops::drops[player->getMap()].size(); i++){
Drops::drops[player->getMap()][i]->takeDrop(player);
printf ("GM_%s has Cleared Map Drops.\n", player->getName());
}
}
else { break; }
}
}
else if(strcmp(command, "gmmap") == 0){
Maps::changeMap(player ,180000000, 0);
printf ("GM_%s went to GM Map.\n", player->getName());
}
else if(strcmp(command, "mesos") == 0){
player->inv->setMesos(player->inv->getMesos()+strval(strtok_s(NULL, " ",&next_token)));
printf ("GM_%s has Robbed the Bank.\n", player->getName());
}
else if(strcmp(command, "warp") == 0){
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0)
if(strlen(next_token) > 0)
{
int mapid = strval(strtok_s(NULL, " ",&next_token));
if(Maps::info.find(mapid) != Maps::info.end())
Maps::changeMap(iter->second ,mapid, 0);
printf ("GM_%s has Warped another Player.\n", player->getName());
}
}
else if(strcmp(command, "warpto") == 0){
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0)
Maps::changeMap(player , iter->second->getMap(), iter->second->getMappos());
printf ("GM_%s has Warped to a Player.\n", player->getName());
}
else if(strcmp(command, "mwarpto") == 0){
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0)
Maps::changeMap(iter->second , player->getMap(), player->getMappos());
printf ("GM_%s has Warped a Player to self.\n", player->getName());
}
else if(strcmp(command, "zakum") == 0){
Mobs::spawnMob(player, 8800000);
Mobs::spawnMob(player, 8800003);
Mobs::spawnMob(player, 8800004);
Mobs::spawnMob(player, 8800005);
Mobs::spawnMob(player, 8800006);
Mobs::spawnMob(player, 8800007);
Mobs::spawnMob(player, 8800008);
Mobs::spawnMob(player, 8800009);
Mobs::spawnMob(player, 8800010);
printf ("GM_%s has Summoned Zakum\n", player->getName());
}
else if(strcmp(command, "addsp") == 0)
{
int skillid = strval(strtok_s(NULL, " ",&next_token));
if(Skills::skills.find(skillid)== Skills::skills.end())
return;
int count = 1;
if(strlen(next_token) > 0)
count = strval(next_token);
player->skills->addSkillLevel(skillid,count);
printf ("GM_%s has Added SP.\n", player->getName());
}
else if(strcmp(command, "exprate") == 0){
char *rate = strtok_s(NULL, " ",&next_token);
Mobs::setEXP(strval(rate));
char expcat[100] = "";
strcat_s(expcat, 100, "The EXP rate is now ");
strcat_s(expcat, 100, rate);
strcat_s(expcat, 100, "x!");
PlayersPacket::showMassage(expcat, 0);
printf ("GM_%s has Changed the EXP Rate.\n", player->getName());
}
// Find
else if(strcmp(command, "find") == 0){
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0) {
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0) {
int mapid = iter->second->getMap();
char mapname[999];
char text[999];
switch(mapid) {
case 0: sprintf_s(mapname, 999, "Maple Road : Entrance - Mushroom Town Training Camp"); break;
case 1: sprintf_s(mapname, 999, "Maple Road : Upper level of the Training Camp"); break;
case 2: sprintf_s(mapname, 999, "Maple Road : Lower level of the Trainng Camp"); break;
case 3: sprintf_s(mapname, 999, "Maple Road : Entrance - Mushroom Town Training Camp"); break;
case 10000: sprintf_s(mapname, 999, "Maple Road : Mushroom Town"); break;
case 20000: sprintf_s(mapname, 999, "Maple Road : Mushroom Town"); break;
case 20001: sprintf_s(mapname, 999, "Maple Road : Mushroom Town Townstreet"); break;
case 30000: sprintf_s(mapname, 999, "Maple Road : East Entrance to Mushroom Town"); break;
case 40000: sprintf_s(mapname, 999, "Maple Road : Snail Hunting Ground I"); break;
case 40001: sprintf_s(mapname, 999, "Maple Road : Snail Hunting Ground II"); break;
case 40002: sprintf_s(mapname, 999, "Maple Road : Snail Hunting Ground III"); break;
case 50000: sprintf_s(mapname, 999, "Maple Road : A Split Road"); break;
case 60000: sprintf_s(mapname, 999, "Maple Road : Southperry"); break;
case 60001: sprintf_s(mapname, 999, "Maple Road : Southperry Armor Store"); break;
case 1000000: sprintf_s(mapname, 999, "Rainbow Street : The Field West of Amherst"); break;
case 1000001: sprintf_s(mapname, 999, "Rainbow Street : In a Small Forest"); break;
case 1000002: sprintf_s(mapname, 999, "Rainbow Street : Dangerous Forest"); break;
case 1000003: sprintf_s(mapname, 999, "Rainbow Street : Mushroom Garden"); break;
case 1000004: sprintf_s(mapname, 999, "Rainbow Street : Snail Garden"); break;
case 1000005: sprintf_s(mapname, 999, "Rainbow Street : Hunting Ground Middle of the Forest I"); break;
case 1000006: sprintf_s(mapname, 999, "Rainbow Street : Hunting Ground Middle of the Forest II"); break;
case 1010000: sprintf_s(mapname, 999, "Rainbow Street : Amherst"); break;
case 1010001: sprintf_s(mapname, 999, "Rainbow Street : Amherst Weapon Store"); break;
case 1010002: sprintf_s(mapname, 999, "Rainbow Street : Amherst Townstreet"); break;
case 1010003: sprintf_s(mapname, 999, "Rainbow Street : Amherst Department Store"); break;
case 1010004: sprintf_s(mapname, 999, "Rainbow Street : Snail Field of Flowers"); break;
case 1020000: sprintf_s(mapname, 999, "Rainbow Street : The Field East of Amherst"); break;
case 1020001: sprintf_s(mapname, 999, "Rainbow Street : Tomato Field"); break;
case 100000000: sprintf_s(mapname, 999, "Victoria Road: Henesys"); break;
case 100000001: sprintf_s(mapname, 999, "Victoria Road: Henesys Townstreet"); break;
case 100000002: sprintf_s(mapname, 999, "Hidden Street: An Empty House"); break;
case 100000003: sprintf_s(mapname, 999, "Hidden Street: Pig Park"); break;
case 100000004: sprintf_s(mapname, 999, "Hidden Street: Pig Park II"); break;
case 100000005: sprintf_s(mapname, 999, "Hidden Street: Someone Else's House"); break;
case 100000006: sprintf_s(mapname, 999, "Hidden Street: The Resting Spot, Pig Park"); break;
case 100000100: sprintf_s(mapname, 999, "Victoria Road: Henesys Market"); break;
case 100000101: sprintf_s(mapname, 999, "Victoria Road: Henesys Weapon Store"); break;
case 100000102: sprintf_s(mapname, 999, "Victoria Road: Henesys Department Store"); break;
case 100000103: sprintf_s(mapname, 999, "Victoria Road: Henesys Plastic Surgery"); break;
case 100000104: sprintf_s(mapname, 999, "Victoria Road: Henesys Hair Salon"); break;
case 100000105: sprintf_s(mapname, 999, "Victoria Road: Henesys Skin-Care"); break;
case 100000110: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market Entrance"); break;
case 100000111: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <1>"); break;
case 100000112: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <2>"); break;
case 100000113: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <3>"); break;
case 100000114: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <4>"); break;
case 100000115: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <5>"); break;
case 100000116: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <6>"); break;
case 100000117: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <7>"); break;
case 100000118: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <8>"); break;
case 100000119: sprintf_s(mapname, 999, "Victoria Road: Henesys Free Market <9>"); break;
case 100000200: sprintf_s(mapname, 999, "Victoria Road: Henesys Park"); break;
case 100000201: sprintf_s(mapname, 999, "Victoria Road: Bowman Instructional School"); break;
case 100000202: sprintf_s(mapname, 999, "Victoria Road: Pet-Walking Road"); break;
case 100000203: sprintf_s(mapname, 999, "Victoria Road: Henesys Game Park"); break;
case 100010000: sprintf_s(mapname, 999, "Victoria Road: The Hill East of Henesys"); break;
case 100020000: sprintf_s(mapname, 999, "Victoria Road: The Rain-Forest East of Henesys"); break;
case 100030000: sprintf_s(mapname, 999, "Victoria Road: The Forest East of Henesys"); break;
case 100030001: sprintf_s(mapname, 999, "Hidden Street: The Blue Mushroom Forest"); break;
case 100040000: sprintf_s(mapname, 999, "Victoria Road: The Forest South of Ellinia"); break;
case 100040001: sprintf_s(mapname, 999, "Victoria Road: Dungeon, Southern Forest I"); break;
case 100040002: sprintf_s(mapname, 999, "Victoria Road: Dungeon, Southern Forest II"); break;
case 100040003: sprintf_s(mapname, 999, "Victoria Road: Dungeon, Southern Forest III"); break;
case 100040004: sprintf_s(mapname, 999, "Victoria Road: Dungeon, Southern Forest IV"); break;
case 100040100: sprintf_s(mapname, 999, "Victoria Road: The Forest of Wisdom"); break;
case 100040101: sprintf_s(mapname, 999, "Hidden Street: Monkey Forest I"); break;
case 100040102: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Monkey Forest I"); break;
case 100040103: sprintf_s(mapname, 999, "Victoria Road: Monkey Forest II"); break;
case 100040104: sprintf_s(mapname, 999, "Hidden Street: Tree Dungeon, Monkey Forest II"); break;
case 100040105: sprintf_s(mapname, 999, "Hidden Street: The Forest of Evil I"); break;
case 100040106: sprintf_s(mapname, 999, "Hidden Street: The Forest of Evil II"); break;
case 100040110: sprintf_s(mapname, 999, "Hidden Street: Downstairs at the Forest"); break;
case 100050000: sprintf_s(mapname, 999, "Victoria Road: The Field South of Ellinia"); break;
case 101000000: sprintf_s(mapname, 999, "Victoria Road: Ellinia"); break;
case 101000001: sprintf_s(mapname, 999, "Victoria Road: Ellinia Weapon Store"); break;
case 101000002: sprintf_s(mapname, 999, "Victoria Road: Ellinia Department Store"); break;
case 101000003: sprintf_s(mapname, 999, "Victoria Road: Magic Library"); break;
case 101000100: sprintf_s(mapname, 999, "Hidden Street: The Forest of Patience"); break;
case 101000101: sprintf_s(mapname, 999, "Hidden Street: The Forest of Patience"); break;
case 101000102: sprintf_s(mapname, 999, "Hidden Street: The Forest of Patience"); break;
case 101000103: sprintf_s(mapname, 999, "Hidden Street: The Forest of Patience"); break;
case 101000104: sprintf_s(mapname, 999, "Hidden Street: The Forest of Patience"); break;
case 101000200: sprintf_s(mapname, 999, "Hidden Street: Marr's Forest"); break;
case 101000300: sprintf_s(mapname, 999, "Victoria Road: Ellinia Station"); break;
case 101000301: sprintf_s(mapname, 999, "Victoria Road: Before Takeoff"); break;
case 101010000: sprintf_s(mapname, 999, "Victoria Road: The Field Up North of Ellinia"); break;
case 101010100: sprintf_s(mapname, 999, "Victoria Road: The Tree That Grew I"); break;
case 101010101: sprintf_s(mapname, 999, "Victoria Road: The Tree That Grew II"); break;
case 101010102: sprintf_s(mapname, 999, "Victoria Road: The Tree That Grew III"); break;
case 101020000: sprintf_s(mapname, 999, "Victoria Road: The Forest North of Ellinia"); break;
case 101020001: sprintf_s(mapname, 999, "Victoria Road: The Tree Tunnel At the Forest Up North"); break;
case 101020002: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North I"); break;
case 101020003: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North II"); break;
case 101020004: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North III"); break;
case 101020005: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North IV"); break;
case 101020006: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North V"); break;
case 101020007: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North VI"); break;
case 101020008: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North VII"); break;
case 101020009: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North"); break;
case 101020010: sprintf_s(mapname, 999, "Victoria Road: Tree Dungeon, Forest Up North IX"); break;
case 101030000: sprintf_s(mapname, 999, "Victoria Road: East Domain of Perion"); break;
case 101030001: sprintf_s(mapname, 999, "Hidden Street: The Land of Wild Boar II"); break;
case 101030100: sprintf_s(mapname, 999, "Victoria Road: Rocky Road III"); break;
case 101030101: sprintf_s(mapname, 999, "Victoria Road: Excavation Site I"); break;
case 101030102: sprintf_s(mapname, 999, "Victoria Road: Excavation Site II"); break;
case 101030103: sprintf_s(mapname, 999, "Victoria Road: Excavation Site III"); break;
case 101030104: sprintf_s(mapname, 999, "Victoria Road: Excavation Site"); break;
case 101030105: sprintf_s(mapname, 999, "Victoria Road: Remains I"); break;
case 101030106: sprintf_s(mapname, 999, "Victoria Road: Remains II"); break;
case 101030107: sprintf_s(mapname, 999, "Victoria Road: Remains III"); break;
case 101030108: sprintf_s(mapname, 999, "Victoria Road: Remains IV"); break;
case 101030109: sprintf_s(mapname, 999, "Victoria Road: Remains"); break;
case 101030110: sprintf_s(mapname, 999, "Victoria Road: Camp 1"); break;
case 101030111: sprintf_s(mapname, 999, "Victoria Road: Camp 2"); break;
case 101030112: sprintf_s(mapname, 999, "Victoria Road: Camp 3"); break;
case 101030200: sprintf_s(mapname, 999, "Victoria Road: Rocky Road II"); break;
case 101030300: sprintf_s(mapname, 999, "Victoria Road: Rocky Road I"); break;
case 101030400: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain I"); break;
case 101030401: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain II"); break;
case 101030402: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain III"); break;
case 101030403: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain IV"); break;
case 101030404: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain V"); break;
case 101030405: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain VI"); break;
case 101030406: sprintf_s(mapname, 999, "Victoria Road: East Rocky Mountain VII"); break;
case 101040000: sprintf_s(mapname, 999, "Victoria Road: Perion Street Corner"); break;
case 101040001: sprintf_s(mapname, 999, "Hidden Street: Land of Wild Boar"); break;
case 101040002: sprintf_s(mapname, 999, "Hidden Street: Over the Wall"); break;
case 101040003: sprintf_s(mapname, 999, "Hidden Street: Iron Boar Land"); break;
case 102000000: sprintf_s(mapname, 999, "Victoria Road: Perion"); break;
case 102000001: sprintf_s(mapname, 999, "Victoria Road: Perion Weapon Store"); break;
case 102000002: sprintf_s(mapname, 999, "Victoria Road: Perion Department Store"); break;
case 102000003: sprintf_s(mapname, 999, "Victoria Road: Warriors' Sanctuary"); break;
case 102000100: sprintf_s(mapname, 999, "Victoria Road: Entrance of Perion Free Market"); break;
case 102000101: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <1>"); break;
case 102000102: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <2>"); break;
case 102000103: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <3>"); break;
case 102000104: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <4>"); break;
case 102000105: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <5>"); break;
case 102000106: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <6>"); break;
case 102000107: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <7>"); break;
case 102000108: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <8>"); break;
case 102000109: sprintf_s(mapname, 999, "Victoria Road: Perion Free Market <9>"); break;
case 102010000: sprintf_s(mapname, 999, "Victoria Road: West Street Corner of Perion"); break;
case 102020000: sprintf_s(mapname, 999, "Victoria Road: West Rocky Mountain I"); break;
case 102020100: sprintf_s(mapname, 999, "Victoria Road: West Rocky Mountain II"); break;
case 102020200: sprintf_s(mapname, 999, "Victoria Road: West Rocky Mountain III"); break;
case 102020300: sprintf_s(mapname, 999, "Victoria Road: West Rocky Mountain IV"); break;
case 102030000: sprintf_s(mapname, 999, "Victoria Road: West Domain of Perion"); break;
case 102040000: sprintf_s(mapname, 999, "Victoria Road: Construction Site North of Kerning City"); break;
case 102050000: sprintf_s(mapname, 999, "Victoria Road: Sunset Sky"); break;
case 103000000: sprintf_s(mapname, 999, "Victoria Road: Kerning City"); break;
case 103000001: sprintf_s(mapname, 999, "Victoria Road: Kerning City Self-Defence Item Store"); break;
case 103000002: sprintf_s(mapname, 999, "Victoria Road: Kerning City Pharmacy"); break;
case 103000003: sprintf_s(mapname, 999, "Victoria Road: Thieves' Hideout"); break;
case 103000004: sprintf_s(mapname, 999, "Victoria Road: Niora Hospital"); break;
case 103000005: sprintf_s(mapname, 999, "Victoria Road: Kerning City Hair Salon"); break;
case 103000006: sprintf_s(mapname, 999, "Victoria Road: Kerning City Repair Shop"); break;
case 103000100: sprintf_s(mapname, 999, "Victoria Road: Subway Ticketing Booth"); break;
case 103000101: sprintf_s(mapname, 999, "Kerning City Subway: Line 1"); break;
case 103000102: sprintf_s(mapname, 999, "Kerning City Subway: Transfer Area"); break;
case 103000103: sprintf_s(mapname, 999, "Kerning City Subway: Line 1"); break;
case 103000104: sprintf_s(mapname, 999, "Kerning City Subway: Line 1"); break;
case 103000105: sprintf_s(mapname, 999, "Kerning City Subway: Line 1"); break;
case 103000200: sprintf_s(mapname, 999, "Kerning City Subway: Line 2"); break;
case 103000201: sprintf_s(mapname, 999, "Kerning City Subway: Line 2"); break;
case 103000202: sprintf_s(mapname, 999, "Kerning City Subway: Line 2"); break;
case 103000800: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment <1st Stage>"); break;
case 103000801: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment <2nd Stage>"); break;
case 103000802: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment <3rd Stage>"); break;
case 103000803: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment <4th stage>"); break;
case 103000804: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment"); break;
case 103000805: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment"); break;
case 103000890: sprintf_s(mapname, 999, "Hidden Street: 1st Accompaniment"); break;
case 103000900: sprintf_s(mapname, 999, "Line 3 Construction Site: B1"); break;
case 103000901: sprintf_s(mapname, 999, "Line 3 Construction Site: B1"); break;
case 103000902: sprintf_s(mapname, 999, "Line 3 Construction Site: B1"); break;
case 103000903: sprintf_s(mapname, 999, "Line 3 Construction Site: B2"); break;
case 103000904: sprintf_s(mapname, 999, "Line 3 Construction Site: B2"); break;
case 103000905: sprintf_s(mapname, 999, "Line 3 Construction Site: B2"); break;
case 103000906: sprintf_s(mapname, 999, "Line 3 Construction Site: B3"); break;
case 103000907: sprintf_s(mapname, 999, "Line 3 Construction Site: B3"); break;
case 103000908: sprintf_s(mapname, 999, "Line 3 Construction Site: B3"); break;
case 103000909: sprintf_s(mapname, 999, "Line 3 Construction Site: B3"); break;
case 103010000: sprintf_s(mapname, 999, "Victoria Road: Kerning City Construction Site"); break;
case 103020000: sprintf_s(mapname, 999, "Victoria Road: L Forest I"); break;
case 103020100: sprintf_s(mapname, 999, "Victoria Road: L Forest II"); break;
case 103020200: sprintf_s(mapname, 999, "Victoria Road: L Forest III"); break;
case 103030000: sprintf_s(mapname, 999, "Victoria Road: Kerning City Middle Forest I"); break;
case 103030100: sprintf_s(mapname, 999, "Victoria Road: Kerning City Middle Forest II"); break;
case 103030200: sprintf_s(mapname, 999, "Victoria Road: Kerning City Middle Forest III"); break;
case 104000000: sprintf_s(mapname, 999, "Victoria Road: Lith Harbor"); break;
case 104000001: sprintf_s(mapname, 999, "Victoria Road: Lith Harbor Armor Shop"); break;
case 104000002: sprintf_s(mapname, 999, "Victoria Road: Lith Harbor Department Store"); break;
case 104000003: sprintf_s(mapname, 999, "Victoria Road: Lith Harbor Weapon Shop"); break;
case 104000100: sprintf_s(mapname, 999, "Victoria Road: Right Around Lith Harbor"); break;
case 104000200: sprintf_s(mapname, 999, "Victoria Road: Thicket Around the Beach I"); break;
case 104000300: sprintf_s(mapname, 999, "Victoria Road: Thicket Around the Beach II"); break;
case 104000400: sprintf_s(mapname, 999, "Victoria Road: Thicket Around the Beach III"); break;
case 104010000: sprintf_s(mapname, 999, "Victoria Road: 3-Way Road-Split"); break;
case 104010001: sprintf_s(mapname, 999, "Hidden Street: The Pig Beach"); break;
case 104010002: sprintf_s(mapname, 999, "Hidden Street: Beach Hunting Ground"); break;
case 104020000: sprintf_s(mapname, 999, "Victoria Road: Forest West of Henesys"); break;
case 104030000: sprintf_s(mapname, 999, "Victoria Road: A Hill West of Henesys"); break;
case 104030001: sprintf_s(mapname, 999, "Hidden Street: Mushroom Garden"); break;
case 104040000: sprintf_s(mapname, 999, "Victoria Road: Henesys Hunting Ground I"); break;
case 104040001: sprintf_s(mapname, 999, "Victoria Road: Henesys Hunting Ground II"); break;
case 104040002: sprintf_s(mapname, 999, "Victoria Road: Henesys Hunting Ground III"); break;
case 105030000: sprintf_s(mapname, 999, "Dungeon: Deep Forest"); break;
case 105040000: sprintf_s(mapname, 999, "Dungeon: Swampy Land in a Deep Forest"); break;
case 105040100: sprintf_s(mapname, 999, "Dungeon: Hunting Ground in the Deep Forest I"); break;
case 105040200: sprintf_s(mapname, 999, "Dungeon: Hunting Ground in the Deep Forest II"); break;
case 105040300: sprintf_s(mapname, 999, "Dungeon: Sleepywood"); break;
case 105040301: sprintf_s(mapname, 999, "Dungeon: Sleepy Dungeon I"); break;
case 105040302: sprintf_s(mapname, 999, "Dungeon: Sleepy Dungeon II"); break;
case 105040303: sprintf_s(mapname, 999, "Dungeon: Sleepy Dungeon III"); break;
case 105040304: sprintf_s(mapname, 999, "Dungeon: Sleepy Dungeon IV"); break;
case 105040305: sprintf_s(mapname, 999, "Dungeon: Sleepy Dungeon V"); break;
case 105040306: sprintf_s(mapname, 999, "Dungeon: The forest of Golem"); break;
case 105040310: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040311: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040312: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040313: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040314: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040315: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040316: sprintf_s(mapname, 999, "Hidden Street: The Deep Forest of Patience"); break;
case 105040400: sprintf_s(mapname, 999, "Dungeon: Sleepywood Hotel"); break;
case 105040401: sprintf_s(mapname, 999, "Dungeon: Regular Sauna"); break;
case 105040402: sprintf_s(mapname, 999, "Dungeon: VIP Sauna"); break;
case 105050000: sprintf_s(mapname, 999, "Dungeon: Ant Tunnel I"); break;
case 105050100: sprintf_s(mapname, 999, "Dungeon: Ant Tunnel II"); break;
case 105050200: sprintf_s(mapname, 999, "Dungeon: Ant Tunnel III"); break;
case 105050300: sprintf_s(mapname, 999, "Dungeon: Ant Tunnel IV"); break;
case 105050400: sprintf_s(mapname, 999, "Dungeon: Dark Cave"); break;
case 105060000: sprintf_s(mapname, 999, "Dungeon: Dangerous Steam"); break;
case 105060100: sprintf_s(mapname, 999, "Dungeon: Deep Ant Tunnel I"); break;
case 105070000: sprintf_s(mapname, 999, "Dungeon: Deep Ant Tunnel II"); break;
case 105070001: sprintf_s(mapname, 999, "Dungeon: Ant Tunnel Park"); break;
case 105070002: sprintf_s(mapname, 999, "Dungeon: The Grave of Mushmom"); break;
case 105070100: sprintf_s(mapname, 999, "Dungeon: The Cave of Evil Eye I"); break;
case 105070200: sprintf_s(mapname, 999, "Dungeon: The Cave of Evil Eye II"); break;
case 105070300: sprintf_s(mapname, 999, "Dungeon: The Cave of Evil Eye III"); break;
case 105070400: sprintf_s(mapname, 999, "Dungeon: The Cave of Evil Eye IV"); break;
case 105080000: sprintf_s(mapname, 999, "Dungeon: Drake Hunting Ground"); break;
case 105090000: sprintf_s(mapname, 999, "Dungeon: The Tunnel That Lost Light I"); break;
case 105090100: sprintf_s(mapname, 999, "Dungeon: The Tunnel That Lost Light II"); break;
case 105090200: sprintf_s(mapname, 999, "Dungeon: Another Entrance"); break;
case 105090300: sprintf_s(mapname, 999, "Dungeon: Drake's Meal Table"); break;
case 105090301: sprintf_s(mapname, 999, "Dungeon: Wild Cargo's Area"); break;
case 105090310: sprintf_s(mapname, 999, "Dungeon: Drake Area"); break;
case 105090311: sprintf_s(mapname, 999, "Dungeon: Cold Cradle"); break;
case 105090312: sprintf_s(mapname, 999, "Dungeon: Drake's Nest"); break;
case 105090400: sprintf_s(mapname, 999, "Dungeon: Another Path"); break;
case 105090500: sprintf_s(mapname, 999, "Dungeon: Sanctuary Entrance I"); break;
case 105090600: sprintf_s(mapname, 999, "Dungeon: Sanctuary Entrance II"); break;
case 105090700: sprintf_s(mapname, 999, "Dungeon: Sanctuary Entrance III"); break;
case 105090800: sprintf_s(mapname, 999, "Dungeon: Sanctuary Entrance IV"); break;
case 105090900: sprintf_s(mapname, 999, "Dungeon: The Cursed Sanctuary"); break;
case 106000000: sprintf_s(mapname, 999, "Warning Street: Deep Valley I"); break;
case 106000001: sprintf_s(mapname, 999, "Hidden Street: Dangerous Valley"); break;
case 106000002: sprintf_s(mapname, 999, "Hidden Street: Dangerous Valley II"); break;
case 106000100: sprintf_s(mapname, 999, "Warning Street: Deep Valley II"); break;
case 106000101: sprintf_s(mapname, 999, "Warning Street: The Burnt Land I"); break;
case 106000110: sprintf_s(mapname, 999, "Warning Street: The Burnt Land II"); break;
case 106000120: sprintf_s(mapname, 999, "Warning Street: The Burnt Land III"); break;
case 106000130: sprintf_s(mapname, 999, "Warning Street: The Burnt Land IV"); break;
case 106000140: sprintf_s(mapname, 999, "Warning Street: The Burnt Land V"); break;
case 106000200: sprintf_s(mapname, 999, "Warning Street: Deep Valley III"); break;
case 106000300: sprintf_s(mapname, 999, "Warning Street: Perion Dungeon Entrance"); break;
case 106010000: sprintf_s(mapname, 999, "Warning Street: The Road to the Dungeon"); break;
case 106010100: sprintf_s(mapname, 999, "Warning Street: Henesys Dungeon Entrance"); break;
case 106010101: sprintf_s(mapname, 999, "Hidden Street: The Breathing Rock"); break;
case 106010102: sprintf_s(mapname, 999, "Victoria Road: The Entrance of Golem's Temple"); break;
case 106010103: sprintf_s(mapname, 999, "Victoria Road: Golem's Temple I"); break;
case 106010104: sprintf_s(mapname, 999, "Victoria Road: Golem's Temple II"); break;
case 106010105: sprintf_s(mapname, 999, "Victoria Road: Golem's Temple III"); break;
case 106010106: sprintf_s(mapname, 999, "Victoria Road: Golem's Temple IV"); break;
case 107000000: sprintf_s(mapname, 999, "Warning Street: The Swamp of Despair I"); break;
case 107000100: sprintf_s(mapname, 999, "Warning Street: The Swamp of Despair II"); break;
case 107000200: sprintf_s(mapname, 999, "Warning Street: The Swamp of Despair III"); break;
case 107000300: sprintf_s(mapname, 999, "Warning Street: Dangerous Croko I"); break;
case 107000400: sprintf_s(mapname, 999, "Warning Street: Dangerous Croko II"); break;
case 107000401: sprintf_s(mapname, 999, "Hidden Street: Monkey Swamp I"); break;
case 107000402: sprintf_s(mapname, 999, "Hidden Street: Monkey Swamp II"); break;
case 107000403: sprintf_s(mapname, 999, "Hidden Street: Monkey Swamp III"); break;
case 107000500: sprintf_s(mapname, 999, "Dungeon: Damp Tree-Forest"); break;
case 107000501: sprintf_s(mapname, 999, "Dungeon: Damp Forest"); break;
case 108000100: sprintf_s(mapname, 999, "Hidden Street: Ant Tunnel For Bowman"); break;
case 108000101: sprintf_s(mapname, 999, "Hidden Street: Ant Tunnel For Bowman"); break;
case 108000102: sprintf_s(mapname, 999, "Hidden Street: Ant Tunnel For Bowman"); break;
case 108000200: sprintf_s(mapname, 999, "Hidden Street: Magician's Tree Dungeon"); break;
case 108000201: sprintf_s(mapname, 999, "Hidden Street: Magician's Tree Dungeon"); break;
case 108000202: sprintf_s(mapname, 999, "Hidden Street: Magician's Tree Dungeon"); break;
case 108000300: sprintf_s(mapname, 999, "Hidden Street: Warrior's Rocky Mountain"); break;
case 108000301: sprintf_s(mapname, 999, "Hidden Street: Warrior's Rocky Mountain"); break;
case 108000302: sprintf_s(mapname, 999, "Hidden Street: Warrior's Rocky Mountain"); break;
case 108000400: sprintf_s(mapname, 999, "Hidden Street: Thief's Construction Site"); break;
case 108000401: sprintf_s(mapname, 999, "Hidden Street: Thief's Construction Site"); break;
case 108000402: sprintf_s(mapname, 999, "Hidden Street: Thief's Construction Site"); break;
case 108010100: sprintf_s(mapname, 999, "Hidden Street: The Path of Glittering Crystal"); break;
case 108010101: sprintf_s(mapname, 999, "Hidden Street: The Other Dimension"); break;
case 108010200: sprintf_s(mapname, 999, "Hidden Street: The Path of Glittering Crystal"); break;
case 108010201: sprintf_s(mapname, 999, "Hidden Street: The Other Dimension"); break;
case 108010300: sprintf_s(mapname, 999, "Hidden Street: The Path of Glittering Crystal"); break;
case 108010301: sprintf_s(mapname, 999, "Hidden Street: The Other Dimension"); break;
case 108010400: sprintf_s(mapname, 999, "Hidden Street: The Path of Glittering Crystal"); break;
case 108010401: sprintf_s(mapname, 999, "Hidden Street: The Other Dimension"); break;
case 109010000: sprintf_s(mapname, 999, "Hidden Street: Find the Jewel"); break;
case 109010100: sprintf_s(mapname, 999, "Hidden Street: Eastern Field"); break;
case 109010101: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010102: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010103: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010104: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010105: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010106: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010107: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010108: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010109: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010110: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in the East"); break;
case 109010200: sprintf_s(mapname, 999, "Hidden Street: Southern Field"); break;
case 109010201: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in South"); break;
case 109010202: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in South"); break;
case 109010203: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in South"); break;
case 109010204: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in South"); break;
case 109010205: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in South"); break;
case 109010206: sprintf_s(mapname, 999, "Hidden Street: Hidden Place in South"); break;
case 109010300: sprintf_s(mapname, 999, "Hidden Street: Northern Field"); break;
case 109010301: sprintf_s(mapname, 999, "Hidden Street: Hidden Room in North 1"); break;
case 109010302: sprintf_s(mapname, 999, "Hidden Street: Hidden Room in North 2"); break;
case 109010303: sprintf_s(mapname, 999, "Hidden Street: Hidden Room in North 3"); break;
case 109010400: sprintf_s(mapname, 999, "Hidden Street: Western Field"); break;
case 109010401: sprintf_s(mapname, 999, "Hidden Street: Hidden Room in West 1"); break;
case 109010402: sprintf_s(mapname, 999, "Hidden Street: Hidden Room in West 2"); break;
case 109010403: sprintf_s(mapname, 999, "Hidden Street: Hidden Room in West 3"); break;
case 109020001: sprintf_s(mapname, 999, "Hidden Street: OX Quiz"); break;
case 109030001: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030002: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030003: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030101: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030102: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030103: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030201: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030202: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030203: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030301: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030302: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030303: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030401: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030402: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109030403: sprintf_s(mapname, 999, "Hidden Street: Ola Ola"); break;
case 109040000: sprintf_s(mapname, 999, "Hidden Street: MapleStory Physical Fitness Test"); break;
case 109040001: sprintf_s(mapname, 999, "Hidden Street: MapleStory Physical Fitness Challenge"); break;
case 109040002: sprintf_s(mapname, 999, "Hidden Street: MapleStory Physical Fitness Challenge"); break;
case 109040003: sprintf_s(mapname, 999, "Hidden Street: MapleStory Physical Fitness Challenge"); break;
case 109040004: sprintf_s(mapname, 999, "Hidden Street: MapleStory Physical Fitness Challenge"); break;
case 109050000: sprintf_s(mapname, 999, "Hidden Street: Receiving the Reward For the Event"); break;
case 109050001: sprintf_s(mapname, 999, "Hidden Street: Leaving the Event"); break;
case 109060000: sprintf_s(mapname, 999, "Hidden Street: Snowball"); break;
case 109060001: sprintf_s(mapname, 999, "Hidden Street: Event Map Entrance"); break;
case 109060002: sprintf_s(mapname, 999, "Hidden Street: Event Map Entrance"); break;
case 109070000: sprintf_s(mapname, 999, "Hidden Street: Minigame Challenge"); break;
case 109080000: sprintf_s(mapname, 999, "Hidden Street: Coconut Harvest"); break;
case 109080001: sprintf_s(mapname, 999, "Hidden Street: Coconut Harvest"); break;
case 109080002: sprintf_s(mapname, 999, "Hidden Street: Coconut Harvest"); break;
case 109080003: sprintf_s(mapname, 999, "?????"); break;
case 110000000: sprintf_s(mapname, 999, "Florina Road: Florina Beach"); break;
case 110010000: sprintf_s(mapname, 999, "Florina Road: A Look-Out Shed Around the Beach"); break;
case 110020000: sprintf_s(mapname, 999, "Florina Road: Lorang Lorang"); break;
case 110020001: sprintf_s(mapname, 999, "Hidden Street: Lorang Lorang Lorang"); break;
case 110030000: sprintf_s(mapname, 999, "Florina Road: Lorang and Clang"); break;
case 110030001: sprintf_s(mapname, 999, "Florina Road: Clang and Lorang"); break;
case 110040000: sprintf_s(mapname, 999, "Florina Road: Hot Sand"); break;
case 180000000: sprintf_s(mapname, 999, "Victoria Road: Ellinia"); break;
case 180000001: sprintf_s(mapname, 999, "Victoria Road: Ellinia (GM Map)"); break;
case 180000002: sprintf_s(mapname, 999, "Victoria Road: Ellinia"); break;
case 180000003: sprintf_s(mapname, 999, "Victoria Road: Ellinia"); break;
case 190000000: sprintf_s(mapname, 999, "Premium Road: Another Sanctuary"); break;
case 190000001: sprintf_s(mapname, 999, "Premium Road: Breathing Sanctuary I"); break;
case 190000002: sprintf_s(mapname, 999, "Premium Road: Breathing Sanctuary II"); break;
case 191000000: sprintf_s(mapname, 999, "Premium Road: The Monkey Forest"); break;
case 191000001: sprintf_s(mapname, 999, "Premium Road: Tree Dungeon"); break;
case 192000000: sprintf_s(mapname, 999, "Premium Road: Dry Rocky Mountain"); break;
case 192000001: sprintf_s(mapname, 999, "Premium Road: Dry Rocky Mountain II"); break;
case 193000000: sprintf_s(mapname, 999, "Premium Road: Kerning City Internet Cafe"); break;
case 195000000: sprintf_s(mapname, 999, "Premium Road: Dangerous Ant-Hole"); break;
case 195010000: sprintf_s(mapname, 999, "Premium Road: Evil Eye's Cave"); break;
case 195020000: sprintf_s(mapname, 999, "Premium Road: The Lightless Cave"); break;
case 195030000: sprintf_s(mapname, 999, "Premium Road: Cargo Hunting Ground"); break;
case 196000000: sprintf_s(mapname, 999, "Premium Road: The Chilly Hill"); break;
case 196010000: sprintf_s(mapname, 999, "Premium Road: The Chilly Cliff"); break;
case 197000000: sprintf_s(mapname, 999, "Premium Road: Windy Terrace I"); break;
case 197010000: sprintf_s(mapname, 999, "Premium Road: Windy Terrace II"); break;
case 109080012: sprintf_s(mapname, 999, "?????"); break;
case 109080011: sprintf_s(mapname, 999, "?????"); break;
case 109080010: sprintf_s(mapname, 999, "?????"); break;
case 102040001: sprintf_s(mapname, 999, "Hidden Street: Northern Top of Construction Site"); break;
case 103010001: sprintf_s(mapname, 999, "Hidden Street: Caution Falling Down"); break;
case 107000001: sprintf_s(mapname, 999, "Hidden Street: Swamp of Juior Necki"); break;
case 200000000: sprintf_s(mapname, 999, "Orbis: Orbis"); break;
case 200000001: sprintf_s(mapname, 999, "Orbis: Orbis Weapon Store"); break;
case 200000002: sprintf_s(mapname, 999, "Orbis: Orbis Department Store"); break;
case 200000100: sprintf_s(mapname, 999, "Orbis: Orbis Ticketing Booth"); break;
case 200000110: sprintf_s(mapname, 999, "Orbis: Station Tunnel"); break;
case 200000111: sprintf_s(mapname, 999, "Orbis: Station"); break;
case 200000112: sprintf_s(mapname, 999, "Orbis: Before Takeoff"); break;
case 200000120: sprintf_s(mapname, 999, "Orbis: Station Pathway"); break;
case 200000121: sprintf_s(mapname, 999, "Orbis: Station"); break;
case 200000122: sprintf_s(mapname, 999, "Orbis: Before the Departure"); break;
case 200000130: sprintf_s(mapname, 999, "Orbis: Cabin Path"); break;
case 200000131: sprintf_s(mapname, 999, "Orbis: Cabin"); break;
case 200000132: sprintf_s(mapname, 999, "Orbis: Cabin"); break;
case 200000140: sprintf_s(mapname, 999, "Orbis: Cabin Path"); break;
case 200000141: sprintf_s(mapname, 999, "Orbis: Cabin"); break;
case 200000200: sprintf_s(mapname, 999, "Orbis: Orbis Park"); break;
case 200000201: sprintf_s(mapname, 999, "Orbis Park: Orbis Plastic Surgery"); break;
case 200000202: sprintf_s(mapname, 999, "Orbis Park: Orbis Hair Salon"); break;
case 200000203: sprintf_s(mapname, 999, "Orbis Park: Orbis Skin-Care"); break;
case 200000300: sprintf_s(mapname, 999, "Orbis: Top of the Hill"); break;
case 200000301: sprintf_s(mapname, 999, "Orbis: Guild Head Quater"); break;
case 200010000: sprintf_s(mapname, 999, "Orbis: Cloud Park I"); break;
case 200010100: sprintf_s(mapname, 999, "Orbis: The Road to Garden of 3 Colors"); break;
case 200010110: sprintf_s(mapname, 999, "Orbis: Garden of Red I"); break;
case 200010111: sprintf_s(mapname, 999, "Orbis: Garden of Red II"); break;
case 200010120: sprintf_s(mapname, 999, "Orbis: Garden of Yellow I"); break;
case 200010121: sprintf_s(mapname, 999, "Orbis: Garden of Yellow II"); break;
case 200010130: sprintf_s(mapname, 999, "Orbis: Garden of Green I"); break;
case 200010131: sprintf_s(mapname, 999, "Orbis: Garden of Green II"); break;
case 200010200: sprintf_s(mapname, 999, "Orbis: Stairway to the Sky I"); break;
case 200010300: sprintf_s(mapname, 999, "Orbis: Stairway to the Sky II"); break;
case 200010301: sprintf_s(mapname, 999, "Orbis: Garden of Darkness I"); break;
case 200010302: sprintf_s(mapname, 999, "Orbis: Garden of Darkness II"); break;
case 200020000: sprintf_s(mapname, 999, "Orbis: Cloud Park II"); break;
case 200030000: sprintf_s(mapname, 999, "Orbis: Strolling Path"); break;
case 200040000: sprintf_s(mapname, 999, "Orbis: Cloud Park III"); break;
case 200040001: sprintf_s(mapname, 999, "Orbis: Disposed Flower Garden"); break;
case 200050000: sprintf_s(mapname, 999, "Orbis: Cloud Park IV"); break;
case 200050001: sprintf_s(mapname, 999, "Orbis: Old Man's House"); break;
case 200060000: sprintf_s(mapname, 999, "Orbis: Strolling Path II"); break;
case 200070000: sprintf_s(mapname, 999, "Orbis: Cloud Park V"); break;
case 200080000: sprintf_s(mapname, 999, "Orbis: Cloud Park VI"); break;
case 200080100: sprintf_s(mapname, 999, "Orbis: Entrance to Orbis Tower"); break;
case 200080101: sprintf_s(mapname, 999, "Orbis: The Unknown Tower"); break;
case 200080200: sprintf_s(mapname, 999, "Orbis: Orbis Tower <20th Floor>"); break;
case 200080300: sprintf_s(mapname, 999, "Orbis: Orbis Tower <19th Floor>"); break;
case 200080400: sprintf_s(mapname, 999, "Orbis: Orbis Tower <18th Floor>"); break;
case 200080500: sprintf_s(mapname, 999, "Orbis: Orbis Tower <17th Floor>"); break;
case 200080600: sprintf_s(mapname, 999, "Orbis: Orbis Tower <16th Floor>"); break;
case 200080700: sprintf_s(mapname, 999, "Orbis: Orbis Tower <15th Floor>"); break;
case 200080800: sprintf_s(mapname, 999, "Orbis: Orbis Tower <14th Floor>"); break;
case 200080900: sprintf_s(mapname, 999, "Orbis: Orbis Tower <13th Floor>"); break;
case 200081000: sprintf_s(mapname, 999, "Orbis: Orbis Tower <12th Floor>"); break;
case 200081100: sprintf_s(mapname, 999, "Orbis: Orbis Tower <11th Floor>"); break;
case 200081200: sprintf_s(mapname, 999, "Orbis: Orbis Tower <10th Floor>"); break;
case 200081201: sprintf_s(mapname, 999, "Orbis: Orbis Tower"); break;
case 200081300: sprintf_s(mapname, 999, "Orbis: Orbis Tower <9th Floor>"); break;
case 200081400: sprintf_s(mapname, 999, "Orbis: Orbis Tower <8th Floor>"); break;
case 200081500: sprintf_s(mapname, 999, "Orbis: Orbis Tower <7th Floor>"); break;
case 200081600: sprintf_s(mapname, 999, "Orbis: Orbis Tower <6th Floor>"); break;
case 200081700: sprintf_s(mapname, 999, "Orbis: Orbis Tower <5th Floor>"); break;
case 200081800: sprintf_s(mapname, 999, "Orbis: Orbis Tower <4th Floor>"); break;
case 200081900: sprintf_s(mapname, 999, "Orbis: Orbis Tower <3rd Floor>"); break;
case 200082000: sprintf_s(mapname, 999, "Orbis: Orbis Tower <2nd Floor>"); break;
case 200082100: sprintf_s(mapname, 999, "Orbis: Orbis Tower <1st Floor>"); break;
case 200082200: sprintf_s(mapname, 999, "Orbis: Orbis Tower"); break;
case 200082300: sprintf_s(mapname, 999, "Orbis: Orbis Tower"); break;
case 200082301: sprintf_s(mapname, 999, "Orbis: Orbis Tower"); break;
case 200090000: sprintf_s(mapname, 999, "During the Ride: To Ellinia"); break;
case 200090001: sprintf_s(mapname, 999, "During the Ride: Cabin"); break;
case 200090010: sprintf_s(mapname, 999, "During the Ride: To Orbis"); break;
case 200090011: sprintf_s(mapname, 999, "During the Ride: Cabin"); break;
case 200090100: sprintf_s(mapname, 999, "On a Voyage: Ludibrium"); break;
case 200090110: sprintf_s(mapname, 999, "On a Voyage: Orbis"); break;
case 200090200: sprintf_s(mapname, 999, "During the Ride: To Leafre"); break;
case 200090210: sprintf_s(mapname, 999, "During the Ride: To Orbis"); break;
case 200090300: sprintf_s(mapname, 999, "During the Ride: To Mu Lung"); break;
case 200090310: sprintf_s(mapname, 999, "During the Ride: To Orbis"); break;
case 209000000: sprintf_s(mapname, 999, "Hidden Street: Happyville"); break;
case 209000001: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000002: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000003: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000004: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000005: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000006: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000007: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000008: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000009: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000010: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000011: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000012: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000013: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000014: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 209000015: sprintf_s(mapname, 999, "Hidden Street: The Hill of Christmas"); break;
case 211000000: sprintf_s(mapname, 999, "El Nath: El Nath"); break;
case 211000001: sprintf_s(mapname, 999, "El Nath: Chief's Residence"); break;
case 211000100: sprintf_s(mapname, 999, "El Nath: El Nath Market"); break;
case 211000101: sprintf_s(mapname, 999, "El Nath: El Nath Weapon Store"); break;
case 211000102: sprintf_s(mapname, 999, "El Nath: El Nath Department Store"); break;
case 211000110: sprintf_s(mapname, 999, "El Nath: Entrance to El Nath Free Market"); break;
case 211000111: sprintf_s(mapname, 999, "El Nath: El Nath Free Market <1>"); break;
case 211000112: sprintf_s(mapname, 999, "El Nath: El Nath Free Market <2>"); break;
case 211000113: sprintf_s(mapname, 999, "El Nath: El Nath Free Market <3>"); break;
case 211000114: sprintf_s(mapname, 999, "El Nath: El Nath Free Market <4>"); break;
case 211000115: sprintf_s(mapname, 999, "El Nath: El Nath Free Market <5>"); break;
case 211000200: sprintf_s(mapname, 999, "El Nath: Snowy Hill"); break;
case 211010000: sprintf_s(mapname, 999, "El Nath: Watch Out for Icy Path I"); break;
case 211020000: sprintf_s(mapname, 999, "El Nath: Watch Out for Icy Path II"); break;
case 211030000: sprintf_s(mapname, 999, "El Nath: Cold Field I"); break;
case 211040000: sprintf_s(mapname, 999, "El Nath: Cold Field II"); break;
case 211040001: sprintf_s(mapname, 999, "Hidden Street: The Crown-Flyer"); break;
case 211040100: sprintf_s(mapname, 999, "El Nath: Ice Valley I"); break;
case 211040200: sprintf_s(mapname, 999, "El Nath: Ice Valley II"); break;
case 211040300: sprintf_s(mapname, 999, "El Nath: Sharp Cliff I"); break;
case 211040400: sprintf_s(mapname, 999, "El Nath: Sharp Cliff II"); break;
case 211040401: sprintf_s(mapname, 999, "Hidden Street: Holy Ground at the Snowfield"); break;
case 211040500: sprintf_s(mapname, 999, "El Nath: Wolf Territory I"); break;
case 211040600: sprintf_s(mapname, 999, "El Nath: Wolf Territory II"); break;
case 211040700: sprintf_s(mapname, 999, "El Nath: Dangerous Cliff"); break;
case 211040800: sprintf_s(mapname, 999, "El Nath: Wolf Territory III"); break;
case 211040900: sprintf_s(mapname, 999, "El Nath: Wolf Territory IV"); break;
case 211041000: sprintf_s(mapname, 999, "El Nath: Wolf Territory V"); break;
case 211041100: sprintf_s(mapname, 999, "El Nath: Forest of Dead Trees I"); break;
case 211041200: sprintf_s(mapname, 999, "El Nath: Forest of Dead Trees II"); break;
case 211041300: sprintf_s(mapname, 999, "El Nath: Forest of Dead Trees III"); break;
case 211041400: sprintf_s(mapname, 999, "El Nath: Forest of Dead Trees IV"); break;
case 211041500: sprintf_s(mapname, 999, "El Nath: Dead Mine I"); break;
case 211041600: sprintf_s(mapname, 999, "El Nath: Dead Mine II"); break;
case 211041700: sprintf_s(mapname, 999, "El Nath: Dead Mine III"); break;
case 211041800: sprintf_s(mapname, 999, "El Nath: Dead Mine IV"); break;
case 211041900: sprintf_s(mapname, 999, "El Nath: The Passage"); break;
case 211042000: sprintf_s(mapname, 999, "El Nath: The Cave of Trial I"); break;
case 211042100: sprintf_s(mapname, 999, "El Nath: The Cave of Trial II"); break;
case 211042101: sprintf_s(mapname, 999, "Hidden Street: Cave Within the Cave"); break;
case 211042200: sprintf_s(mapname, 999, "El Nath: The Cave of Trial III"); break;
case 211042300: sprintf_s(mapname, 999, "El Nath: The Door to Zakum"); break;
case 211042400: sprintf_s(mapname, 999, "El Nath: Entrance to Zakum Altar"); break;
case 211050000: sprintf_s(mapname, 999, "El Nath: Icy Cold Field"); break;
case 220000000: sprintf_s(mapname, 999, "Ludibrium: Ludibrium"); break;
case 220000001: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Weapon Store"); break;
case 220000002: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Pharmacy"); break;
case 220000003: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Plastic Surgery"); break;
case 220000004: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Hair Salon"); break;
case 220000005: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Skin Care"); break;
case 220000006: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Pet Walkway"); break;
case 220000100: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Ticketing Place"); break;
case 220000110: sprintf_s(mapname, 999, "Ludibrium: Station"); break;
case 220000111: sprintf_s(mapname, 999, "Ludibrium: Before the Departure"); break;
case 220000200: sprintf_s(mapname, 999, "Ludibrium: Free Market Entrance"); break;
case 220000201: sprintf_s(mapname, 999, "Ludibrium: Free Market<1>"); break;
case 220000202: sprintf_s(mapname, 999, "Ludibrium: Free Market<2>"); break;
case 220000203: sprintf_s(mapname, 999, "Ludibrium: Free Market<3>"); break;
case 220000204: sprintf_s(mapname, 999, "Ludibrium: Free Market<4>"); break;
case 220000205: sprintf_s(mapname, 999, "Ludibrium: Free Market<5>"); break;
case 220000206: sprintf_s(mapname, 999, "Ludibrium: Free Market<6>"); break;
case 220000207: sprintf_s(mapname, 999, "Ludibrium: Free Market<7>"); break;
case 220000208: sprintf_s(mapname, 999, "Ludibrium: Free Market<8>"); break;
case 220000209: sprintf_s(mapname, 999, "Ludibrium: Free Market<9>"); break;
case 220000300: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Village"); break;
case 220000301: sprintf_s(mapname, 999, "Ludibrium: Korin's House"); break;
case 220000302: sprintf_s(mapname, 999, "Ludibrium: Manager Karl's House"); break;
case 220000303: sprintf_s(mapname, 999, "Ludibrium: Tara and Sarah's House"); break;
case 220000304: sprintf_s(mapname, 999, "Ludibrium: Chloe's House"); break;
case 220000305: sprintf_s(mapname, 999, "Ludibrium: Empty House I"); break;
case 220000306: sprintf_s(mapname, 999, "Ludibrium: Empty House II"); break;
case 220000307: sprintf_s(mapname, 999, "Ludibrium: Mason's House"); break;
case 220000400: sprintf_s(mapname, 999, "Ludibrium: Eos Tower Entrance"); break;
case 220000500: sprintf_s(mapname, 999, "Ludibrium: Helios Tower Entrance"); break;
case 220010000: sprintf_s(mapname, 999, "Ludibrium: Cloud Terrace<5>"); break;
case 220010001: sprintf_s(mapname, 999, "Ludibrium: Cloud Balcony"); break;
case 220010100: sprintf_s(mapname, 999, "Ludibrium: Cloud Terrace<4>"); break;
case 220010200: sprintf_s(mapname, 999, "Ludibrium: Cloud Terrace<3>"); break;
case 220010300: sprintf_s(mapname, 999, "Ludibrium: Cloud Terrace<2>"); break;
case 220010400: sprintf_s(mapname, 999, "Ludibrium: Cloud Terrace<1>"); break;
case 220010500: sprintf_s(mapname, 999, "Ludibrium: Terrace Hall"); break;
case 220010600: sprintf_s(mapname, 999, "Ludibrium: Sky Terrace<1>"); break;
case 220010700: sprintf_s(mapname, 999, "Ludibrium: Sky Terrace<2>"); break;
case 220010800: sprintf_s(mapname, 999, "Ludibrium: Sky Terrace<3>"); break;
case 220010900: sprintf_s(mapname, 999, "Ludibrium: Sky Terrace<4>"); break;
case 220011000: sprintf_s(mapname, 999, "Ludibrium: Sky Terrace<5>"); break;
case 220011001: sprintf_s(mapname, 999, "Ludibrium: Sky Terrace"); break;
case 220020000: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 1"); break;
case 220020100: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 2"); break;
case 220020200: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 3"); break;
case 220020300: sprintf_s(mapname, 999, "Ludibrium: Toy Factory"); break;
case 220020400: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 5"); break;
case 220020500: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 6"); break;
case 220020600: sprintf_s(mapname, 999, "Ludibrium: Toy Factory"); break;
case 220030000: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 1"); break;
case 220030100: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 2"); break;
case 220030200: sprintf_s(mapname, 999, "Ludibrium: Toy Factory"); break;
case 220030300: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 3"); break;
case 220030400: sprintf_s(mapname, 999, "Ludibrium: Toy Factory Zone 4"); break;
case 220040000: sprintf_s(mapname, 999, "Ludibrium: The Path of Time <1>"); break;
case 220040100: sprintf_s(mapname, 999, "Ludibrium: The Path of Time <2>"); break;
case 220040200: sprintf_s(mapname, 999, "Ludibrium: Crossroad of Time"); break;
case 220040300: sprintf_s(mapname, 999, "Ludibrium: The Path of Time <3>"); break;
case 220040400: sprintf_s(mapname, 999, "Ludibrium: The Path of Time <4>"); break;
case 220050000: sprintf_s(mapname, 999, "Ludibrium: Lost Time <1>"); break;
case 220050100: sprintf_s(mapname, 999, "Ludibrium: Whirlpool of Time"); break;
case 220050200: sprintf_s(mapname, 999, "Ludibrium: Lost Time <2>"); break;
case 220050300: sprintf_s(mapname, 999, "Ludibrium: Path of Time"); break;
case 220060000: sprintf_s(mapname, 999, "Ludibrium: Warped Path of Time<1>"); break;
case 220060100: sprintf_s(mapname, 999, "Ludibrium: Warped Path of Time<2>"); break;
case 220060200: sprintf_s(mapname, 999, "Ludibrium: Warped Path of Time<3>"); break;
case 220060201: sprintf_s(mapname, 999, "Hidden Street: Unbalanced Time"); break;
case 220060300: sprintf_s(mapname, 999, "Ludibrium: Warped Path of Time<4>"); break;
case 220060301: sprintf_s(mapname, 999, "Hidden Street: Twisted Time"); break;
case 220060400: sprintf_s(mapname, 999, "Ludibrium: Warped Passage"); break;
case 220070000: sprintf_s(mapname, 999, "Ludibrium: Forgotten Path of Time<1>"); break;
case 220070100: sprintf_s(mapname, 999, "Ludibrium: Forgotten Path of Time<2>"); break;
case 220070200: sprintf_s(mapname, 999, "Ludibrium: Forgotten Path of Time<3>"); break;
case 220070201: sprintf_s(mapname, 999, "Hidden Street: Lost Time"); break;
case 220070300: sprintf_s(mapname, 999, "Ludibrium: Forgotten Path of Time<4>"); break;
case 220070301: sprintf_s(mapname, 999, "Hidden Street: Forbidden Time"); break;
case 220070400: sprintf_s(mapname, 999, "Ludibrium: Forgotten Passage"); break;
case 220080000: sprintf_s(mapname, 999, "Ludibrium: Deep Inside the Clocktower"); break;
case 220080001: sprintf_s(mapname, 999, "Ludibrium: Origin of Clocktower"); break;
case 221000000: sprintf_s(mapname, 999, "Omega Sector: Omega Sector"); break;
case 221000001: sprintf_s(mapname, 999, "Omega Sector: Tunnel"); break;
case 221000100: sprintf_s(mapname, 999, "Omega Sector: HQ"); break;
case 221000200: sprintf_s(mapname, 999, "Omega Sector: Silo"); break;
case 221000300: sprintf_s(mapname, 999, "Omega Sector: Command Center"); break;
case 221000400: sprintf_s(mapname, 999, "Omega Sector: Safety Zone"); break;
case 221020000: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 1st Floor"); break;
case 221020100: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 2nd Floor"); break;
case 221020200: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 3rd Floor"); break;
case 221020300: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 4th Floor"); break;
case 221020400: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 5th Floor"); break;
case 221020500: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 6th Floor"); break;
case 221020600: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 7th Floor"); break;
case 221020700: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 8th Floor"); break;
case 221020701: sprintf_s(mapname, 999, "Hidden Street: Hidden Tower"); break;
case 221020800: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 9th Floor"); break;
case 221020900: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 10th Floor"); break;
case 221021000: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 11th ~ 20th Floor"); break;
case 221021100: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 21st Floor"); break;
case 221021200: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 22nd Floor"); break;
case 221021300: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 23rd Floor"); break;
case 221021400: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 24th Floor"); break;
case 221021500: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 25th Floor"); break;
case 221021600: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 26th ~ 40th Floor"); break;
case 221021700: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 41st Floor"); break;
case 221021800: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 42nd Floor"); break;
case 221021900: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 43rd Floor"); break;
case 221022000: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 44th Floor"); break;
case 221022100: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 45th Floor"); break;
case 221022200: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 46th ~ 55th Floor"); break;
case 221022300: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 56th Floor"); break;
case 221022400: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 57th Floor"); break;
case 221022500: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 58th Floor"); break;
case 221022600: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 59th Floor"); break;
case 221022700: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 60th Floor"); break;
case 221022800: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 61st ~ 70th Floor"); break;
case 221022900: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 71st Floor"); break;
case 221023000: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 72nd Floor"); break;
case 221023100: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 73rd Floor"); break;
case 221023200: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 74th Floor"); break;
case 221023300: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 75th Floor"); break;
case 221023400: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 76th ~ 90th Floor"); break;
case 221023500: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 91st Floor"); break;
case 221023600: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 92nd Floor"); break;
case 221023700: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 93rd Floor"); break;
case 221023800: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 94th Floor"); break;
case 221023900: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 95th Floor"); break;
case 221024000: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 96th Floor"); break;
case 221024100: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 97th Floor"); break;
case 221024200: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 98th Floor"); break;
case 221024300: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 99th Floor"); break;
case 221024400: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 100th Floor"); break;
case 221024500: sprintf_s(mapname, 999, "Ludibrium: Eos Tower 101st Floor"); break;
case 221030000: sprintf_s(mapname, 999, "Omega Sector: Off-Limits"); break;
case 221030100: sprintf_s(mapname, 999, "Omega Sector: Boswell Field I"); break;
case 221030200: sprintf_s(mapname, 999, "Omega Sector: Boswell Field II"); break;
case 221030300: sprintf_s(mapname, 999, "Omega Sector: Boswell Field III"); break;
case 221030301: sprintf_s(mapname, 999, "Hidden Street: Mateon Field"); break;
case 221030400: sprintf_s(mapname, 999, "Omega Sector: Boswell Field IV"); break;
case 221030401: sprintf_s(mapname, 999, "Hidden Street: Plateon Field"); break;
case 221030500: sprintf_s(mapname, 999, "Omega Sector: Boswell Field V"); break;
case 221030501: sprintf_s(mapname, 999, "Hidden Street: Mecateon Field"); break;
case 221030600: sprintf_s(mapname, 999, "Omega Sector: Boswell Field VI"); break;
case 221030601: sprintf_s(mapname, 999, "Hidden Street: Defeat Monsters"); break;
case 221040000: sprintf_s(mapname, 999, "Omega Sector: Kulan Field I"); break;
case 221040100: sprintf_s(mapname, 999, "Omega Sector: Kulan Field II"); break;
case 221040200: sprintf_s(mapname, 999, "Omega Sector: Kulan Field III"); break;
case 221040201: sprintf_s(mapname, 999, "Hidden Street: Barnard Field"); break;
case 221040300: sprintf_s(mapname, 999, "Omega Sector: Kulan Field IV"); break;
case 221040400: sprintf_s(mapname, 999, "Omega Sector: Kulan Field V"); break;
case 221040401: sprintf_s(mapname, 999, "Hidden Street: Entrance to Dogon's HQ"); break;
case 221040402: sprintf_s(mapname, 999, "Hidden Street: Dogon's HQ"); break;
case 222000000: sprintf_s(mapname, 999, "Korean Folk Town: Korean Folk Town"); break;
case 222000001: sprintf_s(mapname, 999, "Korean Folk Town: Pond"); break;
case 222010000: sprintf_s(mapname, 999, "Korean Folk Town: Entrance to Black Mountain"); break;
case 222010001: sprintf_s(mapname, 999, "Korean Folk Town: Black Mountain"); break;
case 222010002: sprintf_s(mapname, 999, "Korean Folk Town: A Small Well"); break;
case 222010100: sprintf_s(mapname, 999, "Korean Folk Town: Around the Pond"); break;
case 222010101: sprintf_s(mapname, 999, "Korean Folk Town: Tiger Forest I"); break;
case 222010102: sprintf_s(mapname, 999, "Korean Folk Town: Tiger Forest II"); break;
case 222010200: sprintf_s(mapname, 999, "Korean Folk Town: Tiger Ridge"); break;
case 222010201: sprintf_s(mapname, 999, "Korean Folk Town: Black Mountain"); break;
case 222010300: sprintf_s(mapname, 999, "Korean Folk Town: Fox Ridge"); break;
case 222010400: sprintf_s(mapname, 999, "Korean Folk Town: Top of Black Mountain"); break;
case 222010401: sprintf_s(mapname, 999, "Hidden Street: Haunted House"); break;
case 222020000: sprintf_s(mapname, 999, "Ludibrium: Helios Tower"); break;
case 222020100: sprintf_s(mapname, 999, "Ludibrium: Helios Tower <2nd Floor>"); break;
case 222020110: sprintf_s(mapname, 999, "Ludibrium: Elevator"); break;
case 222020111: sprintf_s(mapname, 999, "Ludibrium: Elevator"); break;
case 222020200: sprintf_s(mapname, 999, "Ludibrium: Helios Tower <99th Floor>"); break;
case 222020210: sprintf_s(mapname, 999, "Ludibrium: Elevator"); break;
case 222020211: sprintf_s(mapname, 999, "Ludibrium: Elevator"); break;
case 222020300: sprintf_s(mapname, 999, "Ludibrium: Helios Tower (100th Floor)"); break;
case 230000000: sprintf_s(mapname, 999, "Aquarium: Aquarium"); break;
case 230000001: sprintf_s(mapname, 999, "Aquarium: The Center Hall"); break;
case 230000002: sprintf_s(mapname, 999, "Aquarium: Department Store"); break;
case 230000003: sprintf_s(mapname, 999, "Aquarium: Zoo"); break;
case 230010000: sprintf_s(mapname, 999, "Aqua Road: Ocean I.C"); break;
case 230010001: sprintf_s(mapname, 999, "Hidden Street: Penguin's Playground"); break;
case 230010100: sprintf_s(mapname, 999, "Aqua Road: Crystal Gorge"); break;
case 230010200: sprintf_s(mapname, 999, "Aqua Road: Red Coral Forest"); break;
case 230010201: sprintf_s(mapname, 999, "Aqua Road: Snowy Whale's Island"); break;
case 230010300: sprintf_s(mapname, 999, "Aqua Road: Turban Shell Hill"); break;
case 230010400: sprintf_s(mapname, 999, "Aqua Road: Forked Road : West Sea"); break;
case 230020000: sprintf_s(mapname, 999, "Aqua Road: Forked Road : East Sea"); break;
case 230020100: sprintf_s(mapname, 999, "Aqua Road: The Seaweed Tower"); break;
case 230020101: sprintf_s(mapname, 999, "Hidden Street: The Hidden Town"); break;
case 230020200: sprintf_s(mapname, 999, "Aqua Road: Sand Castle Playground"); break;
case 230020201: sprintf_s(mapname, 999, "Aqua Road: Two Palm Trees"); break;
case 230020300: sprintf_s(mapname, 999, "Aqua Road: Big Fish Valley"); break;
case 230030000: sprintf_s(mapname, 999, "Aqua Road: Blue Seaweed Road"); break;
case 230030001: sprintf_s(mapname, 999, "Hidden Street: Fish Resting Spot"); break;
case 230030100: sprintf_s(mapname, 999, "Aqua Road: Mushroom Coral Hill"); break;
case 230030101: sprintf_s(mapname, 999, "Aqua Road: Tae Gong's Ferry"); break;
case 230030200: sprintf_s(mapname, 999, "Aqua Road: The Sharp Unknown"); break;
case 230040000: sprintf_s(mapname, 999, "Aqua Road: Deep Sea Gorge I"); break;
case 230040001: sprintf_s(mapname, 999, "Aqua Road: Carta's Cave"); break;
case 230040100: sprintf_s(mapname, 999, "Aqua Road: Deep Sea Gorge II"); break;
case 230040200: sprintf_s(mapname, 999, "Aqua Road: Dangerous Sea Gorge I"); break;
case 230040300: sprintf_s(mapname, 999, "Aqua Road: Dangerous Sea Gorge II"); break;
case 230040301: sprintf_s(mapname, 999, "Aqua Road: A Small Cave"); break;
case 230040400: sprintf_s(mapname, 999, "Aqua Road: The Grave of a Wrecked Ship"); break;
case 230040401: sprintf_s(mapname, 999, "Aqua Road: A Small Wrecked Ship"); break;
case 230040410: sprintf_s(mapname, 999, "Aqua Road: The Dangerous Cave"); break;
case 230040420: sprintf_s(mapname, 999, "Aqua Road: The Cave of Pianus"); break;
case 240000000: sprintf_s(mapname, 999, "Leafre: Leafre"); break;
case 240000001: sprintf_s(mapname, 999, "Leafre: Chief's House"); break;
case 240000002: sprintf_s(mapname, 999, "Leafre: Department Store"); break;
case 240000003: sprintf_s(mapname, 999, "Leafre: Yaku's House"); break;
case 240000004: sprintf_s(mapname, 999, "Leafre: Ito's House"); break;
case 240000005: sprintf_s(mapname, 999, "Leafre: Kumo's House"); break;
case 240000006: sprintf_s(mapname, 999, "Leafre: Pam's House"); break;
case 240000100: sprintf_s(mapname, 999, "Leafre: Leafre Ticketing Booth"); break;
case 240000110: sprintf_s(mapname, 999, "Leafre: Cabin"); break;
case 240000111: sprintf_s(mapname, 999, "Leafre: Before Takeoff"); break;
case 240010000: sprintf_s(mapname, 999, "Leafre: West Leafre Forest"); break;
case 240010100: sprintf_s(mapname, 999, "Leafre: Minar Forest : West Border"); break;
case 240010101: sprintf_s(mapname, 999, "Leafre: Peach Monkey Forest"); break;
case 240010200: sprintf_s(mapname, 999, "Leafre: Cranky Forest"); break;
case 240010300: sprintf_s(mapname, 999, "Leafre: Steep Hill"); break;
case 240010400: sprintf_s(mapname, 999, "Leafre: Forest : Crossroad"); break;
case 240010500: sprintf_s(mapname, 999, "Leafre: Valley of the Antelope"); break;
case 240010501: sprintf_s(mapname, 999, "Leafre: Forest of the Priest"); break;
case 240010600: sprintf_s(mapname, 999, "Leafre: Sky Nest II"); break;
case 240010700: sprintf_s(mapname, 999, "Leafre: Sky Nest I"); break;
case 240010800: sprintf_s(mapname, 999, "Leafre: Entrance to Sky Nest"); break;
case 240010900: sprintf_s(mapname, 999, "Leafre: Minar Forest : East Border"); break;
case 240010901: sprintf_s(mapname, 999, "Leafre: Beetle Forest"); break;
case 240011000: sprintf_s(mapname, 999, "Leafre: Leafre : East Forest"); break;
case 240020000: sprintf_s(mapname, 999, "Leafre: The Area of Red Kentaurus"); break;
case 240020100: sprintf_s(mapname, 999, "Leafre: Battlefield of Fire and Darkness"); break;
case 240020101: sprintf_s(mapname, 999, "Leafre: Griffey Forest"); break;
case 240020102: sprintf_s(mapname, 999, "Leafre: Griffey Forest"); break;
case 240020200: sprintf_s(mapname, 999, "Leafre: The Area of Black Kentaurus"); break;
case 240020300: sprintf_s(mapname, 999, "Leafre: Battlefield of Water and Darkness"); break;
case 240020400: sprintf_s(mapname, 999, "Leafre: The Area of Blue Kentaurus"); break;
case 240020401: sprintf_s(mapname, 999, "Leafre: Manon's Forest"); break;
case 240020402: sprintf_s(mapname, 999, "Leafre: Manon's Forest"); break;
case 240020500: sprintf_s(mapname, 999, "Leafre: Battlefield of Fire and Water"); break;
case 240030000: sprintf_s(mapname, 999, "Leafre: Entrance to Dragon Forest"); break;
case 240030100: sprintf_s(mapname, 999, "Leafre: Dragon Forest I"); break;
case 240030101: sprintf_s(mapname, 999, "Leafre: The Burning Forest"); break;
case 240030102: sprintf_s(mapname, 999, "Leafre: The Forest That Disappeared"); break;
case 240030103: sprintf_s(mapname, 999, "Hidden Street: The Hidden Dragon Tomb I"); break;
case 240030104: sprintf_s(mapname, 999, "Hidden Street: The Hidden Dragon Tomb II"); break;
case 240030200: sprintf_s(mapname, 999, "Leafre: Dragon Forest II"); break;
case 240030300: sprintf_s(mapname, 999, "Leafre: Dragon Forest III"); break;
case 240040000: sprintf_s(mapname, 999, "Leafre: The Dragon Canyon"); break;
case 240040100: sprintf_s(mapname, 999, "Leafre: Canyon : Crossroad"); break;
case 240040200: sprintf_s(mapname, 999, "Leafre: Canyon : East Road"); break;
case 240040210: sprintf_s(mapname, 999, "Hidden Street: Blue Wyvern's Nest"); break;
case 240040300: sprintf_s(mapname, 999, "Leafre: Canyon : West Road"); break;
case 240040310: sprintf_s(mapname, 999, "Hidden Street: Red Wyvern's Nest"); break;
case 240040400: sprintf_s(mapname, 999, "Leafre: Wyvern Canyon"); break;
case 240040500: sprintf_s(mapname, 999, "Leafre: Entrance to Dragon Nest"); break;
case 240040510: sprintf_s(mapname, 999, "Leafre: Nest of a Dead Dragon"); break;
case 240040511: sprintf_s(mapname, 999, "Leafre: The Dragon Nest Left Behind"); break;
case 240040520: sprintf_s(mapname, 999, "Leafre: Destroyed Dragon Nest"); break;
case 240040521: sprintf_s(mapname, 999, "Leafre: Dangerous Dragon Nest"); break;
case 240040600: sprintf_s(mapname, 999, "Leafre: Peak of the Big Nest"); break;
case 240040610: sprintf_s(mapname, 999, "Leafre: Below the Dangerous Nest"); break;
case 240040611: sprintf_s(mapname, 999, "Leafre: Nine Spirit's Nest"); break;
case 240040700: sprintf_s(mapname, 999, "Leafre: Cave of Life - Entrance"); break;
case 240050000: sprintf_s(mapname, 999, "Cave of Life: Cave Entrance"); break;
case 240050100: sprintf_s(mapname, 999, "Cave of Life: Room of Maze"); break;
case 240050101: sprintf_s(mapname, 999, "Cave of Life: 1st Room of Maze"); break;
case 240050102: sprintf_s(mapname, 999, "Cave of Life: 2nd Room of Maze"); break;
case 240050103: sprintf_s(mapname, 999, "Cave of Life: 3rd Room of Maze"); break;
case 240050104: sprintf_s(mapname, 999, "Cave of Life: 4th Room of Maze"); break;
case 240050105: sprintf_s(mapname, 999, "Cave of Life: 5th Room of Maze"); break;
case 240050200: sprintf_s(mapname, 999, "Cave of Life: Cave of Choice"); break;
case 240050300: sprintf_s(mapname, 999, "Cave of Life: Cave of Light"); break;
case 240050310: sprintf_s(mapname, 999, "Cave of Life: Cave of Darkness"); break;
case 240050400: sprintf_s(mapname, 999, "Cave of Life: Entrance to Horned Tail's Cave"); break;
case 240050500: sprintf_s(mapname, 999, "Cave of Life: Cave Exit"); break;
case 240050600: sprintf_s(mapname, 999, "Cave of Life: Cave : The Road in Between"); break;
case 240060000: sprintf_s(mapname, 999, "Cave of Life: The Cave of Trial I"); break;
case 240060100: sprintf_s(mapname, 999, "Cave of Life: The Cave of Trial II"); break;
case 240060200: sprintf_s(mapname, 999, "Cave of Life: Horned Tail's Cave"); break;
case 250000000: sprintf_s(mapname, 999, "Mu Lung: Mu Lung"); break;
case 250000001: sprintf_s(mapname, 999, "Mu Lung: Tae Sang's House"); break;
case 250000002: sprintf_s(mapname, 999, "Mu Lung: Mu Lung Department Store"); break;
case 250000003: sprintf_s(mapname, 999, "Mu Lung: Mu Lung Hair Salon"); break;
case 250000100: sprintf_s(mapname, 999, "Mu Lung: Mu Lung Temple"); break;
case 250010000: sprintf_s(mapname, 999, "Mu Lung: Entrance to Sky Forest"); break;
case 250010100: sprintf_s(mapname, 999, "Mu Lung: Sky Forest : The Train"); break;
case 250010200: sprintf_s(mapname, 999, "Mu Lung: Deep in the Sky Forest"); break;
case 250010300: sprintf_s(mapname, 999, "Mu Lung: Snake Area"); break;
case 250010301: sprintf_s(mapname, 999, "Mu Lung: Wild Bear Area 1"); break;
case 250010302: sprintf_s(mapname, 999, "Mu Lung: Wild Bear Area 2"); break;
case 250010303: sprintf_s(mapname, 999, "Mu Lung: Wild Bear Area 3"); break;
case 250010400: sprintf_s(mapname, 999, "Mu Lung: Where the Sky Forest Ends"); break;
case 250010500: sprintf_s(mapname, 999, "Mu Lung: Peach Farm1"); break;
case 250010501: sprintf_s(mapname, 999, "Mu Lung: Foggy Forest"); break;
case 250010502: sprintf_s(mapname, 999, "Mu Lung: Virtuous Forest"); break;
case 250010503: sprintf_s(mapname, 999, "Mu Lung: Goblin Forest 1"); break;
case 250010504: sprintf_s(mapname, 999, "Mu Lung: Goblin Forest 2"); break;
case 250010600: sprintf_s(mapname, 999, "Mu Lung: Peach Farm 2"); break;
case 250010700: sprintf_s(mapname, 999, "Mu Lung: Peach Farm 3"); break;
case 250020000: sprintf_s(mapname, 999, "Mu Lung: Practice Field : Beginner"); break;
case 250020100: sprintf_s(mapname, 999, "Mu Lung: Practice Field : Easy Level"); break;
case 250020200: sprintf_s(mapname, 999, "Mu Lung: Practice Field : Normal Level"); break;
case 250020300: sprintf_s(mapname, 999, "Mu Lung: Practice Field : Advanced Level"); break;
case 251000000: sprintf_s(mapname, 999, "Herb Town: Herb Town"); break;
case 251000100: sprintf_s(mapname, 999, "Herb Town: The Pier near Sea"); break;
case 251010000: sprintf_s(mapname, 999, "Herb Town: 10-Year-Old Herb Garden"); break;
case 251010100: sprintf_s(mapname, 999, "Herb Town: 50-Year-Old Herb Garden"); break;
case 251010101: sprintf_s(mapname, 999, "Herb Town: 60-Year-Old Herb Garden"); break;
case 251010102: sprintf_s(mapname, 999, "Herb Town: 80-Year-Old Herb Garden"); break;
case 251010200: sprintf_s(mapname, 999, "Herb Town: 100-Year-Old Herb Garden"); break;
case 251010300: sprintf_s(mapname, 999, "Herb Town: Bellflower Valley"); break;
case 251010400: sprintf_s(mapname, 999, "Herb Town: Old Swamp"); break;
case 251010401: sprintf_s(mapname, 999, "Herb Town: Red-Nose Pirate Den 1"); break;
case 251010402: sprintf_s(mapname, 999, "Herb Town: Red-Nose Pirate Den 2"); break;
case 251010403: sprintf_s(mapname, 999, "Herb Town: Red-Nose Pirate Den 3"); break;
case 251010404: sprintf_s(mapname, 999, "Herb Town: Over the Pirate Ship"); break;
case 251010500: sprintf_s(mapname, 999, "Herb Town: Isolated Swamp"); break;
case 280010000: sprintf_s(mapname, 999, "Adobis's Mission I: Unknown Dead Mine"); break;
case 280010010: sprintf_s(mapname, 999, "Adobis's Mission I: Area 1-1"); break;
case 280010011: sprintf_s(mapname, 999, "Adobis's Mission I: Area 1-2"); break;
case 280010020: sprintf_s(mapname, 999, "Adobis's Mission I: Area 2-1"); break;
case 280010030: sprintf_s(mapname, 999, "Adobis's Mission I: Area 3-1"); break;
case 280010031: sprintf_s(mapname, 999, "Adobis's Mission I: Area 3-2"); break;
case 280010040: sprintf_s(mapname, 999, "Adobis's Mission I: Area 4-1"); break;
case 280010041: sprintf_s(mapname, 999, "Adobis's Mission I: Area 4-2"); break;
case 280010050: sprintf_s(mapname, 999, "Adobis's Mission I: Area 5-1"); break;
case 280010060: sprintf_s(mapname, 999, "Adobis's Mission I: Area 6-1"); break;
case 280010070: sprintf_s(mapname, 999, "Adobis's Mission I: Area 7-1"); break;
case 280010071: sprintf_s(mapname, 999, "Adobis's Mission I: Area 7-2"); break;
case 280010080: sprintf_s(mapname, 999, "Adobis's Mission I: Area 8-1"); break;
case 280010081: sprintf_s(mapname, 999, "Adobis's Mission I: Area 8-2"); break;
case 280010090: sprintf_s(mapname, 999, "Adobis's Mission I: Area 9-1"); break;
case 280010091: sprintf_s(mapname, 999, "Adobis's Mission I: Area 9-2"); break;
case 280010100: sprintf_s(mapname, 999, "Adobis's Mission I: Area 10-1"); break;
case 280010101: sprintf_s(mapname, 999, "Adobis's Mission I: Area 10-2"); break;
case 280010110: sprintf_s(mapname, 999, "Adobis's Mission I: Area 11-1"); break;
case 280010120: sprintf_s(mapname, 999, "Adobis's Mission I: Area 12-1"); break;
case 280010130: sprintf_s(mapname, 999, "Adobis's Mission I: Area 13-1"); break;
case 280010140: sprintf_s(mapname, 999, "Adobis's Mission I: Area 14-1"); break;
case 280010150: sprintf_s(mapname, 999, "Adobis's Mission I: Area 15-1"); break;
case 280011000: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16"); break;
case 280011001: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16-1"); break;
case 280011002: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16-2"); break;
case 280011003: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16-3"); break;
case 280011004: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16-4"); break;
case 280011005: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16-5"); break;
case 280011006: sprintf_s(mapname, 999, "Adobis's Mission I: Area 16-6"); break;
case 280020000: sprintf_s(mapname, 999, "Adobis's Mission I: Breath of Lava"); break;
case 280020001: sprintf_s(mapname, 999, "Adobis's Mission I: Breath of Lava"); break;
case 280030000: sprintf_s(mapname, 999, "Last Mission: Zakum's Altar"); break;
case 280090000: sprintf_s(mapname, 999, "Adobis's Mission I: The Room of Tragedy"); break;
case 209080000: sprintf_s(mapname, 999, "Hidden Street: Extra Frosty Snow Zone"); break;
case 211040101: sprintf_s(mapname, 999, "Hidden Street: Valley of Snowman"); break;
case 250010304: sprintf_s(mapname, 999, "Mu Lung: Territory of Wandering Bear"); break;
case 600000000: sprintf_s(mapname, 999, "New Leaf City Town Street: New Leaf City - Town Center"); break;
case 600000001: sprintf_s(mapname, 999, "New Leaf City Town Street: NLC Mall"); break;
case 600010000: sprintf_s(mapname, 999, "Badlands: Urban Underground"); break;
case 600010001: sprintf_s(mapname, 999, "New Leaf City Town Street: NLC Subway Station"); break;
case 600010002: sprintf_s(mapname, 999, "New Leaf City Town Street: Waiting Room(From NLC to KC)"); break;
case 600010003: sprintf_s(mapname, 999, "Hidden Street: Inside Subway(From NLC to KC)"); break;
case 600010004: sprintf_s(mapname, 999, "Kerning City Town Street: Waiting Room(From KC to NLC)"); break;
case 600010005: sprintf_s(mapname, 999, "Hidden Street: Inside Subway(From KC to NLC)"); break;
case 600010100: sprintf_s(mapname, 999, "Masteria: Jungle Clearing"); break;
case 600010200: sprintf_s(mapname, 999, "Masteria: Krakian Jungle Basin"); break;
case 600010300: sprintf_s(mapname, 999, "Masteria: Jungle Valley"); break;
case 600010400: sprintf_s(mapname, 999, "Masteria: Mountain Slopes"); break;
case 600010500: sprintf_s(mapname, 999, "Masteria: Mountain Cliffs"); break;
case 600010600: sprintf_s(mapname, 999, "Masteria: Highlands"); break;
case 600020000: sprintf_s(mapname, 999, "Bigger Ben: Lobby"); break;
case 600020100: sprintf_s(mapname, 999, "MesoGears: Deity Room"); break;
case 600020200: sprintf_s(mapname, 999, "MesoGears: Soul Corridor"); break;
case 600020300: sprintf_s(mapname, 999, "MesoGears: Wolf Spider Cavern"); break;
case 600020400: sprintf_s(mapname, 999, "MesoGears: Fire Chamber"); break;
case 600020500: sprintf_s(mapname, 999, "MesoGears: Ice Chamber"); break;
case 600020600: sprintf_s(mapname, 999, "MesoGears: Enigma Chamber"); break;
case 670000100: sprintf_s(mapname, 999, "Hidden Street: Purplewood Forest 1"); break;
case 670000200: sprintf_s(mapname, 999, "Hidden Street: Purplewood Forest 2"); break;
case 670010000: sprintf_s(mapname, 999, "Hidden Street: Amos' Training Ground"); break;
case 670010100: sprintf_s(mapname, 999, "Hidden Street: Entrance of Amorian Challenge"); break;
case 670010200: sprintf_s(mapname, 999, "Hidden Street: Stage 1 - Magik Mirror"); break;
case 670010300: sprintf_s(mapname, 999, "Hidden Street: Stage 2 - Heart Strings"); break;
case 670010301: sprintf_s(mapname, 999, "Hidden Street: Stage 2 - Heart Strings"); break;
case 670010302: sprintf_s(mapname, 999, "Hidden Street: Stage 2 - Heart Strings"); break;
case 670010400: sprintf_s(mapname, 999, "Hidden Street: Stage 3 - Twisted Switcher"); break;
case 670010500: sprintf_s(mapname, 999, "Hidden Street: Stage 4 - Last Man Standing"); break;
case 670010600: sprintf_s(mapname, 999, "Hidden Street: Stage 5 - Fluttering Hearts"); break;
case 670010700: sprintf_s(mapname, 999, "Hidden Street: Stage 6 - Love Hurts"); break;
case 670010750: sprintf_s(mapname, 999, "Hidden Street: Stage 7 - Amos' Vault for Couples"); break;
case 670010800: sprintf_s(mapname, 999, "Hidden Street: Stage 7 - Amos' Vault"); break;
case 670011000: sprintf_s(mapname, 999, "Hidden Street: Exit"); break;
case 680000000: sprintf_s(mapname, 999, "Amoria: Amoria"); break;
case 680000001: sprintf_s(mapname, 999, "Amoria: Amoria Wedding Shop"); break;
case 680000002: sprintf_s(mapname, 999, "Amoria: Amoria Hair Salon"); break;
case 680000003: sprintf_s(mapname, 999, "Amoria: Amoria Plastic Surgery"); break;
case 680000004: sprintf_s(mapname, 999, "Amoria: Meet the Parents"); break;
case 680000100: sprintf_s(mapname, 999, "Amoria: White Wedding Lounge"); break;
case 680000110: sprintf_s(mapname, 999, "Amoria: White Wedding Altar"); break;
case 680000200: sprintf_s(mapname, 999, "Amoria: Saint Maple Lounge"); break;
case 680000210: sprintf_s(mapname, 999, "Amoria: Saint Maple Altar"); break;
case 680000300: sprintf_s(mapname, 999, "Amoria: Cherished Visage Photos"); break;
case 680000400: sprintf_s(mapname, 999, "Amoria: Untamed Hearts Hunting Ground"); break;
case 680000401: sprintf_s(mapname, 999, "Amoria: The Love Pinata"); break;
case 680000500: sprintf_s(mapname, 999, "Amoria: Wedding Exit map"); break;
case 680010000: sprintf_s(mapname, 999, "Hidden Street: Purple Plains 1"); break;
case 680010100: sprintf_s(mapname, 999, "Hidden Street: Purple Plains 2"); break;
case 681000000: sprintf_s(mapname, 999, "Hidden Street: Shalom Temple"); break;
case 800000000: sprintf_s(mapname, 999, "Zipangu: Mushroom Shrine"); break;
case 800010000: sprintf_s(mapname, 999, "Zipangu: Mushroom Forest"); break;
case 800010100: sprintf_s(mapname, 999, "Zipangu: Hall of Mushroom"); break;
case 800010001: sprintf_s(mapname, 999, "Zipangu: The Mountain of Cloud Fox"); break;
case 800020000: sprintf_s(mapname, 999, "Zipangu: Crow Forest"); break;
case 800020101: sprintf_s(mapname, 999, "Zipangu: Crow Forest 2"); break;
case 800020110: sprintf_s(mapname, 999, "Zipangu: A Night in the Forest"); break;
case 800020120: sprintf_s(mapname, 999, "Zipangu: Vanished Village"); break;
case 800020130: sprintf_s(mapname, 999, "Zipangu: Encounter with the Buddha"); break;
case 800020100: sprintf_s(mapname, 999, "Zipangu: Road to Cemetery"); break;
case 800020200: sprintf_s(mapname, 999, "Zipangu: A Desolate Cemetery"); break;
case 800020300: sprintf_s(mapname, 999, "Zipangu: Cemetery Full of Ghosts"); break;
case 800020400: sprintf_s(mapname, 999, "Zipangu: WanWan Spa of Hell"); break;
case 800030000: sprintf_s(mapname, 999, "Zipangu: Forest of Animals"); break;
case 801000000: sprintf_s(mapname, 999, "Zipangu: Showa Town"); break;
case 801000100: sprintf_s(mapname, 999, "Zipangu: Locker Room (M)"); break;
case 809000101: sprintf_s(mapname, 999, "Zipangu: Spa (M)"); break;
case 801000110: sprintf_s(mapname, 999, "Zipangu: The Secret Spa (M)"); break;
case 801000200: sprintf_s(mapname, 999, "Zipangu: Locker Room (F)"); break;
case 801000210: sprintf_s(mapname, 999, "Zipangu: The Secret Spa (F)"); break;
case 809000201: sprintf_s(mapname, 999, "Zipangu: Spa (F)"); break;
case 801000001: sprintf_s(mapname, 999, "Zipangu: Hair Salon"); break;
case 801000002: sprintf_s(mapname, 999, "Zipangu: Plastic Surgery"); break;
case 801000300: sprintf_s(mapname, 999, "Zipangu: Showa Street Market"); break;
case 801010000: sprintf_s(mapname, 999, "Zipangu: Showa Street 1"); break;
case 801020000: sprintf_s(mapname, 999, "Zipangu: Showa Street 2"); break;
case 801030000: sprintf_s(mapname, 999, "Zipangu: Showa Street 3"); break;
case 801040000: sprintf_s(mapname, 999, "Zipangu: Near the Hideout"); break;
case 801040001: sprintf_s(mapname, 999, "Zipangu: Parking Lot"); break;
case 801040002: sprintf_s(mapname, 999, "Zipangu: Finance of Flaming Raccoon"); break;
case 801040003: sprintf_s(mapname, 999, "Zipangu: Parlor"); break;
case 801040004: sprintf_s(mapname, 999, "Zipangu: Armory"); break;
case 801040100: sprintf_s(mapname, 999, "Zipangu: The Nightmarish Last Days"); break;
case 801040101: sprintf_s(mapname, 999, "Zipangu: Near the Hideout (Beautiful Sky)"); break;
case 809010000: sprintf_s(mapname, 999, "Florina Beach: Hinamatsuri"); break;
case 809020000: sprintf_s(mapname, 999, "Zakum Helmet (Upgraded)"); break;
case 809030000: sprintf_s(mapname, 999, "Slot Machine"); break;
case 809050000: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 1"); break;
case 809050001: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 2"); break;
case 809050002: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 3"); break;
case 809050003: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 4"); break;
case 809050004: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 5"); break;
case 809050005: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 6"); break;
case 809050006: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 7"); break;
case 809050007: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 8"); break;
case 809050008: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 9"); break;
case 809050009: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 10"); break;
case 809050010: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 11"); break;
case 809050011: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 12"); break;
case 809050012: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 13"); break;
case 809050013: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 14"); break;
case 809050014: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 15"); break;
case 809050015: sprintf_s(mapname, 999, "Ludibrium: Ludibrium Maze 16"); break;
case 809050016: sprintf_s(mapname, 999, "Ludibrium: Exit of the Maze"); break;
case 809050017: sprintf_s(mapname, 999, "Ludibrium: Exit of the Maze (unfinished)"); break;
case 810000000: sprintf_s(mapname, 999, "Ludibrium: Entrance to Slot Machine Arcade"); break;
case 880000000: sprintf_s(mapname, 999, "WanWan Spa of Hell"); break;
case 881000000: sprintf_s(mapname, 999, "The Pirate Hideout"); break;
case 890000001: sprintf_s(mapname, 999, "?????"); break;
case 809040000: sprintf_s(mapname, 999, "The Survival Challenge (Waiting Room)"); break;
case 809040100: sprintf_s(mapname, 999, "The Survival Challenge"); break;
case 682000000: sprintf_s(mapname, 999, "Phantom Forest: Haunted House"); break;
case 682000001: sprintf_s(mapname, 999, "Phantom Forest: Hollowed Ground"); break;
case 682000100: sprintf_s(mapname, 999, "Haunted House: Foyer"); break;
case 682000200: sprintf_s(mapname, 999, "Haunted House: Ghost Chimney"); break;
case 682000300: sprintf_s(mapname, 999, "Haunted House: Hallway"); break;
case 682000301: sprintf_s(mapname, 999, "Haunted House: Sophilia's Bedroom"); break;
case 682000302: sprintf_s(mapname, 999, "Haunted House: Vanity Room"); break;
case 682000303: sprintf_s(mapname, 999, "Haunted House: Study"); break;
case 682000304: sprintf_s(mapname, 999, "Haunted House: Piano Room"); break;
case 682000305: sprintf_s(mapname, 999, "Haunted House: Toy Room"); break;
case 682000306: sprintf_s(mapname, 999, "Haunted House: Barren Room"); break;
case 682000400: sprintf_s(mapname, 999, "Haunted House: Hallway - Where am I?"); break;
case 682000401: sprintf_s(mapname, 999, "Haunted House: Sophilia's Bedroom"); break;
case 682000402: sprintf_s(mapname, 999, "Haunted House: Vanity Room"); break;
case 682000403: sprintf_s(mapname, 999, "Haunted House: Study"); break;
case 682000404: sprintf_s(mapname, 999, "Haunted House: Piano Room"); break;
case 682000405: sprintf_s(mapname, 999, "Haunted House: Toy Room"); break;
case 682000406: sprintf_s(mapname, 999, "Haunted House: Barren Room"); break;
case 682000500: sprintf_s(mapname, 999, "Haunted House: Hallway - Where are you?"); break;
case 682000501: sprintf_s(mapname, 999, "Haunted House: Sophilia's Bedroom"); break;
case 682000502: sprintf_s(mapname, 999, "Haunted House: Vanity Room"); break;
case 682000503: sprintf_s(mapname, 999, "Haunted House: Study"); break;
case 682000504: sprintf_s(mapname, 999, "Haunted House: Piano Room"); break;
case 682000505: sprintf_s(mapname, 999, "Haunted House: Toy Room"); break;
case 682000506: sprintf_s(mapname, 999, "Haunted House: Barren Room"); break;
case 682000600: sprintf_s(mapname, 999, "Haunted House: Hallway - This Again?"); break;
case 682000601: sprintf_s(mapname, 999, "Haunted House: Sophilia's Bedroom"); break;
case 682000602: sprintf_s(mapname, 999, "Haunted House: Vanity Room"); break;
case 682000603: sprintf_s(mapname, 999, "Haunted House: Study"); break;
case 682000604: sprintf_s(mapname, 999, "Haunted House: Piano Room"); break;
case 682000605: sprintf_s(mapname, 999, "Haunted House: Toy Room"); break;
case 682000606: sprintf_s(mapname, 999, "Haunted House: Barren Room"); break;
case 682000700: sprintf_s(mapname, 999, "Hidden Street: Pumpkin Vault"); break;
case 682000800: sprintf_s(mapname, 999, "Haunted House: Library"); break;
case 682000900: sprintf_s(mapname, 999, "Haunted House: Toy Workshop"); break;
case 900000000: sprintf_s(mapname, 999, "Hidden Street: Utah's Pig Farm"); break;
case 910000000: sprintf_s(mapname, 999, "Hidden Street: Free Market Entrance"); break;
case 910000001: sprintf_s(mapname, 999, "Hidden Street: Free Market<1>"); break;
case 910000002: sprintf_s(mapname, 999, "Hidden Street: Free Market<2>"); break;
case 910000003: sprintf_s(mapname, 999, "Hidden Street: Free Market<3>"); break;
case 910000004: sprintf_s(mapname, 999, "Hidden Street: Free Market<4>"); break;
case 910000005: sprintf_s(mapname, 999, "Hidden Street: Free Market<5>"); break;
case 910000006: sprintf_s(mapname, 999, "Hidden Street: Free Market<6>"); break;
case 910000007: sprintf_s(mapname, 999, "Hidden Street: Free Market<7>"); break;
case 910000008: sprintf_s(mapname, 999, "Hidden Street: Free Market<8>"); break;
case 910000009: sprintf_s(mapname, 999, "Hidden Street: Free Market<9>"); break;
case 910000010: sprintf_s(mapname, 999, "Hidden Street: Free Market<10>"); break;
case 910000011: sprintf_s(mapname, 999, "Hidden Street: Free Market<11>"); break;
case 910000012: sprintf_s(mapname, 999, "Hidden Street: Free Market<12>"); break;
case 910000013: sprintf_s(mapname, 999, "Hidden Street: Free Market<13>"); break;
case 910000014: sprintf_s(mapname, 999, "Hidden Street: Free Market<14>"); break;
case 910000015: sprintf_s(mapname, 999, "Hidden Street: Free Market<15>"); break;
case 910000016: sprintf_s(mapname, 999, "Hidden Street: Free Market<16>"); break;
case 910000017: sprintf_s(mapname, 999, "Hidden Street: Free Market<17>"); break;
case 910000018: sprintf_s(mapname, 999, "Hidden Street: Free Market<18>"); break;
case 910000019: sprintf_s(mapname, 999, "Hidden Street: Free Market<19>"); break;
case 910000020: sprintf_s(mapname, 999, "Hidden Street: Free Market<20>"); break;
case 910000021: sprintf_s(mapname, 999, "Hidden Street: Free Market<21>"); break;
case 910000022: sprintf_s(mapname, 999, "Hidden Street: Free Market<22>"); break;
case 910010000: sprintf_s(mapname, 999, "Hidden Street: Primrose Hill"); break;
case 910010100: sprintf_s(mapname, 999, "Hidden Street: Shortcut"); break;
case 910010200: sprintf_s(mapname, 999, "Hidden Street: Pig Town"); break;
case 910010300: sprintf_s(mapname, 999, "Hidden Street: Back to Town"); break;
case 910010400: sprintf_s(mapname, 999, "Hidden Street: Shortcut"); break;
case 910200000: sprintf_s(mapname, 999, "Hidden Street: Hidden Relic"); break;
case 910200001: sprintf_s(mapname, 999, "Hidden Street: Hidden Relic"); break;
case 910200002: sprintf_s(mapname, 999, "Hidden Street: Hidden Relic"); break;
case 910300000: sprintf_s(mapname, 999, "Hidden Street: Dark Lord's Practice Field"); break;
case 910500000: sprintf_s(mapname, 999, "Hidden Street: Another World : Practice Field"); break;
case 910500100: sprintf_s(mapname, 999, "Hidden Street: Secret Shrine"); break;
case 910500200: sprintf_s(mapname, 999, "Hidden Street: Forgotten Shrine"); break;
case 920010000: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010100: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010200: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010300: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010400: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010500: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010600: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010601: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010602: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010603: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010604: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010700: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010800: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010900: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010910: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010911: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010912: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010920: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010921: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010922: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010930: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010931: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920010932: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920011000: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920011100: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920011200: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 920011300: sprintf_s(mapname, 999, "Hidden Street: Tower of Goddess"); break;
case 921100000: sprintf_s(mapname, 999, "Hidden Street: Heart of Lava"); break;
case 921100100: sprintf_s(mapname, 999, "Hidden Street: Ice Valley"); break;
case 921100200: sprintf_s(mapname, 999, "Hidden Street: Phoenix's Nest"); break;
case 921100210: sprintf_s(mapname, 999, "Hidden Street: Freezer's Nest"); break;
case 921100300: sprintf_s(mapname, 999, "Hidden Street: Protect Tylus"); break;
case 921100301: sprintf_s(mapname, 999, "Hidden Street: Protecting Tylus : Complete"); break;
case 922000000: sprintf_s(mapname, 999, "Hidden Street: Toy Factory"); break;
case 922000009: sprintf_s(mapname, 999, "Hidden Street: Secret Passage"); break;
case 922000010: sprintf_s(mapname, 999, "Hidden Street: Doll's House"); break;
case 922000020: sprintf_s(mapname, 999, "Hidden Street: Secret Factory"); break;
case 922000021: sprintf_s(mapname, 999, "Hidden Street: Secret Factory"); break;
case 922010000: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010100: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010200: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010201: sprintf_s(mapname, 999, "Hidden Street: Tower's Trap"); break;
case 922010300: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010400: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010401: sprintf_s(mapname, 999, "Hidden Street: Darkness in the Tower"); break;
case 922010402: sprintf_s(mapname, 999, "Hidden Street: Darkness in the Tower"); break;
case 922010403: sprintf_s(mapname, 999, "Hidden Street: Darkness in the Tower"); break;
case 922010404: sprintf_s(mapname, 999, "Hidden Street: Darkness in the Tower"); break;
case 922010405: sprintf_s(mapname, 999, "Hidden Street: Darkness in the Tower"); break;
case 922010500: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010501: sprintf_s(mapname, 999, "Hidden Street: Tower's Maze"); break;
case 922010502: sprintf_s(mapname, 999, "Hidden Street: Tower's Maze"); break;
case 922010503: sprintf_s(mapname, 999, "Hidden Street: Tower's Maze"); break;
case 922010504: sprintf_s(mapname, 999, "Hidden Street: Tower's Maze"); break;
case 922010505: sprintf_s(mapname, 999, "Hidden Street: Tower's Maze"); break;
case 922010506: sprintf_s(mapname, 999, "Hidden Street: Tower's Maze"); break;
case 922010600: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010700: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010800: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922010900: sprintf_s(mapname, 999, "Hidden Street: A Crack on the Wall"); break;
case 922011000: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922011100: sprintf_s(mapname, 999, "Hidden Street: Abandoned Tower"); break;
case 922020000: sprintf_s(mapname, 999, "Hidden Street: The Forgotten Darkness"); break;
case 922020100: sprintf_s(mapname, 999, "Hidden Street: Room of Thanatos"); break;
case 922020200: sprintf_s(mapname, 999, "Hidden Street: Hidden Balcony"); break;
case 922200000: sprintf_s(mapname, 999, "Hidden Street: The Area of Wild Hog"); break;
case 923000000: sprintf_s(mapname, 999, "Hidden Street: Warped Dimension"); break;
case 923000100: sprintf_s(mapname, 999, "Hidden Street: Cold Cave"); break;
case 923010000: sprintf_s(mapname, 999, "Hidden Street: Kenta's Breeding Room"); break;
case 923010100: sprintf_s(mapname, 999, "Hidden Street: Path to the Breeding Room"); break;
case 924000000: sprintf_s(mapname, 999, "Hidden Street: On the Way to the Practice Field"); break;
case 924000001: sprintf_s(mapname, 999, "Hidden Street: Moose's Practice Field"); break;
case 924000002: sprintf_s(mapname, 999, "Hidden Street: Exiting the Practice Field"); break;
case 924000100: sprintf_s(mapname, 999, "Hidden Street: The Top of the Sky Nest"); break;
case 925100000: sprintf_s(mapname, 999, "Hidden Street: On the Way to the Pirate Ship"); break;
case 925100100: sprintf_s(mapname, 999, "Hidden Street: Through the Head of the Ship!"); break;
case 925100200: sprintf_s(mapname, 999, "Hidden Street: Through the Deck I"); break;
case 925100201: sprintf_s(mapname, 999, "Hidden Street: The Area of 100yrOld Bellflower I"); break;
case 925100202: sprintf_s(mapname, 999, "Hidden Street: Lord Pirate's Servant I"); break;
case 925100300: sprintf_s(mapname, 999, "Hidden Street: Through the Deck II"); break;
case 925100301: sprintf_s(mapname, 999, "Hidden Street: The Area of 100yrOld Bellflower II"); break;
case 925100302: sprintf_s(mapname, 999, "Hidden Street: Lord Pirate's Servant II"); break;
case 925100400: sprintf_s(mapname, 999, "Hidden Street: Eliminate Pirates!"); break;
case 925100500: sprintf_s(mapname, 999, "Hidden Street: The Captain's Dignity"); break;
case 925100600: sprintf_s(mapname, 999, "Hidden Street: Wu Yang Giving Thanks"); break;
case 925100700: sprintf_s(mapname, 999, "Hidden Street: Pirate Ship On its Way Out"); break;
case 990000000: sprintf_s(mapname, 999, "Sharenian: Excavation Site"); break;
case 990000100: sprintf_s(mapname, 999, "Sharenian: Valley of the Guard"); break;
case 990000200: sprintf_s(mapname, 999, "Sharenian: Entrance to the Remains"); break;
case 990000300: sprintf_s(mapname, 999, "Sharenian: Door to the Sharenian Castle"); break;
case 990000301: sprintf_s(mapname, 999, "Sharenian: Road to the Fortress"); break;
case 990000400: sprintf_s(mapname, 999, "Sharenian: Hall of the Knight"); break;
case 990000401: sprintf_s(mapname, 999, "Sharenian: Middle Path"); break;
case 990000410: sprintf_s(mapname, 999, "Sharenian: Room of Glory"); break;
case 990000420: sprintf_s(mapname, 999, "Sharenian: Room of Courage"); break;
case 990000430: sprintf_s(mapname, 999, "Sharenian: Room of Faith"); break;
case 990000431: sprintf_s(mapname, 999, "Sharenian: Room of Pledge"); break;
case 990000440: sprintf_s(mapname, 999, "Sharenian: Room of Justice"); break;
case 990000500: sprintf_s(mapname, 999, "Sharenian: Fountain of the Wiseman"); break;
case 990000501: sprintf_s(mapname, 999, "Sharenian: Center Banquet"); break;
case 990000502: sprintf_s(mapname, 999, "Sharenian: Wine Cellar"); break;
case 990000600: sprintf_s(mapname, 999, "Sharenian: Underground Waterway"); break;
case 990000610: sprintf_s(mapname, 999, "Sharenian: Waterway Maze"); break;
case 990000611: sprintf_s(mapname, 999, "Sharenian: End of the Maze"); break;
case 990000620: sprintf_s(mapname, 999, "Sharenian: Waterway Maze"); break;
case 990000630: sprintf_s(mapname, 999, "Sharenian: Waterway Maze"); break;
case 990000631: sprintf_s(mapname, 999, "Sharenian: End of the Maze"); break;
case 990000640: sprintf_s(mapname, 999, "Sharenian: Waterway Maze"); break;
case 990000641: sprintf_s(mapname, 999, "Sharenian: End of the Maze"); break;
case 990000700: sprintf_s(mapname, 999, "Sharenian: Sharen III's Grave"); break;
case 990000800: sprintf_s(mapname, 999, "Sharenian: King's Corridor"); break;
case 990000900: sprintf_s(mapname, 999, "Sharenian: Ergoth's Throne"); break;
case 990001000: sprintf_s(mapname, 999, "Sharenian: Sharen III's Treasure Wearhouse"); break;
case 990001100: sprintf_s(mapname, 999, "Sharenian: Returning Path"); break;
case 990001101: sprintf_s(mapname, 999, "Sharenian: Guild Union Camp"); break;
}
sprintf_s(text, 999, "%s is currently located at \"%s\"", iter->second->getName(), mapname);
PlayersPacket::ShowNotice(player, text, 5);
break;
}
} else
PlayersPacket::ShowNotice(player, "You have entered insufficient parameters.", 5);
}
else if(strcmp(command, "potions") == 0){
Shops::showShop(player, 9999981);
printf ("GM_%s has used 'Potions'.\n", player->getName());
}
else if(strcmp(command, "online") == 0) {
PlayersPacket::showNoticeOneChar("Characters online: ", 5, player);
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
PlayersPacket::showNoticeOneChar(iter->second->getName(), 5, player);
printf ("GM_%s checked 'Online' Players.\n", player->getName());
}
else if(strcmp(command, "eventslime") == 0){
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
Mobs::spawnMob(player, 9400202);
printf ("GM_%s did Nx Slime Event.\n", player->getName());
}
/* This code goes underneath all those else if statements for the other commands, such as "!zakum" */
/* Added by MooMoo */
/* If you have more than 10 users on at a time, make sure your char buffer is larger to accomodate. In english: If you have more users, change ALL the 200's in this section to a larger value.[You will need to change 5 occurances].! */
else if(strcmp(command, "usersonline") == 0){
char chrUsersOnline[200] = ""; //1
strcat_s(chrUsersOnline, 200, "Users Online: ( "); //2
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++){
strcat_s(chrUsersOnline, 200, iter->second->getName()); //3
strcat_s(chrUsersOnline, 200, " "); } //4
strcat_s(chrUsersOnline,200,")"); //5
PlayersPacket::ShowNotice(player, chrUsersOnline, 5);
printf("%s has used the 'usersonline' command\n",player->getName());
}/* End Added by MooMoo */
else if(strcmp(command, "shopcoupons") == 0){
Shops::showShop(player, 9999996);
printf ("%s has used the 'shopcoupons' command\n", player->getName());
}
else if(strcmp(command, "help") == 0){
char text[999];
sprintf_s(text, 999, "%s need Help from GM",player->getName() );
PlayersPacket::showMassage(text, 0);
printf ("%s has used the 'help' command\n", player->getName());
}
else if(strcmp(command, "emote") == 0){
Mobs::spawnMob(player, 9400566);
printf ("GM_%s did Emote Event.\n", player->getName());
}
// Whisper
else if(strcmp(command, "say") == 0){
if(strlen(next_token) > 0) {
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0) {
if(strlen(next_token) > 0) {
char message[999];
sprintf_s(message, 999, "[%s] says: %s", player->getName(), next_token);
PlayersPacket::ShowNotice(player, message, 5);
} else
PlayersPacket::ShowNotice(player, "Please specify a message.", 5);
}
} else
PlayersPacket::ShowNotice(player, "Please specify a person to talk to.", 5);
printf ("%s has used the 'say' command\n", player->getName());
}
else if(strcmp(command, "dc") == 0){
char *name = strtok_s(NULL, " ",&next_token);
if (strlen(name) > 0)
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++)
if (strcmp(iter->second->getName(), name) == 0) {
int mapid;
mapid = iter->second->getMap();
Maps::changeMap(iter->second , 99999999, 0);
Maps::changeMap(iter->second , mapid, 0);
break;
printf ("GM_%s has Disconnected a Player.\n", player->getName());
}
}
else if(strcmp(command, "save") == 0) {
player->save();
PlayersPacket::showMassage("You have saved your progress successfully", 5);
printf ("%s has saved\n", player->getName());
}
else if(strcmp(command, "header") == 0){
if(strlen(next_token) > 0){
Server::changeScrollingHeader(next_token);
}
else{
Server::disableScrollingHeader();
printf ("GM_%s has changed the Header Notice.\n", player->getName());
}
}
return;
}
PlayersPacket::showChat(player, Maps::info[player->getMap()].Players, chat);
Players::Log(player->getName(), chat);
}
void Players::damagePlayer(Player* player, unsigned char* packet){
int damage = getInt(packet+5);
int mobid = getInt(packet+13);
Mob* mob = NULL;
for(unsigned int i=0; i<Mobs::mobs[player->getMap()].size(); i++)
if(Mobs::mobs[player->getMap()][i]->getID() == mobid){
mob = Mobs::mobs[player->getMap()][i];
break;
}
if (player->getMG() == false) {player->setHP(player->getHP()-damage); }
else {
unsigned short mp = player->getMP();
unsigned short hp = player->getHP();
unsigned short reduc = Skills::skills[2001002][player->skills->getSkillLevel(2001002)].x;
int mpdamage = ((damage * reduc) / 100);
int hpdamage = damage - mpdamage;
if (mpdamage >= mp) {
player->setMP(0);
player->setHP(hp - (hpdamage + (mpdamage - mp)));
}
if (mpdamage < mp) {
player->setMP(mp - mpdamage);
player->setHP(hp - hpdamage);
}
}
void Players::healPlayer(Player* player, unsigned char* packet){
player->setHP(player->getHP()+getShort(packet+4));
player->setMP(player->getMP()+getShort(packet+6));
}
void Players::getPlayerInfo(Player* player, unsigned char* packet){
PlayersPacket::showInfo(player, players[getInt(packet+4)]);
}
void Players::Log(char* player, char* Logtext){
ofstream Log; Log.open ("Log.txt", ios::out | ios::app);
Log << "["; Log.write(player, strlen(player));
Log << "] "; Log.write(Logtext, strlen(Logtext));
Log << "\n"; Log.close();
}
void Players::commandHandler(Player* player, unsigned char* packet){
char todo = packet[0];
if(todo == 0x06){
char name[20];
char chat[91];
int namesize = getShort(packet+1);
getString(packet+3, namesize, name);
int chatsize = getShort(packet+3+namesize);
getString(packet+5+namesize, chatsize, chat);
Packet packet2 = Packet();
packet2.addHeader(0x5E);//header
packet2.addByte(0x0A);//found / not found id
bool found = false;
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++){
if (_stricmp(iter->second->getName(),name) == 0){
Packet packett = Packet();
packett.addHeader(0x5E);
packett.addByte(0x12);
packett.addShort(strlen(player->getName()));
packett.addString(player->getName(),strlen(player->getName()));
packett.addShort(0);//channel maybe
packett.addShort(strlen(chat));
packett.addString(chat,strlen(chat));
packett.packetSend(iter->second);
packet2.addShort(strlen(iter->second->getName()));
packet2.addString(iter->second->getName(),strlen(iter->second->getName()));
packet2.addByte(1);
found = true;
break;
}
}
if(!found){
packet2.addShort(strlen(name));
packet2.addString(name,strlen(name));
packet2.addByte(0);
}
packet2.packetSend(player);
}
else if(todo == 0x05){//find
char name[20];
int namesize = getShort(packet+1);
getString(packet+3, namesize, name);
bool found = false;
Packet packet2 = Packet();
packet2.addHeader(0x5E);
for (hash_map <int, Player*>::iterator iter = Players::players.begin(); iter != Players::players.end(); iter++){
if (_stricmp(iter->second->getName(),name) == 0){
packet2.addByte(0x09);
packet2.addShort(strlen(iter->second->getName()));
packet2.addString(iter->second->getName(),strlen(iter->second->getName()));
packet2.addByte(0x1);
packet2.addInt(iter->second->getMap());
packet2.addInt(0);
packet2.addInt(0);
found = true;
break;
}
}
if(!found){
packet2.addByte(0x0A);
packet2.addShort(strlen(name));
packet2.addString(name,strlen(name));
packet2.addByte(0x0);
}
packet2.packetSend(player);
}
}