Global Jogos Net
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Muitos Script Tibia bot ng

2 participantes

Ir para baixo

Muitos Script Tibia bot ng Empty Muitos Script Tibia bot ng

Mensagem por Wolf Sáb Jul 17, 2010 12:58 pm


Padrão Muitos Script Tibia bot ng

Achei esses scripts ai e vi que era util... então desfrutem ^^

Auto Log

const
Account = Conta; // Sua Conta
Password= 'Senha'; // Sua Senha
Character = 'Char Name'; // Seu Char
World= 'Mundo'; // Mundo que do Char
Ip = ''; // Nao precisa mecher aki
NumberOfBackpacks = 1; // nao alterar

var
x: integer;

procedure Login;
begin
repeat
Self.Login(Account, Password, Character, World, Ip);
for x := 0 to 200 do
begin
if Self.Connected then Break;
Sleep(100);
end;
Sleep(2000);
until Self.Connected;
end;

begin
while not Terminated do
begin
if not Self.Connected then
begin
Login;
UpdateWorld;
Self.Backpack.OpenInNewWindow;
for x := 0 to NumberOfBackpacks - 1 do
begin
if x >= NumberOfBackpacks then Break;
Sleep(2000);
UpdateWorld;
Self.Containers.Container[0].Item[x].OpenInNewWindow;
end;
end;
Sleep(1000);
end;
end;

Change Gold pra Platinum
procedure StackItems;
var
T: array of integer;
x, y, z: integer;
Temp: integer;
begin
UpdateWorld;
T := VarArrayCreate([0, 19] , 3);
Temp := -1;
for x := 0 to Self.Containers.Count - 1 do
begin
if x >= Self.Containers.Count then Break;
for z := 0 to Self.Containers.Container[x].Count - 1 do
begin
T[z] := Self.Containers.Container[x].Item[z].ID;
end;
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if y >= Self.Containers.Container[x].Count then Break;
if Self.Containers.Container[x].Item[y].Properties.Pilable then
begin
if Self.Containers.Container[x].Item[y].Amount < 100 then
begin
for z := y + 1 to Self.Containers.Container[x].Count - 1 do
begin
if T[z] = Self.Containers.Container[x].Item[y].ID then
begin
if Self.Containers.Container[x].Item[z].Amount < 100 then
begin
Self.Containers.Container[x].Item[y].movetocontainer(Self.Containers.Container[x], z, 0);
end;
end;
end;
end;
end;
end;
end;
end;

while not Terminated do
begin
UpdateWorld;
StackItems;
for x := 0 to Self.Containers.Count - 1 do
begin
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if Self.Containers.Container[x].Item[y].ID = 3031 then
begin
if Self.Containers.Container[x].Item[y].Amount = 100 then
begin
Self.Containers.Container[x].Item[y].Use;
Break;
end;
end;
end;
end;
Sleep(1000);
end;

Fazer Enchanted Spears
const
SpearID = 3277 ;//make sure its the right id of regular spear.
ManaNeed= 350;
SpellName='Exeta Con';
procedure CastSpell(Spell: string);
begin
UpdateWorld;
for x := 0 to Self.Containers.Count - 1 do
begin
for y := 0 to Self.Containers.Container[x].Count-1 do
begin
if Self.Containers.Container[x].Item[y].ID = SpearID then
begin
repeat
Self.Containers.Container[x].Item[y].MoveToBody(Self.RightHand, 1);
Sleep(1000);
UpdateWorld;
until Self.RightHand.ID = SpearID;
Self.Say(Spell);
repeat
Sleep(1000);
UpdateWorld;
until Self.RightHand.ID <> SpearID;
Self.RightHand.MoveToContainer(Self.Containers.Con tainer[x], y, 0);
Exit;
end;
end;
end;
end;
procedure StackItems;
var
T: array of integer;
x, y, z: integer;
Temp: integer;
begin
T := VarArrayCreate([0, 19] , 3);
Temp := -1;
for x := 0 to Self.Containers.Count - 1 do
begin
if x >= Self.Containers.Count then Break;
for z := 0 to Self.Containers.Container[x].Count - 1 do
begin
T[z] := Self.Containers.Container[x].Item[z].ID;
end;
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if y >= Self.Containers.Container[x].Count then Break;
if Self.Containers.Container[x].Item[y].Properties.Pilable then
begin
if Self.Containers.Container[x].Item[y].Amount < 100 then
begin
for z := y + 1 to Self.Containers.Container[x].Count - 1 do
begin
if T[z] = Self.Containers.Container[x].Item[y].ID then
begin
if Self.Containers.Container[x].Item[z].Amount < 100 then
begin
Self.Containers.Container[x].Item[y].movetocontainer(Self.Containers.Container[x], z, 0);
end;
end;
end;
end;
end;
end;
end;
end;

