rendered paste body
BOOL CTown::TakeWP(DWORD AreaID) {
UnitAny* WPUnit;
POINT Position;
Position.x=0;
Position.y=0;
switch(fpGetPlayerArea()) {
case A1:
if(!GetPositionByClassID(WPId[ACT_ONE],&Position))
return FALSE;
WPUnit = GetUnitByPosition(Position.x,Position.y);
break;
case A2:
// if(!GetPositionByClassID(WPId[ACT_TWO],&Position))
// return FALSE;
// Log(1,"%d,%d",Position.x,Position.y);
Position.x=5069;
Position.y=5084;
WPUnit = GetUnitByPosition(Position.x,Position.y);
break;
case A3:
if(!GetPositionByClassID(WPId[ACT_THREE],&Position))
return FALSE;
WPUnit = GetUnitByPosition(Position.x,Position.y);
break;
case A4:
if(!GetPositionByClassID(WPId[ACT_FOUR],&Position))
return FALSE;
WPUnit = GetUnitByPosition(Position.x,Position.y);
break;
case A5:
if(!GetPositionByClassID(WPId[ACT_FIVE],&Position))
return FALSE;
WPUnit = GetUnitByPosition(Position.x,Position.y);
break;
default:
return FALSE;
break;
}
if(!WPUnit)
return FALSE;
while(!PlayerActAble())
Sleep(100);
DWORD OldArea = fpGetPlayerArea();
if(OldArea == AreaID)
return TRUE;
while(fpGetPlayerArea() != AreaID) {
byte WPPacket[9]= {0x49,00,00,00,00, 00,0x00,0x00,0x00};
*(DWORD*)&WPPacket[1]=WPUnit->dwId;
*(BYTE*)&WPPacket[5]=AreaID;
fpSendPacket(WPPacket,9);
Sleep(500);
}
Sleep(500);
return TRUE;
}