Скрипт off/on с кнопки,чтобы:

Ask for help

Moderators: Murderator+, Murderator

Post Reply
BOSS manCCCP
Posts: 44
Joined: 2010-07-24 00:08:17
Location: Moscow City
Contact:

Скрипт off/on с кнопки,чтобы:

Post by BOSS manCCCP »

У меня часто вышибает клиент при хелинге,все это из-за того что бывает несколько раз нажимаю с кнопку со скриптом сбивая текуший(зависат в скриптах) и начинает заного,когда 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

И так же все ли я правильно сделал в этом скрипте,правильно ли он написан,есть ли ошибки?
"Когда человек не знает, к какой пристани он держит путь, для него ни один ветер не будет попутным"
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: Скрипт off/on с кнопки,чтобы:

Post by Mirage »

1) у тебя там закрытый endif без начала - если бы правильно оформлял скрипт сам бы увидел где ошибка.
2) вместо дрюканья 5 раз еды без паузы лучше использовать выносную функцию

Code: Select all

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() обычно перед использованием ставится. И если оружие при одевании не вызывает прицел то в принципе и не нужно.
admir
Posts: 528
Joined: 2005-01-13 07:20:54

Re: Скрипт off/on с кнопки,чтобы:

Post by admir »

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

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

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

Code: Select all

uo.setglobal('eat',0)


Далее в самом скрипте проверяем на глобальную переменную если она "включена", то скрипт не запускается , а елси "выключена", то запускаем скрипт и "включаем" переменную.

Code: Select all

sub BestHeal()
if uo.getglobal('eat') == 0 then
  uo.setglobal('eat',1)
  UO.Print("BestHeal: ON")
....
....
  uo.setglobal('eat',0)
end if



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

Обнулять при старте клиента чтоб всегда можно было запустить первый раз, тк иногда бывает клиент крашит или закрываем принудительно, и если наша глобальная переменная была в позиции "1", то в следующий раз при запуске через инжект мы не сможем запустить наш скрипт.
все для альфы , [url=http://newvlad.nm.ru/prog]здесь[/url]
модернизация ремонт продажа игровых консолей
Sky: admirka1 Москва
Blood Slayer
Posts: 124
Joined: 2005-07-14 20:53:05
Contact:

Re: Скрипт off/on с кнопки,чтобы:

Post by Blood Slayer »

А я то все думал че этот скрипт перестает работать после краша ...

Code: Select all

sub Mana()
var Mana = Uo.Mana
Uo.SetGlobal('Cast','off')
   repeat
      wait(25)
   until Uo.Mana < Mana
Uo.SetGlobal('Cast','on')
end sub


Не знал что запоминает
Я пока только учусь :oops:

http://www.surfjunky.com/?r=BloodSlayer
Post Reply