Page 1 of 1

Помогите пожалуста с макросом на сбор.

Posted: 2005-07-10 13:57:06
by enjoy
Нужно вот такое вот чкдо: вводим в окно УО кол-во, допустим 50. И инжект собирает 50 МРа из заранее определенного контейнера. Если не составит труда напишите ПЛЗ.

Posted: 2005-07-10 16:04:34
by Grin
А конкретней и подробней?

Posted: 2005-07-10 16:08:31
by enjoy
Ситуация: макрос на сбор регов. Инжект пишет: UO.print('HOw much grab?')
Потом вводим число, например 50
И макрос берет 50 регов из сундука.

Posted: 2005-07-10 16:14:20
by SAMURAI
Интересно и зачем же кланировать топы?!.
:?

Posted: 2005-07-10 16:14:24
by Solaire
Вот, пробуй. Во время работы скрипта по себе не кликать и писать только количество без всяких точек и т. д.

Code: Select all

sub loadr() 
VAR cont='0x4030AE6E', rtype='0x0F86', T=' ', l, J, k, n=UO.GetName()
UO.DeleteJournal()
UO.Print('How much grab?')
while not UO.InJournal(UO.GetName()+":")
	wait(100)
wend
J=UO.Journal(UO.InJournal(UO.GetName()+":")-1)
for k=len(n)+2 to len(J)
	T=T+J[k]
next
UO.UseObject(cont)
wait(1000)
UO.FindType(rtype, -1, cont)
if  UO.FindCount() then
	UO.MoveItem('finditem', T, 'backpack')
endif
endsub

Posted: 2005-07-10 16:33:47
by enjoy
Работает! Сенки огромное! А теперь другая ситуация: выгруз регов.
Вот мой макрос:

Code: Select all

var i 
########################################################## 
################# ???????????? (Matrix Reload) ########### 
########################################################## 
sub sbros_regi() 
var meshokregi = "0x4061E962" #???? ?????????? ? ????? ???? 
var meshokmaps = "0x40326395" #????? ??? ????? ?????????? ???? 
var meshokbottles = "0x40324A92" #????? ? ????????? 
########################################################## 
#########################????? ?????###################### 

UO.Setreceivingcontainer(meshokregi) 
UO.Useobject(meshokregi) 

While UO.Count(0x0F87) > 0 #Eyes of Newt 
UO.Waittargettype(0x0F87) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F91) > 0 #Wyrm's Heart 
UO.Waittargettype(0x0F91) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F89) > 0 #Obsidian 
UO.Waittargettype(0x0F89) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8F) > 0 #Volcanic Ash 
UO.Waittargettype(0x0F8F) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F78) > 0 #Batwings 
UO.Waittargettype(0x0F78) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F88) > 0 #NS 
UO.Waittargettype(0x0F88) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F7B) > 0 #BM 
UO.Waittargettype(0x0F7B) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F7A) > 0 #BP 
UO.Waittargettype(0x0F7A) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F85) > 0 #GI 
UO.Waittargettype(0x0F85) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F86) > 0 #MR 
UO.Waittargettype(0x0F86) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8C) > 0 #SA 
UO.Waittargettype(0x0F8C) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F84) > 0 #GA 
UO.Waittargettype(0x0F84) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8D) > 0 #SS 
UO.Waittargettype(0x0F8D) 
UO.Grab() 
Wait(600) 
wend 

Repeat 
uo.findtype('0x0E76','0x00BB','backpack') 
wait(500) 
if uo.FindCount() then 
UO.useobject('finditem') 

UO.Setreceivingcontainer(meshokregi) 
UO.Useobject(meshokregi) 

