Расскалдкав паке

Ask for scripts here

Moderators: Murderator+, Murderator

Post Reply
antonia
Posts: 6
Joined: 2010-11-13 11:51:04

Расскалдкав паке

Post by antonia »

Нужин скрипт, на расскалдку в паке алхимии регов.Например если упал то химия разбросана,потом нажали все по сваим местам перемесилась.
Razario
Posts: 5
Joined: 2010-11-05 13:56:24

Re: Расскалдкав паке

Post by Razario »

antonia wrote:Нужин скрипт, на расскалдку в паке алхимии регов.Например если упал то химия разбросана,потом нажали все по сваим местам перемесилась.


sub Sortreagenti()
DIM RESI[9]

RESI[1] = 0x0F8D # ss
RESI[2] = 0x0F8C # sa
RESI[3] = 0x0F88 # ns
RESI[4] = 0x0F86 # mr
RESI[5] = 0x0F85 # gs
RESI[6] = 0x0F84 # ga
RESI[7] = 0x0F7A # bp
RESI[8] = 0x0F7B # bm
RESI[9] = 0x0838 # stolbik

wait(100)
UO.FindType(RESI[1],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[2],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[3],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[4],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[5],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[6],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[7],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[8],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","35","175","0")
wait(100)
Endif
wait(100)
UO.FindType(RESI[9],-1,"backpack")
if UO.FindCount()>0 Then
UO.MoveItem("finditem","0","backpack","185","115","0")
wait(100)
Endif
wait(100)
end sub

на остальное я думаю сам доработаеш :roll:
antonia
Posts: 6
Joined: 2010-11-13 11:51:04

Re: Расскалдкав паке

Post by antonia »

Ок спасибо проверим
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Расскалдкав паке

Post by Mirage »

Razario wrote:на остальное я думаю сам доработаеш :roll:

Злобно.
Зачем задавать массив чтобы потом его не использовать - что сократило бы скрипт в 3 раза? :mrgreen:
Sirocco
Posts: 90
Joined: 2007-07-07 13:14:01

Re: Расскалдкав паке

Post by Sirocco »

Скрипт сократило бы создание сторонней ф-ции с параметрами : (предмет, контейнер, координаты)
Razario
Posts: 5
Joined: 2010-11-05 13:56:24

Re: Расскалдкав паке

Post by Razario »

Ну как умею так и делаю, совет канечно порадовал, но рас уж такое дело выложи свое творение, у меня на то что вы написали мозгов нехватает грубо говоря. :)
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Расскалдкав паке

Post by Mirage »

Я лично пользуюсь на коленке написанным но меня устраивающим:

Code: Select all

sub sort()
   uo.exec ("moveitem '_0x0EFA' '0' 'backpack' 25 20 0");spellbook
      wait(500)
   uo.exec ("moveitem '_0x0F9E' '0' 'backpack' 40 20 0");Silver Scissors
      wait(500)
   uo.exec ("moveitem '_0x1012' '0' 'backpack' 25 20 0");Key
      wait(500)
   uo.exec ("moveitem '_0x1012' '0' 'backpack' 25 23 0");Key
      wait(500)
   uo.exec ("moveitem '_0x0E9B' '0' 'backpack' 50 20 0");ступка
      wait(500)
   uo.exec ("moveitem '0x40380220' '0' 'backpack' 170 20 0");руна
      wait(500)
   uo.exec ("moveitem '0x40F03AEC' '0' 'backpack' 150 20 0");руна
      wait(500)
   uo.exec ("moveitem '0x40F03791' '0' 'backpack' 160 20 0");руна
      wait(500)
   uo.exec ("moveitem '^0x0A3E' '0' 'backpack' 160 170 0");сундук
end sub
Просто реги впишите

Есть готовый вариант расскладывалки гдето в этой теме.

А то что прозвучало как "создание сторонней ф-ции с параметрами" выглядит приблизительно вот так:

Code: Select all

Sub Looting(corps)
   var pack = 'backpack'
   Loot('0x13B1', '-1', corps, pack,'150','170','0')
   Loot('0x13B3', '-1', corps, pack,'150','160','0')
   Loot('0x0A3E', '-1', corps, pack,'160','170','0')
   Loot('0x9aa', '-1', corps, pack,10,170,0)
endsub
Sub Loot(Type, Color, SourceContainer, TargetContainer,X,Y,Z)
   ;uo.ignorereset()
   UO.FindType(Type, Color, SourceContainer)
   while UO.FindCount()
      timemove=UO.Timer()
      while UO.ContainerOf( UO.GetSerial('finditem') )==SourceContainer && timemove+20>UO.Timer()
         uo.MoveItem('finditem',0,TargetContainer,X,Y,Z)
         wait(lootwait)
      wend
      UO.FindType(Type, Color, SourceContainer)
   wend
end sub

PS это маленький кусок приведенный в качестве визуального примера.
durDom
Posts: 47
Joined: 2008-11-03 21:51:26
Location: Ekb

Re: Расскалдкав паке

Post by durDom »

Razario wrote:Ну как умею так и делаю, совет канечно порадовал, но рас уж такое дело выложи свое творение, у меня на то что вы написали мозгов нехватает грубо говоря. :)



странный ты человек вирус
взял мой же скрипт переделал и пишешь что это твоё творение
(с) тарик
One World One Dream
Sirocco
Posts: 90
Joined: 2007-07-07 13:14:01

Re: Расскалдкав паке

Post by Sirocco »

Sub Loot(Type, Color, SourceContainer, TargetContainer,X,Y,Z)

а если нужно вещи в рюкзаке разложить в рюкзаке это же работать не будет.
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Расскалдкав паке

Post by Mirage »

у меня он используется чтобы предметы вставали в нужные позиции при луте из тела.
Позже постараюсь протестить чтобы в одном контейнере работал и выложить полученный вариант.
durDom
Posts: 47
Joined: 2008-11-03 21:51:26
Location: Ekb

Re: Расскалдкав паке

Post by durDom »

Женя а есть лут с задержкой от 2 - 3 секунд?
чтоб каждый тайп дергал через данное время
One World One Dream
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Расскалдкав паке

Post by Mirage »

durDom wrote:Женя а есть лут с задержкой от 2 - 3 секунд?
чтоб каждый тайп дергал через данное время

не знаю как у Жени но решение достаточно простое
Если нужно чтобы время случайно выбиралось то можно используется функцию
random_wait()

Code: Select all

sub random_wait()
var x,i
i=1
x=i+uo.Random(20)
x=x*100
wait(x)
end sub

Если нужно чтобы с каждым шагом время увеличивалось то встраивается счетчик x=x+1
ИМХО нужен первый вариант - поиграй с цифрами и будет нормальный результат.
Post Reply