Атака по сигналу из журнала

Anything and all.

Moderators: Murderator+, Murderator

Raketchik
Posts: 23
Joined: 2006-02-03 10:40:17
Location: DRW
Contact:

Post by Raketchik »

Cooper wrote:
Raketchik wrote:Спасибо, твой скрипт единственный, который правильно работает :)


ХЗ у мя на ДРВ и мой работает норм )) :wink:

У меня аттачит одного врага, но не повторяет этого на реснувшемся.
ОНИ РАБОТАЮТ

а можно по подробнее? что тут такого удивительного?
Церковь совсем рядом, но дорога уж очень скользкая.
Кабак далеко, но мы будем шагать очень внимательно.
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

Raketchik wrote:
Cooper wrote:
Raketchik wrote:Спасибо, твой скрипт единственный, который правильно работает :)


ХЗ у мя на ДРВ и мой работает норм )) :wink:

У меня аттачит одного врага, но не повторяет этого на реснувшемся.
ОНИ РАБОТАЮТ

а можно по подробнее? что тут такого удивительного?



А у меня повторяет, может ты вместо Типа написал ID :D или у тя инжа другой версии? Только что десяток лучников повалил за бритой и норм, ни разу не сбился
BigMouseI
Posts: 93
Joined: 2006-04-15 09:00:35

Post by BigMouseI »

Написал в блокноте, должно работать, но не ручаюсь...

Code: Select all

sub autoattack()
sub mob
repeat
  wait(500)
  If UO.InJournal('is attacking you') then
    mob=uo.getserial(UO.JournalSerial(UO.InJournal('is attacking you')-1))
    uo.attack(mob)
  endif
  UO.DeleteJournal('is attacking you')
Until not UO.Dead()
SLAK
Posts: 182
Joined: 2005-08-19 16:12:23
Contact:

Post by SLAK »

BigMouseI wrote:Написал в блокноте, должно работать, но не ручаюсь...

Code: Select all

sub autoattack()
sub mob
repeat
  wait(500)
  If UO.InJournal('is attacking you') then
    mob=uo.getserial(UO.JournalSerial(UO.InJournal('is attacking you')-1))
    uo.attack(mob)
  endif
  UO.DeleteJournal('is attacking you')
Until not UO.Dead()

пару недочетов:
1. Перед атакой неплохо бы проверить , чтоб моб не равнялся нулю.
2. Делит журнала нада в ифе писать, а не после(да и команда параметров кажись не имеет) :

Code: Select all

sub autoattack()
var mob
repeat
  If UO.InJournal('is attacking you') then
    mob=uo.getserial(UO.JournalSerial(UO.InJournal('is attacking you')-1))
    UO.DeleteJournal()
     if mob<>0 and mob<>uo.getserial('self') then
      uo.attack(mob)
      wait(1000)
     end if
  endif
 wait(500)
Until not UO.Dead()
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

2. Абсалютно верно - не имеет.

Следует использовать приведённую выше функцию deljournal, для удалени конкретного сообщения из журнала Injection.
flake
Expert!
Posts: 746
Joined: 2004-08-11 23:56:17
Location: The Citadel
Contact:

Post by flake »

Cooper wrote:Нет не один ты))) это не первый скрипт с такими штуками, и если я не ошибаюсь то ОНИ РАБОТАЮТ)))


Не хочешь совсем учиться.
Mihail
Expert!
Posts: 548
Joined: 2005-05-20 20:30:10
Contact:

Post by Mihail »

угу.. и выяснится что этот скрипт был для ПВП альфы и после него так же как и после догонялки жить ей все меньше и меньше %)
Geroy
Posts: 6
Joined: 2006-04-18 08:22:07

Post by Geroy »

Блин, у меня не один не работает, можете плиз ещё написать, только на DRW.
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Code: Select all

sub autoattack() 
var mob
repeat
  If UO.InJournal('is attacking you') then
    mob=uo.getserial(UO.JournalSerial(UO.InJournal('is attacking you')-1))
    UO.DeleteJournal()
     if mob<>"0x00000000" and mob<>uo.getserial('self') then
      uo.attack(mob)
      wait(1000)
     end if
  endif
 wait(500)
