PHP Code:
int SearchMob(){
while(true)
{
printf("Search mob...\n");
int nearest=1000;
int id=-1;
for (i=0;i<500;i++)
if ((Mob[i].X+2000 > Player[0].X)&&(Mob[i].X-2000 < Player[0].X)&&(Mob[i].MID > 0))//&&(Mob[i].X < 240644))
{
difx=Mob[i].X-Player[0].X;
dify=Mob[i].Y-Player[0].Y;
MobRange=((difx*difx)+(dify*dify));
range=sqrt(MobRange);
if (nearest>range)
{
id=i;
nearest=range;
}
}
if (id!=-1)
{
target=id;
printf("Walk to MOB..\n");
return 1;//MOB FOUND RETURN 1
}
}
}
int WalkToMob(int target){
while(true){
difx=Mob[target].X-Player[0].X;
dify=Mob[target].Y-Player[0].Y;
range=((difx*difx)+(dify*dify))*1.0;
/*ATTACK IT*/
if (sqrt(range) < 33.0)
{
printf("Attack!\n");
return 2;
}
else
{
tempx=((difx)/sqrt(range))*32;
tempy=((dify)/sqrt(range))*32;
tempz = (MyHeightDetour(Something(Player[0].X+tempx,0x20),Something(Player[0].Y+tempy,0x20))*10)-Player[0].Z;
PacketSend(0x12,"bbb",tempx,tempy,tempz);
//printf("%d %d Tempz1:[%d] (Hoch)\n",Player[0].X,Player[0].Y,tempz);
Player[0].X+=tempx;
Player[0].Y+=tempy;
Player[0].Z+=tempz;
//printf("%d %d\n",Player[0].X,Player[0].Y);
if(Mob[target].X == 0)
{
return 1;
}
Sleep(600);
}
}
}
int AttackMob(){
while(Mob[target].X > 0){
if (lastattack<timeGetTime()-400){
PacketSend(0x0C,"bd",1,Mob[target].MID);
AttackZahl+=1;
lastattack=timeGetTime();
}
if (Mob[target].X == 0)
{
return 3;
}
}
}
void BotThread(void* Params){
if (botstate=SearchMob()== 1)
{
lastmove=timeGetTime();
if (botstate=WalkToMob(target) == 2)
{
printf("Attack Mob..\n");
AttackZahl=0;
//PacketSend(0x0C,"bd",1,Mob[target].MID);
lastattack=timeGetTime();
//PacketSend(0x28,"bd",21,RightTarget);
//PacketSend(0x0D,"bdd",21,1,RightTarget);
if (botstate=AttackMob() == 3)
{
printf("Next mob!\n");
Sleep(3000);
botstate =0;
_beginthread(BotThread,0,NULL);
}
}
else
{
if (botstate=WalkToMob(target) == 1){
printf("Next mob!\n");
botstate =0;
_beginthread(BotThread,0,NULL);
}
}
}
}