bool CWorldServer:

akPickDrop( CWorldClient* thisclient, CPacket* P )
{
thisclient->isAttacking=false;
unsigned dropid = GETWORD((*P), 0x00);
if(DropsList[dropid].type==0) return true;
if (DropsList[dropid].type==1) {
thisclient->c_zuly += DropsList[dropid].amount;
{
//boost::mutex::scoped_lock scoped_lockc( ClientListMutex );
for(unsigned j=0; j<ClientList.size(); j++) {
CWorldClient* otherclient = (CWorldClient*)ClientList.at( j );
if (DropsList[dropid].map == otherclient->c_posMap && otherclient->inGame) {
STARTPACKET(pak2,0x794,8);
SETWORD( pak2, 0x000, dropid );
otherclient->SendPacket( &pak2 );
}
}
}
STARTPACKET(pak1,0x71d,14);
SETDWORD( pak1, 0x000, thisclient->c_zuly );
SETDWORD( pak1, 0x004, 0x00000000 );
thisclient->SendPacket( &pak1 );
}else{
char itemtypes[15] = {4,0,0,0,0,0,0,0,0,0,1,2,2,4,3};
unsigned newslot=thisclient->finditemslot( DropsList[dropid].item.itemtype );
if (newslot==0xffff) return true;
thisclient->items[newslot] = DropsList[dropid].item;
STARTPACKET(pak3,0x718,14);
SETBYTE( pak3, 0, 1); // ITEMS TO UPDATE
SETBYTE( pak3, 1, newslot);
SETWORD( pak3, 2, (thisclient->items[newslot].itemnum<<5)|thisclient->items[newslot].itemtype );
if (itemtypes[thisclient->items[newslot].itemtype] != 0 && itemtypes[thisclient->items[newslot].itemtype] != 3) {
SETWORD( pak3, 4, thisclient->items[newslot].count ); // AMOUNT
SETWORD( pak3, 6, 0 ); // UNKNOWN
}else{
SETWORD( pak3, 4, thisclient->items[newslot].durability<<9 );
SETWORD( pak3, 6, thisclient->items[newslot].lifespan*10 );
}
thisclient->SendPacket(&pak3);
{
//boost::mutex::scoped_lock scoped_lockc( ClientListMutex );
for(unsigned j=0; j<ClientList.size(); j++) {
CWorldClient* otherclient = (CWorldClient*)ClientList.at( j );
if (DropsList[dropid].map == otherclient->c_posMap && otherclient->inGame) {
STARTPACKET(pak2,0x794,8);
SETWORD( pak2, 0x000, dropid );
otherclient->SendPacket( &pak2 );
}
}
}
}
DropsList[dropid].type = 0;
ClearClientID(dropid);
return true;
well chose where it is lol add me to ur msn please!! i sent u a PM