Until UO.Dead()

Даже этот неработает?;)
SLAK
Posts: 182
Joined: 2005-08-19 16:12:23
Contact:

Post by SLAK »

Grin wrote:Даже этот неработает?;)

наверно он енд саб не дописал...
Пробуй:

Code: Select all

sub autoattack() 
var mob
repeat
  If UO.InJournal('is attacking you') then
    mob=uo.getserial(UO.JournalSerial(UO.InJournal('is attacking you')-1))
    UO.DeleteJournal()
     if mob<>"0x00000000" and mob<>uo.getserial('self') then
      uo.attack(mob)
      wait(1000)
     end if
  endif
 wait(500)
Until UO.Dead()
end sub
Geroy
Posts: 6
Joined: 2006-04-18 08:22:07

Post by Geroy »

Всё равно не работают :cry:
SLAK
Posts: 182
Joined: 2005-08-19 16:12:23
Contact:

Post by SLAK »

А на каком шарде ты играеш?
Помниться на ранУО эта строка возвращала твое ИД и ясный пень мой скрипт не будет по себе бить.
Sanch
Posts: 308
Joined: 2005-07-17 15:30:52
Location: www.drw.ru

Post by Sanch »

Всё равно не работают


Не работает понятие обстрактное, какую ошибку выдает при запуске скрипта, или что происходит, или ничего не проиходит?

А на каком шарде ты играеш?
Помниться на ранУО эта строка возвращала твое ИД и ясный пень мой скрипт не будет по себе бить
.

На дрв на скок я понял, вообще в последнем скрипте, который отпостили, условие того что скрипт может вернуть твой ID а не моба предусмотрено.
SLAK
Posts: 182
Joined: 2005-08-19 16:12:23
Contact:

Post by SLAK »

Sanch wrote:
На дрв на скок я понял, вообще в последнем скрипте, который отпостили, условие того что скрипт может вернуть твой ID а не моба предусмотрено.

Заз на ДРВ, то хз что у него не пашет...
Нащёт моего предыдущего поста, на ранУО когда тебя атачит чел то в журнале получается строка (мой ник будит ником того кого атчат):
SLAK: Sanch is attacking you.
И если проверить через джорнал сериал, то месага вернёт ИД Слака, хоть бьёт его Санч :)
А проверка в скрипте : не я ли сказал, из-за того, что на некоторых шардах есть киллселф, попробуй прописать : ,attack self . :wink:
Raketchik
Posts: 23
Joined: 2006-02-03 10:40:17
Location: DRW
Contact:

Post by Raketchik »

ыц :lol:
я ужо давно боевые накачал все, а тема всё живёт :D
ЗЫ:

Code: Select all

sub GrimKill() 

    Var hrsT, hrsC
    hrsT = "0x03CA" # тип зверька
    hrsC = "0x0901" # его цвет

repeat

   UO.FindType(hrsT, hrsC, "ground")
       If UO.FindCount() > 0 Then
         UO.WarMode(1)
         walk(0,0,'finditem')
         wait(100)
         UO.Attack('finditem') 
       Else
       End If
         wait(10000)
until UO.dead()
end sub

sub Walk(X,Y,Target)
var Targeting=''
var Result
var DX,DY,GLX,GLY
var DirW=0
var exit=0
while exit<>1
if Target<>'' then
Targeting=Target
DX=uo.GetX(Target)-uo.GetX()
DY=uo.GetY(Target)-uo.GetY()
if uo.GetDistance(Target)<2 then
exit=1
end if
else
DX=X-uo.GetX()
DY=Y-uo.GetY()
GLX=DX
GLY=DY
if DX==0 and DY==0 then
exit=1
end if
end if
if exit==0 then
if DX>0 and DY>0 then
DirW=9
end if
if DX>0 and DY<0 then
DirW=7
end if
if DX<0 and DY>0 then
DirW=3
end if
if DX<0 and DY<0 then
DirW=5
end if
if DX<>0 and DY==0 then
if DX>0 then
DirW=8
else
DirW=4
end if
end if
if DX==0 and DY<>0 then
if DY>0 then
DirW=2
else
DirW=6
end if
end if
Result=Go(DirW)
if Result==0 then
Result=Go(DirW-2)
if Result==0 then
Result=Go(DirW+2)
end if
end if
end if
wend
end sub