begin
while not terminated do
begin
updateworld;
StackItems;
If (self.Mana>=ManaNeed) then
begin
repeat
Self.RightHand.MoveToBody(Self.Arrow,0);
sleep(1000);
updateworld;
until(Self.RightHand.ID=0);
CastSpell(SpellName);
sleep(1000);
updateworld;
Self.Arrow.MoveToBody(Self.RightHand,0);
end;
sleep(1000);
end;
end

Usar Exana Pox
while not terminated do
begin
UpdateWorld;
if self.poisoned then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;

Usar Exori com X monstro ao seu lado
Const
MonstersNames = ['Vampire','Crypt Shambler'] // Nome das Criaturas
NumberOfMonsters = 4 // Numero de Monstros
MinHealth = 800
MinMana = 150
function CountMonstersBesideYou:Integer;
begin
Result := 0;
UpdateWorld;
for i := 0 to creatures.Count -1 do
begin
if i >= Creatures.Count then break
for x := -1 to 1 do
begin
if x >= 2 then break
for y := -1 to 1 do
begin
if y > 1 then break;
if Creatures.Creature.NPC then
if (Creatures.Creature.x = Self.X +x) and (Creatures.Creature.y = Self.y + y) then
begin
for G := low(MonstersNames) to high(MonstersNames) do
begin
if Creatures.Creature.Name = MonstersNames[G] then
Result := Result + 1;
end;
end;
end;
end;
end;
end;
while not terminated do
begin
UpdateWorld;
if CountMonstersBesideYou >= NumberOfMonsters then
if Self.Mana >= MinMana then
if Self.Health > MinHealth then
Self.Say('exori');
sleep(100);
end;

Exori Con
const
Delay = 2000; //exaut para cada exori con 2 sec
MinimumManaToCast = 60; // mana que precisa para soltar exori con
MinimumMonsterHealth = 60; // Contado em Pircentagem se o monstro tiver 1k de lifer com 60 soltara exori com com 600 de life..
SpellRange = 3; // soltara 3 exori con

function GetCreatureByID(ID: integer): TCreature;
var
x: integer;
begin
Result := nil;
for x := 0 to Creatures.Count - 1 do
if Creatures.Creature[x].ID = ID then
Result := Creatures.Creature[x];
end;

var
Attacking : TCreature;
Range: Integer;
begin
while not Terminated do
begin
UpdateWorld;

Attacking:=GetCreatureByID(Self.Attacking);
if (Assigned(Attacking)) then
begin
Range := Round(Sqrt(Sqr(Self.X - Attacking.X) + Sqr(Self.Y - Attacking.Y)));
if (Range <= SpellRange) and (Attacking.Health >= MinimumMonsterHealth) and (Self.Mana >= MinimumManaToCast) then
Self.Say('exori con');
end;

Sleep(Delay);
end;
end;

Item Reloader - Colocar SSA, Rings e talvar
RingID: integer;
AmuletID: integer;
ShieldID: integer;
XbowID: integer;
function GetItemFromOpenBackpack(ID: integer): TItem;
var
y: integer;
begin
Result := nil;
for x := 0 to Self.Containers.Count - 1 do
begin
if x >= Self.Containers.Count then Break;
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if y >= Self.Containers.Container[x].Count then Break;
if Self.Containers.Container[x].Item[y].ID = ID then
begin
Result := Self.Containers.Container[x].Item[y];
Exit;
end;
end;
end;
end;
begin
RingID := 0; //ID Number de algum anel que vc queira no caso mana ou migth
AmuletID := 3081; //ID number do stone skin amulet
while not Terminated do
begin
UpdateWorld;
if RingID <> 0 then
begin
if Self.Ring.ID = 0 then
begin
Ring := GetItemFromOpenBackpack(RingID);
if Ring <> nil then
begin
Ring.MoveToBody(Self.Ring, 0);
end;
end;
end;
UpdateWorld;
if AmuletID <> 0 then
begin
if Self.Amulet.ID = 0 then
begin
Amulet := GetItemFromOpenBackpack(AmuletID);
if Amulet <> nil then
begin
Amulet.MoveToBody(Self.Amulet, 0);
end;
end;
end;
Sleep(100);
end;
end;

Mage Healer - Otimo Healer, com X vida usa uma magia de cura, se sua vida for pra menos doq esta configurado solta uma magia pra healar q cura mais
Const
// Coloque aqui o Regular Healer//
MinHP1 = 470
MinMana1 = 20
Spell1 = 'exura'
// Coloque aqui o Intense healer //
MinHP2 = 340
MinMana = 75
Spell2 = 'exura gran'
begin
while not Terminated do
begin
if MinHP1 <= MinHP2 then
begin
Self.DisplayText('MinHP1 MUST be higher then MinHP2!');
Break;
end;
UpdateWorld;
if (Self.Health < MinHP1) and (Self.Health >= MinHP2) then
begin
if Self.Mana > MinMana
then Self.Say(Spell1)
else Self.say(Spell2);
sleep(1000); // Delay after saying exura here (or uh if not enough mana)
end;
UpdateWorld;
if Self.Health < MinHP2 then
begin
Self.say(Spell2);
sleep(1000); // delay after intense healing here
end;
UpdateWorld;
Sleep(100); // delay after checkign your HP
end;
end;

Mwall, solta mwall na frente do seu target
function GetCreatureByID(ID: integer): TCreature;
var
x: integer;
begin
Result := nil;
for x := 0 to Creatures.Count - 1 do
begin
if x >= Creatures.Count then Break;
if Creatures.Creature[x].ID = ID then
begin
Result := Creatures.Creature[x];
Exit;
end;
end;
end;

begin
while not Terminated do
begin
UpdateWorld;
if Self.Attacking <> 0 then
begin
Creature := GetCreatureByID(Self.Attacking);
if Creature <> nil then
begin
case Creature.Direction of
0: Self.Containers.UseItemWithGround(3180, Creature.X, Creature.Y - 2, Creature.Z);
1: Self.Containers.UseItemWithGround(3180, Creature.X + 2, Creature.Y, Creature.Z);
2: Self.Containers.UseItemWithGround(3180, Creature.X, Creature.Y + 2, Creature.Z);
3: Self.Containers.UseItemWithGround(3180, Creature.X - 2, Creature.Y, Creature.Z);
end;
end;
end;
Sleep(2000);
end;
end;

Exiva Kill - Voce nunca perde seu target, otimo em wars em escada e quando usa bot caçando monstro invisiveis
var
LockID:integer;

function GetCreatureByID(ID: integer): TCreature;
var
x: integer;
begin
Result := nil;
for x := 0 to Creatures.Count - 1 do
begin
if x >= Creatures.Count then Break;
if Creatures.Creature[x].ID = ID then
begin
Result := Creatures.Creature[x];
Exit;
end;
end;
end;

