Page 1 of 1
Добор Ресов. Помогите.
Posted: 2011-09-14 01:15:52
by Yo Beggin
Перерыл всё, не мог найти ничего похожего)
Вообщем.. Нужен скриптик на добор Химии (Рефреш, ГХ, Дедликов, Манок, Шринок) и Скролов.
По типу и по цвету, если такое возможно. Ну и чтобы можно было указать какое кол-во чего берёт.)
Заранее спасибо)
Re: Добор Ресов. Помогите.
Posted: 2011-09-14 08:14:44
by Mirage
Извини за сарказм но я прямо вижу что ты зарегистрировавшись несколько часов назад только и делал что перерывал ВЕСЬ форум которому больше 5 лет. Это скиллы "мегомозг" и "супер чтение" надо иметь.
А еще "слепоглаз" ибо я фиг знает как не заметить кнопку поиск (если ты читал форум).
Слово ДОБОР выдает 68 найденных страниц.
Если простые скрипты уровня
Code: Select all
UO.FindType( item, color, cont )
uo.moveitem('finditem', colich, 'backpack')
тогда
вот (последний скрипт на странице) нормальный скрипт на добор.
Re: Добор Ресов. Помогите.
Posted: 2011-09-14 13:19:11
by Yo Beggin
По-моему, юзать поиск можно без реги)
Не нашёл того чего мне надо.
Регнулся - написал..)
В поиске юзал "добор". Может быть чего-то и не увидел. Но, нашёл только на добор регов.
Спасибо.
Re: Добор Ресов. Помогите.
Posted: 2011-09-14 17:11:20
by ZeroDX
А одноцветные и однотипные поты складываются в одну кучу?
Re: Добор Ресов. Помогите.
Posted: 2011-09-14 18:03:08
by ZeroDX
Скорее всего складываются... Вот
Code: Select all
sub Reload()
Dim Potion[5]
Potion[0] = '0x1234 0x1234 5 ' ;Сюда надо вбивать тип, цвет и кол-во потов, которое должно лежать в паке. Все через пробел, и обязательно пробел в конце строки
Potion[1] = '0x1234 0x1324 5 '
Potion[2] = '0x1234 0x1234 5 '
Potion[3] = '0x1234 0x1234 6 '
Potion[4] = '0x1234 0x1234 10 '
var i, j, Container, RecContainer, MPause = 300 ; задержка между перемещениeм предметов
If UO.Targeting() then
UO.CancelTarget()
Endif
UO.AddObject('obj_Store')
UO.Print('От куда таскать поты?')
While UO.Targeting()
Wait(100)
Wend
UO.AddObject('obj_Bag')
UO.Print('Куда таскать поты?')
While UO.Targeting()
Wait(100)
Wend
For i = 0 to 4
j = val(GetWord(Potion[i], 3, ' ')) - ItemCount(GetWord(Potion[i], 1, ' '), GetWord(Potion[i], 2, ' '), 'obj_Bag')
If j < 0 then
j = -j
Container = UO.GetSerial('obj_Bag')
RecContainer = UO.GetSerial('obj_Store')
else
Container = UO.GetSerial('obj_Store')
RecContainer = UO.GetSerial('obj_Bag')
Endif
UO.FindType(GetWord(Potion[i], 1, ' '), GetWord(Potion[i], 2, ' '), Container)
If UO.FindCount() then
UO.MoveItme('finditem', j, RecContainer)
Wait(MPause)
else
UO.Print('Что-то случилось... RETURN')
Return
Endif
Next
Endsub
Sub ItemCount(type, color, cont)
var a = 0, Quit = 0
Repeat
UO.FindType(type, color, cont)
If UO.FindCount() then
a = a + UO.GetQuantity('finditem')
UO.Ignore('finditem')
else
Quit = 1
Endif
Until Quit == 1
UO.IgnoreReset()
Return a
Endsub
Sub GetWord(str, num, div)
var tmpst, i, dlin, kol = 0, start = 0
dlin = len(str)
For i = 0 to dlin - 1
If mid(str, i, 1) == div or i == dlin - 1 then
kol = kol + 1
If kol == num then
tmpst = mid(str, start, i - start)
Return tmpst
else
While mid(str, i, 1) == div
i = i + 1
Wend
If kol == num - 1 then
start = i
Endif
Endif
Endif
Next
tmpst = ''
Return tmpst
Endsub
В скрипте есть гетворд, сделаный Edred
Re: Добор Ресов. Помогите.
Posted: 2011-09-15 18:34:21
by ZeroDX
Небольшой тюнинг
Теперь должен открывать ящики и ещё кое что
Code: Select all
sub Reload()
Dim Potion[5]
Potion[0] = '0x1234 0x1234 5 ' ;Сюда надо вбивать тип, цвет и кол-во потов, которое должно лежать в паке. Все через пробел, и обязательно пробел в конце строки
Potion[1] = '0x1234 0x1324 5 '
Potion[2] = '0x1234 0x1234 5 '
Potion[3] = '0x1234 0x1234 6 '
Potion[4] = '0x1234 0x1234 10 '
var i, j, Container, RecContainer, MPause = 300 ; задержка между перемещениeм предметов
If UO.Targeting() then
UO.CancelTarget()
Endif
UO.AddObject('obj_Store')
UO.Print('От куда таскать поты?')
While UO.Targeting()
Wait(100)
Wend
UO.AddObject('obj_Bag')
UO.Print('Куда таскать поты?')
While UO.Targeting()
Wait(100)
Wend
UO.UseObject('obj_Bag')
Wait(100)
UO.UseObject('obj_Store')
Wait(100)
For i = 0 to 4
Repeat
j = val(GetWord(Potion[i], 3, ' ')) - ItemCount(GetWord(Potion[i], 1, ' '), GetWord(Potion[i], 2, ' '), 'obj_Bag')
If j < 0 then
j = -j
Container = UO.GetSerial('obj_Bag')
RecContainer = UO.GetSerial('obj_Store')
Endif
If j > 0 then
If ItemCount(GetWord(Potion[i], 1, ' '), GetWord(Potion[i], 2, ' '), 'obj_Bag') < j then
UO.Print('Тут должна была быть суровая мессага')
UO.Print('о том, что поты закончились и скрипт выключается')
Return
Endif
Container = UO.GetSerial('obj_Store')
RecContainer = UO.GetSerial('obj_Bag')
Endif
If j <> 0 then
UO.FindType(GetWord(Potion[i], 1, ' '), GetWord(Potion[i], 2, ' '), Container)
If UO.FindCount() then
UO.MoveItme('finditem', j, RecContainer)
Wait(MPause)
else
UO.Print('Что-то случилось... RETURN')
Return
Endif
Endif
Until j == 0
Next
Endsub
Sub ItemCount(type, color, cont)
var a = 0, Quit = 0
Repeat
UO.FindType(type, color, cont)
If UO.FindCount() then
a = a + UO.GetQuantity('finditem')
UO.Ignore('finditem')
else
Quit = 1
Endif
Until Quit == 1
UO.IgnoreReset()
Return a
Endsub
Sub GetWord(str, num, div)
var tmpst, i, dlin, kol = 0, start = 0
dlin = len(str)
For i = 0 to dlin - 1
If mid(str, i, 1) == div or i == dlin - 1 then
kol = kol + 1
If kol == num then
tmpst = mid(str, start, i - start)
Return tmpst
else
While mid(str, i, 1) == div
i = i + 1
Wend
If kol == num - 1 then
start = i
Endif
Endif
Endif
Next
tmpst = ''
Return tmpst
Endsub
Re: Добор Ресов. Помогите.
Posted: 2011-09-16 19:24:21
by Nmy