Yoko

All sides of Injection
It is currently 2026-01-20 16:56:59

All times are UTC+02:00




Post new topic  Reply to topic  [ 9 posts ] 
Author Message
 Post subject: Смена КЕГ
PostPosted: 2008-01-30 11:17:08 
Offline
User avatar

Joined: 2006-11-02 11:57:11
Posts: 95
Ну вот предисловие: взял скрипт с раздела Top Quality >> Пойзонинг...

Пробую добавить смену кег и ничего неполучаеться(((

Code:
dd:
uo.findtype('keg','0','backpack')
wait(100)
uo.moveitem('finditem','0','sum')
uo.say('Ложу ПУСТОЙ кег в сундук.')
wait(1000)

uo.findtype('keg','0','sum1')
uo.grab('0','finditem')
uo.say('Достал ПОЛНЫЙ кег из сумки')
wait(2000)
goto ee 

ee:
uo.usetype('keg')
wait(500)
if uo.injournal('The keg is empty.') then
wait(100)
uo.DeleteJournal()
goto dd
else
goto pp
endif


Уже столько пытался переделать, что запутался совсем... вроде находит кег но неперебрасывает пустой с бекпака!

Пожалуйста укажите где правельно надо ставить интервалы - наставил наугад)))))))


Top
   
 Post subject:
PostPosted: 2008-01-30 11:41:03 
Offline
Expert!
User avatar

Joined: 2005-09-14 15:31:58
Posts: 2152
Location: Latvia
попробуй так

Code:
dd:
uo.findtype( keg ,'0','backpack')
if uo.findcount() then
uo.moveitem('finditem','0', sum )
uo.say('Ложу ПУСТОЙ кег в сундук.')
wait(1000)
end if

uo.findtype( keg ,'0', sum1 )
if uo.findcount() then
uo.moveitem('finditem')
uo.say('Достал ПОЛНЫЙ кег из сумки')
wait(2000)
end if
goto ee

ee:
uo.usetype('keg')
wait(500)
if uo.injournal('The keg is empty.') then
wait(100)
uo.DeleteJournal()
goto dd
else
goto pp
endif

_________________
Уроки языка Injection
Основные команды языка Injection
Yoko Injection Code Sweeper
Drw (2009) скрипты
2017 Начал играть на Uorpg.net


Top
   
 Post subject:
PostPosted: 2008-01-30 12:41:27 
Offline
User avatar

Joined: 2006-11-02 11:57:11
Posts: 95
Сенки)


Top
   
 Post subject:
PostPosted: 2008-01-30 20:17:11 
Offline
User avatar

Joined: 2006-11-02 11:57:11
Posts: 95
ВОт НЕЗАДАЧА... Тоже самое((( Скрипт запустился и когда доходит до этого места в уо пишеться:

Warning: error in command


Top
   
 Post subject:
PostPosted: 2008-01-31 11:54:41 
Offline
Expert!
User avatar

Joined: 2004-04-04 21:40:09
Posts: 1007
1) что такое sum1?

2) 'keg' везде должен быть в кавычках одинакого. А не в одном месте это имя объекта, а в другом имя переменной (хотя такая переменная даже не объявлена)

3) Логику скрипта понять нельзя, вероятна ошибка где то вне этого куска.


Top
   
 Post subject:
PostPosted: 2008-01-31 13:24:42 
Offline
User avatar

Joined: 2006-11-02 11:57:11
Posts: 95
Счас покажу полный скрипт с моим исправлением...

Code:
sub main() 
var p1,p2,dp
uo.say(',exec bandcure')
uo.say('Запущена система контроля хп')
uo.say('Покажи как выглядит бочка с ядом.')
uo.addtype('keg')
while uo.targeting()
wait(100)
wend
uo.say('Покажи как выглядит еда.')
uo.addtype('food')
while uo.targeting()
wait(100)
wend
uo.say('Покажи как выглядит яд.')
uo.addtype('poison')
while uo.targeting()
wait(100)
wend
uo.say('Покажи сумку с едой.')
uo.addobject('sum')
while uo.targeting()
wait(100)
wend 
uo.say('Покажи сумку для полных кег')
uo.addobject('sum1')
while uo.targeting()
wait(100)
wend
g:

    uo.findtype('food','-1','sum')
    uo.grab('1','finditem')
    uo.say('Достал еду из сумки')
   wait(2000)
   goto cond