begin
updateworld;
while self.attacking=0 do
begin
sleep(200);
updateworld;
end;
LockID:=self.attacking;
while not terminated do
begin
updateworld;
ProcessEvents;
if ((self.attacking)<>(LockID)) and ((self.attacking)<>(0)) then
LockID:=Self.Attacking;
If Self.Attacking=0 then
begin
Creature:=GetCreatureByID(LockID);
If Creature<>nil then Creature.Attacking:=true;
end;

sleep(100);
end;
end;

Anti Paralyze
const
minMana = 20;

while not Terminated do
begin
UpdateWorld;
if Self.Mana > minMana then
begin
if Self.Slowed then
Self.Say('exura');
end;
Sleep(300);
end;

Self Utamo Vita - quando utamo vita acaba ele solta otro imediatamente
while not terminated do
begin
UpdateWorld;
if not Self.MagicShield then
begin
Self.Say('Utamo Vita');
Sleep(2000);
end;
sleep(100);
end;

Super Target All - Ataca o Player desejado até quando ele sai da tela
Const
PlayerName = 'Mateusz Dragon Wilki' // The player to keep attacking.

function Attacking : boolean;
var x : integer;
begin
Result := False;
for x := 0 to Creatures.Count - 1 do
begin
if x >= Creatures.Count then Break;
if Creatures.Creature[x].Attacking then
begin
Result := True;
Exit;
end;
end;
end;


While not terminated do
begin
UpdateWorld;
for i:= 0 to Creatures.Count - 1 do
begin
If (Creatures.Creature[i].Name = PlayerName) and (not attacking)
then Creatures.Creature[i].Attacking := True;
sleep(100);
end;
sleep(100);
end;

Logar se pessoas na vip logarem
Const
VipNames = ['Mateusz Dragon Wielki','Eternal Oblivion','Seromontis','Tripida'] // Enter the player name who will login in your vip and you log out.

procedure Event_VIPLogOn(ID:integer);
begin
UpdateWorld;
for i := 0 to VipList.Count -1 do
begin
If VipList.VIP[i].ID = ID then
begin
for x := Low(VipNames) to High(VipNames) do
begin
if VipNames[x] = VipList.VIP[i].Name then
begin
Self.Logout(True);
exit;
end
end;
end;
end;
end;

While not terminated do
begin
UpdateWorld;
ProcessEvents;
Sleep(100);
end;

Se atacado usar utamo vita
function GetCreatureByID(ID: integer): TCreature;
var
x: integer;
begin
Result := nil;
for x := 0 to Creatures.Count - 1 do
begin
if x >= Creatures.Count then Break;
if Creatures.Creature[x].ID = ID then
begin
Result := Creatures.Creature[x];
Exit;
end;
end;
end;

procedure Event_Attacked(ID: integer);
var
Creature: TTCreature
begin
if Self.Attacking = ID then Exit;
Creature := GetCreatureByID(ID);
if (not Creature.NPC) and (not Self.MagicShield) then Self.Say('utamo vita');
Sleep(1000);
end;

begin
while not terminated do
begin
UpdateWorld;
ProcessEvents;
Sleep(100);
end;
end;

Dizer, afk 1 seg , caso gm apareça
Const
TextToSay = 'afk sec...'
function GMDetected: boolean;
begin
Result := False;
UpdateWorld;
for x := 0 to Creatures.Count - 1 do
begin
if x >= Creatures.count then break;
if Creatures.Creature[x].GM then
begin
Result := True;
exit;
end;
end;
end;

while not terminated do
Begin
UpdateWorld;
if GMDetected then
begin
Self.Say(TextToSay);
break;
end;
sleep(2000);
end;

