Salfer Опубликовано 7 августа, 2014 Жалоба Поделиться Опубликовано 7 августа, 2014 При выполнении квеста и перезаходе в игру система предлагает пройти квест ещё 1 раз 0_оВопрос.Нужно переменные пихать в примеры или я что-то делаю нетак???пример квеста:prontera,156,189,5 script test quest 71,{if ( checkquest( 40002 ) == 2 ) {mes "you already done this mission";close;}else if ( checkquest( 40002, PLAYTIME ) == 2 ) {mes "drops Times up";erasequest 40002;setquest 40001;completequest 40001;close;}else if ( checkquest( 40002, HUNTING ) == 2 ) {mes "mission completed";completequest 40002;close;}else if ( checkquest( 40002, HUNTING ) == 0 ) {mes "drops not done yet ???";close;}else if ( checkquest( 40001 ) == 2 ) {mes "now kill 10 drops before I am angry !";erasequest 40001;setquest 40002;close;}else if ( checkquest( 40001, PLAYTIME ) == 2 ) {mes "poring Times up";erasequest 40001;close;}else if ( checkquest( 40001, HUNTING ) == 2 ) {mes "mission completed";mes "now kill 10 drops before I am angry !";changequest 40001, 40002;close;}else if ( checkquest( 40001, HUNTING ) == 0 ) {mes "poring not done yet ???";close;}mes "kill 10 poring before I am angry !";setquest 40001;close;} Ссылка на комментарий Поделиться на другие сайты Поделиться
Jarek Опубликовано 7 августа, 2014 Жалоба Поделиться Опубликовано 7 августа, 2014 Нужно переменные пихать Ссылка на комментарий Поделиться на другие сайты Поделиться
Mozg Опубликовано 7 августа, 2014 Жалоба Поделиться Опубликовано 7 августа, 2014 (изменено) Так ты добавь доп пременую на проверку и все =)If(quest==0) {if ( checkquest( 40002 ) == 2 ) {mes "you already done this mission";close;mes "kill 10 poring before I am angry !";setquest 40001;set quest,1;close;} } Изменено 7 августа, 2014 пользователем Mozg Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 7 августа, 2014 Автор Жалоба Поделиться Опубликовано 7 августа, 2014 (изменено) Да это и так понятно, обидно простоЕсли чел на середине квеста выйдет, по новой лупить придется =/Лутовые квесты с описанием делать чтоли Х_Х Изменено 7 августа, 2014 пользователем Salfer Ссылка на комментарий Поделиться на другие сайты Поделиться
Jarek Опубликовано 7 августа, 2014 Жалоба Поделиться Опубликовано 7 августа, 2014 (изменено) Ну вообще-то если игрок выйдет во время выполнения кв по убийству мобов, то прогресс сохраняетсяВы неясно сформулировали свою проблему "При выполнении квеста" лично я интерпретировал как квест выполнен, а не квест в процессе выполнения.Как я понял, вы пытаетесь сделать "убей X мобов за Y времени"?И во время выполнения такого квеста, если персонаж перезайдет в игру, то нпц предлагает ему взять квест заново?Если так, то проблема где-то у вас, ибо система должна замечательно работатьПросто изначально мне показалось, что вы хотите ограничить взятие такого квеста одним разом, поэтому и посоветовал использовать переменные Изменено 8 августа, 2014 пользователем Jarek 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Jarek Опубликовано 8 августа, 2014 Жалоба Поделиться Опубликовано 8 августа, 2014 (изменено) Заменил ужасающее количество проверок на это: if(checkquest(40002) != 2){ switch(checkquest(40002, HUNTING)){ case 0: mes "Kill 10 Drops before I get angry!"; mes "Quickly!"; close; case 1: mes "Time is up for killing Drops."; mes "Kill 10 Porings before I get angry!"; mes "Again!"; changequest 40002, 40001; close; case 2: mes "Mission completed"; completequest 40002; close; default: switch(checkquest(40001, HUNTING)){ case 0: mes "Kill 10 Porings before I get angry!"; mes "Quickly!"; close; case 1: mes "Time is up for killing Porings."; mes "Kill 10 Porings before I get angry!"; mes "Again!"; erasequest 40001; setquest 40001; close; case 2: mes "Mission completed."; mes "Now kill 10 Drops before I get angry!"; changequest 40001, 40002; close; default: mes "Kill 10 Porings before I get angry!"; setquest 40001; close; } } } else { mes "You've already completed this mission."; close; }Все работает прекрасно Изменено 8 августа, 2014 пользователем Jarek 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 8 августа, 2014 Автор Жалоба Поделиться Опубликовано 8 августа, 2014 Как я понял, вы пытаетесь сделать "убей X мобов за Y времени"?ДаИ во время выполнения такого квеста, если персонаж перезайдет в игру, то нпц предлагает ему взять квест заново?Да если персонаж выйдет, квест будет удален на любой стадии процесса.Если так, то проблема где-то у вас, ибо система должна замечательно работатьУ вас при перезаходе в игру квест остается???Просто изначально мне показалось, что вы хотите ограничить взятие такого квеста одним разом, поэтому и посоветовал использовать переменныеПеременные так и так пихать буду, раз даже в стандартных квестах они есть Ссылка на комментарий Поделиться на другие сайты Поделиться
Jarek Опубликовано 8 августа, 2014 Жалоба Поделиться Опубликовано 8 августа, 2014 У вас при перезаходе в игру квест остается???Ну да, конечно, при выходе персонажа, данные о квестах записываются в таблицу quest, откуда при логине считываются 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 8 августа, 2014 Автор Жалоба Поделиться Опубликовано 8 августа, 2014 (изменено) у меня старая txt версия сервера, да я вообще динозаври у меня есть, динозавровский методOnPCLoginEvent:if (job_sword_q == 1){setquest 1014;}с таблицами в SQL нужно будет порыться, спасибо Изменено 8 августа, 2014 пользователем Salfer Ссылка на комментарий Поделиться на другие сайты Поделиться
Jarek Опубликовано 8 августа, 2014 Жалоба Поделиться Опубликовано 8 августа, 2014 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Elmiria Опубликовано 8 августа, 2014 Жалоба Поделиться Опубликовано 8 августа, 2014 у меня старая txt версия сервера, да я вообще динозаври у меня есть, динозавровский методOnPCLoginEvent:if (job_sword_q == 1){setquest 1014;}с таблицами в SQL нужно будет порыться, спасибо//я то думала, что это у меня ископаемое)))//простите за оффтоп) Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 8 августа, 2014 Автор Жалоба Поделиться Опубликовано 8 августа, 2014 Я вот сейчыас с SQL таблицей квестов попробовал и там да, действительно сохранило, спасибо (я чёт туплю) Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения