begin
while not terminated do
begin
UpdateWorld;
if Creatures.count>1 then
for x := 0 to Creatures.Count - 1 do
begin
Alerta Quando faltar 1% para upar skill
Begin
While not terminated do
If Self.Skills.
Shielding.Percentage=99 then PlaySound('c:windowsmedianotify.wav')
;
Sleep(1000)
end;
Trocar para o skill que você deseja que toque o alerta
Modificado by Me
Print Screen quando upar
var
Level: integer;
begin
UpdateWorld;
Level := Self.Level;
while not Terminated do
begin
UpdateWorld;
if Level <> Self.Level then
begin
Level := Self.Level;
ScreenShot('c:level' + IntToStr(Level) + '.jpg');
end;
Sleep(1000);
end;
end;
Cuidado: a janela do tibia deve estar maximizada..
Screenshot quando estiver com X de vida
Const
SSHp = 25
While not terminated do
begin
UpdateWorld;
if Self.Health <= SSHp then
begin
ScreenShot('C:Program FilesTibiaBot NG' + '' + self.name + ' Death' + '.bmp);
exit;
end;
Sleep(100);
end;
O quanto de vida seu character deverá estar para o script tirar o screenshot
no exemplo, o bot tirará o screen quando seu character estiver com 25 de vida.
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;
Soltar Utamo Vita se tiver acabado
while not terminated do
begin
UpdateWorld;
if not Self.MagicShield then
begin
Self.Say('Utamo Vita');
Sleep(2000);
end;
sleep(100);
end;
Login caso Disconectar
const
Account = 1234567;
Password = 'comunidadedong';
Character = 'Ronaltinho';
World = 'Antica';
while not Terminated do
begin
UpdateWorld;
if not Self.Connected then
begin
Self.Login(Account, Password, Character, World);
Sleep(15000);
end;
Sleep(100);
end;
Coloque sua conta aqui
coloque sua senha aqui
coloque o nome do seu character aqui
coloque o mundo em que você joga aqui
no exemplo, a conta é 1234567, o password é comunidadedong, o char é o Ronatinho, e o mundo é Antica
Colocar Weapon quando acabar Small Stones
Const
SmallStoneID = 1781
BackupWeaponID = 3277
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
while not Terminated do
begin
UpdateWorld;
if Self.LeftHand.ID <> SmallStoneID then
begin
Weapon := GetItemFromOpenBackpack(SmallStoneID);
if Weapon <> nil then
begin
Weapon.MoveToBody(Self.LeftHand,0);
Sleep(1000);
end;
else
begin
if Self.LeftHand.ID <> BackupWeaponID then
begin
Weapon := GetItemFromOpenBackpack(BackupWeaponID);
if Weapon <> nil then
begin
Weapon.MoveToBody(Self.LeftHand,0);
Sleep(1000);
end;
end;
Self.DisplayText('Small Stones not found, Backup Weapon equipped instead!')
end;
end;
Sleep(500);
end;
end;
Colocar Id da arma desejada onde está em vermelho
OBS¹: começar Script com Small Stones na mão esquerda
OBS²: Deixar Weapon na backpack
Alertar quando estiver com X de cap
Const
cap =
10
while not terminated do
begin
UpdateWorld;
if self.capacity < cap then
PlaySound('C:WindowsMedianotify.wav')
;
Sleep(100);
end;
deixar quanto de cap o seu char terá, para o bot apitar..
no exemplo o bot irá apitar quando você estiver com 10 de cap
Alertar quando acabar food na BP
Const
FoodID =
3578
MusicPath = 'C:WindowsMediaNotify.wav'
while not terminated do
begin
UpdateWorld;
a:=0;
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 = FoodID
then a := 1;
Sleep(100);
end;
sleep(100);
end;
sleep(100);
if a = 0 then PlaySound(MusicPath);
end;
deixar o id do food que o bot apitará quando acabar.
no exemplo, o bot irá apitar quando acabar os peixes na sua backpack.
Alertar quando seu character upar
var
Level: integer;
begin
UpdateWorld;
Level := Self.Level;
while not Terminated do
begin
UpdateWorld;
if Level <> Self.Level then
begin
PlaySound('C:WINDOWSMediaNotify.wav')
;
Level := Self.Level;
end;
Sleep(1000);
end;
end;
Logar automaticamente depois de X tempo
Const
Minutes =
10
Hours =
5
begin
Sleep(Hours*3600000 + Minutes*60000);
Self.Logout(True);
end;
Colocar quantos minutos terão que se ter passado para seu char logar
Colocar quantas horas terão que ter se passado para seu char logar
no exemplo, o char irá logar após 5horas e 10 minutos.
Alertar se X player da VIP entrar
Const
TextToSend = ' has logged on.'
var
PlayerName: array of string;
a,Times: integer;
procedure Event_VIPLogOn(ID: integer);
begin
PlayerName:=['player1','player2','player3'];
Times:=2;
a:=0;
for x:=0 to VipList.Count-1 do
begin
if x> VipList.Count-1 then break
if VipList.VIP[x].ID=ID then
begin
for y:= 0 to High(PlayerName) do
begin
if y> High(PlayerName) then break
if VIPList.VIP[x].Name=PlayerName[y] then
begin
Self.PrivateMessage(Self.Name,PlayerName[y] + TextToSend);
while a<Times do
begin
PlaySound('C:WINDOWSMediachord.wav');
a:=a+1
end;
end;
end;
end;
end;
end;
while not Terminated do
begin
UpdateWorld;
Sleep(100);
ProcessEvents;
end;
nome do seu 1º amigo/huntedcuzao
nome do seu 2º amigo/huntedcuzao
nome do seu 3º amigo/huntedcuzao
se você quiser só um amigo/huntedcuzao pra tocar o alerta, deixe assim[aquela linha]:
PlayerName:=['nomedoseuamigo/huntedcuzao'];
se você quiser só um amigo/huntedcuzao pra tocar o alerta, deixe assim[aquela linha]:
PlayerName:=['nomedoseuamigo/huntedcuzao','nomedoseu2ºamigo/huntedcuzao'];
Contador de Monstros que você matou*
var
count: integer;
current: integer;
i: integer;
exists: boolean;
procedure Event_CreatureLeaveScreen(ID, X, Y, Z: integer; Name: String);
begin
exists := false;
if ID = current then
begin
for i := 0 To Creatures.Count - 1 do
begin
if Creatures.Creature.ID = current then
begin
exists := true;
end;
end;
if exists = false then
begin
count := count + 1;
end;
end;
end;
begin
count:=0;
while not terminated do
begin
UpdateWorld;
ProcessEvents;
Sleep(1000);
current := Self.Attacking;
Self.DisplayText('Killcounter: ' + IntToStr(count));
Sleep(500);
end;
end;
OBS: Contador de Monstros que você matou desde que você iniciou o script.
Haste automatico quando acabar haste
~>Se você quiser que ele solte utani hur quando acabar o utani hur anterior:
while not terminated do
begin
UpdateWorld;
if not self.hasting then
if self.mana >= 60 then
self.say('utani hur');
Sleep(100);
end;
~>Se você quiser que ele solte Utani Gran hur quando acabar o Utani Gran Hur anterior:
while not terminated do
begin
UpdateWorld;
if not self.hasting then
if self.mana >= 100 then
self.say('utani gran hur');
Sleep(100);
end;
Alerta se X monstro aparecer na tela
Const
MonsterName = 'Demodras'
while not terminated do
begin
updateworld;
for i:= 0 to creatures.count -1 do
begin
if Creatures.Creature.Name = MonsterName
then playsound('C:WindowsMediaNotify.wav');
sleep(100);
end;
sleep(100);
end;
colocar nome do montro onde está em vermelho.
no exemplo, o alerta irá tocar se o Demondras aparecer na tela
Usar utamo vita se algum player te atacar.
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;
Enchanted Spear Maker
Const
SpearID = 3277
Spell = 'Exeta con'
MinMana = 600
MinSoul = 5
WeaponID = 3291
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.Mana >= MinMana then
if Self.Soul >= MinSoul then
begin
Spear := GetItemFromOpenBackpack(SpearID);
if Spear <> nil then
Spear.MoveToBody(Self.RightHand,1);
Sleep(800);
UpdateWorld;
If Self.RightHand.ID = SpearID then
Self.Say(Spell);
UpdateWorld;
Weapon := GetItemFromOpenBackpack(WeaponID);
if Weapon <> nil then
Weapon.MoveToBody(Self.RightHand,0);
end;
sleep(500);
end;