dd:
uo.findtype( 'keg' ,'0','backpack')
if uo.findcount() then
uo.moveitem('finditem','0', 'sum' )
uo.say('Ложу Пустой кег в сундук.')
wait(1000)
end if

uo.findtype( 'keg' ,'0', 'sum1' )
if uo.findcount() then
uo.moveitem('finditem')
uo.say('Достал кег из сумки')
wait(2000)
end if
goto ee

ee:
uo.usetype('keg')
wait(500)
if uo.injournal('The keg is empty.') then
wait(100)
uo.DeleteJournal()
goto dd
else
goto pp
endif

pp:
wait(500)
uo.waittargettype('poison')
uo.useskill('Poisoning')
wait(1000)
uo.findtype('food','-1')
wait(1000)
uo.target('1','finditem')
wait(11000)
goto cond1



cond:
p1=uo.skillval('Poisoning')
uo.say('Значение скила Пойзонинг записано в переменную p1')
goto pp


cond1:
p2=uo.skillval('Poisoning')
dp=p2-p1
if dp>10 then
uo.say('Значение скила поднялось на 0.3, беру другую порцию еды для работы.')
uo.findtype('food','-1')
uo.setreceivingcontainer('sum')
wait(500)
uo.findtype('food')
uo.grab('1','finditem')
uo.say('Ложу еду в сумку.')
wait(1000)
uo.unsetreceivingcontainer()
goto g
else
goto ee
endif

end sub

sub bandcure()
repeat
if uo.poisoned('self') and uo.count('bandage')>0 then
uo.bandageself()
uo.say('Бинтуюсь!')
wait(10000)
end if
if uo.poisoned('self') and uo.count('cure')>0 then
uo.usetype('cure')
uo.say('Пью антидот!')
wait(1000)
end if
wait(1000)
until uo.life<0
end sub


МОГУ сказать на верняка фраза
Code:
uo.say('Ложу Пустой кег в сундук.') 


Замечена ниразу небыла...


АЙДИ Пустого и полного кега одинаковое... Думаю скрипт неразличает их или неможет понять что надо с бэкпака переложит(


Top
   
 Post subject:
PostPosted: 2008-01-31 14:58:55 
Offline
Expert!
User avatar

Joined: 2004-04-04 21:40:09
Posts: 1007
Ошибок не видать. Все норм. Значит алгоритм неправильный.

BulldoZer wrote:
Думаю скрипт неразличает их или неможет понять что надо с бэкпака переложит(


Если ты их различаешь, значит и скрипт способен. Нужно только найти в чем отличие и правильно его описать. ;)


По скрипту займись отладочкой.
Как я бы это сделал:
1) Проверить правильно ли определяется пустой кег. Для этого после метки ПП добавить вывод чего-нить в чат, ну например UO.Print("Jumping to PP")
2) Если кег определяется и переход осуществляется, то проверить функцию поиска кега... и т.д.

PS честно говоря не понятно зачем после использования кега искать его заново, если есть указатель {lastobject Последний использованый (двойным щелчком мыши) обьект } и можно просто сделать UO.MoveItem('lastobject', 0, 'sum'). Ну да это не важно, каждый ****ит как хочет. :roll:

Вобщем двигай по шагам и ищи где сбой. :)


Top
   
 Post subject:
PostPosted: 2008-01-31 15:08:14 
Offline
User avatar

Joined: 2006-11-02 11:57:11
Posts: 95
Спасибо... ты прав буду пошагово разбирать его...

Твой вариант вижу удобнее... я основывался что у всех видов кег одинаковый айди... и он в переменной 'keg' значит когда журнал сработал переход то найти кег в паке и передвинуть... буду эксперементировать)

зы: я ламер и нифига нешарю в скриптах инжекта :evil:


Top
   
 Post subject:
PostPosted: 2008-02-01 00:23:07 
Offline
User avatar

Joined: 2006-11-02 11:57:11
Posts: 95
УРА Я ПОБЕДИЛ!!!

Для начала уперся в журнал в нем неписалось ничего такого - 'The keg is empty.'

а только такое cliloc# 0xA9E6

второе небрал полные кеги) пока неисправил так uo.findtype('keg','0x0046','sum1')


Все спасибо))) впереди остался кач) Пака


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 9 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited