Page 1 of 1

Помогите со скриптом Peace - war

Posted: 2012-03-13 15:22:40
by Siva
Peace - war помогите пожалуста со скриптом чтобы можно было без кнопок выключить режим вар
тоесть постоянно включался Peace

Re: Помогите со скриптом Peace - war

Posted: 2012-03-13 15:47:23
by Mirage

Code: Select all

sub war_off()
   WHILE NOT UO.Dead()
      if uo.Warmode()==1 then
         uo.Warmode(0)
      end if
      wait(100)
   WEND
end sub

Re: Помогите со скриптом Peace - war

Posted: 2012-03-13 20:27:27
by Siva
Спасибо скрипт работает только проблема не ушла :(
если чара ударить или убить то после резуректа он типа не war и war выходит надпись :

You are preoccupied with thoughts of battle.
Пытаемся уйти в хайд...
You are preoccupied with thoughts of battle.
Пытаемся уйти в хайд...
You are preoccupied with thoughts of battle.
Пытаемся уйти в хайд...

Re: Помогите со скриптом Peace - war

Posted: 2012-03-16 01:36:22
by Siva
Тот скрипт выше рабочий активировать режим вар нельзя, но при ударе он отвечает и при рубки леса если энт кинул магию но в хайт не уходит его сразу бьют

You are preoccupied with thoughts of battle.
Пытаемся уйти в хайд...

Re: Помогите со скриптом Peace - war

Posted: 2012-03-16 08:57:47
by Mirage
можно ПОПРОБОВАТЬ убрать IF ENDIF и увеличить паузу до 500.

Re: Помогите со скриптом Peace - war

Posted: 2012-03-16 13:28:46
by Nmy
А если вместо
uo.Warmode(0)
сделать
uo.Warmode(1)
wait(500)
uo.Warmode(0)
?

Re: Помогите со скриптом Peace - war

Posted: 2012-03-16 17:26:35
by Siva
Перепробовал оба варианта
убрать IF ENDIF не пошел или я что то не так убрал,
во втором варианте скрипт пошел но проблема осталась,
ент кастует магию или атакует, чар в хайт не уходит, если самому нажать кнопку war то скрипт его переводит в peace и чар уходит в хайт.

Code: Select all

sub war_off()
   WHILE NOT UO.Dead()
      if uo.Warmode()==1 then
         uo.Warmode(1)
         wait(500)
         uo.Warmode(0)
      end if
      wait(100)
   WEND
end sub

Re: Помогите со скриптом Peace - war

Posted: 2012-03-16 18:45:41
by Mirage
чар не уходит потому что игра думает что чар не в варе.

Если у тебя добывающий скрипт то ПЕРЕД и ПОСЛЕ использования инструмента вставь просто:

uo.Warmode(0)
wait( 500 )






Я использую вот такую проверку:

Code: Select all

            repeat
               CheckAll()
               UO.DeleteJournal()
               UO.WaitTargetTile(Tiles, mX+X, mY+Y, mZ)
               Tools()
               LastTimer=UO.Timer()
               repeat
                  wait( delay1 )
               until UO.InJournal( allmsg ) || UO.Timer()>LastTimer+delay2 || UO.Weight > MaxVes || UO.Dead()
               CheckAll()
            until UO.InJournal( endmsg ) || UO.Timer()>LastTimer+delay3 || UO.Weight > MaxVes || UO.Dead()


Sub CheckAll()
   UO.Set('quiet','1')
   if UO.InJournal('is attacking you') then
      Enemy = UO.JournalSerial(UO.InJournal("is attacking you")-1)
      DeleteJournal('is attacking you')
      Gong(1)
      uo.Usetype( weapon )
      UO.Attack( Enemy )
      LastTimer=UO.Timer()
      repeat
         wait( delay2 )
      until uo.dead() or uo.GetX(Enemy)==0 || UO.Timer()>LastTimer+delay2
      uo.Warmode(0)
      wait(delay2)
   end if
   If UO.Life < Uo.Str/10 then
      UO.Set('quiet','0')
      uo.charprint(printcolour, 'Умираю!')
      MyTerminate()
   endif
   If UO.Weight > MaxVes Then
      UO.Set('quiet','0')
      uo.charprint(printcolour, 'Перегруз!')
      MyTerminate()
   endif
   if uo.Warmode()==1 then
      uo.Warmode(0)
      wait(delay2)
   end if
   DIM Fish[5]
   Fish[1]  = '0x09CC'   ; тип рыбы 1
   Fish[2]  = '0x09CD'   ; тип рыбы 2
   Fish[3]  = '0x09CE'   ; тип рыбы 3
   Fish[4]  = '0x09CF'   ; тип рыбы 4
   For i=1 To 4
      UO.FindType( Fish[i], -1, 'ground' )
      If UO.FindCount() > 0 Then
         timemove=UO.Timer()
         while UO.ContainerOf( UO.GetSerial('finditem') )=='0xFFFFFFFF' && timemove+20>UO.Timer()
            uo.MoveItem('finditem',0,'backpack')
            wait(delay1)
         wend
         if uo.count( knife ) then
            UO.WaitTargetObject( 'finditem' )
            UO.UseType( knife )
            while UO.Count( Fish[i] )
               wait( delay1 )
            wend
            UO.FindType( Steak )
            while UO.FindCount()>1
               UO.MoveItem( 'finditem', '0' , 'backpack' )
               wait( delay1 )
               UO.FindType( Steak )
            wend
         endif
      endif
   Next
end sub


PS это кусок.