waittargettile..

Anything and all.

Moderators: Murderator+, Murderator

korzh
Posts: 220
Joined: 2007-04-26 23:35:15

waittargettile..

Post by korzh »

Image
Появляется такая фигня довольно часто, и изза нее крашит.. Собственно вопрос, изза чего она появляется? И что соответственно делать тчобы ее не было?
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

утебя не правельно формируется в waittargettile аргументы.
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

Code: Select all

UO.WaitTargetTile( // 'all' или '0' // , str( x ), str( y ), '0' )
UO.useobject( Pickaxe() )


Насколько я помню all и 0 означает тыкать на тайл любого типа..
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

korzh wrote:

Code: Select all

UO.WaitTargetTile( // 'all' или '0' // , str( x ), str( y ), '0' )
UO.useobject( Pickaxe() )


Насколько я помню all и 0 означает тыкать на тайл любого типа..


просто 0 ставь, хотя возможно деффект не в этом, может коорды не верно получает.
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

0 пробывал - такая же ххрень, с координатами все в порядке.
А сообщение ето может появиться как через 2 минуты, так и через 2 часа..
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

korzh wrote:0 пробывал - такая же ххрень, с координатами все в порядке.
А сообщение ето может появиться как через 2 минуты, так и через 2 часа..


Попробуй wait(100) поставить перед и после этой команды. Бывало помогало.
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

Не помогло... :(
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

тпринтуй то что ты пихаешь в функцию...
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

korzh wrote:Не помогло... :(


Еще меня терзает вот это выражение:

Code: Select all

UO.useobject( Pickaxe() )


А конкретно это:

Code: Select all

Pickaxe()

Так и должно быть? Чет первый раз такое вижу.
Сделай попроще, вставь зараннее тип кирки и юзай по типу:

Code: Select all

UO.UseType(pickaxe)
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

Отпринтовал, все нормально... и проблемы ето увы не решает :roll:

На тему pickaxe(), так и должно быть, с ней все нормально :)
Yura
Posts: 71
Joined: 2008-03-03 09:19:21
Location: SPB

Post by Yura »

С 0 у меня тоже не работало
у меня так прописано
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.UseType(Kirka)
a Pickaxe() - это по идее вызов функции
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

korzh wrote:На тему pickaxe(), так и должно быть, с ней все нормально :)


Странно *бьется головой ап стену*, объясните дурачку почему?
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

Yura wrote:a Pickaxe() - это по идее вызов функции


Я в курсе, мне не понятно такое использование:

Code: Select all

UO.useobject(Pickaxe())


Получается Юз обьекта функции?
Yura
Posts: 71
Joined: 2008-03-03 09:19:21
Location: SPB

Post by Yura »

А почему нет
sub pickaxe()
if ищем кирку если нашли return type pickaxe
if ищем лопату если нашли return type showel
endsub

например так

2korzh
текст функции в студию))
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

Yura wrote:С 0 у меня тоже не работало
у меня так прописано
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.UseType(Kirka)
a Pickaxe() - это по идее вызов функции


Так ты ограничиваешься только 1 типом тайлов..

Kynep wrote:

Code: Select all

UO.useobject(Pickaxe())


Получается Юз обьекта функции?


Code: Select all

sub Pickaxe()
   VAR shovel='', pickaxe = '0x0E85'
   If UO.getglobal( 'Pickaxe' ) == 'N/A' then
      UO.findtype( pickaxe,-1,'backpack' )
      If UO.findcount() then
         UO.setglobal( 'Pickaxe', UO.getserial( 'finditem' ) )
      else
         If UO.getgraphic( UO.objatlayer( 'Rhand' ) ) <> '0x0000' then
            If UO.getgraphic( UO.objatlayer( 'Rhand' ) ) == pickaxe then
               UO.setglobal( 'Pickaxe', UO.getserial( UO.objatlayer( 'Rhand' ) ) )
            EndIf
         else
            If UO.getgraphic( UO.objatlayer( 'Lhand' ) ) <> '0x0000' then
               If UO.getgraphic( UO.objatlayer( 'Lhand' ) ) == pickaxe then
                  UO.setglobal( 'Pickaxe', UO.getserial( UO.objatlayer( 'Lhand' ) ) )
               EndIf
            EndIf
         EndIf
      EndIf
   else
      return UO.getglobal( 'Pickaxe' )
   EndIf
endsub

Зы про лопату еще дописать надо бы :)

Ключевая строка тут return UO.getglobal( 'Pickaxe' ).. тоесть ф-я просто возвращает сериал найденной кирки.
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

korzh wrote:Ключевая строка тут return UO.getglobal( 'Pickaxe' ).. тоесть ф-я просто возвращает сериал найденной кирки.


Херней Вы занимаетесь уважаемый, зачем изобретать велосипед и юзать не понятные функции, когда есть классика которая работает как часы??? Скорее всего именно тут проблема и кроется.
Yura
Posts: 71
Joined: 2008-03-03 09:19:21
Location: SPB

Post by Yura »

с квадрата 5х5 он обкапыват всегда все (горы там или ещё что)
а если ставиш 0 то он вообще ниче не делат(тестил давно и на RUNUO)

GetGlobal возвращает строку а не число
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

Kynep wrote:
korzh wrote:Ключевая строка тут return UO.getglobal( 'Pickaxe' ).. тоесть ф-я просто возвращает сериал найденной кирки.


Херней Вы занимаетесь уважаемый, зачем изобретать велосипед и юзать не понятные функции, когда есть классика которая работает как часы??? Скорее всего именно тут проблема и кроется.


Не хейрней, пардон, а решением проблемы слоев на разных шардах. И тут проблемы точно нет.
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

во развели то...
korzh
Posts: 220
Joined: 2007-04-26 23:35:15

Post by korzh »

Yura wrote:...
а если ставиш 0 то он вообще ниче не делат(тестил давно и на RUNUO)

GetGlobal возвращает строку а не число


если ставишь 0 или 'all' - работает одинакого. но спустя какоето время приводит к ошибке на скрине.

На тему гетглобал ето ты к чему ? :)
Post Reply