Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var BreakMove: Boolean;
- QuestItem: TL2Item;
- Item: TL2Item;
- Attacker: TL2Live;
- procedure teleportEvt;
- begin
- if user.inrange(11896, 15756, -4552, 3500) then
- begin
- Print('System: Starting the quest.');
- Engine.MoveTo(12040, 16448, -4611);
- Engine.MoveTo(11720, 16125, -4601);
- Engine.MoveTo(11874, 15799, -4581);
- Engine.MoveTo(11896, 15756, -4552);
- Engine.SetTarget(30137); // NPC.
- Engine.DlgOpen; Delay(500);
- Engine.DlgSel(3); Delay(500);
- Engine.DlgSel(1); Delay(500);
- Engine.DlgSel(1); Delay(500);
- end;
- end;
- procedure startQuestEvt;
- begin
- if user.inrange(11896, 15756, -4552, 3500) then
- begin
- Print('System: Starting the quest.');
- Engine.MoveTo(12040, 16448, -4611);
- Engine.MoveTo(11720, 16125, -4601);
- Engine.MoveTo(11874, 15799, -4581);
- Engine.MoveTo(11896, 15756, -4552);
- Engine.SetTarget(30137); // NPC.
- Engine.DlgOpen; Delay(500);
- Engine.DlgSel(3); Delay(500);
- Engine.DlgSel(1); Delay(500);
- Engine.DlgSel(1); Delay(500);
- Engine.MoveTo(11720, 16125, -4601);
- Engine.MoveTo(11874, 15799, -4581);
- Engine.MoveTo(11896, 15756, -4552);
- Engine.MoveTo(10168, 16771, -4611);
- Engine.MoveTo(9926, 16012, -4601);
- Engine.MoveTo(9821, 15695, -4601);
- Engine.MoveTo(9752, 15556, -4600);
- Engine.SetTarget(30134); // Gatekeeper: Mint.
- Engine.DlgOpen;
- Engine.DlgSel(1);
- Engine.DlgSel(3);
- end;
- end;
- procedure walkingEvt;
- begin
- if user.inrange(-22224, 14168, -3232, 1000) then
- begin
- Print('System: Arrived in Dark Forest');
- Engine.FaceControl(0, True);
- Engine.LoadConfig('sispath');
- end;
- end;
- procedure questStatusEvt;
- begin
- if (Engine.QuestStatus(262, 1)) then
- begin
- Print('System: Quest status: 1');
- if user.inrange(-18103, 19275, -3756, 1500) then
- Engine.LoadConfig('sisfight');
- Delay(1 * 1000); // 1 seconds.
- end;
- if (Engine.QuestStatus(262, 2)) then
- begin
- Print('System: Quest status: 2.');
- Engine.FaceControl(0, false);
- Engine.EnterText('/unstuck');
- Delay(5 * 60000 + 10 * 1000); // 5 minutes + 10 seconds.
- end;
- end;
- procedure deathEvt;
- begin
- while (Engine.Status <> lsOnline) do Delay(500);
- if (User.Dead) then
- begin
- Print('System: Dead.');
- Engine.FaceControl(0, false);
- Engine.GoHome;
- end;
- end;
- begin
- Print('System: Looping the script.');
- while true do
- begin
- deathEvt;
- startQuestEvt;
- walkingEvt;
- teleportEvt;
- questStatusEvt;
- if Engine.Status = lsOffline then
- Delay(10 * 1000); // 10 seconds.
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement