Page 1 of 1
Повтор хилА, помогите! +(
Posted: 2007-07-06 16:54:32
by Acc ^
Помогите, пожалуйста, сделать так, что бы скрипт повторялся или был цикличным (я не знаю, как это называется).
Чтобы после запуска и хила, скрипт не отключался, а хилил чара, как только хп становится
меньше половины.
И если можно, подпишите, пожалуйста, функцию мытья бинтов (с помощью тазика). Мну не умеет
Code: Select all
sub heal()
repeat
UO.SetArm('CWeapon')
UO.Exec("bandageself")
wait(500)
UO.Arm('CWeapon')
wait(4000)
until uo.life==uo.str
end sub
Posted: 2007-07-06 17:20:58
by Acc ^
Господа, умеющие писать скрипты, отзовитесь.
Для вас ведь это, как 2х2

Posted: 2007-07-06 18:15:03
by Rivory
Code: Select all
sub heal()
var hpp=str(uo.str)/2
uo.set('finddistasce', '3')
uo.Print('Pokagi 4istiy bint')
uo.addobject ('cbint')
while uo.targeting()
wait(100)
wend
uo.Print('Pokagi gr9zniy bint')
uo.addobject ('gbint')
while uo.targeting()
wait(100)
wend
uo.Print('Pokagi banku s voduy')
uo.addobject ('banka')
while uo.targeting()
wait(100)
wend
repeat
if uo.hp < hpp then
if uo.count(uo.getgraphic('cbint')) > 2 then
uo.usetype(uo.getgraphic('cbint'))
wait (3000) ## задержку поправь
else
uo.print('net bintov.. mou gr9znie')
uo.waittargetground(uo.getgraphic('banka'))
checklag() ## надеюсь, знаешь, что это ?
uo.usetype(getgraphic('gbint'))
end if
end if
until uo.dead()
end sub
Я, конечно, реально поизвращался над этим скриптом, но, по идеи, должно работать

Posted: 2007-07-06 18:43:37
by Acc ^
Line 2: Bad operation for this type of variable - HPP

Posted: 2007-07-06 19:12:42
by Rivory
Code: Select all
var hpp=100 ### сюда впиши хп при котором хилить
Posted: 2007-07-06 20:58:42
by Acc ^
Line 20: Variable undefined - OU.HP

Code: Select all
sub heal()
var hpp=100
uo.set('finddistasce', '3')
uo.Print('Pokagi 4istiy bint')
uo.addobject ('cbint')
while uo.targeting()
wait(100)
wend
uo.Print('Pokagi gr9zniy bint')
uo.addobject ('gbint')
while uo.targeting()
wait(100)
wend
uo.Print('Pokagi banku s voduy')
uo.addobject ('banka')
while uo.targeting()
wait(100)
wend
repeat
if uo.hp < hpp then
if uo.count(uo.getgraphic('cbint')) > 2 then
uo.usetype(uo.getgraphic('cbint'))
wait (3000) ## задержку поправь
else
uo.print('net bintov.. mou gr9znie')
uo.waittargetground(uo.getgraphic('banka'))
checklag() ## надеюсь, знаешь, что это ?
uo.usetype(getgraphic('gbint'))
end if
end if
until uo.dead()
end sub
Posted: 2007-07-07 08:57:20
by ADEPT_ABP
Acc ^ wrote:Помогите, пожалуйста, сделать так, что бы скрипт повторялся или был цикличным (я не знаю, как это называется).
Чтобы после запуска и хила, скрипт не отключался, а хилил чара, как только хп становится
меньше половины.
И если можно, подпишите, пожалуйста, функцию мытья бинтов (с помощью тазика). Мну не умеет
Code: Select all
sub heal()
repeat
UO.SetArm('CWeapon')
UO.Exec("bandageself")
wait(500)
UO.Arm('CWeapon')
wait(4000)
until uo.life==uo.str
end sub
Я конечно не скриптёр(так лубитель

), но у меня вызывает недоумение строка
Насколько я знаю - это "присвоить набору вооружения(щит&ковырялка)" имя "name". В твоём случае это - CWeapon.
А строка:
Вооружает набором CWeapon.
Вопрос - Для чего?
По поводу - "...хилил чара, как только хп становится
меньше половины. " - поставь условие.
Code: Select all
If uo.life <= uo.str\2 then
*начинаем бинтовать*
end if
[/code]
Полоскать бинты. Это просто.
тебе нужно узнать(при помощи набранной в Ультиме команды - ,info и появившимся прицелом на нужную весчь) тип(type) "blood"ливых бинтов и плошки с водой. А потом вписать в скрипт
Code: Select all
uo.weittargettype("тип плошки с водой")
uo.usetype("тип грязных бинтов")
А тот скрипт, что тебе наваяли надо довести до ума. Так как на разных компах скрипт ведёт себя по-разному. Например, для чего поставлена команда
Code: Select all
uo.waittargetground(uo.getgraphic('banka'))
ведь она ищет банку с водой в мире, то есть под ногами, за диваном

и т.д. и т.п. Разве плошка с водой не в бэкпаке?
Posted: 2007-07-07 13:39:58
by Rivory
Code: Select all
sub heal()
var hpp=100
uo.set('finddistasce', '3')
uo.Print('Pokagi 4istiy bint')
uo.addobject ('cbint')
while uo.targeting()
wait(100)
wend
uo.Print('Pokagi gr9zniy bint')
uo.addobject ('gbint')
while uo.targeting()
wait(100)
wend
uo.Print('Pokagi banku s voduy')
uo.addobject ('banka')
while uo.targeting()
wait(100)
wend
repeat
if uo.life < hpp then
if uo.count(uo.getgraphic('cbint')) > 2 then
UO.SetArm('CWeapon')
uo.usetype(uo.getgraphic('cbint'))
wait (3000) ## задержку поправь
UO.Arm('CWeapon')
wait (1000) ## задержку поправь
else
uo.print('net bintov.. mou gr9znie')
uo.waittargettype(uo.getgraphic('banka'))##если банка в паке
uo.waittargetground(uo.getgraphic('banka'))##если банка на полу.
###########################################лишнее удали
checklag() ## надеюсь, знаешь, что это ?
uo.usetype(getgraphic('gbint'))
end if
end if
until uo.dead()
end sub
Поправил, терь будет работать.
Acc ^ wrote:Я конечно не скриптёр(так лубитель

), но у меня вызывает недоумение строка
Насколько я знаю - это "присвоить набору вооружения(щит&ковырялка)" имя "name". В твоём случае это - CWeapon.
А строка:
Вооружает набором CWeapon.
Вопрос - Для чего?
чтобы одеть снятое при хиле оружие.
Acc ^ wrote:Code: Select all
If uo.life <= uo.str\2 then
*начинаем бинтовать*
end if
на эту строчку он у него ругался, пришлось поправить
Acc ^ wrote: Например, для чего поставлена команда
Code: Select all
uo.waittargetground(uo.getgraphic('banka'))
ведь она ищет банку с водой в мире, то есть под ногами, за диваном

и т.д. и т.п. Разве плошка с водой не в бэкпаке?
Кто тебе сказал, что она в паке ? с неба упало ? на очень большом количестве шардов банка стоит на полу.
Posted: 2007-07-07 17:13:50
by ADEPT_ABP
Code: Select all
Кто тебе сказал, что она в паке ? с неба упало ? на очень большом количестве шардов банка стоит на полу.
На drw.ru, у меня да и у остальных, в бэкпаке. На других не играл... вру. Играл. На ZhuluHotelKiev. Мир его праху.
Code: Select all
...чтобы одеть снятое при хиле оружие.
Мдя... Я знал что я болван, но что б настолько...?

Как говорится - "А слона-то мы и не заметили".

Posted: 2007-07-09 17:39:31
by Acc ^
Я не ОН, а ОНА и в скриптах мало что понимаю.
По поводу того, что расписал гос-н
ADEPT_ABP: спасибо ему, конечно, но я врятли сумею всего надобавлять, да при всем при этом, сделать так, чтобы работало

Posted: 2007-07-09 18:12:06
by Rivory
мой последний скрипт посмотри, я его поправил, должен работать
Posted: 2007-07-10 02:19:16
by u0rypT
Code: Select all
sub healing()
repeat
repeat
uo.usefromground('0x091A')#Улей
Lag()
until UO.Life < 20
repeat
if uo.stam < 50 then
uo.useobject('0x000')#тип стамины вставь сюды
else
UO.Exec("bandageself")
wait(8000)
end_if
until UO.Life > 139
sub Lag()
UO.DeleteJournal()
UO.Click('backpack')
repeat
wait(500)
until UO.InJournal('backpack')
end sub
За вот етот вот скрипт не ручаюсь
Code: Select all
##################################
## ХИЛИНГ ########################
sub Bandage_All()
var Fizzle, Sheld = '0x1B76' ; Sheld
var Stamina_Drink = 50
var Mana_Min = 40
If UO.Dead() Then
UO.Print("You are Dead")
Return
End If
If UO.GetGlobal('BandageCheck')<>'on' Then
UO.SetGlobal('BandageCheck','on')
If UO.GetHp() < UO.GetMaxHp() Then
If UO.Count('bandage') Then
Fizzle = 0
REPEAT
Fizzle = Fizzle+1
If Fizzle >= 2 Then
UO.CharPrint('0x0021',"*Физл!*")
End If
If UO.Stamina <= Stamina_Drink and UO.Mana >= Mana_Min and UO.Count('0x0F0B') Then
UO.UseType('0x0F0B')
UO.CharPrint('0x0021',"*Пью Стамину!*")
End If
UO.BandageSelf()
UO.DeleteJournal()
REPEAT
Wait(500)
Until UO.InJournal("You put bloody") or UO.InJournal("You apply bandages") or UO.InJournal("Do you wanna") or UO.InJournal("You must wait") or UO.InJournal("You can't reach that") or UO.InJournal("Targeting Cancelled") or UO.InJournal("You cannot use bandages") or UO.Dead()
If (UO.GetHP()+5) >= UO.GetMaxHP() Then
UO.CharPrint('0x0063',"*Полный столб*")
End If
Until UO.InJournal("You put bloody") or UO.InJournal("Do you wanna") or UO.InJournal("You can't reach that") or UO.InJournal("You cannot use bandages") or UO.Count('bandage')==0 or UO.Dead()
Else
UO.Print("Not Bandage")
UO.SetGlobal('BandageCheck','off')
End If
Wait(100)
If NOT UO.ObjAtLayer('Lhand') Then
If UO.Count(Sheld) Then
UO.UseType(Sheld)
End If
End If
Else
If NOT UO.ObjAtLayer('Lhand') Then
If UO.Count(Sheld) Then
UO.UseType(Sheld)
End If
End If
End If
UO.SetGlobal('BandageCheck','off')
Else
UO.Print("Wait")
End If
end sub
Posted: 2007-07-13 17:50:16
by ADEPT_ABP
Acc ^ wrote:Я не ОН, а ОНА и в скриптах мало что понимаю.
По поводу того, что расписал гос-н
ADEPT_ABP: спасибо ему, конечно, но я врятли сумею всего надобавлять, да при всем при этом, сделать так, чтобы работало

Главное начать.
А понимание придёт, вместе с опытом, потом.
Аблизательно!!! (наверное)
