Page 2 of 2

Posted: 2005-08-20 19:14:19
by netol
вопрос а зачем ему стамина и вчитайся еще раз в топ ;)

Posted: 2005-08-20 19:21:12
by Dron D.
Я не лочю стамину, я лочю дексу, но не пойму почему скрипт пишет на эту строку ошибку...
If Uo.Dex = 80 then ???

Posted: 2005-08-20 19:29:57
by Leo
Перепутал слово. :oops:

Posted: 2005-08-20 20:07:59
by Destruction
Dron D. wrote:Я не лочю стамину, я лочю дексу, но не пойму почему скрипт пишет на эту строку ошибку...
If Uo.Dex = 80 then ???

Оператор "=" приравнивает значений.
uo.dex - константа, которая содержит число, а как известно константу изменить нельзя, разумеется прет ошибка.

Вероятно ты хотел написать if uo.dex == 80 then

Кстате да, разве есть uo.dex ?

Posted: 2005-08-20 21:47:40
by Dron D.
Читай учебник )) По крайней мере эта константа там есть )) не знаю может она не работает на Фэнтэзи...

Posted: 2005-08-20 21:48:56
by Leo
У меня на UO.Dex выдаётся ошибка.

Posted: 2005-08-20 21:49:50
by netol
все вопросы к I'm :)

Posted: 2005-08-29 14:50:42
by Dron D.
Вот решил для пвп сделать скриптик, чтобы чар быстро лутал из трупа цветные арморы, если кто то выходит в них )), так вот я взял за основу скрипт на лут с разрезанием трупов, повырезал оттуда все что не надо, уменьшил паузы, но скрипт отказывается работать ...

Code: Select all


sub lootcolarm()
VAR WaitTime=100
VAR Exit=0, i
uo.exec("set finddistance 3")
DIM lootcolarm[6]
lootcolarm[0]=0x1412
lootcolarm[1]=0x1413
lootcolarm[2]=0x1414
lootcolarm[3]=0x1410
lootcolarm[4]=0x1415
lootcolarm[5]=0x1411
UO.UseObject('lastcorpse')
for i=0 to 6
repeat
uo.findtype(lootcolarm[i],'-1','lastcorpse')
if uo.findcount()>0 then 
UO.MoveItem('finditem',-1,'backpack') 
wait(100)
endif
until uo.findcount()==0
next
uo.print('LOOTING COMPLETED')  №
uo.exec("set finddistance 14") #Runtime Error
end sub


Всегда на одну и туже строку показывает ошибку: Runtime Error
даже если ету строку передвинуть вверх или низ, то он все равно показывает на конец скрипта...

Posted: 2005-08-29 14:54:01
by Leo
Мне кажется, с кавычками будет лучше :wink:

Code: Select all

...
lootcolarm[0]='0x1412'
lootcolarm[1]='0x1413'
lootcolarm[2]='0x1414'
lootcolarm[3]='0x1410'
lootcolarm[4]='0x1415'
lootcolarm[5]='0x1411'
...

Posted: 2005-08-29 15:01:25
by Dron D.
Подправил, однако скрипт что то глупит... Он октрывает тело, патом пишет ету ошибку опять же, и не чего не лутит....

Posted: 2005-08-29 15:03:57
by Leo

Code: Select all

uo.print('LOOTING COMPLETED')  №


А что это за :?:

Posted: 2005-08-29 16:57:24
by Dron D.
Ет просто опечатка тут в посте, я пытался показать куда ошибка указыает...

Я нашел ошибку:
for i 0 to 6
у меня было.. а надо было for i 0 to 5

Posted: 2005-08-29 17:02:38
by Leo
Я в массивах вообще предпочитаю 0 не использовать, меня это только сбивает.

Posted: 2005-08-29 17:03:26
by Dron D.
Хммм вот у меня такая просьба:
у меня где то в клиенте стоит чтобы показывались трупики животных, т.е. когда животное умирает то пишется Body of liaam [0 items], я так понимаю что скрипт видит только ето тело в округе, и скрипт открыает трупаик ламы и чистит его... вот можно как нить игнорить их трупы или проспсать чтоб писались тела игроков....

Posted: 2005-08-29 17:04:55
by Leo
Насколько я знаю нельзя.
Сделай проверку на тип, если тип трупа как у человека - лутим, если нет - не лутим.

Posted: 2005-10-04 17:52:14
by Dron D.
Вот уже стал более или менее разбиратся в скриптовании, но все равно есть вопросы.

Я вот тут накалякал скрипт на обкидывание:

Code: Select all

sub vetki()
var x
  if uo.getglobal('vetki')=='1' then
    uo.print('Vetki system allready on')
    goto dropp
  end if
  uo.setglobal('vetki','1')
  UO.Set('lasttarget','laststatus')
  x=uo.getserial('lasttarget')
  uo.findtype("0x13FE")
  if uo.findcount() then
    uo.drop("1",str(uo.getx(x)-1),str(uo.gety(x)),0,"finditem")
  end if
  wait(500)
  uo.findtype("0x13FE")
  if uo.findcount() then
    uo.drop("1",str(uo.getx(x)),str(uo.gety(x)+1),0,"finditem")
  end if
   wait(500)
  uo.findtype("0x13FE")
  if uo.findcount() then
    uo.drop("1",str(uo.getx(x)+1),str(uo.gety(x)),0,"finditem")
  end if
  wait(500)
  uo.findtype("0x13FE")
  if uo.findcount() then
    uo.drop("1",str(uo.getx(x)),str(uo.gety(x)-1),0,"finditem")
  end if
  uo.setglobal('vetki','0')
  dropp:
  uo.print('Обкидано')
end sub


Вот скрипт иногда пашет, а иногда нет, причем если я оставляю какую-нибудь 1 сторону для закидывания, то скрипт не работает...
Где проблема то?