While UO.Count(0x0F87) > 0 #Eyes of Newt 
UO.Waittargettype(0x0F87) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F91) > 0 #Wyrm's Heart 
UO.Waittargettype(0x0F91) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F89) > 0 #Obsidian 
UO.Waittargettype(0x0F89) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8F) > 0 #Volcanic Ash 
UO.Waittargettype(0x0F8F) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F78) > 0 #Batwings 
UO.Waittargettype(0x0F78) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F88) > 0 #NS 
UO.Waittargettype(0x0F88) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F7B) > 0 #BM 
UO.Waittargettype(0x0F7B) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F7A) > 0 #BP 
UO.Waittargettype(0x0F7A) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F85) > 0 #GI 
UO.Waittargettype(0x0F85) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F86) > 0 #MR 
UO.Waittargettype(0x0F86) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8C) > 0 #SA 
UO.Waittargettype(0x0F8C) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F84) > 0 #GA 
UO.Waittargettype(0x0F84) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8D) > 0 #SS 
UO.Waittargettype(0x0F8D) 
UO.Grab() 
Wait(600) 
Wend 
UO.Unsetreceivingcontainer() 
endif 
UO.drophere('finditem') 
UO.ignore('finditem') 
Until UO.findcount(0x0E76)==0 

Repeat 
uo.findtype('0x0E75','0x0000','backpack') 
wait(500) 
if uo.FindCount() then 
UO.useobject('finditem') 

UO.Setreceivingcontainer(meshokregi) 
UO.Useobject(meshokregi) 

While UO.Count(0x0F87) > 0 #Eyes of Newt 
UO.Waittargettype(0x0F87) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F91) > 0 #Wyrm's Heart 
UO.Waittargettype(0x0F91) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F89) > 0 #Obsidian 
UO.Waittargettype(0x0F89) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8F) > 0 #Volcanic Ash 
UO.Waittargettype(0x0F8F) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F78) > 0 #Batwings 
UO.Waittargettype(0x0F78) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F88) > 0 #NS 
UO.Waittargettype(0x0F88) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F7B) > 0 #BM 
UO.Waittargettype(0x0F7B) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F7A) > 0 #BP 
UO.Waittargettype(0x0F7A) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F85) > 0 #GI 
UO.Waittargettype(0x0F85) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F86) > 0 #MR 
UO.Waittargettype(0x0F86) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8C) > 0 #SA 
UO.Waittargettype(0x0F8C) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F84) > 0 #GA 
UO.Waittargettype(0x0F84) 
UO.Grab() 
Wait(600) 
Wend 
While UO.Count(0x0F8D) > 0 #SS 
UO.Waittargettype(0x0F8D) 
UO.Grab() 
Wait(600) 
Wend 
UO.Unsetreceivingcontainer() 
endif 
UO.drophere('finditem') 
UO.ignore('finditem') 
Until UO.findcount(0x0E76)==0 
end sub 
Если кто может то доработайте, отто не сбрасывает пустые контейнры
[Даже если увижу супер пупер интересный скрипт такого размера без тегов убью I'm]

Posted: 2005-07-10 17:16:35
by Grin
ты уверен что это твой скрипт?;)
выгрузка не такая извращеная как сборка?;)
Если нет то можно обойтись и этим

Code: Select all

sub reg()
var Count=0
dim Type[n] #n количество типов регов
Type[0]=''
...
Type[n-1]=''
For var i = 0 to n-1
While uo.count(Type[i])>0 
Count=uo.count(Type[i])
uo.moveitem('_'+Type[i], -1, 'Id') #Id контерйнера куда складывать
while uo.count(Type[i]) == Count
wait(100)
wend
wend
next
end sub

Posted: 2005-07-10 17:23:09
by enjoy
Этот скрипт выгружает реги только из бэкпака, а мне нужно из всехх сумочек!

Posted: 2005-07-10 17:34:04
by Grin
если все сумочки в бегпеке и они открыты то и изних выгрузит

Posted: 2005-07-10 17:47:15
by enjoy
А они закрыты!!!

Posted: 2005-07-10 17:58:30
by Grin
Ну и? чего тебе мешает их открыть?
Или написать скрипт на их открытие...
Если инжект не узнает изначально что в этих сумка есть он и не выгрузит их в принципе достаточно один раз их открыть и потом если мешают закрыть тогда инжект сохранит инфу об содержимом но обновлять не будет