Yoko
http://forum.yoko.com.ua/

Скрипт off/on с кнопки,чтобы:
http://forum.yoko.com.ua/viewtopic.php?f=3&t=15977
Page 1 of 1

Author:  BOSS manCCCP [ 2010-11-25 00:40:08 ]
Post subject:  Скрипт off/on с кнопки,чтобы:

У меня часто вышибает клиент при хелинге,все это из-за того что бывает несколько раз нажимаю с кнопку со скриптом сбивая текуший(зависат в скриптах) и начинает заного,когда 3-4 так зависнут одновременно стабильный краш...я бы хотел чтобы при повторном нажатии кнопки скрипта он вырубался(текущий) и заного он же и врубался,подскажите как это сделать,вот скрипт:

sub BestHeal()
UO.Print("BestHeal: ON")
uo.usetype("0x097B") #Ест рыбные котлеты
uo.usetype("0x097B") #Ест рыбные котлеты
uo.usetype("0x097B") #Ест рыбные котлеты
uo.usetype("0x097B") #Ест рыбные котлеты
uo.usetype("0x097B") #Ест рыбные котлеты
uo.usetype("0x097B") #Ест рыбные котлеты
UO.DeleteJournal()
UO.warmode(0)
If UO.Life<UO.STR Then
While UO.Life<>UO.STR
UO.DeleteJournal()
UO.BandageSelf()
Repeat
wait(300)
Until UO.InJournal("bloody|barely|need|put|reach|frozen")
Wend
UO.UseObject('Puxa')
uo.waittargetlast()
End if
wait(400)
UO.UseObject('Shield')
End If
UO.Print("BestHeal: Off")
UO.Exec('terminate BestHeal')
end sub

И так же все ли я правильно сделал в этом скрипте,правильно ли он написан,есть ли ошибки?

Author:  Mirage [ 2010-11-25 08:03:08 ]
Post subject:  Re: Скрипт off/on с кнопки,чтобы:

1) у тебя там закрытый endif без начала - если бы правильно оформлял скрипт сам бы увидел где ошибка.
2) вместо дрюканья 5 раз еды без паузы лучше использовать выносную функцию
Code:
Sub eat()
   REPEAT
      UO.DeleteJournal()
      LastTimer=UO.Timer()
      UO.findtype(havka,-1,'backpack'); прописать еду
      If UO.FindCount() > 0 Then
         UO.Useobject('finditem')
         wait(200)
      Else
         uo.print('кончилась еда' )
         return 0
      end if
   Until UO.InJournal("simply too full to eat|stuffed!|think|found|Вы ничего не можете") OR UO.Timer()>LastTimer+200
end sub

3) тавтология в скрипте - зачем закрывать закрытый скрипт? UO.Exec('terminate BestHeal')
4) так из косметики uo.waittargetlast() обычно перед использованием ставится. И если оружие при одевании не вызывает прицел то в принципе и не нужно.

Author:  admir [ 2010-12-04 01:24:41 ]
Post subject:  Re: Скрипт off/on с кнопки,чтобы:

По поводу дубликатов скриптов:
1)
Самое простое делать терминейт UO.Exec('terminate BestHeal')

2)
Если нам надо чтоб 1 скрипт закончился прежде чем запустился второй, то я делал это так:

существует функция sub autostart()
котрая запускается по умолчанию при загрузке клиента через инжект.
В ней я обнулял глобальные переменные, далее будет понятно для чего, например:
Code:
uo.setglobal('eat',0)


Далее в самом скрипте проверяем на глобальную переменную если она "включена", то скрипт не запускается , а елси "выключена", то запускаем скрипт и "включаем" переменную.
Code:
sub BestHeal()
if uo.getglobal('eat') == 0 then
  uo.setglobal('eat',1)
  UO.Print("BestHeal: ON")
....
....
  uo.setglobal('eat',0)
end if



Скрипт не будет заупскатся повторно пока не завершится первый.

Обнулять при старте клиента чтоб всегда можно было запустить первый раз, тк иногда бывает клиент крашит или закрываем принудительно, и если наша глобальная переменная была в позиции "1", то в следующий раз при запуске через инжект мы не сможем запустить наш скрипт.

Author:  Blood Slayer [ 2010-12-13 13:03:59 ]
Post subject:  Re: Скрипт off/on с кнопки,чтобы:

А я то все думал че этот скрипт перестает работать после краша ...
Code:
sub Mana()
var Mana = Uo.Mana
Uo.SetGlobal('Cast','off')
   repeat
      wait(25)
   until Uo.Mana < Mana
Uo.SetGlobal('Cast','on')
end sub


Не знал что запоминает

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/