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

bowcraft

тут можно задать вопрос по скриптингу
Ozon
Neophyte
Neophyte
Posts: 11
Joined: 13.12.2010 5:49

bowcraft

Post by Ozon »

Code: Select all

спасибо, помощь не требуеться
Проблема состоит в том, что чар забивает 1 сумку луками, ложит на пол, а потом луки сбрасывает на пол. Хотя должен закидывать в сумку и потм бросать... Подскажите что не так? пожалуйста!
Last edited by Ozon on 26.12.2010 1:33, edited 1 time in total.
Ozon
Neophyte
Neophyte
Posts: 11
Joined: 13.12.2010 5:49

Post by Ozon »

Неужели никто не поможет? :(
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Post by Fenix »

На первый взгляд всё нормально. Переписывать скрипт под свой шард - лень. Если я правильно понял, первый проход скрипт отрабатывает корректно. Он после того как сумку скинул на пол новую из сундука забирает? И вообще, в первый проход при запуске скрипта у него сумка уже в бекпаке или он её самостоятельно из сундука вытягивает?
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
Ozon
Neophyte
Neophyte
Posts: 11
Joined: 13.12.2010 5:49

Post by Ozon »

Все сумки лежат в сундуке, он достает её, забивает до максимума и сбрасывает... Новую сумку помойму не берет.
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Post by Fenix »

Ну значит стоит копать в методе забора сумок. К тому же, если ID контейнера нулевой при MoveItem, то предмет перемещается на землю. Так что проверяй Get_Bag. Можешь добавить отладочной информации:

Code: Select all

procedure Get_Bag;
begin
  CheckLag(30000);
  if FindType(Bag, Backpack) = 0 then
  begin
    UseObject(Sunduk_With_Empty_Bags);
    Wait(1000);
    CheckLag(30000);
    if FindType(Bag, Sunduk_With_Empty_Bags) = 0 then
    begin
      AddToSystemJournal('Сумки в сундуке не найдены');
    end
    else
    begin
      MoveItem(FindItem, 1, Backpack, 0, 0, 0);
      Wait(1000);
      CheckLag(30000);
      UseObject(FindItem);
      Wait(1000);
      CheckLag(30000);
      if FindType(Bag, Backpack) = 0 then
      begin
        AddToSystemJournal('Не удалось взять сумку');
      end
      else
      begin
        BagId := FindItem;
        AddToSystemJournal('Взяли сумку');
      end;
    end;
  end;
end;
А дальше уже смотри по отладочной информации.
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
Ozon
Neophyte
Neophyte
Posts: 11
Joined: 13.12.2010 5:49

Post by Ozon »

Fenix wrote:Ну значит стоит копать в методе забора сумок. К тому же, если ID контейнера нулевой при MoveItem, то предмет перемещается на землю. Так что проверяй Get_Bag. Можешь добавить отладочной информации:

Code: Select all

procedure Get_Bag;
begin
  CheckLag(30000);
  if FindType(Bag, Backpack) = 0 then
  begin
    UseObject(Sunduk_With_Empty_Bags);
    Wait(1000);
    CheckLag(30000);
    if FindType(Bag, Sunduk_With_Empty_Bags) = 0 then
    begin
      AddToSystemJournal('Сумки в сундуке не найдены');
    end
    else
    begin
      MoveItem(FindItem, 1, Backpack, 0, 0, 0);
      Wait(1000);
      CheckLag(30000);
      UseObject(FindItem);
      Wait(1000);
      CheckLag(30000);
      if FindType(Bag, Backpack) = 0 then
      begin
        AddToSystemJournal('Не удалось взять сумку');
      end
      else
      begin
        BagId := FindItem;
        AddToSystemJournal('Взяли сумку');
      end;
    end;
  end;
end;
А дальше уже смотри по отладочной информации.
Добавил в скрипт, все время рунаеться на "CheckLag"
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

CheckLag(xxx); меняй на CheckLag;
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Post by Fenix »

Это же какой версии стелс должен быть чтобы CheckLag(timeoutMS: Integer): Boolean не поддерживать? Кстати, к простому CheckLag не помешал бы инклуд на него.
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

гыгы. я подумал что наоборот, тот что с параметром, это с инклюда, а без - вшитый, оказалось что наоборот.
Склероз, однако.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Ozon
Neophyte
Neophyte
Posts: 11
Joined: 13.12.2010 5:49

Post by Ozon »

Fenix wrote:Это же какой версии стелс должен быть чтобы CheckLag(timeoutMS: Integer): Boolean не поддерживать? Кстати, к простому CheckLag не помешал бы инклуд на него.
Запустил на стелсе 3.2.4, всеравно сбрасывает арбали под себя(после 1 пака). Просто в наглую не хочет брать новый пак....
Fenix
Developer
Developer
Posts: 275
Joined: 24.08.2010 7:20
Location: Ставрополь
Contact:

Post by Fenix »

Ну а сообщения какие хоть выводит? Сумку не находит или тупо её не перетаскивает себе в бекпак?
Помните – ничто так не защищает ваши зубы 12 часов днем и 12 часов ночью как уважительное отношение к окружающим.
"Многие из вас знакомы с достоинствами программиста. Их всего три, и разумеется это: лень, нетерпеливость и гордыня"© Larry Wall
Macks
Apprentice
Apprentice
Posts: 250
Joined: 27.02.2006 22:23
Location: АоП - Age Of Power

Post by Macks »

Fenix wrote:Ну а сообщения какие хоть выводит? Сумку не находит или тупо её не перетаскивает себе в бекпак?
Из этих:

AddToSystemJournal('Сумки в сундуке не найдены');
AddToSystemJournal('Не удалось взять сумку');
AddToSystemJournal('Взяли сумку');
Ozon
Neophyte
Neophyte
Posts: 11
Joined: 13.12.2010 5:49

Post by Ozon »

Ребят, помогите пожалуйста, очень надо!!!!
shinma
Expert
Expert
Posts: 505
Joined: 28.04.2011 12:05

Re: bowcraft

Post by shinma »

Vizit0r wrote:гыгы. я подумал что наоборот, тот что с параметром, это с инклюда, а без - вшитый, оказалось что наоборот.
Склероз, однако.
{$Include 'all.inc'}

Code: Select all

checklag;
Invalid number of parameters

Code: Select all

checklag(3000);
 Invalid number of parameters
Стелс 3.8.1
--->>>ПОИСК ПО ФОРУМУ, НАЧНИ С НЕГО!!!<<<---
--->>>Search the forum, start with him!!!<<<---
95% Ваших вопросов уже кем-то написаны и решены.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: bowcraft

Post by Vizit0r »

внешний чеклаг (из инклюда или скрипта) затирает встроенный.
значит у тебя в инклюдах чеклаг с другим кол-вом параметров...
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Post Reply