Page 1 of 1

Проверка на скилл

Posted: 2004-05-17 20:56:01
by Psimorph
Привет. Возможно ли замутить следующее, мне нужно сделать проверку на скилл
тоесть
if NOT UO.Carpentry==100% then
тут скрипт карпы...
просто не оч хочу тратить лишние логи на карпу... хочу на ночь поставить %)

Posted: 2004-05-17 21:28:20
by BETEP
Есть такой скриптик ....мож поможет ))))

sub inta()
VAR Old, New
repeat
Old=UO.Int
CheckLag()
UO.WaitTargetObject('0x00136B25')
UO.UseSkill('Anatomy')
wait(3000)
If Old<UO.Int AND UO.Dex>100 Then
Old=UO.Dex
While Old==UO.Dex
UO.WaitTargetType('0x0F0E')
UO.UseSkill('Taste Identification')
wait(3000)
Wend
Endif
until UO.INT>74
UO.Say('.statslock')
end sub

Posted: 2004-05-17 21:30:21
by totus

Code: Select all

UO.TextPrint(STR(UO.SkillVal('Tinkering')/10)+'%')


Пробуй :)

Соответственно, ясно, что и как...

Posted: 2004-05-17 22:06:18
by Psimorph
Тобишь
if NOT UO.SkillVal('Carpentry')==1000
бла бла бла :)
учтём. спасибо!

Posted: 2004-05-17 22:40:25
by Psimorph
А ещё такой вопрос
sub checkpila()
if UO.Count('pila')<=5 then
takepila()
end if
end sub

sub takepila()
UO.Say('Bank')
wait(500)
Gra:
UO.FindType('0x1034',-1,'bank') ; пила
if UO.GetQuantity('finditem')>0 then
UO.Grab('1','finditem')
wait(1500)
endif
If UO.Count('0x1034')==15 then
recall_to_carp()
endif
goto Gra
end sub

чё то я не могу понять как правильно сделать, запарился уже, мне надо чтобы по достижения кол-ва пил в паке моём, он делал recall_to_carp()

Posted: 2004-05-18 13:58:36
by totus

Code: Select all

If UO.Count('0x1034')==15 then 
recall_to_carp()
else
goto Gra
endif


вот так должно

Posted: 2004-05-20 02:04:16
by user
Хехехе :) goto еще в моде :)) умру сейчас :)

Posted: 2004-05-21 14:02:56
by Biga
user wrote:Хехехе :) goto еще в моде :)) умру сейчас :)

Что за наезды на goto? Только конченные отморозки и ламосы, считающие себя папосами, считают, что goto - отстой.

Posted: 2004-05-21 20:45:36
by Xpol
хе хе если намана програмить то любой алгоритм мона без ГОТО организовать
а ГОТО очень сильно снижет читабельность программы
не только мое имхо и многие профи со мной согласятся
ГОТО не от большого профессианализма используют а тока когда не знают как красивее понятнее иначе сделать
не всем дано =)
и спорить на ету тему безполезно !

Posted: 2004-05-21 20:48:53
by Xpol
а еше замечу вот что - чаше ГОТО используют потому что впадлу над простеньким алгоритмом заморачиваться =)))

Posted: 2004-05-21 21:44:25
by Psimorph
Да уже решили проблему, спасибо, Юзер в тот вечер был немного пьян(правда? =)) Вот он и разнервничался..он не хотел никого обидеть..всё ок. Скрипт я написал без гуту... Всё работает.

Posted: 2004-05-22 12:55:03
by Biga
Без гото можно обойтись. Как и без многих других команд.
А в чем смысл запрещать себе использовать goto?
Это маразм.

А насчет читабельности:
Если я вижу в конце скрипта строку goto BEGIN1
то это понятнее, чем UNTIL <somecondition>.
Goto Exit короче, чем uo.terminate <ScriptName>

Очень часто логика _диктует_ ставить goto вместо циклов там разных.

И возьмите серьезную книгу, в которой есть глава про стиль программирования. Даже Керниган-Ритчи пишут, что goto вполне нормальный оператор, и нефиг его избегать.