void CGame::D2TeleportHandler(int iClientH,int iMapName,char * pString)
{
int i, iNum, iRet, iEraseReq;
char * cp, cData[256], cItemName[21];
class CItem * pItem;
DWORD * dwp;
short * sp;
WORD * wp;
if (m_pClientList[iClientH] == NULL) return;
if (m_pClientList[iClientH]->m_cSide == 0) return;
switch(iMapName) {
// Dungeon Level 2
case 400: //Aresden Tp
if (memcmp(m_pClientList[iClientH]->m_cLocation, "aresden",7) == 0 ) {
RequestTeleportHandler(iClientH, "2 ", "dglv2", 263, 258);
}
case 401: //Elvine Tp
if (memcmp(m_pClientList[iClientH]->m_cLocation, "elvine",6) == 0 ) {
RequestTeleportHandler(iClientH, "2 ", "dglv2", 209, 258);
}
break;
// MiddleLand
case 403: //Aresden ML TP
if (memcmp(m_pClientList[iClientH]->m_cLocation, "aresden",7) == 0 ) {
RequestTeleportHandler(iClientH, "2 ", "middleland", 300, 400);}
case 404: //Elvine ML TP
if (memcmp(m_pClientList[iClientH]->m_cLocation, "elvine",6) == 0 ) {
RequestTeleportHandler(iClientH, "2 ", "middleland", 200, 400);}
break;
//BattleField
case 405: //Aresden BF Tp
if (memcmp(m_pClientList[iClientH]->m_cLocation, "aresden",7) == 0 ) {
RequestTeleportHandler(iClientH, "2 ", "BTfield", 100, 200); }
case 406: //Elvine BF TP
if (memcmp(m_pClientList[iClientH]->m_cLocation, "elvine",6) == 0 ) {
RequestTeleportHandler(iClientH, "2 ", "BTfield", 100, 200); }
break;
}
and
case MSGID_REQUEST_CITYHALLTELEPORT:
RequestD2TeleportHandler(iClientH, pData, dwMsgSize);
break;
there u go. haha. maybe its wrong, but gives u smth to think about. ahahahahahahaha. i modified zabuza's get hero mantle handler in 2.24b sources.