Page 1 of 1

Поправьте скрипт на пересчет овец.

Posted: 2009-05-27 21:59:46
by mont
смысл скрипта такой: пересчитываем овец в заданном радиусе, записываем их айдишники в массив. выдаем количество овец.

Code: Select all

sub main()
        dim sheep[256]
        var sheepcnt = 0
        var nos=0
       
        UO.IgnoreReset()
        uo.set( 'finddistance', 2 )
 
        UO.FindType(0x00CF,'0x0000','ground')
        while (UO.FindCount())
                sheep[sheepcnt] = UO.GetSerial('finditem')
                UO.Ignore(sheep[sheepcnt])
#                UO.Print("Found sheep: "+str(sheep[sheepcnt]))
                sheepcnt = sheepcnt + 1
                UO.FindType(0x00CF,'0x0000','ground')
        wend
      nos=uo.findcount()
      uo.print(str(nos))
        UO.IgnoreReset()
        uo.set( 'finddistance', 32 )
end sub


неважно сколько овец рядом, всегда пишет 0 :( помогите пжалуйсто :)

Re: Поправьте скрипт на пересчет овец.

Posted: 2009-05-28 10:24:01
by Mirage
Попробуй так:

Code: Select all

sub main()
        dim sheep[256]
        var sheepcnt = 0
        var nos=0
       
        UO.IgnoreReset()
        uo.set( 'finddistance', 2 )
        UO.FindType(0x00CF,'0x0000','ground')
        while (UO.FindCount())
                sheep[sheepcnt] = UO.GetSerial('finditem')
                UO.Ignore(sheep[sheepcnt])
#                UO.Print("Found sheep: "+str(sheep[sheepcnt]))
                sheepcnt = sheepcnt + 1
                UO.FindType(0x00CF,'0x0000','ground')
        wend
      uo.print('Найдено вец: ' +str(sheepcnt))
        UO.IgnoreReset()
        uo.set( 'finddistance', 32 )
end sub

Posted: 2009-05-28 16:22:19
by mont
Спасибо :)