скрипт на прокачку вар-скилов на менекене

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Дисконнект™
Posts: 10
Joined: 2006-02-22 21:25:31

скрипт на прокачку вар-скилов на менекене

Post by Дисконнект™ »

в общем в инже я нуб.
наваял тут это

Code: Select all

sub kykla()
uo.Exec('exec say_guards')
UO.Exec('set finddistance 2')
repeat
UO.FindType("0x1074","-1","ground")
wait(100)
UO.UseObject('finditem')
wait(5000)
	until false
end sub

sub say_guards()
repeat
uo.say ('guards')
wait(10000)
until false
end sub
в общем тут чар ищет манекен для прокачки и долбит его оружеем которое в руке. (короче просто ласт обжект на луп стоит.)
у нас на шарде на манекенах максимум до 60 можно прокачать.
и вот тут нужна ваша помошь.
помогите мне замутить автосмену девайса по достижению скила 60.
тоесть допустим в бэкпаке лежит катана, крисс и молоточек для БС (у нас на них тоже маза качается). ну и как он достиг 60 допустим сворды, катану убирает берет крисс и качает фенсинг.
мне не лень посмотреть за чаром, но просто на ночь не оставишь, т.к. скилл растет быстрее и к утру он просто стоит и ничего не делает.
заранее благодарен и надеюсь на вашу помошь
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Посмотри в топике с моим наследством (прилеплен), файл SkillUp.sc, там есть то, что ты ищешь. Точнее, там скрипты сами берут оружие из пака, если оно разрушится - берут новое. А запустить скрипты можно из другого скрипта просто по очереди. Скрипты работают до скилла в 60 или силы в 150 - второе условие отмени и будет тебе счастье.
Ни один скрипт не работает? Пора обновить [url=http://www.eof.nm.ru/FiLeS/uoloop.exe]Инжект[/url]...
Все работает, но хочется большего? Пора переходить на [url=http://stealth.od.ua/]стелс[/url]...
Дисконнект™
Posts: 10
Joined: 2006-02-22 21:25:31

Post by Дисконнект™ »

Edred wrote:Посмотри в топике с моим наследством (прилеплен), файл SkillUp.sc, там есть то, что ты ищешь. Точнее, там скрипты сами берут оружие из пака, если оно разрушится - берут новое. А запустить скрипты можно из другого скрипта просто по очереди. Скрипты работают до скилла в 60 или силы в 150 - второе условие отмени и будет тебе счастье.
спасибо... тока я вот не нашел как запускать процедуру из процедуры :oops: я через арм\дизарм сделал смену дивов.... щас вот ошибки выискиваю:(
Дисконнект™
Posts: 10
Joined: 2006-02-22 21:25:31

Post by Дисконнект™ »

Code: Select all

sub smena_sword()
uo.disarm()
wait(1000)
uo.arm('katana')
wait(500)
uo.Exec('exec kykla')
while UO.SkillVal('Swordsmanship') > 59
UO.Exec('exec smena_fens')
wend
end sub

sub smena_fens()
uo.disarm()
wait(1000)
uo.arm('dagger')
wait(500)
while UO.SkillVal('Fencing') > 59
UO.Exec('exec smena_mace')
wend
end sub

sub smena_mace()
uo.disarm()
wait(1000)
uo.arm('hammer')
wait(500)
while UO.SkillVal('Mace Fighting') > 59
UO.Exec('terminate all')
wait(1000)
UO.Print('all skills already high. End script')
wend
end sub


sub kykla()
uo.Exec('exec say_guards')
UO.Exec('set finddistance 2')
repeat
UO.FindType("0x1074","-1","ground")
wait(100)
UO.UseObject('finditem')
wait(5000)
until false
end sub

sub say_guards()
repeat
if uo.life < uo.str then
uo.say ("guards")
wait(1000)
until false
end sub
наваял... все равно где то косяк.... у меня процудуры смены дивов идут по кругу без задержек и сразу запуск кучи процедур привозит к вылету клиента с инжей.... надо чтоб менялся при достижении скила.
чего исправить?
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Сорри, просто лень сегодня в чужом скрипте ковыряться, проще написать свой:

Code: Select all

sub Kukla()
; Писано на коленке. Не тестировалось
; v.1.00b, (c) Edred, 2006
;
	DIM Weapon[3]
	Weapon[0] = '0x143A'		; Оружие для мейсы
	Weapon[1] = '0x0F51'		; Оружие для фенсы
	Weapon[2] = '0x13FE'		; Оружие для сворды
	DIM Skills[3]
	Skills[0] = 'Mace Fighting'	; Точные названия скиллов
	Skills[1] = 'Fencing'
	Skills[2] = 'Swordsmanship'
	VAR Kukla = '0x1074'		; Тип куклы
	VAR MaxSkill = 600		; До какого скилла прокачка (*10)
	VAR flag = 1, i
	; Ищем куклу
	UO.Set( 'finddistance', '2' )
	UO.FindType( Kukla, '-1', 'ground' )
	If UO.Findcount() == 0 Then
		UO.Print( 'kukla ne naydena!' )
		return
	Else
		UO.AddObject( 'Kukla', 'finditem' )
	Endif
	; Работаем в цикле
	for i = 0 To 2
		While UO.SkillVal( Skills[i] ) < MaxSkill
			flag = GetDagger( Weapon[i] )
			If flag == 0 Then
				UO.Print( 'weapon not found!' )
				return
			Endif
			UO.UseObject( 'Kukla' )
			wait(4000)
			If UO.Life < 100 Then
				UO.SayU( 'Guards!' )
			Endif
		Wend
	Next
endsub

Sub GetDagger( Dagger )
	If UO.GetGraphic( UO.ObjAtLayer( 'Rhand' ) ) <> Dagger Then
		UO.FindType( Dagger )
		If UO.FindCount() == 0 Then
			return 0
		Endif
		UO.Equipt( 'Rhand', Dagger )
		wait(1000)
	Endif
	return 1
endsub
Last edited by Edred on 2006-06-16 13:01:52, edited 3 times in total.
Ни один скрипт не работает? Пора обновить [url=http://www.eof.nm.ru/FiLeS/uoloop.exe]Инжект[/url]...
Все работает, но хочется большего? Пора переходить на [url=http://stealth.od.ua/]стелс[/url]...
Дисконнект™
Posts: 10
Joined: 2006-02-22 21:25:31

Post by Дисконнект™ »

сенк.... но там парсер эррор в 5 строчке.
в общем я понял где у меня ошибки были. надо максимальное значение *10 писать, а я просто написал+кое где терминаты добавил... щас вот тестю
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Code: Select all

   DIM Weapon[3] 
   Weapon[0] = '0x143A'      ; Оружие для мейсы 
   Weapon[1] = '0x0F51'      ; Оружие для фенсы 
   Weapon[2] = '0x13FE'      ; Оружие для сворды 
   DIM Skills[3] 
   Skills[1] = 'Mace Fighting'   ; Точные названия скиллов 
   Skills[2] = 'Fencing' 
   Skills[3] = 'Swordsmanship'
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

Дисконнект™ wrote:сенк.... но там парсер эррор в 5 строчке.
Исправил.
Ни один скрипт не работает? Пора обновить [url=http://www.eof.nm.ru/FiLeS/uoloop.exe]Инжект[/url]...
Все работает, но хочется большего? Пора переходить на [url=http://stealth.od.ua/]стелс[/url]...
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Edred wrote:
Дисконнект™ wrote:сенк.... но там парсер эррор в 5 строчке.
Исправил.
Ничего ты не исправил :\
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

You Must Die wrote:Ничего ты не исправил :\
И что же, по твоему, я не исправил? Нумерацию элементов в массиве, которую забыл сразу, поправил. Причем правильно, в отличие от того, как предложил ты. Что еще? Я скрипт не тестил и не буду тестить (не играю уже год). Если кто-нить потестит и напишет еще о какой ошибке - посмотрю еще. Иначе - телепаты в отпуске.
Ни один скрипт не работает? Пора обновить [url=http://www.eof.nm.ru/FiLeS/uoloop.exe]Инжект[/url]...
Все работает, но хочется большего? Пора переходить на [url=http://stealth.od.ua/]стелс[/url]...
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Edred wrote:
You Must Die wrote:Ничего ты не исправил :\
И что же, по твоему, я не исправил? Нумерацию элементов в массиве, которую забыл сразу, поправил. Причем правильно, в отличие от того, как предложил ты. Что еще? Я скрипт не тестил и не буду тестить (не играю уже год). Если кто-нить потестит и напишет еще о какой ошибке - посмотрю еще. Иначе - телепаты в отпуске.
Не сомневаюсь что ты в инже больше меня знаешь, но разве массив значится через VAR? Или так тоже можно?

Code: Select all

   VAR Weapon[3] 
   Weapon[0] = '0x143A'      ; Оружие для мейсы 
   Weapon[1] = '0x0F51'      ; Оружие для фенсы 
   Weapon[2] = '0x13FE'      ; Оружие для сворды 
   VAR Skills[3] 
   Skills[0] = 'Mace Fighting'   ; Точные названия скиллов 
   Skills[1] = 'Fencing' 
   Skills[2] = 'Swordsmanship' 
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Post by Edred »

You Must Die wrote:Не сомневаюсь что ты в инже больше меня знаешь, но разве массив значится через VAR? Или так тоже можно?
Угу. На это внимание не обратил. Поправил.
Ни один скрипт не работает? Пора обновить [url=http://www.eof.nm.ru/FiLeS/uoloop.exe]Инжект[/url]...
Все работает, но хочется большего? Пора переходить на [url=http://stealth.od.ua/]стелс[/url]...
Post Reply