Jogar a BP na agua se for atacador por players
procedure Event_Attacked(ID:integer);
begin
UpdateWorld;
for g:= 0 to Creatures.Count -1 do
begin
If Creatures.Creature[g].ID = ID then
Creature := Creatures.Creature[g];
sleep(100);
end;
if creature <> nil then
if Creature.NPC = false then
for x := 0 to 14 do
begin
if (x > 14) or (Terminated = true) then break;
for y:= 0 to 10 do
begin
if (y > 10) or (terminated = true) then break;
for ID := 4580 to 4620 do
begin
if (ID >4620) or (terminated = true) then break
if screen.tile[x,y].item[0].ID = ID then
Self.Backpack.MoveToGround(Self.X + x -7,Self.Y + y - 5,self.z,0);
sleep(100);
end;
end;
end;
end;

while not terminated do
begin
updateworld;
processevents;
sleep(500);
end;

Usar GFB se X monster tiverem na tela
Const
MinMonsters = 5
GFB_ID = 0 // enter the ID of the GFB.
Delay = 1600 // Delay to shoot the rune in millseconds (1000 = 1 second)
ShootOnSelf = 1 // 1: use the rune on your self, 0: use the rune on one of the creatures.

while not terminated do
begin
A := 0;
UpdateWorld;
for i := 0 to creatures.count - 1 do
begin
if (i >= Creatures.Count) or (Terminated) then break;
if Creatures.Creature[i].Z = self.Z then
if Creatures.Creature[i].NPC then
A := A + 1;
end;
if A >= MinMonsters then
begin
if ShootOnSelf
then Self.Containers.UseItemWithSelf(GFB_ID)
else Self.Containers.UseItemWithCreature(GFB_ID,Creatur es.Creature[i]);
sleep(Delay);
end;
sleep(500);
end;

Logar se nao tiver spears ou algo na mao DIREITA
while not terminated do
begin
UpdateWorld;
if Self.RightHand.ID = 0 then
Self.Logout(true);
sleep(500);
end;

Self Utani Hur
Const
Spell = 'utani hur'
MinMana = 60

while not terminated do
begin
UpdateWorld;
if not self.hasting then
if self.mana >= MinMana then
Self.Say(Spell);
sleep(1000);
end;

Healer Party Members
Const
MinSelf=600;//if we have less than 600 HP we wont heal others so we wont get exusted.
MinHPPercent = 50; // The HP percentage a party member must have to use uh
ItemUHID = 3160; // The item number of the healing rune
var
Creature: TCreature;

while not Terminated do
begin
UpdateWorld;
for x := 0 to Creatures.Count - 1 do
begin
if (Creatures.Creature[x].PartyMember) and (Creatures.Creature[x].Name<>Self.Name) then
begin
if (Creatures.Creature[x].Health <= MinHPPercent) and (Self.Health>MinSelf) then
begin
Self.Containers.UseItemWithCreature(ItemUHID, Creatures.Creature[x]);
Sleep(2000);
end;
end;
end;
Sleep(100);
end;

Knight War - se o leader do script dizer exori gran e voce estiver do lado do target, soltará exori gran, se o leader do script dizer exori gran e voce tiver 1 sqm + de distacia soltará exori hur, se nao tiver target script nao fará nada
Const
Names = ['name1','name2','name3','name4','name5'] // The names that can say !kc!, you may change and add.
Target = 'name'
SpellIfClose = 'exori gran'
SpellIfFar = 'exori hur'
TextToCommit = 'ATTACK' //should be exori gran for your request.

Procedure Event_Message(Channel:integer;name,text:string);
begin
UpdateWorld;
InList = false;
for i = LoW(Names) to High(names) do
begin
if Name = Names[i] then
begin
InList := true;
break;
end;
end;
if not InList then exit;
if Text = TextToCommit then
begin
for i := 0 to creatures.count - 1 do
begin
if Creatures.Creature[i].Name = target then
if (abs(Creatures.Creature[i].X - Self.X) < 2) and (abs(Creatures.Creature[i].y - Self.y) < 2) then
Self.Say(SpellIfClose);
else Self.Say(SpellIfFar);
end;
end;
end;

while not terminated do
begin
UpdateWorld;
ProcessEvents;
Sleep(500);
end;

Logar se sua vida for menos de X
Const
XHealth = 0

