Page 1 of 1
помогите с простеньким скриптом....
Posted: 2005-05-22 13:25:00
by BbIDLO
Кому не сложно - напишите такои простенький скрипт :
Если в бекпаке находит пустые бутылки, то достаёт из сундука кег и наливает из него все найденые в бекпаке пустые бутылки, после чего кидает кег назад в сундук.....

Posted: 2005-05-22 14:30:26
by flake
1. Поясни, каким образом происходит разлив бутылок из кега?
2. Выложи сюда тип кега и бутылок.
3. ВЫложи сообщения, которые возникают, при разлитии поушенов.
Posted: 2005-05-22 15:43:39
by Edred
Флейк, поверь моему опыту: не стоит писать скрипт, который не будет работать на шарде, на котором ты играешь. Чисто теоретическое написание скриптов ничего, кроме лишнего геморроя не приносит.
Posted: 2005-05-22 23:41:01
by flake
Ну надо человеку помочь!
Я помню, когда я только начинал пользоваться инжектом, мне часто помогали. И ты в том числе

Posted: 2005-05-23 00:51:30
by BbIDLO
Тип пустых бутылок :
0x0F0E
Тип кегов:
0x1940
Сообщения:
What potion would you like to fill the keg with?
You put the Invisibility in your pack.
*Это при удачном разливании*
What potion would you like to fill the keg with?
You can't use this yet!
*Это когда чтото мешает(например использующийся в этот же момент скилл медитации)*
П.С. Шард - Оском офри. Буду благодарен за помощь
Posted: 2005-05-23 09:08:54
by flake
Так, а каким образом разливаются поушены?
Типа, дабл клик по кегу и таргет по бутылкам, или как?
Posted: 2005-05-23 23:20:30
by BbIDLO
flake wrote:Так, а каким образом разливаются поушены?
Типа, дабл клик по кегу и таргет по бутылкам, или как?
угу
Posted: 2005-05-24 09:14:24
by flake
Ну вот, набросал. Тести:
Code: Select all
sub Keg()
VAR Sunduk = '' ; внести айди сундука с кегом
VAR Keg = '0x1940'
VAR Bottle = '0x0F0E'
VAR BottleSerial, k
UO.FindType( Bottle, -1, -1 )
If UO.FindCount() > 0 Then
UO.FindType( Keg, -1, Sunduk )
If UO.FindCount() = 0 Then
UO.Print('Potion Keg not found, script terminated!')
UO.Exec('terminate Keg')
EndIf
UO.Grab( '1', 'finditem' )
CheckLag()
While UO.Count( Bottle ) > 0
UO.DeleteJournal()
BottleSerial = UO.GetSerial( Bottle )
UO.WaitTargetObject( BottleSerial )
UO.UseType( Keg )
k = 0
while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND NOT UO.InJournal('can't use this yet!') AND ( k < 30 )
k = k + 1
wait(500)
wend
Wend
UO.FindType( Keg, -1, -1 )
UO.Move('finditem', 0, Sunduk)
end sub
Posted: 2005-05-24 09:22:17
by [kosh]
Не работает,пишет parse error
Posted: 2005-05-24 09:30:13
by Sfagnum
flake wrote:Ну вот, набросал. Тести:
Code: Select all
sub Keg()
VAR Sunduk = '' ; внести айди сундука с кегом
VAR Keg = '0x1940'
VAR Bottle = '0x0F0E'
VAR BottleSerial, k
UO.FindType( Bottle, -1, -1 )
If UO.FindCount() > 0 Then
UO.FindType( Keg, -1, Sunduk )
If UO.FindCount() = 0 Then
UO.Print('Potion Keg not found, script terminated!')
UO.Exec('terminate Keg')
EndIf
UO.Grab( '1', 'finditem' )
CheckLag()
While UO.Count( Bottle ) > 0
UO.DeleteJournal()
BottleSerial = UO.GetSerial( Bottle )
UO.WaitTargetObject( BottleSerial )
UO.UseType( Keg )
k = 0
while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND NOT UO.InJournal("can't use this yet!") AND ( k < 30 )
k = k + 1
wait(500)
wend
Wend
UO.FindType( Keg, -1, -1 )
UO.Move('finditem', 0, Sunduk)
end if
end sub
так пробуй
Posted: 2005-05-24 09:37:35
by [kosh]
тоже не работает,parse error
Posted: 2005-05-24 13:56:37
by flake
Ага, нашел ошибку.
Вот она:
Исправил, проверяйте.
Code: Select all
sub Keg()
VAR Sunduk = '' ; внести айди сундука с кегом
VAR Keg = '0x1940'
VAR Bottle = '0x0F0E'
VAR BottleSerial, k
UO.FindType( Bottle, -1, -1 )
If UO.FindCount() > 0 Then
UO.FindType( Keg, -1, Sunduk )
If UO.FindCount() == 0 Then
UO.Print('Potion Keg not found, script terminated!')
UO.Exec('terminate Keg')
EndIf
UO.Grab( '1', 'finditem' )
CheckLag()
While UO.Count( Bottle ) > 0
UO.DeleteJournal()
BottleSerial = UO.GetSerial( Bottle )
UO.WaitTargetObject( BottleSerial )
UO.UseType( Keg )
k = 0
while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND NOT UO.InJournal("can't use this yet!") AND ( k < 30 )
k = k + 1
wait(500)
wend
Wend
UO.FindType( Keg, -1, -1 )
UO.Move('finditem', 0, Sunduk)
end if
end sub
Posted: 2005-05-24 14:14:32
by [kosh]
вроде работает.А что в нём нужно изменить чтобы наоборот бутылки в кеги переливал?Менял тип бутылки-неполучилось.
Posted: 2005-05-24 17:53:09
by BbIDLO
спасибо

Posted: 2005-05-25 00:33:11
by BbIDLO
блин чтото не работает
Берёт кег, тыкает на него и сразуже говорит "You cannot see the target ", тоесть походу не находит бутылки....

Подскажи пожайлусто в чём проблема