sub Go(dir)
var WalkWait=100
var Targeting=''
var X,Y,GLX,GLY
var check=1
var StartingDir=uo.GetDir()
X=uo.GetX()
Y=uo.GetY()
dim MoveKey[12]
MoveKey[0]=34
MoveKey[1]=40
MoveKey[2]=35
MoveKey[3]=37
MoveKey[4]=36
MoveKey[5]=38
MoveKey[6]=33
MoveKey[7]=39
MoveKey[8]=34
MoveKey[9]=40
MoveKey[10]=35
MoveKey[11]=37
dim StartDir[12]
StartDir[0]=2
StartDir[1]=3
StartDir[2]=4
StartDir[3]=5
StartDir[4]=6
StartDir[5]=7
StartDir[6]=0
StartDir[7]=1
StartDir[8]=2
StartDir[9]=3
StartDir[10]=4
StartDir[11]=5
while uo.GetDir()<>StartDir[dir]
uo.Press(MoveKey[dir])
wait(WalkWait)
if uo.GetDir()==StartingDir then
end if
if (Targeting<>'' and uo.GetDistance(Targeting)<2) or (GLX==0 and GLY==0) then
return 1
end if
wend
uo.Press(MoveKey[dir])
wait(WalkWait)
if X==uo.GetX() and Y==uo.GetY() then
uo.Press(MoveKey[dir])
wait(WalkWait)
wait(100)
end if
if X==uo.GetX() and Y==uo.GetY() then
return 0
else
return 1
end if
end sub
Церковь совсем рядом, но дорога уж очень скользкая.
Кабак далеко, но мы будем шагать очень внимательно.
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Raketchik wrote:ыц :lol:
я ужо давно боевые накачал все, а тема всё живёт :D
ЗЫ:

Code: Select all

sub GrimKill() 

    Var hrsT, hrsC
    hrsT = "0x03CA" # тип зверька
    hrsC = "0x0901" # его цвет

repeat

   UO.FindType(hrsT, hrsC, "ground")
       If UO.FindCount() > 0 Then
         UO.WarMode(1)
         walk(0,0,'finditem')
         wait(100)
         UO.Attack('finditem') 
       Else
       End If
         wait(10000)
until UO.dead()
end sub

sub Walk(X,Y,Target)
var Targeting=''
var Result
var DX,DY,GLX,GLY
var DirW=0
var exit=0
while exit<>1
 ...


и че это?
Raketchik
Posts: 23
Joined: 2006-02-03 10:40:17
Location: DRW
Contact:

Post by Raketchik »

Это скрипт, но не по журналу, а по типу и цвету + к монстру чар сам подходит.
Церковь совсем рядом, но дорога уж очень скользкая.
Кабак далеко, но мы будем шагать очень внимательно.
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

Raketchik wrote:Это скрипт, но не по журналу, а по типу и цвету + к монстру чар сам подходит.



Code: Select all

UO.Set("finddistance","7")

Добавь, а то будешь носится по всей нубке за скелетами... :D
Kynep
Expert!
Posts: 1348
Joined: 2006-02-07 08:51:40
Location: г. Старый Оскол
Contact:

Post by Kynep »

Raketchik wrote:ыц :lol:
я ужо давно боевые накачал все, а тема всё живёт :D
ЗЫ:


Поделись секретом, на ком вкачивал... очень надо..., в асю или ПМ...
Raketchik
Posts: 23
Joined: 2006-02-03 10:40:17
Location: DRW
Contact:

Post by Raketchik »

Cooper wrote:

Code: Select all

UO.Set("finddistance","7")

Добавь, а то будешь носится по всей нубке за скелетами... :D

Скрипт проверен и пашет на ура и без этого :)
Церковь совсем рядом, но дорога уж очень скользкая.
Кабак далеко, но мы будем шагать очень внимательно.
Post Reply