while not terminated do
begin
UpdateWorld;
if Self.Health <= XHealth then
Self.Logout(True);
sleep(500);
end;

Usar Exori se algum bixo invisivel estiver na sua volta
Const
MonsterToCheck = 'Stalker'
MinHealth = 300
MinMana = 200

function CountMonstersBesideYou:Integer;
begin
Result := 0;
UpdateWorld;
for i := 0 to creatures.Count -1 do
begin
if i >= Creatures.Count then break
for x := -1 to 1 do
begin
if x >= 2 then break
for y := -1 to 1 do
begin
if y > 1 then break;
if Creatures.Creature[i].NPC then
if (Creatures.Creature[i].x = Self.X +x) and (Creatures.Creature[i].y = Self.y + y) then
if Creatures.Creature[i].Name = MonsterToCheck then
Result := Result + 1;
end;
end;
end;
end;

while not terminated do
begin
UpdateWorld;
if CountMonstersBesideYou >= 1 then
if Self.Mana >= MinMana then
if Self.Health > MinHealth then
Self.Say('exori');
sleep(200);
end;

Equipar arma mais forte se for atacado, atacar quem está te atkando
Const
WeaponID = 3302 // Enter the strong weapon ID, In your case, dragon lance....

function GetCreatureByID(IID:integer):TCreature;
begin
Result := nil;
updateworld;
for G:= 0 to Creatures.count -1 do
begin
If Creatures.Creature[G].ID = IID
then Result := Creatures.Creature[G];
end;
end;

function GetItemFromOpenBackpack(ID: integer): TItem;
var
x: integer;
y: integer;
begin
Result := nil;
for x := 0 to Self.Containers.Count - 1 do
begin
if x >= Self.Containers.Count then Break;
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if y >= Self.Containers.Container[x].Count then Break;
if Self.Containers.Container[x].Item[y].ID = ID then
begin
Result := Self.Containers.Container[x].Item[y];
Exit;
end;
end;
end;
end;

procedure event_attacked(ID:string);
Var
Creature:TCreature;
R,L,DLance:TItem;
Container:TContainer;
begin
Creature := GetCreatureByID(ID);
if Creature <> nil then
if Self.RightHand.ID <> WeaponID then
begin
UpdateWorld;
Container := Self.Containers.Container[0];
DLance:= GetItemFromOpenBackpack(WeaponID);
if DLance <> nil then
DLance.MoveToBody(Self.RightHand, 0);
Self.Offensive;
Creature.Attacking := True;
end;
end;

While not terminated do
begin
UpdateWorld;
ProcessEvents;
Sleep(100);
end;

Equipar soft boots se mps acabar
Const
Message1 = 'Using the last vial...'
BootsID = 0

var
Finish:boolean;

function GetItemFromOpenBackpack(ID: integer): TItem;
var
x: integer;
y: integer;
begin
Result := nil;
for x := 0 to Self.Containers.Count - 1 do
begin
if x >= Self.Containers.Count then Break;
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if y >= Self.Containers.Container[x].Count then Break;
if Self.Containers.Container[x].Item[y].ID = ID then
begin
Result := Self.Containers.Container[x].Item[y];
Exit;
end;
end;
end;
end;

procedure Event_Notice(Text:string);
begin
if Text = Message1 then
begin
Boots := GetItemFromOpenBackpack(BootsID);
if Boots <> nil then
begin
Boots.MoveToBody(Self.Feet,0);
Self.PrivateMessage(Self.Name,'Soft boots are on were worn at ' + TimeToStr(Now) + ', Script will now terminate.');
Finish := true;
end;
else
begin
Self.PrivateMessage(Self.Name,'Boots werent found in an open BP, script will terminate.')
Finish := true;
end;
end;
end;

Finish := false;
while (not terminated) and (not finish) do
begin
UpdateWorld;
ProcessEvents;
Sleep(100);
end;

Andar com 'W A S D ' invés das setas
Const
DiagnoalWalking = 1 // 1-enable diagnoal, 0-disable.

