![]() |
![]() |
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #1
|
Подскажите как сделать так чтоб этот скрипт если находит такую запись в журнале то берёт новое оружие в руки. sub fighting() var weapon="0x13fe",shield="0x1b76" оружие и мечь var timer repeat if uo.gethp('laststatus')>45 then uo.warmode(1) uo.attack('laststatus') repeat wait(100) until uo.gethp('laststatus')<30 endif if uo.gethp('laststatus')<30 then uo.warmode(0) repeat timer=uo.timer()+40 uo.deletejournal() wait(300) until uo.gethp('laststatus')>45 or timer<=uo.timer() uo.equipt("Rhand",weapon) uo.equipt("Lhand",shield) endif wait(100) until 0>1 endsub когда вот в этот отрывок var weapon="0x13fe",shield="0x1b76" оружие и мечь var timer repeat if uo.gethp('laststatus')>45 then uo.warmode(1) uo.attack('laststatus') добавляю вот это var weapon="0x13fe",shield="0x1b76" оружие и мечь var timer repeat if uo.injournal('destroyed!') then uo.equipt("Rhand",weapon) if uo.gethp('laststatus')>45 then uo.warmode(1) uo.attack('laststatus') то выдёт просто ошибку |
|
|
|
![]() Сообщение #2
|
|
не знаю ![]() |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #3
|
Ну что не кто незнает как вставить функцию проверки чтоб брал оружие если сломалось??? |
|
|
|
![]() ![]() Сообщений: 1684 Рег. 6.09.2009 |
![]() Сообщение #4
|
А ошибка то какая? |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #5
|
sub fighting() var weapon="0x13fe",shield="0x1b76" оружие и мечь var timer repeat if uo.injournal('destroyed!') then uo.equipt("Rhand",weapon) repeat endif if uo.gethp('laststatus')>45 then uo.warmode(1) uo.attack('laststatus') repeat wait(100) until uo.gethp('laststatus')<30 endif if uo.gethp('laststatus')<30 then uo.warmode(0) repeat timer=uo.timer()+40 uo.deletejournal() wait(300) until uo.gethp('laststatus')>45 or timer<=uo.timer() uo.equipt("Rhand",weapon) uo.equipt("Lhand",shield) endif wait(100) until 0>1 endsub вот замутил скрипт но он пашит если у героя не одет армор и хп доходят до 80 до того когда другие функции начинают включатся |
|
|
|
![]() Сообщение #6
|
|
1) if uo.injournal('destroyed!') then
uo.equipt("Rhand",weapon) repeat endif endif - должно быть выше репеат. 2) Это лучше вынести в отдельную процедуру, ибо если он будет крутится в тех циклах неизвестно, когда он это проверит. в той процедуре вставить uo.Exec('exec proverkaweap') сразу после всех объявлений переменных и написать после end sub
sub proverkaweap()
while 1==1 if uo.injournal('destroyed!') then uo.equipt("Rhand",weapon) endif uo.deletejournal() wait(300) wend endsub Ну и переменную Weapon вынести выше всех процедур чтобы она была общей. 3) И это оставь в этом цикле, но переставь в начало uo.equipt("Rhand",weapon) uo.equipt("Lhand",shield) |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #7
|
sub fighting() var weapon="0x1400",shield="0x1b76";âïèñà ;ò ;ü òèï îðóæèÿ è ùèòîâ var timer repeat uo.equipt("Rhand",weapon) uo.equipt("Lhand",shield) uo.Exec('exec proverkaweap') if uo.gethp('laststatus')>45 then uo.warmode(1) uo.attack('laststatus') repeat wait(100) until uo.gethp('laststatus')<30 endif if uo.gethp('laststatus')<30 then uo.warmode(0) repeat timer=uo.timer()+40 uo.deletejournal() wait(300) until uo.gethp('laststatus')>45 or timer<=uo.timer() endif wait(100) until 0>1 end sub sub proverkaweap() var weapon="0x1400" while 1==1 if uo.injournal('destroyed!') then uo.equipt("Rhand",weapon) endif uo.deletejournal() wait(300) wend end sub Вот скрипт выглядит тепрь вот так пашит только единственное что заметил это если вдруг скрипт дойдёт до 80 хп то когда жертва насобирает хп до полного бара он опять включит функцию проверкавеапон. И из за этого можит крашанут так как много проверок включено будет. СПС И вопрос что означают вот эти функции timer=uo.timer()+40 while 1==1 |
|
|
|
![]() Сообщение #8
|
|
While 1==1
wend тоже самое что и repeat
until 0>1 Это бесконечные циклы. |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #9
|
Что за бесконечные цыклы как небудь по проще обьясни пожалуйста |
|
|
|
![]() Сообщение #10
|
|
Тоесть действия записанные внутри этих циклов будут повторят до бесконечности. Смотри цикл While выполняется до тех пор пока выполняется условие которое записано в нем, тоесть как не крути 1 всегда равно 1му. Цикл Repeat until выполняется до тех пор, пока не выполняется условие тоесть 0 не когда не станет больше единицы. |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #11
|
Спасибо теперь понял что за комманды |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #12
|
sub fighting() uo.Exec('exec proverkaweap') endif var weapon="0x1400",shield="0x1b76";your weapon and shield var timer repeat uo.equipt("Rhand",weapon) uo.equipt("Lhand",shield) if uo.gethp('laststatus')>45 then uo.warmode(1) uo.attack('laststatus') repeat wait(100) until uo.gethp('laststatus')<30 endif if uo.gethp('laststatus')<30 then uo.warmode(0) repeat timer=uo.timer()+40 uo.deletejournal() wait(300) until uo.gethp('laststatus')>45 or timer<=uo.timer() endif wait(100) until 0>1 end sub sub proverkaweap() var weapon="0x1400" while 1==1 if uo.injournal('destroyed!') then uo.equipt("Rhand",weapon) repeat endif uo.deletejournal() wait(300) wend end sub Во вот теперь скрипт работает как надо.Я оказывается не туда влепил функцию Uo.exec.Теперь эта функция не включается по 20 раз |
|
|
|
![]() ![]() Сообщений: 187 Рег. 14.06.2010 |
![]() Сообщение #13
|
Цитата: Betrazen if uo.injournal('destroyed!') then uo.equipt("Rhand",weapon) repeat endif uo.deletejournal забыл |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #14
|
А репет зачем? |
|
|
|
![]() Сообщение #15
|
|
Я качал вообще вот таким скриптом.
Закидывал в пак много оружия и на макрос.
sub sparing() |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #16
|
Возможно тоже но если у твоей куклы сломается армор или реген остановится то она будет стоять гостом. А в этом скрипте он останавливается если хп меньше 80 |
|
|
|
![]() Сообщение #17
|
|
Ну тогда уже лутше такой скрипт мутить под прогу стелз. |
|
|
|
![]() ![]() ![]() Сообщений: 1246 Рег. 12.12.2009 |
![]() Сообщение #18
|
это уже другой вопрос |
|
|
|
Сейчас: 18 мая 2025 16:21 |