Я вернулся ;-) / мини-блог dvdc )))

Вопросы, которые касаются Рагнарок онлайн, но не касаются OpenKore.

Модератор: 4epT

Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Флуд:
"контрольные точки" - когда я про них заикнулся при обсуждении того макроса, меня закидали гнилыми помидорами. :evil:
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
dvdc
Бывалый
Сообщения: 556
Зарегистрирован: Вс ноя 05, 2006 1:43 pm
Контактная информация:

Сообщение dvdc »

я завтра выложу пример кода с контрольной точкой )
Funt
Грамотный
Сообщения: 233
Зарегистрирован: Чт дек 14, 2006 10:21 pm
Откуда: Прекрасный город на Неве...

Сообщение Funt »

Ыть...Сябки!Наверно мне просто надо попробовать написать Макро на прохождение какого нить квеста что бы это понять :oops: .
Самый лучший сервер-Земля!Огромная карта,6милиардов игроков,терпеливый админ...Вот тока бота для этого сервера не существует :(
dvdc
Бывалый
Сообщения: 556
Зарегистрирован: Вс ноя 05, 2006 1:43 pm
Контактная информация:

Сообщение dvdc »

Ых! Вобщем, вот пример кода с контрольной точкой :)

Код: Выделить всё

automacro preLoadingVariables {
	base < 99
	call LoadingVariables
	run-once 1
}
macro LoadingVariables {
  log Enviroment loading...
  pause 1
  $tq = @config (ThiefQuest)
  log Thief Quest Status: $tq
  pause 2
}
соответственно, этот автомакрос загружает переменную из конфига, и держит в памяти. в данном случае переменная - $tq.
дальше метод её применения:

Код: Выделить всё

automacro Step2 {
	run-once 1
	location job_thief1, moc_pryd01, moc_prydb1, moc_ruins, morocc
	class novice
	job == 10
	var tq == 1
	call Step2m
}
macro Step2m {
	do ai auto
	do move 137 125 moc_ruins
	log Подошли к мужику, начали разговор
	do talknpc 141 125 c r0
	log Мы в грибной локации. Собираем грибочки!
	pause 1
	do conf ThiefQuest 2
	release preLoadingVariables
}
в данном примере мы отчётливо видим, что дойдя до определённого момента в квесте, мы меняем переменную в конфиге, и сразу же перезагружаем "run-once" нашего автомакроса с переменными. он читает переменные снова, а дальше уже срабатывает другой автомакрос, в условиях которого var tq == 2 :)
это самый простой и самый действенный способ создания контроля над квестами.
Ответить