procedure Event_KeyDown(Key:integer);
begin
Updateworld;
case Key of
87:Self.MoveUp; //W
65:Self.MoveLeft; //A
83:self.MoveDown; //S
68:Self.MoveRight; //D
end;
if DiagnoalWalking then
Case Key of
81:Self.MoveUpLeft; //Q
69:Self.MoveUpRight; //E
90:Self.MoveDownLeft; //Z
67:Self.MoveDownRight; //C
end;
end;

while not terminated do
begin
ProcessEvents;
Sleep(100);
end;

Mandar msgs pra todos na sua vip se for atkado
var
Finished:boolean;

function GetCreatureByID(ID: integer): TCreature;
begin
UpdateWorld;
Result := nil
for x := 0 to Creatures.Count - 1 do
begin
if Creatures.Creature[x].ID = ID then
begin
Result := Creatures.Creature[x];
Exit;
end;
end;
end;

procedure Event_Attacked(ID: integer);
var
AttackingCreature: TCreature;
begin
UpdateWorld;
AttackingCreature := GetCreatureByID(ID);
if not AttackingCreature.NPC then
begin
for i := 0 to VipList.Count - 1 do
begin
if VipList.Vip[i].Online then
Self.PrivateMessage(VipList.Vip[i].Name,'help, ' + AttackingCreature.Name + ' is attacking me!');
Sleep(2000);
end;
Finished := true;
end;
end;

begin
Finished := false;
while (not Terminated) and (not finished) do
begin
UpdateWorld;
ProcessEvents;
Sleep(100);
end;
end;

Alerta se spears estiverem acabando
const
spear_amount = 5 //number of spears to alert at
pause_time = 10 // number of seconds pause between alerts
alert_file = 'c:\windows\media\notify.wav' // must be a wav file

begin
while not terminated do begin
UpdateWorld;
if Self.RightHand.Amount <= spear_amount then
begin
PlaySound (alert_file);
sleep(pause_time*1000);
end;
sleep(100);
end;
end;

Dizer frase se player detectado na tela a cada X segundos, bom para train
Const
Message = 'no kill plx i am training'
Delay = 3 // in seconds

Function PlayerOnScreen:boolean;
Begin
Result := false;
for i := 0 to creatures.count - 1 do
begin
if Creatures.Creature[i].npc = false then
if Creatures.Creature[i].Name <> Self.Name then
if Creatures.Creature[i].Z = Self.Z then
begin
Result := true;
exit;
end;
end;
end;

while not terminated do
begin
UpdateWorld;
A := PlayerOnScreen;
if A then
begin
Self.Say(Message);
Sleep(Delay*1000 - 200);
end;
sleep(200);
end;

Se player entrar na tela, usar utani gran hur
Const
Xsqm = 3
Spell = 'utani gran hur'
MinMana = 100

while not terminated do
begin
UpdateWorld;
for i := 0 to Creatures.Count - 1 do
begin
if (i >= Creatures.Count) or (terminated) then break;
if Creatures.Creature[i].NPC = false then
if Creatures.Creature[i].Z = Self.Z then
if SQRT(SQR(Creatures.Creature[i].X - Self.X) + SQR(Creatures.Creature[i].Y - Self.Y)) <= Xsqm then
if not self.hasting then
if Self.Mana >= MinMana then
Self.Say(Spell);
sleep(50);
end;
sleep(100);
end;

Alerta se soft acabar
Const
Soft_Boots_In_Use_ID = ???? //Check the ID of the soft boots when they are on the boots.
Sound_Path = 'C:/Windows/Media/Notify.wav' // you may change only to wav files.

while not terminated do
begin
UpdateWorld;
if Self.Feet.ID <> Soft_Boots_In_Use_ID then
PlaySound(Sound_Path);
sleep(500);
end;

Trocar de soft boots se a primeira acabar
Const
Soft_In_Use_ID = 3549
Soft_Boots_ID = 6529

