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

Mining SA

Only working scripts
ArrogantFC
Neophyte
Neophyte
Posts: 11
Joined: 21.03.2013 16:28

Re: Mining SA

Post by ArrogantFC »

По разору гампы идут 5 , 11 ,17, 23 и т.д. В стелсе на шифт 5 открывает портал.
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Re: Mining SA

Post by Fenix »

Впервые встречаю случай, чтобы коды возврата в разоре и стелсе расходились (не надо пенять на то, что в стелсе нумерация идет с нуля, это здесь не при чем).
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
ArrogantFC
Neophyte
Neophyte
Posts: 11
Joined: 21.03.2013 16:28

Re: Mining SA

Post by ArrogantFC »

Тогда не знаю, что здесь замешано
shinma
Expert
Expert
Posts: 505
Joined: 28.04.2011 12:05

Re: Mining SA

Post by shinma »

ниччего.возьми мою функцию и отдельным скриптом проверь
--->>>ПОИСК ПО ФОРУМУ, НАЧНИ С НЕГО!!!<<<---
--->>>Search the forum, start with him!!!<<<---
95% Ваших вопросов уже кем-то написаны и решены.
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Re: Mining SA

Post by Fenix »

Скрипт для проверки:

Code: Select all

const
  RuneBook = $00000000; // ID рунбуки
  ReturnID = 5; //Код возврата гампа рунбуки

var
  i: Integer;

begin
  while Isgump() do CloseSimpleGump(0);
  Wait(1000);
  UseObject(RuneBook);
  for i = 1 to 5 do begin
    Wait(1000);
    if IsGump() then begin
      NumGumpButton(0, ReturnID);
      break;
    end;
  end;
end.
ReturnID перебирай в следующем порядке: 5, 11, 17, 23, 29, 35. Описание с действиями чара по каждой проверке кинь сюда.

А вообще мне кажется, что ArrogantFC вводит нас в заблуждение. Т.к. я уже сталкивался раньше с подобной схемой "адресации" рун в рунбуке, причем она прекрасно работала. Вот отрывки:

Code: Select all

function RecallRune(RuneBook: Cardinal; Rune: Byte):Boolean;
var
  Counter: Byte;
  X, Y: Word;
begin
  Result := False;
  X := GetX(Self);
  Y := GetY(Self);
  CheckLag(LagWait);
  Wait(WaitTime);
  while Isgump do CloseSimpleGump(0);
  if Dead or not Connected then Exit;
  UseObject(RuneBook);
  CheckLag(LagWait);
  Counter := WaitCycles;
  while Counter > 0 do begin
    if IsGump then Break;
    Wait(WaitTime);
    CheckLag(LagWait);
    Inc(Counter);
  end;
  if IsGump then begin
    if NumGumpButton(0, Rune * 6 + RuneBookShift) then begin
      CheckLag(LagWait);
      Wait(RecalTime);
      CheckLag(LagWait);
      Result := (X <> GetX(Self)) or (Y <> GetY(Self));
    end else Result := False;
  end else Result := False;
end;

Code: Select all

RuneBookShift = 7; //5 for Recal, 6 for Gate Travel, 7 for Sacred Journey
Делал эти правки по просьбе Ooops.
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
Half-Life
Novice
Novice
Posts: 86
Joined: 30.10.2012 12:06
Location: Одесса
Contact:

Re: Mining SA

Post by Half-Life »

Кто может переделать скрипт так, что бы он не плавил металл, а скидывал его в сундук. А из сундука брал нужное количество переплавленного металла и ложил в пак?
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Re: Mining SA

Post by Fenix »

Потратив немного времени и приложив чуточку усилий ты сам можеш это сделать. Достаточно убрать использование метода для переплавки и выкладывания металла. Потом дописать в массив с типами драгоценных камней типы руды, которую тоже нужно каждый раз выкладывать из бекпака. По забору стали для инструментов нужно анализировать код, который выкладывает метал из бекпака. Взять кусок, который проверяет количество айрона в рюкзаке, а потом просто прописать забор нужного количества из сундука (не забываем открывать сундук перед тем как из него что-нибудь взять).
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
Half-Life
Novice
Novice
Posts: 86
Joined: 30.10.2012 12:06
Location: Одесса
Contact:

Re: Mining SA

Post by Half-Life »

Потратив немного времени и приложив чуточку усилий ты сам можеш это сделать. Достаточно убрать использование метода для переплавки и выкладывания металла. Потом дописать в массив с типами драгоценных камней типы руды, которую тоже нужно каждый раз выкладывать из бекпака. По забору стали для инструментов нужно анализировать код, который выкладывает метал из бекпака. Взять кусок, который проверяет количество айрона в рюкзаке, а потом просто прописать забор нужного количества из сундука (не забываем открывать сундук перед тем как из него что-нибудь взять).
Уже всё работает.) и не обкапывает вокруг себя а копает по кочкам. Быстро и удобно. Камней в 2-3 раза больше выкапывает.)
peis
Neophyte
Neophyte
Posts: 19
Joined: 31.08.2012 15:47

Re: Mining SA

Post by peis »

Все вроде настроил, в паке 2 рунбука, но он при старте скрипта начинает рекалиться на первую руну (как и надо) к дому, после рекола продолжает тупо рекалиться на эту руну, не пойму что ему надо :(
globaluo
Neophyte
Neophyte
Posts: 40
Joined: 06.02.2013 9:58

Re: Mining SA

Post by globaluo »

Помогите настроить скрипт чтобы он копал скалы
Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Re: Mining SA

Post by Stels »

В чем может быть причина, что скрипт перестал работать после обновления стелсклиента?

В дебаге уходит в бесконечный цикл вот на этой строчке

Code: Select all

while Isgump do CloseSimpleGump(0);
Если ее коментить, то он тупо начинает открывать поочереди книги дома и шахт.

Может кто уже решил данную проблему?
Gauhar
Novice
Novice
Posts: 87
Joined: 08.07.2008 17:40

Re: Mining SA

Post by Gauhar »

По всей видимости, у какого-то гампа есть свойство NoClose, поэтому его нельзя закрыть с помощью CloseSimpleGump. Поэтому предлагаю воспользоваться таким вариантом:

Code: Select all

Procedure CloseSimpleGumps();
Var
   i: Integer;
Begin
   if GetGumpsCount > 0 then
      for i := GetGumpsCount - 1 downto 0 do
         if IsGumpCanBeClosed(i) then CloseSimpleGump(i);
End;
Везде где втречаются

Code: Select all

while Isgump do CloseSimpleGump(0);
заменить на

Code: Select all

CloseSimpleGumps();
Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Re: Mining SA

Post by Stels »

не помогло.

Он теперь уходит в бесконечный цикл поочередного открытия рунбук.

Забыл уточнить - постоянно выскакивает надпись в журнале You see: backpack по строчке

Code: Select all

CheckLag(LagWait);
и судя по дебагу эта строчка

Code: Select all

NumGumpButton(0, Rune * 6 + RuneBookShift)
всегда равна 0 из-за чего не срабатывает рекол после открытия
Gauhar
Novice
Novice
Posts: 87
Joined: 08.07.2008 17:40

Re: Mining SA

Post by Gauhar »

Если есть гампы которые нельзя закрыть, то логично будет то, что гамп рунбуки не будет нулевым, следовательно надо сделать так:

Code: Select all

NumGumpButton(GetGumpsCount-1, Rune * 6 + RuneBookShift)
Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Re: Mining SA

Post by Stels »

Gauhar wrote:Если есть гампы которые нельзя закрыть, то логично будет то, что гамп рунбуки не будет нулевым, следовательно надо сделать так:

Code: Select all

NumGumpButton(GetGumpsCount-1, Rune * 6 + RuneBookShift)
благодарю!))
Post Reply