marleey777 Posted January 23, 2016 Posted January 23, 2016 This is my script so far to buff in fairy village and to tp to hunting zone.... how would i make it so it checks buffs? and then starts this script once in town and to repeat? thanks I have a present for someone who hels me $$$ 5USD begin Engine.MoveTo(207024, 87179, -1068); Engine.MoveTo(207175, 86858, -1053); Engine.SetTarget (32327); Engine.DlgOpen; Delay (500); Engine.DlgSel(1); Delay (500); Engine.DlgSel(2); Engine.MoveTo(207463, 86894, -1035); Engine.MoveTo(207487, 86556, -1032); Engine.SetTarget (32912); Engine.DlgOpen; Engine.DlgSel(1); end.
Anitah Posted January 23, 2016 Posted January 23, 2016 (edited) Just edit for you server, this is for old talesky with alt+b: var MP, Shot: TL2Item; buff: TL2Buff; function buffCheck: Boolean; begin if (not User.Buffs.ByID(1062, buff) or (buff.endtime<300000)) then begin //1062 wich buff id checking Result:=true; Delay(1000); Engine.BypassToServer('_bbshome'); //buffer alt and b Delay(1000); Engine.BypassToServer('02'); Delay(1000); Engine.BypassToServer('0b'); Delay(1000); Engine.BypassToServer('0c'); Delay(1000); Engine.BypassToServer('018'); Delay(1000); Engine.BypassToServer('018'); Delay(1000); end; Result:=false; end; function BuyMP:boolean; begin if not Inventory.User.ByID(728, MP) or (MP.count<10) then begin //728 mp id ,10 or less then buy MP so probably change it for your count result:=true; Delay(1000); Engine.BypassToServer('_bbshome'); // alt and b codes to buy mp Delay(1000); Engine.BypassToServer('02'); Delay(1000); Engine.BypassToServer('0c'); Delay(1000); Engine.BypassToServer('01f'); Delay(1000); Engine.NpcExchange(728, 2); //728 mp id, 2 is count how many buy it delay(1000); end; result:=false; end; function BuyShot:boolean; begin if not Inventory.User.ByID(1463, Shot) or (Shot.count<900) then begin //1463 is d grade shot id, change for your shot id, 900 or less then buy shots result:=true; Delay(1000); Engine.BypassToServer('_bbshome'); //alt and b to shots Delay(1000); Engine.BypassToServer('02'); Delay(1000); Engine.BypassToServer('0c'); Delay(1000); Engine.BypassToServer('020'); Delay(1000); Engine.NpcExchange(1463, 50); //1463 id, 50 is count wich buy delay(1000); end; result:=false; end; function deadCheck: Boolean; begin Result := false; if User.Dead then begin Result := true; Print('Dead. Pressing to village.'); Delay(1000); Engine.FaceControl(0,false); Engine.GoHome; Delay(10000); end; end; begin while true do begin delay(150); //town coordinates range //buff id wich check //shot id //mp id if user.inrange(-83064, 150600, -3104, 5000) and User.Buffs.ByID(1062, buffCheck) and Inventory.User.ByID(1463, BuyShot) and Inventory.User.ByID(728, BuyMP) then begin Print('Teleport.'); delay(1000); Engine.BypassToServer('_bbshome'); //alt and b where teleport delay(1000); Engine.BypassToServer('02'); delay(1000); Engine.BypassToServer('0a'); delay(1000); Engine.BypassToServer('031'); delay(1000); Engine.BypassToServer('0a'); Delay(10000); end; if user.inrange(-41555, 210012, -5064, 300) then begin //coordinates after teleport Print('Moving'); Engine.MoveTo(-41608, 210904, -5064); //path to spot Engine.MoveTo(-41752, 210984, -5064); Engine.MoveTo(-42696, 210984, -5064); Print('ON!'); Delay(500); Engine.FaceControl(0, true); //turn on bot while not deadCheck do delay(1000); //while not dead, do nothing and wait. end; end; end. Credits i think adr.bot Edited January 23, 2016 by Anitah
marleey777 Posted January 23, 2016 Author Posted January 23, 2016 what is old talesky and what is alt + b lol?
marleey777 Posted January 23, 2016 Author Posted January 23, 2016 What does Engine.bypasstoserver mean
marleey777 Posted January 23, 2016 Author Posted January 23, 2016 (edited) varitem: TL2Item; function buffCheck: Boolean;var buff: TL2Buff;begin if not User.Buffs.ByID(15653, buff) then begin Result:=true; Print('Buffs are needed. Buffing...'); Engine.UseItem(736); Delay(65000); Engine.MoveTo(207208, 86855, -1053); Delay(5000); Engine.SetTarget(32327); // NPC ID Delay(500); Engine.DlgOpen; Delay(500); Engine.DlgSel(1); Delay(500); Engine.DlgSel(2); Print('Buffed.'); Engine.MoveTo(207448, 86909, -1041); Engine.MoveTo(207474, 86590, -1032); end;Result:=false;end;function deadCheck: Boolean;beginResult := false; if User.Dead then begin Result := true; Print('Dead. Pressing to village.'); Delay(1000); Engine.FaceControl(0,false); Engine.GoHome; Delay(10000); end;end;beginwhile true do begindelay(150); if User.Buffs.ByID(15653, buffCheck) then begin Engine.MoveTo(207526, 86582, -1032); Delay(2400); Print('Teleport to Apostate.'); Engine.SetTarget(32912); Engine.DlgOpen; Delay(500); Engine.DlgSel(1); Delay(5000); end; if User.Buffs.ByID(15653, buffCheck) then begin Print('Apostate. Moving to spot'); Engine.MoveTo(215609, 79801, 800); Engine.MoveTo(215640, 79803, 800); Engine.MoveTo(215551, 79888, 800); Engine.MoveTo(217136, 78632, 901); Engine.MoveTo(217274, 78575, 933); Engine.MoveTo(217654, 78308, 1016); Engine.MoveTo(217611, 77029, 979); Engine.MoveTo(-13736,-247848,-8160); Print('AA farm: ON!'); Delay(500); Engine.FaceControl(0, true); while not deadCheck do delay(1000); //while not dead, do nothing and wait. end;end;end. this is what i have so far Edited January 23, 2016 by marleey777
Anitah Posted January 24, 2016 Posted January 24, 2016 (edited) What does Engine.bypasstoserver mean Hmm me english so bad for explain that, but in "x" servers this Engine.DlgSel(1); dont work cause u need use "bypass" so you need use Engine.bypasstoserver Edited January 24, 2016 by Anitah
Anitah Posted January 28, 2016 Posted January 28, 2016 it WORKED for a while but now dont. Can you explain more? xD
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now