function GetItemFromOpenBackpack(ID: integer): TItem;
var
y: integer;
begin
Result := nil;
for x := 0 to Self.Containers.Count - 1 do
begin
if x >= Self.Containers.Count then Break;
for y := 0 to Self.Containers.Container[x].Count - 1 do
begin
if y >= Self.Containers.Container[x].Count then Break;
if Self.Containers.Container[x].Item[y].ID = ID then
begin
Result := Self.Containers.Container[x].Item[y];
Exit;
end;
end;
end;
end;

while not terminated do
begin
UpdateWorld;
if Self.Feet.ID <> Soft_In_Use_ID then
begin
Soft := GetItemFromOpenBackpack(Soft_Boots_ID);
if Soft <> nil then
Soft.MoveToBody(Self.Feet,0);
else Self.DisplayText('Soft Boots werent found in open BP!');
end;
sleep(100);
end;

Abrir corpos (loot)[b]
Wolf
Wolf
Membro Ativo
Membro Ativo

Mensagens : 41
Sistema de Pontos : 0
Inscrição : 17/07/2010

Ir para o topo Ir para baixo

Muitos Script Tibia bot ng Empty Re: Muitos Script Tibia bot ng

Mensagem por Mario BrosS Sáb Jul 17, 2010 2:26 pm

Nossa Grandin em xDD

Muito Bom...

Topico Fechado
Mario BrosS
Mario BrosS
Membro Ativo
Membro Ativo

Mensagens : 69
Sistema de Pontos : 70
Inscrição : 16/07/2010

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes
» iBot Tibia 10.62 / Xenobot Tibia 10.62 / Bbot tibia 10.62 / IP Changer 10.62 / MageBot Tibia 10.62 / Python 2.4.4 / Tibia Bot NG 10.62 / Red Bot Tibia 10.62 / Tibia Cam 10.62 / Tibia Auto 10.62 / Tibia Maps 10.62 / Tibia MC 10.62 / Windbot Tibia 10.62
» iBot Tibia 8.6 / Xenobot Tibia 8.6 / Bbot tibia 8.6 / IP Changer - OTS 8.6 - 8.6 / MageBot Tibia 8.6 / Python 2.4.4 / Tibia Bot NG 8.6 / Red Bot Tibia 8.6 / Tibia Cam 8.6 / Tibia Auto 8.6 / Tibia Maps 8.6 / Tibia MC 8.6 / Windbot Tibia 8.6
» iBot Tibia 8.60 / Xenobot Tibia 8.60 / Bbot tibia 8.60 / IP Changer - OTS 8.60 - 8.60 / MageBot Tibia 8.60 / Python 2.4.4 / Tibia Bot NG 8.60 / Red Bot Tibia 8.60 / Tibia Cam 8.60 / Tibia Auto 8.60 / Tibia Maps 8.60 / Tibia MC 8.60 / Ventrilo 2.1.4 / Vent
» iBot Tibia 8.60 / Xenobot Tibia 8.60 / Bbot tibia 8.60 / IP Changer - OTS 8.60 - 8.60 / MageBot Tibia 8.60 / Python 2.4.4 / Tibia Bot NG 8.60 / Red Bot Tibia 8.60 / Tibia Cam 8.60 / Tibia Auto 8.60 / Tibia Maps 8.60 / Tibia MC 8.60 / Ventrilo 2.1.4 / Vent
» iBot Tibia 8.6 / Xenobot Tibia 8.6 / Bbot tibia 8.6 / IP Changer - OTS 8.6 - 8.6 / MageBot Tibia 8.6 / Python 2.4.4 / Tibia Bot NG 8.6 / Red Bot Tibia 8.6 / Tibia Cam 8.6 / Tibia Auto 8.6 / Tibia Maps 8.6 / Tibia MC 8.6 / Ventrilo 2.1.4 / Ventrilo 3.0.1 /

 
Permissões neste sub-fórum
Não podes responder a tópicos