Page 1 of 1

Есть у кого-нибудь скрипт на.....?

Posted: 2007-07-16 02:15:28
by GooD
Есть у кого-нибудь скрипт чтобы убирал в хайд всех в округе, ближайшие 5 тайлов вокруг себя?
Буду благодарен!

Posted: 2007-07-16 05:30:15
by Scripts Writer
Через команду ,hide?

Posted: 2007-07-16 07:55:39
by ADEPT_ABP
Вопрос не в тему, но всё же...
Столкнулся с проблемой при написании скрипта "жря-king". Сам скрипт:

Code: Select all

sub main()
   UO.AddObject('food')
    UO.Print('Что жарим?')
   while UO.Targeting()
    wait(10)
   wend
   wait(1000)
     UO.AddObject('fire')
    UO.Print('На чём?')
   while UO.Targeting()
    wait(10)
   wend
   wait(1000)
   While uo.count("food") > 0
   uo.usetype(uo.GetGraphic('food'))
   uo.waittargetobject('fire')
   uo.deletejournal()
   while not uo.injournal("You put the") and not uo.injournal("You burn the")
   wait(100)
   wend
   wend
end sub

... и проблема такая, в данженах есть "костерки" которые относятся к статике, и ID, TYPE, и прочих аттрибутов не имеют. А как можно через прицел получить координаты? А прицепить координаты к waittargettile, я сумею. :D

Posted: 2007-07-16 08:11:55
by Scripts Writer
А они работают? :)

2 Может быть

Code: Select all

  uo.UseObject('lastobject')
? 1 раз предварительно кликнуть не затруднит

Posted: 2007-07-16 09:24:43
by ADEPT_ABP
Работают. Именно из-за того, что с драконов много мяса вырезается, я и написал скрипт, а стал пробовать, оказалось - не динамика, а статика.
LastObject? Хмм... попробую. Спасибо. :D

Posted: 2007-07-16 19:15:06
by GooD
Scripts Writer wrote:Через команду ,hide?

Да, чтоб этой командой убирал всё вокруг себя (игроков, НПС, животных и т.д)

Posted: 2007-07-16 20:39:12
by Scripts Writer
Ну ищи через

Code: Select all

Uo.FIndType('-1','-1','ground') 
если найдены то тогда ловушку на найденный объект + месага ",hide"

Posted: 2007-07-17 00:08:46
by GooD
Scripts Writer wrote:Ну ищи через

Code: Select all

Uo.FIndType('-1','-1','ground') 
если найдены то тогда ловушку на найденный объект + месага ",hide"

А если тебе не трудно будет, можешь написать скрипт, как должно выглядеть! Я просто вообще не понимаю инжект!

Posted: 2007-07-17 01:28:45
by Grin

Code: Select all

sub HideR5() #Хайдит в радиусе 5 тайлов
   
   HideInRange(5)

endsub

sub HideInRange(r)
   
   uo.set('finddistance', r)
   uo.Ignore('self')
   uo.FindType(-1, -1, 'ground')
   
   while uo.FindCount()
      uo.Hide('finditem')
      uo.Ignore('finditem')
      uo.FindType(-1, -1, 'ground')
      wait(10)
   wend
   
   uo.IgnoreReset()

endsub

Posted: 2007-07-18 22:55:27
by GooD
Grin wrote:

Code: Select all

sub HideR5() #Хайдит в радиусе 5 тайлов
   
   HideInRange(5)

endsub

sub HideInRange(r)
   
   uo.set('finddistance', r)
   uo.Ignore('self')
   uo.FindType(-1, -1, 'ground')
   
   while uo.FindCount()
      uo.Hide('finditem')
      uo.Ignore('finditem')
      uo.FindType(-1, -1, 'ground')
      wait(10)
   wend
   
   uo.IgnoreReset()

endsub


Скрипт просто замечательный! Только он хайдит всё вокруг (дома двери и т.д), а игроков, НПС, животных нет. Можно его чуть отридоктировать чтобы хайдил тока игроков, НПС и животных, а дома и двери нет?

Posted: 2007-07-18 22:58:37
by Scripts Writer

Code: Select all

sub HideR5() #Хайдит в радиусе 5 тайлов 
   
   HideInRange(5)

endsub

sub HideInRange(r)
   
DIM WhatToHide[2] #Кол-во объектов кот. хотим захайдить

WhatToHide[0]=type #Типы того что хайдим
WhatToHide[1]=type

var i

   uo.set('finddistance', r)
   uo.Ignore('self')

for i=0 to 1
   uo.FindType(WhatToHide[i], -1, 'ground')   
   while uo.FindCount()
      uo.Hide('finditem')
      uo.Ignore('finditem')
      uo.FindType(WhatToHide[i], -1, 'ground')
      wait(10)
   wend
next
   
   uo.IgnoreReset()

endsub

Posted: 2007-07-19 05:04:14
by Destruction
Scripts Writer, разве функция isNPC не служит для отличения игроков / нпц / животных от дверей, домов итп.. ?)

Posted: 2007-07-19 10:46:08
by Scripts Writer
Destruction wrote:Scripts Writer, разве функция isNPC не служит для отличения игроков / нпц / животных от дверей, домов итп.. ?)


Да, ты прав :\

Code: Select all

sub HideR5() #Хайдит в радиусе 5 тайлов 
   
   HideInRange(5)

endsub

sub HideInRange(r)

   uo.set('finddistance', r)
   uo.Ignore('self')


   uo.FindType(-1, -1, 'ground')
   while uo.FindCount()
     if uo.IsNpc('finditem') then
       uo.Hide('finditem')
       wait(10)
     end if
     uo.Ignore('finditem')
     wait(100)
     uo.FindType(-1, -1, 'ground')
   wend
   
   uo.IgnoreReset()

endsub


Попробуй вот так, 2й вариант

Posted: 2007-07-19 15:13:03
by GooD
Scripts Writer wrote:
Destruction wrote:Scripts Writer, разве функция isNPC не служит для отличения игроков / нпц / животных от дверей, домов итп.. ?)


Да, ты прав :\

Code: Select all

sub HideR5() #Хайдит в радиусе 5 тайлов 
   
   HideInRange(5)

endsub

sub HideInRange(r)

   uo.set('finddistance', r)
   uo.Ignore('self')


   uo.FindType(-1, -1, 'ground')
   while uo.FindCount()
     if uo.InNpc('finditem') then
       uo.Hide('finditem')
       wait(10)
     end if
     uo.Ignore('finditem')
     wait(100)
     uo.FindType(-1, -1, 'ground')
   wend
   
   uo.IgnoreReset()

endsub


Попробуй вот так, 2й вариант


Попробовал, пишет ошибку - UO.INNPC

Posted: 2007-07-19 21:27:24
by Scripts Writer
Опечатка. Исправил, пробуй

Posted: 2007-07-20 02:23:21
by GooD
Scripts Writer wrote:Опечатка. Исправил, пробуй

Что-то не как! Теперь скрипт запускается но не хайдит не кого =(

Posted: 2007-07-20 11:15:48
by Scripts Writer
:?: