Page 1 of 1

Проблема с массивом.

Posted: 2006-11-09 15:41:44
by slonopotam
Вот скрипт. Нужно чтоб чар просто непрерывно искал вокруг себя итемы и узал их. Скрипт ругается на какуюто ошибку, пишет чтото вроде "анкловн пасте".

Code: Select all

sub start()
LoR()
   wait(100)
end sub

sub LoR()
   DIM Regs[10]
R[0] = '0x0000'
R[1] = '0x0000'
R[2] = '0x0000'
R[3] = '0x0000'
R[4] = '0x0000'
R[5] = '0x0000'
R[6] = '0x0000'
R[7] = '0x0000'
R[8] = '0x0000'
R[9] = '0x0000'
   VAR i
   For i = 0 To 9
      If UO.Count( R[ i ] ) == 0 Then
         wait( 100 )
UO.UseFromGround( R[ i ] )
         wait( 100 )
      Endif
   Next
endsub


Что в нем не так??

Posted: 2006-11-09 16:18:03
by Edred
1. Объявляешь массив Regs[], а элементы записываешь в массив R[].

2. На фиг задержка перед юзитем?

3. Слишком маленькая после юзитем

4. Почему все элементы массива '0x0000'?

Posted: 2006-11-09 17:06:10
by slonopotam
Исправил все. Мне пишет :
Unhandled exception in parser.

Posted: 2006-11-09 17:08:58
by slonopotam
Аааа.. Забыл repeat. :D

Posted: 2006-11-10 00:38:53
by slonopotam
Edred wrote:
2. На фиг задержка перед юзитем?

3. Слишком маленькая после юзитем

4. Почему все элементы массива '0x0000'?

Без первой паузы скрипт слетает с цыкла.
После юзания задержки 100 хватает, по крайней мере без лагов.
Если вместо нее вставить чеклаг, то скрипт опятьже слетает с цикла.
Все типы 0х0000, так как это тест вариант.

Posted: 2006-11-10 04:00:18
by Edred
slonopotam wrote:Без первой паузы скрипт слетает с цыкла.
После юзания задержки 100 хватает, по крайней мере без лагов.
Если вместо нее вставить чеклаг, то скрипт опятьже слетает с цикла.
Все типы 0х0000, так как это тест вариант.


Пауза перед действием, использование объекта, пауза после. В цикле. А теперь подумай. Еще подумай. Посчитай в голове, как это происходит на каждом шаге цикла. Дотумкал? Нет?

Первый шаг: пауза, использование, пауза
Второй шаг: пауза, использование, пауза
...
И что получается? между использованием предметов у тебя две паузы. Так на фига она, вторая? Поставь после использования двойную, и все будет ок.

Posted: 2006-11-10 04:11:20
by slonopotam
Мда... слетал скрипт изза маленькой паузы, оставил 1 больше и все ок.

Posted: 2006-11-10 09:50:43
by Savage
Паузы меньше 300 в простых скриптах нет смысла делать - токо комп нагружать. В ходилке например, в режиме бега, будет актуальна маленькая пауза.

Posted: 2006-11-10 15:24:29
by slonopotam
На шарде дрв маленькие паузы не покатят, там блокировка. А на антаресе можно. Я там использую "узеитем" с задержкой 50.

Posted: 2006-11-11 05:48:22
by Scripts Writer
Юзитем с 50 . =\ Свежо придание, да верится с трудом.

Posted: 2006-11-11 07:05:23
by slonopotam
А как вот это??

Code: Select all

UO.FindType('food','-1','ground')
while UO.FindCount()
UO.UseObject('finditem')
UO.FindType('food','-1','ground')
UO.Ignore('finditem')
Вэлком на Антарес. :D