Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Camping DRW

Only working scripts
Post Reply
v26RuS
Novice
Novice
Posts: 61
Joined: 18.05.2008 16:07
Location: DRW
Contact:

Camping DRW

Post by v26RuS »

Простенький Camping для DRW описание по пользованию в скрипте

Code: Select all

Program CampingDrw; 
{$Include 'all.inc'} 
// (c) v26RuS (Galiano{ASTARTA} DRW)
// Простенький скрипт для прокачки кемпинга, 
// Становимся дома около сундука откуда брать хворост, он берет хворос летить к месту выкладки
// передвигается по направлению на цифровой клаве 1 (нуп пад)
// кончаеться хворост летит домой добирает и по новой при неуспешном поджиге пробует еще раз.
// Доходит до финальнай кординаты опять летит домой добираеться и по новой
const 
Hvorost = $0DE1; // Тип хвороста 
Sunduk_of_hvorost = $40591B82; // Сундук откуда брать хворост
finalx = 1025; // Финальная кордината Х
r_home = 21; // Руна домой в РБ №1
r_hvor = 1025; // Руна к месту выкладки хвороста в РБ №9
runebook = $40591B82; // Ид рунбуки
final = 0; // Переменная для работы скрипта не менять
var
 mx: integer;
 CampingFlag : Boolean;  
 x, y : Integer;

   procedure CheckDead; 
Begin 
if Dead then 
begin 
AddToSystemJournal('Персонаж мертв: '+TimeToStr(now)); 
CampingFlag := false;
FullDisconnect; 
end 
      end; 


   procedure recal_rb(rune : integer); 
   var tmpr : Integer; 
   mx, my, k, Res : Integer; 

   begin 
    repeat
      Res := 0; 
        CheckDead; 
        AddToSystemJournal('Try to recall');
	tmpr := rune;
	waitgump(IntToStr(tmpr));
        wait(1000)
	UseObject(runebook);
	mx := GetX(self);
	my := GetY(self);
		k := 0;
	repeat
		wait(500)
		k := k + 1;
		CheckSave;
	until (mx<>GetX(self)) or (my<>GetY(self)) or Dead or (k = 20)

	if (mx<>GetX(self)) or (my<>GetY(self)) then Res := 1;

   until Res = 1;

   end;

procedure doborhv;
 begin 
  FindType(Hvorost,Backpack); 
  if (FindCount=0) OR (Count(Hvorost)<10) then 
    begin 
      UseObject(Sunduk_of_hvorost); 
      wait(250); 
      FindType(Hvorost,Sunduk_of_hvorost); 
      if (FindCount>0) and (CountEx(Hvorost,$0000,Sunduk_of_hvorost)>10) then 
        begin 
          MoveItem(FindItem,200,Backpack,0,0,0); 
          wait(250); 
          AddToSystemJournal('Добрали 200 хвороста. На данный момент имеем '+IntToStr(Count(Hvorost))+' штук. Осталось ещё '+IntToStr(CountEx(Hvorost,$0000,Sunduk_of_hvorost))+' хвороста.'); 
        end 
      else 
        AddToSystemJournal('Ошибка во время добора хвороста.'); 
	CampingFlag := false;
    end;
end;

procedure mover;
begin
  mx := GetX(self);
  repeat
   Raw_Move(2,true);
  until (GetX(Self) = mx+6) or (GetX(Self) = finalx);

end;

BEGIN 
CampingFlag := true;
FindDistance:=3;
  repeat
    checkdead;
    doborhv;
    if CampingFlag = true then recal_rb(r_hvor);
      repeat
	mx := GetX(self);
	 for x := -3 to 3 do
	 begin
	  for y := -3 to 3 do
	  begin
		FindType(Hvorost,Backpack);
		if Findcount = 0 then exit;
		Drop(FindItem,1,GetX(self)+x, GetY(self)+y, GetZ(self));
		AddToSystemJournal('Выложили хворост');
		wait(500);
		FindType(Hvorost,ground);
		 repeat
		  AddToSystemJournal('Пытаюсь зажечь хворост');
		  UseObject(FindItem);
		  wait(2000)
  		  FindType(Hvorost,ground);
		 until FindCount < 1;
		 AddToSystemJournal('Зажгли хворост');
		 wait(500)
	  end;
	 end;
	mover;
      until (Count(Hvorost)=0) or (final=1) or (CampingFlag = false);
    if CampingFlag = true then recal_rb(r_home);

  until (CampingFlag = false) OR (GetSkillValue('Camping') = 100);

END.
Невозможное возможнО!
Unholy
Novice
Novice
Posts: 119
Joined: 23.06.2008 2:26
Location: DRW

Post by Unholy »

Хм... есть только 1 вопрос, Зачем куда-то летать чтоб выложить хворост?

Но скрипт конечно Гуд! Я не спорю!
v26RuS
Novice
Novice
Posts: 61
Joined: 18.05.2008 16:07
Location: DRW
Contact:

Post by v26RuS »

На сколько я знаю на одно и то же место ложить нельзя пока не прогорит, а так ты полетел выложил все вокруг себя поджег перешел на новое место и по новой...
Невозможное возможнО!
RaTaMaHaTTa
Novice
Novice
Posts: 89
Joined: 16.06.2008 12:22
Location: <||TORCHKI||>
Contact:

Post by RaTaMaHaTTa »

v26RuS wrote:На сколько я знаю на одно и то же место ложить нельзя пока не прогорит, а так ты полетел выложил все вокруг себя поджег перешел на новое место и по новой...
Кочал давно могу ошибится , вроде стоял по кругу раскидавал и нормально.
Post Reply