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

Скрипт на мининг от Edred`a

тут можно задать вопрос по скриптингу
CFA
Developer
Developer
Posts: 492
Joined: 20.04.2006 6:03
Contact:

Post by CFA »

в ошибке Out Of Range цифры к номерам строк не имеют никакого отношения.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

потому что это номер процедуры и номер строки в ней, только это касается откомпилированого варианта, и к обычному исходнику это аж вообще никак не относится и не соответствует.

надо наверное вообще эти циферки убрать, дабы не смущать.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Antoska
Neophyte
Neophyte
Posts: 45
Joined: 10.07.2009 22:21
Location: Латвия, Рига

Post by Antoska »

Code: Select all

program MineBot; 

// v.2.08 (c) Edred 

{$Include 'all.inc'} 

const 
r1 = 10; r2 = 12; r3 = 8; 
rmax = 12;                                 // максимальный 
M_nothing1 = 'There is nothing here'; 
M_nothing2 = 'That is too far'; 
M_nothing3 = 'Try mining elsewhere.'; 
M_nothing4 = 'You cannot mine so close'; 
M_nothing5 = 'You have no line of sight to that location'; 
M_nothing6 = 'reach'; 
M_fizzles1 = 'You loosen some rocks'; 
M_fizzles2 = 'не смогли выкопать ничего'; 
M_needwait = 'You decide not to mine'; 
M_success = 'in your pack.'; 
MaxLimit = 10;               // максимальное кол-во физлов одной точки 
Pickaxe1 = $0E85;            // Типы кирок 
Pickaxe2 = $0E86; 
AnkhID = $40009C73;            // сериал креста для реса  
Ore1 = $19B7;               // 1 Ore 
Ore2 = $19BA;               // 2 Ore 
Ore3 = $19B8;               // 3 Ore 
Ore4 = $19B9;               // 4 Ore 
Boris = $00B18697;  
Sunduk = $405DA266;  
DeadLife = 40;               // Временно - если меньше здоровья - мы мертвы 
                        // Точнее, проверить через реконнект. 

type Rail = array[1..rmax] of Integer; 

var 
Rail_1, Rail_2, Rail_3, StartMinPoint : Rail; 
minret, MyMaxWeight,StartFlag, CaveLimit : integer; 
IronCnt,BronzeCnt,CopperCnt,OzoneCnt,ShadowCnt : Integer; 
BlueSteelCnt,CrinitCnt,SkyCnt,SteelCnt,DarkSteelCnt : Integer; 
BlackSteelCnt,MytherilCnt,SilverCnt,GoldenCnt,PlutoniumCnt,HowManyDischarge : Integer; 
ResCnt : Integer; 
ScriptStartTime : TDateTime; 

flag1 : Boolean; 


   function InitConfig : Boolean; 
   // Настройка переменных под конкретного чара 
   begin 
      Result := true; 
      // Rail_1: сундук - шахта 
      Rail_1[1] := 1887; Rail_1[2] := 266; 
      Rail_1[3] := 1888; Rail_1[4] := 266; 
      Rail_1[5] := 1888; Rail_1[6] := 272; 
      Rail_1[7] := 1893; Rail_1[8] := 272; 
      Rail_1[9] := 1896; Rail_1[10] := 272;  
      // Rail_2: сундук - ГЗ 
      Rail_2[1] := 1887; Rail_2[2] := 266; 
      Rail_2[3] := 1888; Rail_2[4] := 266; 
      Rail_2[5] := 1888; Rail_2[6] := 272; 
      Rail_2[7] := 1856; Rail_2[8] := 272; 
      Rail_2[9] := 1847; Rail_2[10] := 281; 
      Rail_2[11] := 1845; Rail_2[12] := 333;  
      // Rail_3: ГЗ - крест 
      Rail_3[1] := 1845; Rail_3[2] := 333; 
      Rail_3[3] := 1845; Rail_3[4] := 359; 
      Rail_3[5] := 1834; Rail_3[6] := 359; 
      Rail_3[7] := 1834; Rail_3[8] := 360;  
      // Счетчики разгруженной руды 
      IronCnt := 0; 
      BronzeCnt := 0; 
      CopperCnt := 0; 
      OzoneCnt := 0; 
      ShadowCnt := 0; 
      BlueSteelCnt := 0; 
      CrinitCnt := 0; 
      SkyCnt := 0; 
      SteelCnt := 0; 
      DarkSteelCnt := 0; 
      BlackSteelCnt := 0; 
      MytherilCnt := 0; 
      SilverCnt := 0; 
      GoldenCnt := 0; 
      PlutoniumCnt := 0; 
      ResCnt := 0;  
 
      if self = Boris then 
      begin 
         MyMaxWeight := 620; 
         StartMinPoint[1] := 1896; 
         StartMinPoint[2] := 272; 
         StartMinPoint[3] := 1901; 
         StartMinPoint[4] := 271; 
         StartMinPoint[5] := 1906; 
         StartMinPoint[6] := 271; 
	 StartMinPoint[7] := 1912; 
	 StartMinPoint[8] := 273; 
	 StartMinPoint[9] := 1916;
	 StartMinPoint[10] := 282;   
	 StartMinPoint[11] := 1921;
	 StartMinPoint[12] := 276; 
	 StartMinPoint[13] := 1919;
	 StartMinPoint[14] := 272; 
	 StartMinPoint[15] := 1922;
	 StartMinPoint[16] := 267;
	 StartMinPoint[17] := 1923;
	 StartMinPoint[18] := 262; 
	 StartMinPoint[19] := 1927;
	 StartMinPoint[20] := 262;             
         CaveLimit := 1930; 
         exit; 
      end;   
      // Если дошли до сюда - это плохо! 
      Result := false; 
      addtosystemjournal('Error: Не могу настроиться под чара!'); 
      exit; 
   end;
Строка 28:

Code: Select all

Boris = $00B18697;  
Mirage
Novice
Novice
Posts: 90
Joined: 18.07.2009 19:41

Post by Mirage »

:lol: Твой чар Борис? Поправь - свое ID поставь.
Antoska
Neophyte
Neophyte
Posts: 45
Joined: 10.07.2009 22:21
Location: Латвия, Рига

Post by Antoska »

Mirage wrote::lol: Твой чар Борис? Поправь - свое ID поставь.
Ты тему то читал хоть?
Edred
Moderator
Moderator
Posts: 559
Joined: 28.03.2006 21:29

Post by Edred »

CFA wrote:в ошибке Out Of Range цифры к номерам строк не имеют никакого отношения.
Хмм, я уже все забыл...
Edred
Moderator
Moderator
Posts: 559
Joined: 28.03.2006 21:29

Post by Edred »

Что-то я не понял, что автор топика (Antoska) хочет.

Тебе ведь указали, где ошибка:
Vizit0r wrote:
Antoska wrote:

Code: Select all

const 
rmax = 12;                                 // максимальный 

type Rail = array[1..rmax] of Integer; 
от 1 до 12.
а у тебя

Code: Select all

    StartMinPoint[20] := 262;
а у тебя от 1 до 20.
Ты написал, что исправил:
Antoska wrote:Поставил на 20 все равно ошибку выдает.
Потом я прошу тебя запостить начало исправленного скрипта, и получаю:
Antoska wrote:

Code: Select all

program MineBot; 

// v.2.08 (c) Edred 

{$Include 'all.inc'} 

const 
r1 = 10; r2 = 12; r3 = 8; 
rmax = 12;                                 // максимальный 
И где ты исправил значение rmax? Как было 12, так и осталось.
Antoska
Neophyte
Neophyte
Posts: 45
Joined: 10.07.2009 22:21
Location: Латвия, Рига

Post by Antoska »

Я вернул обратно на 12. Я просто у себя в скрипте закомментировал 6-10 точку для обкопки, а перед тем как запостить начало скрипта раскомментировал. Ошибку выдавало и тогда когда rmax было 20.
Antoska
Neophyte
Neophyte
Posts: 45
Joined: 10.07.2009 22:21
Location: Латвия, Рига

Post by Antoska »

Странно, начал добавлять постепенно по одной точке и все работает... :roll:
Edred
Moderator
Moderator
Posts: 559
Joined: 28.03.2006 21:29

Post by Edred »

Когда просят запостить кусок скрипта - надо постить именно тот вариант, при запуске которого выдает ошибку. Не исправлять что-то перед этим, комментировать, убирать комменты и т. д. - потому что телепаты в отпуске и что у тебя было в скрипте до исправлений никто не знает.
Antoska
Neophyte
Neophyte
Posts: 45
Joined: 10.07.2009 22:21
Location: Латвия, Рига

Post by Antoska »

Просто я забыл исправить, прошу прощения.
Post Reply