Page 1 of 1
Подправьте мини скрипт на рекол от пк
Posted: 2005-06-14 18:26:12
by BbIDLO
Я знаю что даную функцию можно найти в скриптах вроде майнинга, но дело в том что там используеться другой принцип - во всех добывающих скриптах функция использует проверку журнала на красные ники и если их находит то улетает. Я играю на Оскоме и у нас везде в шахтах ввели красных пауков и мне надо чтобы чар реколился в случае если его бьют(уменьшаеться хп, кастуються негативные спеллы и т.д.)
Хотел реализовать это таким образом:
Code: Select all
If uo.warmode() == 1 Then
If UO.Waiting() Then
UO.CancelTarget()
EndIf
uo.showjournal(10)
UO.Exec("usetype inviz")
UO.Exec('warmode 0')
UO.DeleteJournal()
RecallToHome()
Но почемуто даный фрагмент не срабатует

- может кто-нить помочь с такой функцией ?

Posted: 2005-06-14 22:25:36
by flake
Code: Select all
If UO.Life < 150 OR UO.InJournal( 'Kal Vas Flam' ) OR UO.InJournal( 'Cor Por' ) Then
...
...
...
End If
Проверка на жизни чара и на каст магии повреждения (ФС и Кор-Пор. Имхо нет смысла вводить проверку на такие вещи как Харм и Лайт: быстее узнаешь о них по изминениям в ХП)
Posted: 2005-06-14 22:51:15
by BbIDLO
В том то и прикол что на Оскоме чего тока не делают чтобы не дать майнеру улететь, кастуют всё подряд, кидают взрывы и одновременно стреляют с арбаля, бьют найтмаром и кастуют паралайз и т.д. Подскажите реально ли сделать типа как у меня с проверкой на вар режим тока чтобы работало ?

Posted: 2005-06-14 23:13:30
by flake
В твоем случаем майнер будет пытаться улетать только после того, как его уже начнут бить.
А надо улетать как только он находит в поле хрения чужого чара.
Posted: 2005-06-15 19:04:19
by BbIDLO
Тогда можно ли как-то в проверку на красные ники, добавить ещё чтобы проверяло кому принадлежит этот ник - игроку или нпс ???
Вот скрипт на проверку:
Code: Select all
var jor,ser,noto
for jor = 0 to 9
ser = uo.JournalSerial(jor)
noto = uo.GetNotoriety(ser)
If noto <> 1 and noto <> 0 and noto <> 3 Then
If UO.Waiting() Then
UO.CancelTarget()
EndIf
uo.showjournal(10)
UO.Exec("usetype inviz")
UO.Exec('warmode 0')
UO.DeleteJournal()
RecallToHome()
Posted: 2005-06-15 19:17:25
by flake
Ищим вокруг себя чаров.
Проверяем их "Красность".
На монстров не будет реагировать, т.к. мы ищим только типы чаров.
Posted: 2005-06-16 09:19:05
by BbIDLO
так а как искать имено чаров ?????

Posted: 2005-06-16 09:51:00
by flake
Code: Select all
UO.FindType( '0x0190', '-1', 'ground' ) ; искать чаров Мужского типа
UO.FindType( '0x0191', '-1', 'ground' ) ; искать чаров Женского типа
Posted: 2005-06-16 22:01:09
by Edred
Примерно так делай:
Code: Select all
Sub ControlPK()
; Насчет ПК - будем сканировать вокруг в поисках типов.
; Если появляется - прерываем копку, начинаем убегать и реколлимся на ходу.
;
VAR MinDistance = val( UO.GetGlobal('MinEnemyDist') )
VAR MaxDistance = val( UO.GetGlobal('MaxEnemyDist') )
VAR PKchar1 = '0x0190'
VAR PKchar2 = '0x0191'
VAR PKCount = 0, PKSerial = ''
VAR PKColor, PKDist, PKDistOld, i
VAR GoOut = 0
DIM ExcludeChar[5]
ExcludeChar[0] = '...'
ExcludeChar[1] = '...'
ExcludeChar[2] = '...'
ExcludeChar[3] = '...'
ExcludeChar[4] = '...'
;
While NOT UO.Dead()
UO.Ignore( 'self' )
repeat
wait(300)
UO.FindType( PKchar1, '-1', '1' )
PKCount = UO.FindCount()
If PKCount == 0 Then
UO.FindType( PKchar2, '-1', '1' )
PKCount = UO.FindCount()
Endif
If PKCount > 0 Then
PKSerial = UO.GetSerial( 'finditem' )
For i = 0 to 5
If PKSerial == ExcludeChar[i] Then
UO.Ignore( 'finditem' )
PKCount = 0
Endif
Next
Endif
until PKCount > 0
; Нашли!
PKDistOld = 15
PKColor = UO.GetNotoriety( PKSerial )
WriteLog( 'I found another char. Serial = ' + PKSerial + ', Notoriety = ' + str(PKColor), 0 )
............................................
[действия по обнаружении другого чара слопала цензура]
............................................
Posted: 2005-06-17 00:26:27
by BbIDLO
спасибо
завтро с этого буду лепить под себя функцию

Posted: 2005-06-17 12:12:56
by flake
Чтоб она подавилась, эта цензура
