ucell-uz Опубликовано 5 июля, 2016 Жалоба Поделиться Опубликовано 5 июля, 2016 (изменено) Получение профессий hercules путь к скрипту /hercules-master/npc/re/jobs/1-1/acolyte.txt Скрытый текст prt_church,184,41,4 script Священник#aco 1_M_PASTOR,{ set $@npcnames$,"[^BC7F15Святой отец^000000]"; if (Upper == 1) { if (ADVJOB == Job_High_Priest || ADVJOB == Job_Champion) { if (Class == Job_Novice_High) { mes $@npcnames$; mes "Ох, Я чувствую, что вы пережили"; mes "опыт прошлой жизни. Вы должны били узнать много вещей, перед тем как войти в Valhalla."; next; if (getskilllv("NV_BASIC") < 9) { mes $@npcnames$; mes "К сожалению, я не считаю, что вы готовы стать Послушником. Пожалуйста возвращайся когда ты закончишь своё обучение, ^4A4AFF10 Уровнь Джоба^000000. И изучишь все ^4A4AFFБазовые Навыки, они должны быть 9 Уровня^000000."; next; mes $@npcnames$; mes "Я буду ждать тебя,"; mes "в тоже время, и на"; mes "том же месте, пока"; mes "ты не будишь готов."; mes "Да будит с тобой Господь."; close; } mes $@npcnames$; mes "Чтож, приветствую тебя сын мой,"; mes "вернувшийся из Valhalla и"; mes "желаю тебе удачи в твоих,"; mes "новых жизненых приключениях."; mes "Да благославит тебя Господь."; next; skill 143,0,0; jobchange Job_Acolyte_High; skill 156,1,0; mes $@npcnames$; mes "Теперь, наберись отваги и посмотри вокруг, возможно кому-то нужна твоя помощь. Пусть Бог осветит твой путь."; close; } else { mes $@npcnames$; mes "Теперь, отправляйся искать людей, тех, которые нуждается в твоей помощи. Пусть Бог осветит твой путь."; close; } } else { mes $@npcnames$; mes "Я чувствую, что вы пережили опыт прошлой жизни. Вы должны били узнать много вещей, перед тем как войти в Valhalla."; next; mes $@npcnames$; mes "И тем не менее, я скажу тебе, что ты не подходишь, на звание быть Послушником. Пожалуйста, помни, кем ты был в прошлой жизни, и постарайся найти свой путь."; close; } } mes $@npcnames$; mes "Приветствую тебя сын мой. Что ты тут ищешь?"; next; switch(select("Отче, я хочу быть Послушником:Каковы ваши требованиява?:Нет, просто осматриваюсь.")) { case 1: mes $@npcnames$; if (BaseJob == Job_Acolyte) { mes "ты сегодня вообще здоров? По твоему одеянию, я могу сказать тебе, что ты уже Послушник. Или ты издиваешься надо мной!!!?"; close; } else if (BaseJob != Job_Novice) { mes "Извини, но мы рассматриваем только новичков в качестве кандидатов на профессию Послушника."; close; } if (job_acolyte_q == 0) { mes "Ты и в самом деле желаешь"; mes "стать слугой Господа Бога*"; next; if (select("Да, святой отец, желаю.:Нет, я солгал.") == 1) { mes $@npcnames$; mes "Хорошо " + strcharinfo(0) + ", я принимаю твоё желание стать Послушником. Ты же понимаешь, что должен будишь подвергнуться епитимии, прежде чем станешь слугой Господа, Да?"; next; mes $@npcnames$; mes "Ну что ж, я поручаю тебе миссию..."; switch(rand(3)) { default: job_acolyte_q = 2; mes "Пожалуйста, навести ^000077отца Rubalkabara^000000, члена Пронтерского прихода, и возвратись обратно ко мне. Он ведёт отшельнический образ жизни в ^000077руинах на северо-востоке от Пронтеры.^000000."; setquest 1001; break; case 1: job_acolyte_q = 3; mes "Пожалуйста, посети ^000077Мать Mathilda^000000 и потом вернись ео мне. Она ведёт отшельнический образ жизни в ^000077городе Морроке, это на юго-западе от города Пронтеры^000000."; setquest 1002; break; case 2: job_acolyte_q = 4; mes "Пожалуйста, навести ^000077отца Yosuke^000000 и возвращайся сюда. Он ведёт отшельнический образ жизни ^000077возле моста, где-то на северо-западе от Пронтеры^000000."; setquest 1003; break; } next; mes $@npcnames$; mes "Пусть благодать Божия, да осветит твой путь, и да поможет тебе Господь в твоём путешествии за паломничеством."; close; } mes $@npcnames$; mes "Ты солгал? Это не очень хорошо,"; mes "но хорошо то, что ты признал свой"; mes "грех, и думаю осознал свой поступок"; mes "Иди с миром, сын мой..."; close; } mes "Ого, ты вернулся уже. Давай ка проверим, готов ли ты служить Господу. И так..."; next; mes $@npcnames$; if (getskilllv("NV_BASIC") < 9) { mes "О Боже! Так ты ещё не завершил начальную подготовку? Тебе срочно необходимо закончить её!"; next; mes $@npcnames$; mes "Тебе нужно больше тренироваться! Возвращайся и убедись, что ты получил ^4A4AFF10 Уровнь Джоба^000000. И изучил все ^4A4AFFБазовые Навыки, они должны быть 9 Уровня^000000."; close; } if (job_acolyte_q < 5) { mes "А? Я не вижу твоего имени в Регистрационном бланке."; next; switch(job_acolyte_q) { case 2: mes $@npcnames$; mes "Пожалуйста, навести ^000077отца Rubalkabara^000000, члена Пронтерского прихода, и возвратись обратно ко мне."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни в ^000077руинах на северо-востоке от Пронтеры.^000000."; break; case 3: mes $@npcnames$; mes "Пожалуйста, посети ^000077Мать Mathilda^000000 и потом вернись ео мне."; next; mes $@npcnames$; mes "Она ведёт отшельнический образ жизни в ^000077городе Морроке, это на юго-западе от города Пронтеры^000000."; break; case 4: mes $@npcnames$; mes "Пожалуйста, навести ^000077отца Yosuke^000000 и возвращайся сюда."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни ^000077возле моста, где-то на северо-западе от Пронтеры^000000."; break; } next; mes $@npcnames$; mes "Милость Божия да осветит твой путь и да поможет тебе в паломничестве."; close; } mes "Хмм..."; mes "Твоё имя есть в списке, ты доказал свою готовность."; next; mes $@npcnames$; mes "И я с гордостью подтверждаю, что теперь ты готов стать Послушником!"; next; skill 143,0,0; callfunc "Job_Change",Job_Acolyte; callfunc "F_ClearJobVar"; if (questprogress(1001)) { completequest 1001; } else if (questprogress(1002)) { completequest 1002; } else { completequest 1003; } mes $@npcnames$; mes "Никогда не забывай благодарить Бога, который всё время заботится о нас."; next; mes $@npcnames$; mes "Всегда используй свой дар, чтобы служить Ему, помогая и другим. В трудные времена Хаоса встречай невзгоды с непоколебимой верой."; next; mes $@npcnames$; mes "Наконец, я хочу искренне поздравить тебя с плодами, которые принесло твоё упорство, проявленное в ходе паломничества."; close; case 2: mes $@npcnames$; mes "Если ты надумал стать Послушником, то тогда ты должен выполнить 2 требования."; next; mes $@npcnames$; mes "Во-первых, ты должен изучить ^4A4AFF9 Уровней Джоба^000000 новечка, и изучить все ^4A4AFFБазовые Умения^000000. Во-вторых, тебе придётся пройти небольшое испытание."; next; mes $@npcnames$; if (job_acolyte_q != 0) { switch(job_acolyte_q) { case 2: mes "Пожалуйста, навести ^000077отца Rubalkabara^000000, члена Пронтерского прихода, и возвратись обратно ко мне."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни в ^000077руинах на северо-востоке от Пронтеры.^000000."; break; case 3: mes "Пожалуйста, навести ^000077Мать Mathilda^000000 and return here to me."; next; mes $@npcnames$; mes "She has been practicing asceticism near ^000077Morroc, located to the SouthWest of Prontera City^000000."; break; default: mes "Пожалуйста, посети ^000077отца Yosuke^000000 и возвращайся сюда."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни ^000077возле моста, где-то на северо-западе от Пронтеры^000000."; break; } next; mes $@npcnames$; mes "Милость Божия да осветит твой путь и да поможет тебе в паломничестве."; } else { mes "Пункт назначения твоего паломничеста оприделится, как только ты запланируешь подавать анкету."; } next; mes $@npcnames$; mes "Пожалуйста, возвращайся как только ты выполнишь 2 этих требования, о которых я только что тебе говорил. Если ты искренне желаешь служить Господу и ближнему своему, то ты сумеешь это сделать."; close; case 3: mes $@npcnames$; mes "Да прибудет с тобой благославение Одина!"; close; } } prt_fild03,365,255,2 script Отшельник#aco 4_M_ORIENT02,{ set $@npcnames$,"[^BC7F15Отец Rubalkabara^000000]"; mes $@npcnames$; if (BaseJob == Job_Novice) { if (job_acolyte_q == 6) { mes "Пожалуйста, береги себя. В Церкви Пронтеры будут знать о том, что мы с тобою здесь встретились, как только ты вернёшься туда."; next; mes $@npcnames$; mes "Я уже послал СМС-ку, пока что отчёт о доставке не пришёл, но думаю это временно. Пока ты дойдёшь до Церкви всё будит тип-топ!... Я тебе это гарантирую."; close; } if (job_acolyte_q != 0) { if (job_acolyte_q == 2) { mes "О...? Ты, видимо один из тех, кто стремится стать Послушником. Меня уже уведомили о том, что ты можешь придти."; next; mes $@npcnames$; mes "И так, Тебя зовут " + strcharinfo(0) + ", всё правильно? Превосходно, спасибо, что навестил меня."; next; mes $@npcnames$; mes "Уверен что Святой отец не мало рассказал тебе о профессии Послушника. Плюс ко всему, в Церкви Пронтеры всегда хватает желающих помочь."; next; mes $@npcnames$; mes "Так что, полагаю, мне нет нужды учить тебя чему бы то ни было. К тому же люди твоего поколения обычно не горят желанием выслушивать разглагольствования старикашки вроде меня. Хе-хе-хе~"; next; mes $@npcnames$; mes "И всё же, уроки могут быть даны в местах, где ты меньше всего этого ожидаешь. Бог любит учить своих детей неожиданными способностями. Ты ещё убедишься в этом."; next; mes $@npcnames$; mes "Короче, я пошлю СМС-ку о том, что ты меня встретил. Ты можешь возвращаться в Церковь Пронтеры."; next; mes $@npcnames$; mes "Прощай."; close2; savepoint "prt_fild03",361,255; job_acolyte_q = 6; end; } else { mes "Эй, ты там."; mes "Кто бы ты ни был,"; mes "выглядишь как претендент"; mes "на звание Послушника. Я прав?"; mes "Ну давай ка поглядим что у нас тут..."; next; mes $@npcnames$; mes "Твоё имя ведь " + strcharinfo(0) + "?"; mes "Всё правильно? Но как нистранно тебя нет"; mes "в моём списке, Хмм.м..."; next; mes $@npcnames$; mes "Почему бы тебе не вернуться обратно в Церковь Пронтеры и хорошенько всё там проверить, возможно ты где-то допустил ошибку."; close; } } else { mes "А? Что привело тебя сюда? Для новичка вроде тебя, это довольно опасное место!"; close; } } else if (BaseJob == Job_Acolyte) callfunc "F_FatherRub"; else { if (BaseJob == Job_Priest) { mes "Приветствую."; next; mes $@npcnames$; mes "Добро пожаловать в Храм. Чувствуй себя как дома, присаживайся, и мы вместе поразмышляем над посланиями Господа. Это место прекрасно даже при том, что опасность здесь идёт рука об руку с ощющением безмятежности..."; close; } else { mes "Приветствую."; mes "А? Что привело тебя сюда? Для новичка вроде тебя, это довольно опасное место!"; next; mes $@npcnames$; mes "Пожалуйста, позаботься о себе. Монстры в этом месте отвратительно сильны, вопреки ихниму милыму виду."; close; } } } moc_fild07,41,355,4 script Отшельница#2aco 4_F_SISTER,{ set $@npcnames$,"[^BC7F15Мать Mathilda^000000]"; mes $@npcnames$; if (BaseJob == Job_Novice) { if (job_acolyte_q == 7) { mes "Я послала уже почтового голубя в Церковь Пронтеры. Когда ты вернёшься, священник уже получит мою записку."; next; mes $@npcnames$; mes "Я буду за тебя молиться Богу и надеятсья, что ты вскоре сташенешь Послушником."; close; } if (job_acolyte_q != 0) { if (job_acolyte_q == 3) { mes "Ах, ты, должно быть, один из притендентов на звание Послушника Я рада приветствовать тебя здесь."; next; mes $@npcnames$; mes "Как тебя зовут? " + strcharinfo(0) + "? Ну-ка... А-а-а да, ты есть в моём списке."; next; mes $@npcnames$; mes "Я отошлю сообщением в Церковь, подтверждающее, что ты, " + strcharinfo(0) + ", нашёл меня и успешно преодолел это испытание."; next; mes $@npcnames$; mes "Пожалуйста возвращайся в Церковь Пронтеры и поговори со священником ещё раз, к которому ты подходил ранее."; close2; savepoint "moc_fild07",35,355; job_acolyte_q = 7; end; } else { mes "Аа-а-а...!"; mes "Ты, должно быть, один из"; mes "Претендентов На звание Послушника."; mes "Я сердечно приветствую тебя."; next; mes $@npcnames$; mes "Как, говоришь тебя зовут?"; mes "" + strcharinfo(0) + "? А ну-ка, посмотрим..."; next; mes $@npcnames$; mes "Хммм-м..."; mes "Похоже, тебя нет"; mes "в моих записях..."; next; mes $@npcnames$; mes "Возможно, тебе стоит вернутся в Церковь Пронтеры и получше разузнать, где твоё место назначение паломничества."; close; } } else { mes "..."; next; mes $@npcnames$; mes "Ты ведь новичок, тебе надо в Церковь в городе Пронтера."; next; mes $@npcnames$; mes "А сейчас я занята, так что топай обратно в город!"; close; } } else if (BaseJob == Job_Acolyte) callfunc "F_MotherMart"; else { if (BaseJob == Job_Priest) { mes "Эй, привет~"; next; mes $@npcnames$; mes "Ну, как продвигаются твои знания? Разумеется, и я надеюсь, что ты счастливо живёшь в милости Божией."; close; } else { mes "О!, Мой Бог"; mes "да прибудит он с тобой..."; close; } } } prt_fild00,208,218,6 script Отшельник#3aco 4W_M_02,{ set $@npcnames$,"[^BC7F15Отец Yosuke^000000]"; mes $@npcnames$; if (BaseJob == Job_Novice) { if (job_acolyte_q == 8) { mes "Чего тебе ещё надо?"; next; mes $@npcnames$; mes "У тебя есть ещё какое-то дело ко мне!? НЕТ? Ну вот и ступай себе обратно в Церковь!"; close; } if (job_acolyte_q != 0) { if (job_acolyte_q == 4) { mes "Эй, ты там."; mes "Кто бы ты ни был,"; mes "выглядишь как претендент"; mes "на звание Послушника."; mes "Верно?"; next; mes $@npcnames$; mes "Неплохо, неплохо Ты выдержал испытание очень неплохо."; mes "Как говоришь тебя зовут? " + strcharinfo(0) + ", да? Ну, чего молчишь, как партизан на допросе?"; next; mes $@npcnames$; mes "" + strcharinfo(0) + ", Хех? ты уверен? Сейчас я гляну список...Да, точно есть такой!"; next; mes $@npcnames$; mes "Ладно уж, пошлю я записочку в Церковь, скажу что ты " + strcharinfo(0) + ", дошёл таки и навестил меня."; next; mes $@npcnames$; mes "Давай, дитя, возвращайся обратно в Церковь и заканчивай с формальностями принятия тебя в Послушники."; close2; savepoint "prt_fild00",206,230; job_acolyte_q = 8; end; } else { mes "Эх-Хей..."; mes "Ты у нас кандидат в Послушники?"; mes "Ну ты вообще, молодец дитя, такую дорогу проделал. Прямо с Пронтеры идёшь, верно? Ладно, как там тебя?"; next; mes $@npcnames$; mes "" + strcharinfo(0) + ", Да? Ну и почему я не вижу тебя в своих записях?"; next; mes $@npcnames$; mes "Небось ошибочка вышла, малыш. Давай шагай обратно в Церковь,"; next; mes $@npcnames$; mes "и поговори ещё разок со священником, куда он тебя там послал на самом деле."; close; } } else { mes "Так..."; mes "Новенький-готовенький."; mes "Интересно, и что же"; mes "ты мне хотел такого важного сообщить?"; close; } } else if (BaseJob == Job_Acolyte) callfunc "F_FatherYos"; else { if (BaseJob == Job_Priest) { mes "Брат мой..."; next; mes $@npcnames$; mes "Если ты желаешь, то присаживайся рядом со мной, и мы в месте будем размышлять над великими истинами и могуществом величия Господня..."; close; } else { mes "У тебя есть какое-то дело ко мне!? НЕТ?"; mes "Ну вот и у меня нет никаких ответов для тебя!."; close; } } } rAthena путь к скрипту /trunk/npc/re/jobs/1-1/acolyte.txt ВНИМАНИЕ скрипты мало чем отличаются, друг от друга, но разница есть, не путайтесь между hA и rA! Скрытый текст prt_church,184,41,4 script Священник#aco 60,{ set $@npcnames$,"[^BC7F15Святой отец^000000]"; if (Upper == 1) { if (ADVJOB == Job_High_Priest || ADVJOB == Job_Champion) { if (Class == Job_Novice_High) { mes $@npcnames$; mes "Ох, Я чувствую, что вы пережили"; mes "опыт прошлой жизни. Вы должны били узнать много вещей, перед тем как войти в Valhalla."; next; if (getskilllv("NV_BASIC") < 9) { mes $@npcnames$; mes "К сожалению, я не считаю, что вы готовы стать Послушником. Пожалуйста возвращайся когда ты закончишь своё обучение, ^4A4AFF10 Уровнь Джоба^000000. И изучишь все ^4A4AFFБазовые Навыки, они должны быть 9 Уровня^000000."; next; mes $@npcnames$; mes "Я буду ждать тебя,"; mes "в тоже время, и на"; mes "том же месте, пока"; mes "ты не будишь готов."; mes "Да будит с тобой Господь."; close; } mes $@npcnames$; mes "Чтож, приветствую тебя сын мой,"; mes "вернувшийся из Valhalla и"; mes "желаю тебе удачи в твоих,"; mes "новых жизненых приключениях."; mes "Да благославит тебя Господь."; next; skill "NV_TRICKDEAD",0,SKILL_PERM; jobchange Job_Acolyte_High; skill "AL_HOLYLIGHT",1,SKILL_PERM; mes $@npcnames$; mes "Теперь, наберись отваги и посмотри вокруг, возможно кому-то нужна твоя помощь. Пусть Бог осветит твой путь."; close; } else { mes $@npcnames$; mes "Теперь, отправляйся искать людей, тех, которые нуждается в твоей помощи. Пусть Бог осветит твой путь."; close; } } else { mes $@npcnames$; mes "Я чувствую, что вы пережили опыт прошлой жизни. Вы должны били узнать много вещей, перед тем как войти в Valhalla."; next; mes $@npcnames$; mes "И тем не менее, я скажу тебе, что ты не подходишь, на звание быть Послушником. Пожалуйста, помни, кем ты был в прошлой жизни, и постарайся найти свой путь."; close; } } mes $@npcnames$; mes "Приветствую тебя сын мой. Что ты тут ищешь?"; next; switch(select("Отче, я хочу быть Послушником:Каковы ваши требованиява?:Нет, просто осматриваюсь.")) { case 1: mes $@npcnames$; if (BaseJob == Job_Acolyte) { mes "ты сегодня вообще здоров? По твоему одеянию, я могу сказать тебе, что ты уже Послушник. Или ты издиваешься надо мной!!!?"; close; } else if (BaseJob != Job_Novice) { mes "Извини, но мы рассматриваем только новичков в качестве кандидатов на профессию Послушника."; close; } if (job_acolyte_q == 0) { mes "Ты и в самом деле желаешь"; mes "стать слугой Господа Бога*"; next; if (select("Да, святой отец, желаю.:Нет, я солгал.") == 1) { mes $@npcnames$; mes "Хорошо " + strcharinfo(0) + ", я принимаю твоё желание стать Послушником. Ты же понимаешь, что должен будишь подвергнуться епитимии, прежде чем станешь слугой Господа, Да?"; next; mes $@npcnames$; mes "Ну что ж, я поручаю тебе миссию..."; switch(rand(3)) { default: set job_acolyte_q,2; mes "Пожалуйста, навести ^000077отца Rubalkabara^000000, члена Пронтерского прихода, и возвратись обратно ко мне. Он ведёт отшельнический образ жизни в ^000077руинах на северо-востоке от Пронтеры.^000000."; setquest 1001; break; case 1: set job_acolyte_q,3; mes "Пожалуйста, посети ^000077Мать Mathilda^000000 и потом вернись ео мне. Она ведёт отшельнический образ жизни в ^000077городе Морроке, это на юго-западе от города Пронтеры^000000."; setquest 1002; break; case 2: set job_acolyte_q,4; mes "Пожалуйста, навести ^000077отца Yosuke^000000 и возвращайся сюда. Он ведёт отшельнический образ жизни ^000077возле моста, где-то на северо-западе от Пронтеры^000000."; setquest 1003; break; } next; mes $@npcnames$; mes "Пусть благодать Божия, да осветит твой путь, и да поможет тебе Господь в твоём путешествии за паломничеством."; close; } mes $@npcnames$; mes "Ты солгал? Это не очень хорошо,"; mes "но хорошо то, что ты признал свой"; mes "грех, и думаю осознал свой поступок"; mes "Иди с миром, сын мой..."; close; } mes "Ого, ты вернулся уже. Давай ка проверим, готов ли ты служить Господу. И так..."; next; mes $@npcnames$; if (getskilllv("NV_BASIC") < 9) { mes "О Боже! Так ты ещё не завершил начальную подготовку? Тебе срочно необходимо закончить её!"; next; mes $@npcnames$; mes "Тебе нужно больше тренироваться! Возвращайся и убедись, что ты получил ^4A4AFF10 Уровнь Джоба^000000. И изучил все ^4A4AFFБазовые Навыки, они должны быть 9 Уровня^000000."; close; } if (job_acolyte_q < 5) { mes "А? Я не вижу твоего имени в Регистрационном бланке."; next; switch(job_acolyte_q) { case 2: mes $@npcnames$; mes "Пожалуйста, навести ^000077отца Rubalkabara^000000, члена Пронтерского прихода, и возвратись обратно ко мне."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни в ^000077руинах на северо-востоке от Пронтеры.^000000."; break; case 3: mes $@npcnames$; mes "Пожалуйста, посети ^000077Мать Mathilda^000000 и потом вернись ео мне."; next; mes $@npcnames$; mes "Она ведёт отшельнический образ жизни в ^000077городе Морроке, это на юго-западе от города Пронтеры^000000."; break; case 4: mes $@npcnames$; mes "Пожалуйста, навести ^000077отца Yosuke^000000 и возвращайся сюда."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни ^000077возле моста, где-то на северо-западе от Пронтеры^000000."; break; } next; mes $@npcnames$; mes "Милость Божия да осветит твой путь и да поможет тебе в паломничестве."; close; } mes "Хмм..."; mes "Твоё имя есть в списке, ты доказал свою готовность."; next; mes $@npcnames$; mes "И я с гордостью подтверждаю, что теперь ты готов стать Послушником!"; next; skill "NV_TRICKDEAD",0,SKILL_PERM; callfunc "Job_Change",Job_Acolyte; callfunc "F_ClearJobVar"; if(checkquest(1001) != -1) { completequest 1001; } else if(checkquest(1002) != -1) { completequest 1002; } else { completequest 1003; } mes $@npcnames$; mes "Никогда не забывай благодарить Бога, который всё время заботится о нас."; next; mes $@npcnames$; mes "Всегда используй свой дар, чтобы служить Ему, помогая и другим. В трудные времена Хаоса встречай невзгоды с непоколебимой верой."; next; mes $@npcnames$; mes "Наконец, я хочу искренне поздравить тебя с плодами, которые принесло твоё упорство, проявленное в ходе паломничества."; close; case 2: mes $@npcnames$; mes "Если ты надумал стать Послушником, то тогда ты должен выполнить 2 требования."; next; mes $@npcnames$; mes "Во-первых, ты должен изучить 9 Уровней Джоба новечка, и изучить все Базовые Умения. Во-вторых, тебе придётся пройти небольшое испытание."; next; mes $@npcnames$; if (job_acolyte_q != 0) { switch(job_acolyte_q) { case 2: mes "Пожалуйста, навести ^000077отца Rubalkabara^000000, члена Пронтерского прихода, и возвратись обратно ко мне."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни в ^000077руинах на северо-востоке от Пронтеры.^000000."; break; case 3: mes "Пожалуйста, навести ^000077Мать Mathilda^000000 and return here to me."; next; mes $@npcnames$; mes "She has been practicing asceticism near ^000077Morroc, located to the SouthWest of Prontera City^000000."; break; default: mes "Пожалуйста, посети ^000077отца Yosuke^000000 и возвращайся сюда."; next; mes $@npcnames$; mes "Он ведёт отшельнический образ жизни ^000077возле моста, где-то на северо-западе от Пронтеры^000000."; break; } next; mes $@npcnames$; mes "Милость Божия да осветит твой путь и да поможет тебе в паломничестве."; } else { mes "Пункт назначения твоего паломничеста оприделится, как только ты запланируешь подавать анкету."; } next; mes $@npcnames$; mes "Пожалуйста, возвращайся как только ты выполнишь 2 этих требования, о которых я только что тебе говорил. Если ты искренне желаешь служить Господу и ближнему своему, то ты сумеешь это сделать."; close; case 3: mes $@npcnames$; mes "Да прибудет с тобой благославение Одина!"; close; } } prt_fild03,365,255,2 script Отшельник#aco 89,{ set $@npcnames$,"[^BC7F15Отец Rubalkabara^000000]"; mes $@npcnames$; if (BaseJob == Job_Novice) { if (job_acolyte_q == 6) { mes "Пожалуйста, береги себя. В Церкви Пронтеры будут знать о том, что мы с тобою здесь встретились, как только ты вернёшься туда."; next; mes $@npcnames$; mes "Я уже послал СМС-ку, пока что отчёт о доставке не пришёл, но думаю это временно. Пока ты дойдёшь до Церкви всё будит тип-топ!... Я тебе это гарантирую."; close; } if (job_acolyte_q != 0) { if (job_acolyte_q == 2) { mes "О...? Ты, видимо один из тех, кто стремится стать Послушником. Меня уже уведомили о том, что ты можешь придти."; next; mes $@npcnames$; mes "И так, Тебя зовут " + strcharinfo(0) + ", всё правильно? Превосходно, спасибо, что навестил меня."; next; mes $@npcnames$; mes "Уверен что Святой отец не мало рассказал тебе о профессии Послушника. Плюс ко всему, в Церкви Пронтеры всегда хватает желающих помочь."; next; mes $@npcnames$; mes "Так что, полагаю, мне нет нужды учить тебя чему бы то ни было. К тому же люди твоего поколения обычно не горят желанием выслушивать разглагольствования старикашки вроде меня. Хе-хе-хе~"; next; mes $@npcnames$; mes "И всё же, уроки могут быть даны в местах, где ты меньше всего этого ожидаешь. Бог любит учить своих детей неожиданными способностями. Ты ещё убедишься в этом."; next; mes $@npcnames$; mes "Короче, я пошлю СМС-ку о том, что ты меня встретил. Ты можешь возвращаться в Церковь Пронтеры."; next; mes $@npcnames$; mes "Прощай."; close2; savepoint "prt_fild03",361,255; set job_acolyte_q,6; end; } else { mes "Эй, ты там."; mes "Кто бы ты ни был,"; mes "выглядишь как претендент"; mes "на звание Послушника. Я прав?"; mes "Ну давай ка поглядим что у нас тут..."; next; mes $@npcnames$; mes "Твоё имя ведь " + strcharinfo(0) + "?"; mes "Всё правильно? Но как нистранно тебя нет"; mes "в моём списке, Хмм.м..."; next; mes $@npcnames$; mes "Почему бы тебе не вернуться обратно в Церковь Пронтеры и хорошенько всё там проверить, возможно ты где-то допустил ошибку."; close; } } else { mes "А? Что привело тебя сюда? Для новичка вроде тебя, это довольно опасное место!"; close; } } else if (BaseJob == Job_Acolyte) callfunc "F_FatherRub"; else { if (BaseJob == Job_Priest) { mes "Приветствую."; next; mes $@npcnames$; mes "Добро пожаловать в Храм. Чувствуй себя как дома, присаживайся, и мы вместе поразмышляем над посланиями Господа. Это место прекрасно даже при том, что опасность здесь идёт рука об руку с ощющением безмятежности..."; close; } else { mes "Приветствую."; mes "А? Что привело тебя сюда? Для новичка вроде тебя, это довольно опасное место!"; next; mes $@npcnames$; mes "Пожалуйста, позаботься о себе. Монстры в этом месте отвратительно сильны, вопреки ихниму милыму виду."; close; } } } moc_fild07,41,355,4 script Отшельница#2aco 95,{ set $@npcnames$,"[^BC7F15Мать Mathilda^000000]"; mes $@npcnames$; if (BaseJob == Job_Novice) { if (job_acolyte_q == 7) { mes "Я послала уже почтового голубя в Церковь Пронтеры. Когда ты вернёшься, священник уже получит мою записку."; next; mes $@npcnames$; mes "Я буду за тебя молиться Богу и надеятсья, что ты вскоре сташенешь Послушником."; close; } if (job_acolyte_q != 0) { if (job_acolyte_q == 3) { mes "Ах, ты, должно быть, один из притендентов на звание Послушника Я рада приветствовать тебя здесь."; next; mes $@npcnames$; mes "Как тебя зовут? " + strcharinfo(0) + "? Ну-ка... А-а-а да, ты есть в моём списке."; next; mes $@npcnames$; mes "Я отошлю сообщением в Церковь, подтверждающее, что ты, " + strcharinfo(0) + ", нашёл меня и успешно преодолел это испытание."; next; mes $@npcnames$; mes "Пожалуйста возвращайся в Церковь Пронтеры и поговори со священником ещё раз, к которому ты подходил ранее."; close2; savepoint "moc_fild07",35,355; set job_acolyte_q,7; end; } else { mes "Аа-а-а...!"; mes "Ты, должно быть, один из"; mes "Претендентов На звание Послушника."; mes "Я сердечно приветствую тебя."; next; mes $@npcnames$; mes "Как, говоришь тебя зовут?"; mes "" + strcharinfo(0) + "? А ну-ка, посмотрим..."; next; mes $@npcnames$; mes "Хммм-м..."; mes "Похоже, тебя нет"; mes "в моих записях..."; next; mes $@npcnames$; mes "Возможно, тебе стоит вернутся в Церковь Пронтеры и получше разузнать, где твоё место назначение паломничества."; close; } } else { mes "..."; next; mes $@npcnames$; mes "Ты ведь новичок, тебе надо в Церковь в городе Пронтера."; next; mes $@npcnames$; mes "А сейчас я занята, так что топай обратно в город!"; close; } } else if (BaseJob == Job_Acolyte) callfunc "F_MotherMart"; else { if (BaseJob == Job_Priest) { mes "Эй, привет~"; next; mes $@npcnames$; mes "Ну, как продвигаются твои знания? Разумеется, и я надеюсь, что ты счастливо живёшь в милости Божией."; close; } else { mes "О!, Мой Бог"; mes "да прибудит он с тобой..."; close; } } } prt_fild00,208,218,6 script Отшельник#3aco 98,{ set $@npcnames$,"[^BC7F15Отец Yosuke^000000]"; mes $@npcnames$; if (BaseJob == Job_Novice) { if (job_acolyte_q == 8) { mes "Чего тебе ещё надо?"; next; mes $@npcnames$; mes "У тебя есть ещё какое-то дело ко мне!? НЕТ? Ну вот и ступай себе обратно в Церковь!"; close; } if (job_acolyte_q != 0) { if (job_acolyte_q == 4) { mes "Эй, ты там."; mes "Кто бы ты ни был,"; mes "выглядишь как претендент"; mes "на звание Послушника."; mes "Верно?"; next; mes $@npcnames$; mes "Неплохо, неплохо Ты выдержал испытание очень неплохо."; mes "Как говоришь тебя зовут? " + strcharinfo(0) + ", да? Ну, чего молчишь, как партизан на допросе?"; next; mes $@npcnames$; mes "" + strcharinfo(0) + ", Хех? ты уверен? Сейчас я гляну список...Да, точно есть такой!"; next; mes $@npcnames$; mes "Ладно уж, пошлю я записочку в Церковь, скажу что ты " + strcharinfo(0) + ", дошёл таки и навестил меня."; next; mes $@npcnames$; mes "Давай, дитя, возвращайся обратно в Церковь и заканчивай с формальностями принятия тебя в Послушники."; close2; savepoint "prt_fild00",206,230; set job_acolyte_q,8; end; } else { mes "Эх-Хей..."; mes "Ты у нас кандидат в Послушники?"; mes "Ну ты вообще, молодец дитя, такую дорогу проделал. Прямо с Пронтеры идёшь, верно? Ладно, как там тебя?"; next; mes $@npcnames$; mes "" + strcharinfo(0) + ", Да? Ну и почему я не вижу тебя в своих записях?"; next; mes $@npcnames$; mes "Небось ошибочка вышла, малыш. Давай шагай обратно в Церковь,"; next; mes $@npcnames$; mes "и поговори ещё разок со священником, куда он тебя там послал на самом деле."; close; } } else { mes "Так..."; mes "Новенький-готовенький."; mes "Интересно, и что же"; mes "ты мне хотел такого важного сообщить?"; close; } } else if (BaseJob == Job_Acolyte) callfunc "F_FatherYos"; else { if (BaseJob == Job_Priest) { mes "Брат мой..."; next; mes $@npcnames$; mes "Если ты желаешь, то присаживайся рядом со мной, и мы в месте будем размышлять над великими истинами и могуществом величия Господня..."; close; } else { mes "У тебя есть какое-то дело ко мне!? НЕТ?"; mes "Ну вот и у меня нет никаких ответов для тебя!."; close; } } } скриншоты Скрытый текст Корм для питомца hercules путь к скрипту /hercules-master/npc/merchants/wander_pet_food.txt Скрытый текст prontera,218,218,3 script Заводчица 4W_KID,{ set $@npcnames$,"[^BC7F15Заводчица^000000]"; mes $@npcnames$; mes "Ой, Привет, привет!"; mes "Ты тоже любишь животных?"; mes "так же как и я?"; next; mes $@npcnames$; mes "Я знаю, тяжело сделать так, чтобы"; mes "питомцы всегда были счастливыми."; mes "Для этого нужно обеспечить им"; mes "правильное питание."; next; mes $@npcnames$; mes "Но, иногда очень трудно достать нужный корм питомцу."; next; mes $@npcnames$; mes "А ты! ищешь какой-то особый корм для своего питомца?"; next; switch(select("Да ищю:Нет")) { case 1: if ((countitem(Broken_Wine_Vessel) > 19) && (countitem(Alchol) > 0)) { mes $@npcnames$; mes "Ах, отлично у тебя есть ^ff000020 Broken Liquor Jar^000000s и ^ff00001 Alcohol^000000!"; mes "Значить ты хочешь чтобы я обменяла их тебе на"; mes "^ff000020 Spirit Liquor^000000 для твоего питомца Wanderer ?"; next; switch(select("Да, обменяй пожалуйста:Нет, спасибо")) { case 1: mes $@npcnames$; mes "Всё отлично вот держи, и не стоит благодарностей :-)"; mes "Я надеюсь ты и твой питомец будите счастливы!!!"; delitem Broken_Wine_Vessel,20; delitem Alchol,1; getitem Spirit_Liquor,20; close; case 2: mes $@npcnames$; mes "Хе-хе, ну, просто дай мне знать, если передумаешь."; close; } } else { mes $@npcnames$; mes "Вообще-то, я могу помочь тебе"; mes "и достать ^3355FFSpirit Liquor^000000 для питомца Wanderer."; next; mes $@npcnames$; mes "Тебе надо всего лишь принести мне"; mes "^FF000020 Broken Liquor Jar^000000 и ^FF00001 Alcohol^000000."; mes "И я обменяю их тебе ^FF000020 Spirit Liquor^000000."; next; mes $@npcnames$; mes "Broken Liquor Jar можно получить убивая монстра Tengu, в подземелье Джана Аматсу."; close; } case 2: mes $@npcnames$; mes "Хе-хе, ну, просто дай мне знать, если передумаешь."; close; } } prontera,220,218,3 script Дружелюбный Ослик 4_DONKEY,{ specialeffect EF_CHANGEDARK; end; } rAthena путь к скрипту /trunk/npc/merchants/wander_pet_food.txt ВНИМАНИЕ скрипты мало чем отличаются, друг от друга, но разница есть, не путайтесь между hA и rA! Скрытый текст prontera,218,218,3 script Заводчица 96,{ set $@npcnames$,"[^BC7F15Заводчица^000000]"; mes $@npcnames$; mes "Ой, Привет!"; mes "Ты тоже любишь животных?"; mes "так же как и я?"; next; mes $@npcnames$; mes "Я знаю, тяжело сделать так, чтобы"; mes "питомцы всегда были счастливыми."; mes "Для этого нужно обеспечить им"; mes "правильное питание."; next; mes $@npcnames$; mes "Но, иногда очень трудно достать нужный корм питомцу."; next; mes $@npcnames$; mes "А ты!? ищешь какой-то особый корм для своего питомца?"; next; switch(select("Да ищю:Нет.")) { case 1: if ((countitem(7158) > 19) && (countitem(970) > 0)) { mes $@npcnames$; mes "Ах, отлично у тебя есть ^ff000020 Broken Liquor Jar^000000s и ^ff00001 Alcohol^000000!"; mes "Значить ты хочешь чтобы я обменяла их тебе на"; mes "^ff000020 Spirit Liquor^000000 для твоего питомца Wanderer?"; next; switch(select("Да, обменяй мне!:Нет, спасибо.")) { case 1: mes $@npcnames$; mes "Всё отлично вот держи, и не стоит благодарностей :-)"; mes "Я надеюсь ты и твой питомец будите счастливы!!!"; delitem 7158,20; //Broken_Wine_Vessel delitem 970,1; //Alchol getitem 7824,20; //Spirit_Liquor close; case 2: mes $@npcnames$; mes "Хе-хе, ну, просто дай мне знать, если передумаешь."; close; } } else { mes $@npcnames$; mes "Вообще-то, я могу помочь достать Spirit Liquor для питомца Wanderer."; next; mes $@npcnames$; mes "Тебе надо лишь принести ^FF0000 20 Broken Liquor Jar^000000 и ^FF0000 1 Alcohol^000000."; mes "И я обменяю их тебе на ^FF0000 20 Spirit Liquor^000000."; next; mes "Broken Liquor Jar можешь получить убивая монстра Тенгу в подземелье Джана Аматсу."; close; } case 2: mes $@npcnames$; mes "Хе-хе, ну, просто дай мне знать, если передумаешь."; close; } } prontera,220,218,3 script Дружелюбный Ослик 955,{ specialeffect EF_CHANGEDARK; end; } скриншот Скрытый текст Получение профессий hercules путь к скрипту /hercules-master/npc/re/jobs/1-1/swordman.txt Скрытый текст izlude_in,74,172,4 script Мечник#swd_1 2_M_SWORDMASTER,{ set $@npcnames$,"[^BC7F15Ассоциатор Мечников^000000]"; if (Upper == 1) { if (Class == Job_Novice_High && (ADVJOB == Job_Lord_Knight || ADVJOB == Job_Paladin)) { mes $@npcnames$; mes "О_о..."; mes "Не могу в это поверить..."; mes "Ты уже успел переродиться, верно?"; next; mes $@npcnames$; mes "Вижу, ты хочешь возобновить свой путь мечника! Однажды помахав мечом, уже невозможно от этого отказаться!!"; next; if (getskilllv("NV_BASIC") < 9) { mes $@npcnames$; mes "Хм-м? ты ещё не изучил все ^4A4AFFБазовые Навыки^000000. Тебе нужно сделать это до того, как стать Мечником."; next; mes $@npcnames$; mes "Проверь требования для смены профессии и возвращайся, когда будешь готов."; close; } mes $@npcnames$; mes "Превосходно! Позволь мне повысить тебя до мечника прямо сейчас!"; next; skill 143,0,0; jobchange Job_Swordman_High; skill 144,1,0; skill 145,1,0; skill 146,1,0; mes $@npcnames$; mes "Хмм... Ты выглядишь как хорошо обученый мечник. Но все-же, я уверен, что тебе необходимо много тренироваться, чтобы повысить свои умения и набраться силы!"; close; } else { mes $@npcnames$; mes "Хм ...?"; mes "Ведь ты уже перерождённый"; mes "воин, или я не прав?"; next; mes $@npcnames$; mes "Хмм..."; mes "Кажется, быть настоящим мечником"; mes "тебе не суждено."; mes "Мне очень жаль,"; mes "но я больше ничем"; mes "не могу тебе помочь."; close; } } mes $@npcnames$; mes "Добро пожаловать в Ассоциацию"; mes "Мечников!"; next; mes $@npcnames$; mes "И так..."; mes "Что привело тебя к нам?"; next; switch(select("Смена профессии.:О Мечниках.:О требованиях.:Нет, просто осматриваюсь.")) { case 1: if (BaseJob == Job_Swordman) { mes $@npcnames$; mes "Смена профессии? Мухахаха! Да ты"; mes "уже Мечник! Будь сильным и гордым!"; close; } else if (BaseJob != Job_Novice) { mes $@npcnames$; mes "Аха-х! Я конечно польщён, твоей упёртости, но у тебя уже есть"; mes "профессия. Впрочем, я не могу тебя в этом обвинять..."; close; } if (job_sword_q == 0) { mes $@npcnames$; mes "Хочешь стать Мечником?"; mes "Мы непременно оформим сейчас твою заявку!"; next; if (select("Подписать заявку.:Я подумаю ещё.") == 1) { savepoint "izlude_in",65,165; job_sword_q = 1; setquest 1014; mes $@npcnames$; mes "Хорошо. Твоя заявка будет"; mes "рассмотрена в ближайшее время."; next; mes $@npcnames$; mes "Если ты уже соответствуешь"; mes "требованиям, можешь пройти собеседование прямо сейчас."; mes "Хочешь?"; next; if (select("Да, хочу.:Нет, не хочу.") == 1) { mes $@npcnames$; mes "Неплохо, очень хорошо."; mes "А ну, давай ка посмотрим что у нас тут..."; next; } else { mes $@npcnames$; mes "Хорошо. Можешь возвращаться в любой"; mes "момент, когда подготовишься. Всё, что тебе нужно, это соответствовать нашим требованиям."; mes "Удачи тебе!"; close; } } else { mes $@npcnames$; mes "Хм? Хорошо, подумай пока. Возвращайся в любой"; mes "момент когда ты наконец надумаешь. В мире всегда найдётся место очередному Мечнику!"; close; } } mes $@npcnames$; if (getskilllv("NV_BASIC") < 9) { mes "Хм, прости дружище, но ты ещё не достиг ^4A4AFF10 Уровня Джоба^000000."; mes "или не изучил все ^4A4AFFБазовые Навыки должны быть 9 Уровня^000000."; next; mes $@npcnames$; mes "Глянь ещё раз требования для смены"; mes "профессии и возвращайся, когда будешь готов."; close; } else if (job_sword_q <= 3) { mes "Хм, ты уже изучил все ^4A4AFFБазовые Навыки^000000, но ты ещё не проходил тест."; mes "Ты должен будишь сейчас сдать экзамен перед тем, как сможешь сменить профессию на Мечника."; next; mes $@npcnames$; mes "Тест можно пройти в комнате справа."; mes "Тебе нужно будит поговорить с моим помощником, чтобы войти туда."; close; } else if (job_sword_q == 4) { mes "Ахахахахх! Поздравляю! Теперь ты полностью готов стать настоящим Мечником! Я выдам тебе прямо сейчас обмундирование!"; next; callfunc "Job_Change",Job_Swordman; job_sword_q = 0; completequest 1014; mes $@npcnames$; mes "И ещё раз, мои поздравления. Надеюсь, из тебя получится хороший представитель Ассоциации Мечников."; close; } case 2: mes $@npcnames$; mes "Так ты хочешь знать больше о великой профессии Мечника? Ну что же..."; next; mes $@npcnames$; mes "Среди профессии Первого класса Мечник - лучший боец ближнего боя."; mes "На то есть три причины."; next; mes $@npcnames$; mes "Во-первых, мечник получает преимущество от дополнительного HP"; mes "Во-вторых, в целом у Мечников есть доступ к более широкому"; mes "выбору оружия, чем у остальных профессий Первого класса."; next; mes $@npcnames$; mes "Ну и наконец в-третьих, большинство навыков Мечника - разрушительные физические атаки!"; mes "На мой взгляд, Мечник - самая лучшая профессия из всех!."; close; case 3: mes $@npcnames$; mes "Хмм-м..."; if (BaseJob != Job_Novice) { if (BaseJob == Job_Swordman) mes "Во-первых, тебе нужно изучить все 9 Базовых Навыков. Если ты не сделаешь этого, то ты вообще не сможешь сменить профессию."; else mes "Тебе уже слишком поздно становиться Мечником. У тебя уже есть другая профессия. Ну а в прочем, ничего плохого не будит, если я расскажу тебе об этих требованиях..."; } next; mes $@npcnames$; mes "Во-первых, тебе нужно изучить все 9 Базовых Навыков. Если ты не сделаешь этого, то ты вообще не сможешь сменить профессию."; next; mes $@npcnames$; mes "Во-вторых, тебе нужно будит пройти тест на Мечника. Можешь узнать подробности у экзаменатора в комнате ожидания Теста на Мечника."; next; mes $@npcnames$; mes "Если ты сможешь выполнить эти 2 требования, то ты сможешь поменять профессию на Мечника в любой момент, когда захочешь."; close; case 4: mes $@npcnames$; mes "Ха-ха-ха!"; mes "Ах, молодёжь!"; close; } } izlude_in,62,170,6 script Предводитель#swd_2 4_M_03,{ set $@npcnames$,"[^BC7F15Предводитель теста Мечников^000000]"; mes $@npcnames$; if (BaseJob == Job_Swordman) { mes "Прости приятель, но кроме новичков которые хотят стать Мечниками, сюда не допускаются."; close; } else if (BaseJob != Job_Novice) { mes "Кто, ты ещё такой черт тебя побери?! Никто, кроме Новичков, в этот Зал не допускается!"; mes "Так что проваливай пока живой!"; close; } else if (getskilllv("NV_BASIC") < 9) { mes "Так! Стоять! Я не пропущю тебя до тех пор, пока ты не изучишь все ^4A4AFFБазовые Навыки^000000. Тестовый зал - это тебе не майку в трусы заправлять!"; close; } else if (job_sword_q == 4) { mes "Эй. Тебе надо поговорить с Мечником стоящего в центре комнаты, а не со мной. Ты это хорошо усёк?"; close; } else if (job_sword_q == 0) { mes "Так! Стоять! Я смотрю ты успел освоить все ^4A4AFFБазовые Навыки^000000. Но..."; next; mes $@npcnames$; mes "Тебе надо поговорить с Мечником стоящего в центре комнаты, а не со мной."; close; } else { savepoint "izlude_in",65,165; warp "izlude_in",39,170; end; } } izlude_in,30,175,4 script Учительница теста#swd_3 4_F_03,{ set $@npcnames$,"[^BC7F15Учительница по тесту^000000]"; mes $@npcnames$; mes "Послушай меня, я расскажу тебе про тест. Только слушай внимательно, я повторять не собираюсь."; next; mes $@npcnames$; mes "Смысл этого теста - убедиться в том, что ты обладаешь навыками для того чтобы стать Мечником. Как тебе известно, чтобы быть Мечником, требуется физический дух!"; next; mes $@npcnames$; mes "Без этих качеств ты не сможешь стать настоящим Мечником. Что касается условий для сдачи теста, то они очень просты."; next; mes $@npcnames$; mes "Тебе нужно будет пройти три отрезка путей, и достичь финиша в течении ^FF000010 минут^000000."; next; mes $@npcnames$; mes "Если ты выберешь 'Сдаться' или не уложишься во времени, то твой тест будет естественно провален!."; next; mes $@npcnames$; mes "Если ты уверен, что у тебя хватит сил, чтобы пройти данный тест, то иди ко входу и поговори с Сотрудником зала."; next; mes $@npcnames$; mes "В ходе своего пути ты можешь падать в случайно расставленные ямы. Однако курс придуман именно так, нужно пройти мимо этих расставленных ям."; next; mes $@npcnames$; mes "Тем не менее, будь осторожен с ними, ведь это будит тратить твоё драгоценное время. Я тебе всё объяснила, давай Вперёд!"; close; } izlude_in,30,163,0 script Сотрудник Зала#swd_1 8W_SOLDIER,{ set $@npcnames$,"[^BC7F15Сотрудник тренировочного Зала^000000]"; mes $@npcnames$; if (BaseJob == Job_Swordman) { mes "Хм? Как вы тут оказались? Вы не должны находиться здесь, поэтому пожалуйста, уходите отсюда немедленно."; close2; warp "izlude_in",66,170; end; } else if (BaseJob != Job_Novice) { mes "Кто ты такой?! Этот Тренировочный зал только для Меченосцев! Тебе не разрешено быть здесь! Уходи! Проваливай!"; close2; warp "izlude_in",66,170; end; } if (job_sword_q == 1) { mes "А вот и долгожданный кандидат в Мечники. Отлично! Ты выглядишь многообещающе!"; next; mes $@npcnames$; mes "Попробуй расслабиться и сделай всё, что сможешь. Тест он не такой уж и сложный."; job_sword_q = 2; } else if (job_sword_q == 2) { mes "Перездача? Ты не волнуйся о ней. Ничего с тобой плохого не случится. Вот, лучше возьми яблочек и взбодрись!"; getitem Apple,5; job_sword_q = 3; } else if (job_sword_q == 3) mes "Никогда не сдавайся!"; close2; warp "job_sword1",10,245; end; } job_sword1,230,245,2 script Медик#swd_1 8W_SOLDIER,{ set $@npcnames$,"[^BC7F15Медик^000000]"; callfunc "F_JobSwdMedic","1st!"; } job_sword1,230,242,2 script Сотрудник Зала#swd_2 8W_SOLDIER,{ set $@npcnames$,"[^BC7F15Сотрудник тренировочного Зала^000000]"; callfunc "F_JobSwdStaff",1; } job_sword1,230,207,2 script Медик#2swd_2 8W_SOLDIER,{ set $@npcnames$,"[^BC7F15Медик^000000]"; callfunc "F_JobSwdMedic","2nd!"; } job_sword1,230,204,2 script Сотрудник Зала#2swd_3 8W_SOLDIER,{ set $@npcnames$,"[^BC7F15Сотрудник тренировочного Зала^000000]"; callfunc "F_JobSwdStaff",1; } job_sword1,223,167,2 script Мэй#swd_1_success 4_F_03,{ set $@npcnames$,"[^BC7F15Экзаменатор Мэй^000000]"; mapannounce "job_sword1","Кандидат " + strcharinfo(0) + ". Вы успешно завершили тест.",bc_map; job_sword_q = 4; mes $@npcnames$; mes "Я искренне поздравляю Вас со сдачей этого не лёгкого Теста!"; mes "Я уже отправила Ваш результат в Департамент Профессий. Пожалуйста, проследуйте к Офицеру в центре. Спасибо."; close2; warp "izlude_in",66,173; end; } function script F_JobSwdMedic { percentheal 100,0; mes $@npcnames$; mes "Это контрольная точка номер "+getarg(0)+" Не унывай!"; close; } function script F_JobSwdStaff { mes $@npcnames$; mes "Ты сдаёшься?"; next; if (select("Да.:Нет.") == 1) { mapannounce "job_sword1","Кандидат " + strcharinfo(0) + " завалил тест.",bc_map; warp "izlude_in",65,165; end; } mes $@npcnames$; mes "Браво! Тогда вперёд!"; close; } function script F_JobSwdTestStaff { OnTouch: mes $@npcnames$; mes "Кандидат " + strcharinfo(0) + ". Ты сдаёшься??"; next; if (select("Да.:Нет.") == 1) { mapannounce "job_sword1","Кандидат " + strcharinfo(0) + " завалил тест..",bc_map; warp "izlude_in",65,165; end; } warp "job_sword1",getarg(0),getarg(1); end; } function script F_JobSwdTestStaff2 { OnTouch: mapannounce "job_sword1","Кандидат " + strcharinfo(0) + ". Вы прошли "+getarg(0)+" этап.",bc_map; warp "job_sword1",getarg(1),getarg(2); end; } job_sword1,223,243,0 warp checkp1-2#swd_1 1,1,job_sword1,11,206 job_sword1,223,205,0 warp checkp2-3#swd_1 1,1,job_sword1,11,168 job_sword1,7,245,0 script Сотрудник Зала#swd_4 WARPNPC,1,3,{ callfunc "F_JobSwdTestStaff",10,245; } job_sword1,8,207,0 script Сотрудник Зала#swd_5 WARPNPC,1,6,{ callfunc "F_JobSwdTestStaff",11,207; } job_sword1,8,169,0 script Сотрудник Зала#swd_6 WARPNPC,1,6,{ callfunc "F_JobSwdTestStaff",11,169; } job_sword1,192,244,0 script Сотрудник Зала#swd_7 WARPNPC,1,3,{ callfunc "F_JobSwdTestStaff2","1st",215,244; } job_sword1,193,207,0 script Сотрудник Зала#swd_8 WARPNPC,1,3,{ callfunc "F_JobSwdTestStaff2","2nd",215,205; warp "job_sword1",215,205; } job_sword1,193,168,0 script Сотрудник Зала#swd_9 WARPNPC,1,3,{ callfunc "F_JobSwdTestStaff2","3rd",215,167; } job_sword1,65,117,0 warp pitfall01-01 1,1,job_sword1,10,245 job_sword1,98,27,0 warp pitfall02-01 1,1,job_sword1,11,207 job_sword1,161,27,0 warp pitfall02-02 1,1,job_sword1,11,207 job_sword1,239,117,0 warp pitfall03-01 1,1,job_sword1,11,169 job_sword1,16,251,0 script 1_blank_1_a::SwdTrap1 FAKE_NPC,0,1,{ OnTouch: switch(rand(1,5)) { case 1: warp "job_sword1",65,56; end; case 2: warp "job_sword1",29,26; end; case 3: warp "job_sword1",43,16; end; case 4: warp "job_sword1",23,112; end; case 5: warp "job_sword1",58,83; end; } } job_sword1,19,251,0 duplicate(SwdTrap1) 1_blank_1_b FAKE_NPC,0,1 job_sword1,17,250,0 duplicate(SwdTrap1) 1_blank_1_c FAKE_NPC,1,0 job_sword1,16,238,0 duplicate(SwdTrap1) 1_blank_2_a FAKE_NPC,0,1 job_sword1,19,238,0 duplicate(SwdTrap1) 1_blank_2_b FAKE_NPC,0,1 job_sword1,17,239,0 duplicate(SwdTrap1) 1_blank_2_c FAKE_NPC,0,1 job_sword1,28,247,0 duplicate(SwdTrap1) 1_blank_3_a FAKE_NPC,4,0 job_sword1,33,245,0 duplicate(SwdTrap1) 1_blank_3_b FAKE_NPC,0,2 job_sword1,29,242,0 duplicate(SwdTrap1) 1_blank_3_c FAKE_NPC,4,0 job_sword1,24,244,0 duplicate(SwdTrap1) 1_blank_3_d FAKE_NPC,0,2 job_sword1,38,251,0 duplicate(SwdTrap1) 1_blank_4_a FAKE_NPC,0,1 job_sword1,41,251,0 duplicate(SwdTrap1) 1_blank_4_b FAKE_NPC,0,1 job_sword1,39,250,0 duplicate(SwdTrap1) 1_blank_4_c FAKE_NPC,1,0 job_sword1,38,238,0 duplicate(SwdTrap1) 1_blank_5_a FAKE_NPC,0,1 job_sword1,41,238,0 duplicate(SwdTrap1) 1_blank_5_b FAKE_NPC,0,1 job_sword1,39,239,0 duplicate(SwdTrap1) 1_blank_5_c FAKE_NPC,1,0 job_sword1,54,251,0 duplicate(SwdTrap1) 1_blank_6_a FAKE_NPC,0,1 job_sword1,71,251,0 duplicate(SwdTrap1) 1_blank_6_b FAKE_NPC,0,1 job_sword1,62,250,0 duplicate(SwdTrap1) 1_blank_6_c FAKE_NPC,9,0 job_sword1,62,247,0 duplicate(SwdTrap1) 1_blank_7_a FAKE_NPC,8,0 job_sword1,71,244,0 duplicate(SwdTrap1) 1_blank_7_b FAKE_NPC,0,2 job_sword1,63,242,0 duplicate(SwdTrap1) 1_blank_7_c FAKE_NPC,8,0 job_sword1,54,244,0 duplicate(SwdTrap1) 1_blank_7_d FAKE_NPC,0,2 job_sword1,54,238,0 duplicate(SwdTrap1) 1_blank_8_a FAKE_NPC,0,1 job_sword1,71,238,0 duplicate(SwdTrap1) 1_blank_8_b FAKE_NPC,0,1 job_sword1,62,239,0 duplicate(SwdTrap1) 1_blank_8_c FAKE_NPC,9,0 job_sword1,102,247,0 duplicate(SwdTrap1) 1_blank_9_a FAKE_NPC,2,0 job_sword1,105,245,0 duplicate(SwdTrap1) 1_blank_9_b FAKE_NPC,0,2 job_sword1,103,242,0 duplicate(SwdTrap1) 1_blank_9_c FAKE_NPC,2,0 job_sword1,100,244,0 duplicate(SwdTrap1) 1_blank_9_d FAKE_NPC,0,2 job_sword1,156,249,0 duplicate(SwdTrap1) 1_blank_10_a FAKE_NPC,14,0 job_sword1,156,248,0 duplicate(SwdTrap1) 1_blank_10_b FAKE_NPC,14,0 job_sword1,170,249,0 duplicate(SwdTrap1) 1_blank_10_c FAKE_NPC,1,0 job_sword1,170,248,0 duplicate(SwdTrap1) 1_blank_10_d FAKE_NPC,1,0 job_sword1,156,245,0 duplicate(SwdTrap1) 1_blank_11_a FAKE_NPC,14,0 job_sword1,156,244,0 duplicate(SwdTrap1) 1_blank_11_b FAKE_NPC,14,0 job_sword1,170,245,0 duplicate(SwdTrap1) 1_blank_11_c FAKE_NPC,1,0 job_sword1,170,244,0 duplicate(SwdTrap1) 1_blank_11_d FAKE_NPC,1,0 job_sword1,156,241,0 duplicate(SwdTrap1) 1_blank_12_a FAKE_NPC,14,0 job_sword1,156,240,0 duplicate(SwdTrap1) 1_blank_12_b FAKE_NPC,14,0 job_sword1,170,241,0 duplicate(SwdTrap1) 1_blank_12_c FAKE_NPC,1,0 job_sword1,170,240,0 duplicate(SwdTrap1) 1_blank_12_d FAKE_NPC,1,0 job_sword1,180,251,0 duplicate(SwdTrap1) 1_blank_13_a FAKE_NPC,0,1 job_sword1,183,251,0 duplicate(SwdTrap1) 1_blank_13_b FAKE_NPC,0,1 job_sword1,181,250,0 duplicate(SwdTrap1) 1_blank_13_c FAKE_NPC,1,0 job_sword1,180,238,0 duplicate(SwdTrap1) 1_blank_14_a FAKE_NPC,0,1 job_sword1,183,238,0 duplicate(SwdTrap1) 1_blank_14_b FAKE_NPC,0,1 job_sword1,181,239,0 duplicate(SwdTrap1) 1_blank_14_c FAKE_NPC,1,0 job_sword1,193,245,0 warp 1_rest 1,3,job_sword1,215,244 job_sword1,56,212,0 script 2_blank_1_a::SwdTrap2 FAKE_NPC,40,0,{ OnTouch: switch(rand(1,5)) { case 1: warp "job_sword1",162,120; end; case 2: warp "job_sword1",94,120; end; case 3: warp "job_sword1",94,85; end; case 4: warp "job_sword1",162,85; end; case 5: warp "job_sword1",130,47; end; } } job_sword1,95,212,0 duplicate(SwdTrap2) 2_blank_1_b FAKE_NPC,2,0 job_sword1,56,210,0 duplicate(SwdTrap2) 2_blank_2_a FAKE_NPC,40,0 job_sword1,95,210,0 duplicate(SwdTrap2) 2_blank_2_b FAKE_NPC,2,0 job_sword1,16,206,0 duplicate(SwdTrap2) 2_blank_2_c FAKE_NPC,0,3 job_sword1,97,206,0 duplicate(SwdTrap2) 2_blank_2_d FAKE_NPC,0,3 job_sword1,56,203,0 duplicate(SwdTrap2) 2_blank_2_e FAKE_NPC,40,0 job_sword1,95,203,0 duplicate(SwdTrap2) 2_blank_2_f FAKE_NPC,2,0 job_sword1,56,201,0 duplicate(SwdTrap2) 2_blank_3_a FAKE_NPC,40,0 job_sword1,95,201,0 duplicate(SwdTrap2) 2_blank_3_b FAKE_NPC,2,0 job_sword1,113,212,0 duplicate(SwdTrap2) 2_blank_4_a FAKE_NPC,14,0 job_sword1,125,212,0 duplicate(SwdTrap2) 2_blank_4_b FAKE_NPC,2,0 job_sword1,113,210,0 duplicate(SwdTrap2) 2_blank_5_a FAKE_NPC,14,0 job_sword1,125,210,0 duplicate(SwdTrap2) 2_blank_5_b FAKE_NPC,2,0 job_sword1,100,206,0 duplicate(SwdTrap2) 2_blank_5_c FAKE_NPC,0,3 job_sword1,127,206,0 duplicate(SwdTrap2) 2_blank_5_d FAKE_NPC,0,3 job_sword1,113,203,0 duplicate(SwdTrap2) 2_blank_5_e FAKE_NPC,14,0 job_sword1,125,210,0 duplicate(SwdTrap2) 2_blank_5_f FAKE_NPC,2,0 job_sword1,113,201,0 duplicate(SwdTrap2) 2_blank_6_a FAKE_NPC,14,0 job_sword1,113,201,0 duplicate(SwdTrap2) 2_blank_6_b FAKE_NPC,2,0 job_sword1,155,212,0 duplicate(SwdTrap2) 2_blank_7_a FAKE_NPC,21,0 job_sword1,181,212,0 duplicate(SwdTrap2) 2_blank_7_b FAKE_NPC,2,0 job_sword1,155,210,0 duplicate(SwdTrap2) 2_blank_8_a FAKE_NPC,21,0 job_sword1,181,210,0 duplicate(SwdTrap2) 2_blank_8_b FAKE_NPC,2,0 job_sword1,130,206,0 duplicate(SwdTrap2) 2_blank_8_c FAKE_NPC,0,3 job_sword1,183,206,0 duplicate(SwdTrap2) 2_blank_8_d FAKE_NPC,0,3 job_sword1,155,203,0 duplicate(SwdTrap2) 2_blank_8_e FAKE_NPC,21,0 job_sword1,181,203,0 duplicate(SwdTrap2) 2_blank_8_f FAKE_NPC,2,0 job_sword1,155,201,0 duplicate(SwdTrap2) 2_blank_9_a FAKE_NPC,40,0 job_sword1,181,201,0 duplicate(SwdTrap2) 2_blank_9_b FAKE_NPC,2,0 job_sword1,17,174,0 script 3_blank_1_a::SwdTrap3 FAKE_NPC,2,0,{ OnTouch: switch(rand(1,5)) { case 1: warp "job_sword1",195,15; end; case 2: warp "job_sword1",195,38; end; case 3: warp "job_sword1",231,30; end; case 4: warp "job_sword1",198,65; end; case 5: warp "job_sword1",196,116; end; } } job_sword1,17,163,0 duplicate(SwdTrap3) 3_blank_2_a FAKE_NPC,2,0 job_sword1,29,171,0 duplicate(SwdTrap3) 3_blank_3_a FAKE_NPC,2,0 job_sword1,31,168,0 duplicate(SwdTrap3) 3_blank_3_b FAKE_NPC,0,2 job_sword1,28,166,0 duplicate(SwdTrap3) 3_blank_3_c FAKE_NPC,2,0 job_sword1,26,168,0 duplicate(SwdTrap3) 3_blank_3_d FAKE_NPC,0,2 job_sword1,36,169,0 duplicate(SwdTrap3) 3_blank_4_a FAKE_NPC,0,0 job_sword1,37,169,0 duplicate(SwdTrap3) 3_blank_4_b FAKE_NPC,0,0 job_sword1,37,168,0 duplicate(SwdTrap3) 3_blank_4_c FAKE_NPC,0,0 job_sword1,36,168,0 duplicate(SwdTrap3) 3_blank_4_c2 FAKE_NPC,0,0 job_sword1,40,175,0 duplicate(SwdTrap3) 3_blank_5_a FAKE_NPC,0,1 job_sword1,41,175,0 duplicate(SwdTrap3) 3_blank_5_b FAKE_NPC,0,1 job_sword1,41,171,0 duplicate(SwdTrap3) 3_blank_6_a FAKE_NPC,1,0 job_sword1,41,170,0 duplicate(SwdTrap3) 3_blank_6_b FAKE_NPC,1,0 job_sword1,41,167,0 duplicate(SwdTrap3) 3_blank_6_c FAKE_NPC,1,0 job_sword1,41,166,0 duplicate(SwdTrap3) 3_blank_6_d FAKE_NPC,1,0 job_sword1,42,169,0 duplicate(SwdTrap3) 3_blank_6_e FAKE_NPC,0,1 job_sword1,43,170,0 duplicate(SwdTrap3) 3_blank_6_f FAKE_NPC,0,1 job_sword1,43,167,0 duplicate(SwdTrap3) 3_blank_6_g FAKE_NPC,0,1 job_sword1,40,162,0 duplicate(SwdTrap3) 3_blank_7_a FAKE_NPC,0,1 job_sword1,41,162,0 duplicate(SwdTrap3) 3_blank_7_b FAKE_NPC,0,1 job_sword1,46,175,0 duplicate(SwdTrap3) 3_blank_8_a FAKE_NPC,0,1 job_sword1,51,175,0 duplicate(SwdTrap3) 3_blank_8_b FAKE_NPC,0,1 job_sword1,47,174,0 duplicate(SwdTrap3) 3_blank_8_c FAKE_NPC,1,0 job_sword1,50,174,0 duplicate(SwdTrap3) 3_blank_8_d FAKE_NPC,1,0 job_sword1,48,173,0 duplicate(SwdTrap3) 3_blank_8_e FAKE_NPC,0,1 job_sword1,49,173,0 duplicate(SwdTrap3) 3_blank_8_f FAKE_NPC,0,1 job_sword1,46,162,0 duplicate(SwdTrap3) 3_blank_9_a FAKE_NPC,0,1 job_sword1,51,162,0 duplicate(SwdTrap3) 3_blank_9_b FAKE_NPC,0,1 job_sword1,47,163,0 duplicate(SwdTrap3) 3_blank_9_c FAKE_NPC,1,0 job_sword1,50,163,0 duplicate(SwdTrap3) 3_blank_9_d FAKE_NPC,1,0 job_sword1,48,164,0 duplicate(SwdTrap3) 3_blank_9_e FAKE_NPC,0,1 job_sword1,49,164,0 duplicate(SwdTrap3) 3_blank_9_f FAKE_NPC,0,1 job_sword1,54,170,0 duplicate(SwdTrap3) 3_blank_10_a FAKE_NPC,0,1 job_sword1,55,170,0 duplicate(SwdTrap3) 3_blank_10_b FAKE_NPC,0,1 job_sword1,54,167,0 duplicate(SwdTrap3) 3_blank_10_c FAKE_NPC,0,1 job_sword1,55,167,0 duplicate(SwdTrap3) 3_blank_10_d FAKE_NPC,0,1 job_sword1,53,169,0 duplicate(SwdTrap3) 3_blank_10_e FAKE_NPC,1,0 job_sword1,53,168,0 duplicate(SwdTrap3) 3_blank_10_f FAKE_NPC,1,0 job_sword1,56,169,0 duplicate(SwdTrap3) 3_blank_10_g FAKE_NPC,1,0 job_sword1,56,168,0 duplicate(SwdTrap3) 3_blank_10_h FAKE_NPC,1,0 job_sword1,58,175,0 duplicate(SwdTrap3) 3_blank_11_a FAKE_NPC,0,1 job_sword1,59,174,0 duplicate(SwdTrap3) 3_blank_11_b FAKE_NPC,1,0 job_sword1,60,173,0 duplicate(SwdTrap3) 3_blank_11_c FAKE_NPC,0,1 job_sword1,61,172,0 duplicate(SwdTrap3) 3_blank_11_d FAKE_NPC,1,0 job_sword1,58,162,0 duplicate(SwdTrap3) 3_blank_12_a FAKE_NPC,0,1 job_sword1,59,163,0 duplicate(SwdTrap3) 3_blank_12_b FAKE_NPC,1,0 job_sword1,60,164,0 duplicate(SwdTrap3) 3_blank_12_c FAKE_NPC,0,1 job_sword1,61,165,0 duplicate(SwdTrap3) 3_blank_12_d FAKE_NPC,1,0 job_sword1,76,172,0 duplicate(SwdTrap3) 3_blank_13_a FAKE_NPC,1,0 job_sword1,77,173,0 duplicate(SwdTrap3) 3_blank_13_b FAKE_NPC,0,1 job_sword1,78,174,0 duplicate(SwdTrap3) 3_blank_13_c FAKE_NPC,1,0 job_sword1,79,175,0 duplicate(SwdTrap3) 3_blank_13_d FAKE_NPC,0,1 job_sword1,76,165,0 duplicate(SwdTrap3) 3_blank_14_a FAKE_NPC,1,0 job_sword1,77,164,0 duplicate(SwdTrap3) 3_blank_14_b FAKE_NPC,0,1 job_sword1,78,163,0 duplicate(SwdTrap3) 3_blank_14_c FAKE_NPC,1,0 job_sword1,79,162,0 duplicate(SwdTrap3) 3_blank_14_d FAKE_NPC,0,1 job_sword1,94,175,0 duplicate(SwdTrap3) 3_blank_15_a FAKE_NPC,0,1 job_sword1,95,174,0 duplicate(SwdTrap3) 3_blank_15_b FAKE_NPC,1,0 job_sword1,98,174,0 duplicate(SwdTrap3) 3_blank_15_c FAKE_NPC,1,0 job_sword1,99,175,0 duplicate(SwdTrap3) 3_blank_16_d FAKE_NPC,0,1 job_sword1,96,169,0 duplicate(SwdTrap3) 3_blank_17_a FAKE_NPC,0,0 job_sword1,97,169,0 duplicate(SwdTrap3) 3_blank_17_b FAKE_NPC,0,0 job_sword1,97,168,0 duplicate(SwdTrap3) 3_blank_17_c FAKE_NPC,0,0 job_sword1,96,168,0 duplicate(SwdTrap3) 3_blank_17_d FAKE_NPC,0,0 job_sword1,94,162,0 duplicate(SwdTrap3) 3_blank_18_a FAKE_NPC,0,1 job_sword1,95,163,0 duplicate(SwdTrap3) 3_blank_18_b FAKE_NPC,1,0 job_sword1,98,163,0 duplicate(SwdTrap3) 3_blank_18_c FAKE_NPC,1,0 job_sword1,99,162,0 duplicate(SwdTrap3) 3_blank_18_d FAKE_NPC,0,1 job_sword1,114,175,0 duplicate(SwdTrap3) 3_blank_19_a FAKE_NPC,0,1 job_sword1,115,175,0 duplicate(SwdTrap3) 3_blank_19_b FAKE_NPC,0,1 job_sword1,114,162,0 duplicate(SwdTrap3) 3_blank_20_a FAKE_NPC,0,1 job_sword1,115,162,0 duplicate(SwdTrap3) 3_blank_20_b FAKE_NPC,0,1 job_sword1,126,175,0 duplicate(SwdTrap3) 3_blank_21_a FAKE_NPC,0,1 job_sword1,127,175,0 duplicate(SwdTrap3) 3_blank_21_b FAKE_NPC,0,1 job_sword1,126,162,0 duplicate(SwdTrap3) 3_blank_23_a FAKE_NPC,0,1 job_sword1,127,162,0 duplicate(SwdTrap3) 3_blank_23_b FAKE_NPC,0,1 job_sword1,160,174,0 duplicate(SwdTrap3) 3_blank_24_a FAKE_NPC,0,2 job_sword1,161,174,0 duplicate(SwdTrap3) 3_blank_24_b FAKE_NPC,0,2 job_sword1,160,163,0 duplicate(SwdTrap3) 3_blank_25_a FAKE_NPC,0,2 job_sword1,161,163,0 duplicate(SwdTrap3) 3_blank_25_b FAKE_NPC,0,2 job_sword1,168,175,0 duplicate(SwdTrap3) 3_blank_26_a FAKE_NPC,0,2 job_sword1,169,175,0 duplicate(SwdTrap3) 3_blank_26_b FAKE_NPC,0,2 job_sword1,168,162,0 duplicate(SwdTrap3) 3_blank_27_a FAKE_NPC,0,2 job_sword1,169,162,0 duplicate(SwdTrap3) 3_blank_27_b FAKE_NPC,0,2 job_sword1,176,174,0 duplicate(SwdTrap3) 3_blank_28_a FAKE_NPC,0,2 job_sword1,177,174,0 duplicate(SwdTrap3) 3_blank_28_b FAKE_NPC,0,2 job_sword1,178,173,0 duplicate(SwdTrap3) 3_blank_28_c FAKE_NPC,1,0 job_sword1,178,172,0 duplicate(SwdTrap3) 3_blank_28_d FAKE_NPC,1,0 job_sword1,181,174,0 duplicate(SwdTrap3) 3_blank_28_e FAKE_NPC,2,0 job_sword1,179,169,0 duplicate(SwdTrap3) 3_blank_29_a FAKE_NPC,3,0 job_sword1,179,168,0 duplicate(SwdTrap3) 3_blank_29_b FAKE_NPC,3,0 job_sword1,182,169,0 duplicate(SwdTrap3) 3_blank_29_c FAKE_NPC,0,2 job_sword1,183,169,0 duplicate(SwdTrap3) 3_blank_29_d FAKE_NPC,0,2 job_sword1,181,167,0 duplicate(SwdTrap3) 3_blank_29_e FAKE_NPC,1,0 job_sword1,181,166,0 duplicate(SwdTrap3) 3_blank_29_f FAKE_NPC,1,0 job_sword1,183,167,0 duplicate(SwdTrap3) 3_blank_29_g FAKE_NPC,0,1 job_sword1,176,163,0 duplicate(SwdTrap3) 3_blank_30_a FAKE_NPC,0,2 job_sword1,177,163,0 duplicate(SwdTrap3) 3_blank_30_b FAKE_NPC,0,2 job_sword1,181,163,0 duplicate(SwdTrap3) 3_blank_30_c FAKE_NPC,2,0 job_sword1,0,0,0,0 monster Chonchon 1183,20,0,0,0 job_sword1,35,79,0,0 monster Fabre 1184,3,60000,30000,0 job_sword1,50,108,0,0 monster Fabre 1184,3,60000,30000,0 job_sword1,61,28,0,0 monster Fabre 1184,3,60000,30000,0 job_sword1,61,92,0,0 monster Fabre 1184,3,60000,30000,0 job_sword1,110,112,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,161,94,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,130,76,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,103,58,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,130,24,0,0 monster Fabre 1184,5,60000,30000,0 job_sword1,201,36,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,201,16,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,239,44,0,0 monster Fabre 1184,3,60000,30000,0 job_sword1,239,76,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,231,101,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,234,117,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,198,91,0,0 monster Fabre 1184,2,60000,30000,0 job_sword1,200,63,0,0 monster Fabre 1184,2,60000,30000,0 rAthena путь к скрипту /trunk/npc/re/jobs/1-1/swordman.txt ВНИМАНИЕ скрипты мало чем отличаются, друг от друга, но разница есть, не путайтесь между hA и rA! Скрытый текст izlude_in,74,172,4 script Мечник#swd_1 119,{ set $@npcnames$,"[^BC7F15Ассоциатор Мечников^000000]"; if (Upper == 1) { if (Class == Job_Novice_High && (ADVJOB == Job_Lord_Knight || ADVJOB == Job_Paladin)) { mes $@npcnames$; mes "О_о..."; mes "Не могу в это поверить..."; mes "Ты уже успел переродиться, верно?"; next; mes $@npcnames$; mes "Вижу, ты хочешь возобновить свой путь мечника! Однажды помахав мечом, уже невозможно от этого отказаться!!"; next; if (getskilllv("NV_BASIC") < 9) { mes $@npcnames$; mes "Хм-м? ты ещё не изучил все ^4A4AFFБазовые Навыки^000000. Тебе нужно сделать это до того, как стать Мечником."; next; mes $@npcnames$; mes "Проверь требования для смены профессии и возвращайся, когда будешь готов."; close; } mes $@npcnames$; mes "Превосходно! Позволь мне повысить тебя до мечника прямо сейчас!"; next; skill "NV_TRICKDEAD",0,SKILL_PERM; jobchange Job_Swordman_High; skill "SM_MOVINGRECOVERY",1,SKILL_PERM; skill "SM_FATALBLOW",1,SKILL_PERM; skill "SM_AUTOBERSERK",1,SKILL_PERM; mes $@npcnames$; mes "Хм ... Вы посмотрите, какой хороший, опытный из тебя вышел Мечник. Тем не менее, я уверен, что ты должнен больше тренироваться, чтобы улучшить свои навыки и набраться сил!"; close; } else { mes $@npcnames$; mes "Hm...?"; mes "You're a reborn"; mes "warrior, aren't you?"; next; mes $@npcnames$; mes "Хмм..."; mes "Кажется, что, будучи"; mes "настоящим Мечником ты"; mes "не можешь управлять судьбой своей."; mes "Я конечно извиняюсь, но"; mes "к великому несчастью, я ничем не смогу тебе помочь."; close; } } mes $@npcnames$; mes "Добро пожаловать в Ассоциацию"; mes "Мечников!"; next; mes $@npcnames$; mes "И так..."; mes "Что привело тебя к нам?"; next; switch(select("Смена профессии.:О Мечниках.:О требованиях.:Нет, просто осматриваюсь.")) { case 1: if (BaseJob == Job_Swordman) { mes $@npcnames$; mes "Смена профессии? Мухахаха! Да ты"; mes "уже Мечник! Будь сильным и гордым!"; close; } else if (BaseJob != Job_Novice) { mes $@npcnames$; mes "Аха-х! Я конечно польщён, твоей упёртости, но у тебя уже есть"; mes "профессия. Впрочем, я не могу тебя в этом обвинять..."; close; } if (job_sword_q == 0) { mes $@npcnames$; mes "Хочешь стать Мечником?"; mes "Мы непременно оформим сейчас твою заявку!"; next; if (select("Подписать заявку.:Я подумаю ещё.") == 1) { savepoint "izlude_in",65,165; set job_sword_q,1; setquest 1014; mes $@npcnames$; mes "Хорошо. Твоя заявка будет"; mes "рассмотрена в ближайшее время."; next; mes $@npcnames$; mes "Если ты уже соответствуешь"; mes "требованиям, можешь пройти собеседование прямо сейчас."; mes "Хочешь?"; next; if (select("Да, хочу.:Нет, не хочу.") == 1) { mes $@npcnames$; mes "Неплохо, очень хорошо."; mes "А ну, давай ка посмотрим что у нас тут..."; next; } else { mes $@npcnames$; mes "Хорошо. Можешь возвращаться в любой"; mes "момент, когда подготовишься. Всё, что тебе нужно, это соответствовать нашим требованиям."; mes "Удачи тебе!"; close; } } else { mes $@npcnames$; mes "Хм? Хорошо, подумай пока. Возвращайся в любой"; mes "момент когда ты наконец надумаешь. В мире всегда найдётся место очередному Мечнику!"; close; } } mes $@npcnames$; if (getskilllv("NV_BASIC") < 9) { mes "Хм, прости дружище, но ты ещё не достиг ^4A4AFF10 Уровня Джоба^000000."; mes "или не изучил все ^4A4AFFБазовые Навыки должны быть 9 Уровня^000000."; next; mes $@npcnames$; mes "Глянь ещё раз требования для смены"; mes "профессии и возвращайся, когда будешь готов."; close; } else if (job_sword_q <= 3) { mes "Хм, ты уже изучил все ^4A4AFFБазовые Навыки^000000, но ты ещё не проходил тест."; mes "Ты должен будишь сейчас сдать экзамен перед тем, как сможешь сменить профессию на Мечника."; next; mes $@npcnames$; mes "Тест можно пройти в комнате справа."; mes "Тебе нужно будит поговорить с моим помощником, чтобы войти туда."; close; } else if (job_sword_q == 4) { mes "Ахахахахх! Поздравляю! Теперь ты полностью готов стать настоящим Мечником! Я выдам тебе прямо сейчас обмундирование!"; next; callfunc "Job_Change",Job_Swordman; set job_sword_q,0; completequest 1014; mes $@npcnames$; mes "И ещё раз, мои поздравления. Надеюсь, из тебя получится хороший представитель Ассоциации Мечников."; close; } case 2: mes $@npcnames$; mes "Так ты хочешь знать больше о великой профессии Мечника? Ну что же..."; next; mes $@npcnames$; mes "Среди профессии Первого класса Мечник - лучший боец ближнего боя."; mes "На то есть три причины."; next; mes $@npcnames$; mes "Во-первых, мечник получает преимущество от дополнительного HP"; mes "Во-вторых, в целом у Мечников есть доступ к более широкому"; mes "выбору оружия, чем у остальных профессий Первого класса."; next; mes $@npcnames$; mes "Ну и наконец в-третьих, большинство навыков Мечника - разрушительные физические атаки!"; mes "На мой взгляд, Мечник - самая лучшая профессия из всех!."; close; case 3: mes $@npcnames$; mes "Хмм-м..."; if (BaseJob != Job_Novice) { if (BaseJob == Job_Swordman) mes "Во-первых, тебе нужно изучить все 9 Базовых Навыков. Если ты не сделаешь этого, то ты вообще не сможешь сменить профессию."; else mes "Тебе уже слишком поздно становиться Мечником. У тебя уже есть другая профессия. Ну а в прочем, ничего плохого не будит, если я расскажу тебе об этих требованиях..."; } next; mes $@npcnames$; mes "Во-первых, тебе нужно изучить все 9 Базовых Навыков. Если ты не сделаешь этого, то ты вообще не сможешь сменить профессию."; next; mes $@npcnames$; mes "Во-вторых, тебе нужно будит пройти тест на Мечника. Можешь узнать подробности у экзаменатора в комнате ожидания Теста на Мечника."; next; mes $@npcnames$; mes "Если ты сможешь выполнить эти 2 требования, то ты сможешь поменять профессию на Мечника в любой момент, когда захочешь."; close; case 4: mes $@npcnames$; mes "Ха-ха-ха!"; mes "Ах, молодёжь!"; close; } } izlude_in,62,170,6 script Предводитель#swd_2 85,{ set $@npcnames$,"[^BC7F15Предводитель теста Мечников^000000]"; mes $@npcnames$; if (BaseJob == Job_Swordman) { mes "Прости приятель, но кроме новичков которые хотят стать Мечниками, сюда не допускаются."; close; } else if (BaseJob != Job_Novice) { mes "Кто, ты ещё такой черт тебя побери?! Никто, кроме Новичков, в этот Зал не допускается!"; mes "Так что проваливай пока живой!"; close; } else if (getskilllv("NV_BASIC") < 9) { mes "Так! Стоять! Я не пропущю тебя до тех пор, пока ты не изучишь все ^4A4AFFБазовые Навыки^000000. Тестовый зал - это тебе не майку в трусы заправлять!"; close; } else if (job_sword_q == 4) { mes "Эй. Тебе надо поговорить с Мечником стоящего в центре комнаты, а не со мной. Ты это хорошо усёк?"; close; } else if (job_sword_q == 0) { mes "Так! Стоять! Я смотрю ты успел освоить все ^4A4AFFБазовые Навыки^000000. Но..."; next; mes $@npcnames$; mes "Тебе надо поговорить с Мечником стоящего в центре комнаты, а не со мной."; close; } else { savepoint "izlude_in",65,165; warp "izlude_in",39,170; end; } } izlude_in,30,175,4 script Учительница теста#swd_3 92,{ set $@npcnames$,"[^BC7F15Учительница по тесту^000000]"; mes $@npcnames$; mes "Послушай меня, я расскажу тебе про тест. Только слушай внимательно, я повторять не собираюсь."; next; mes $@npcnames$; mes "Смысл этого теста - убедиться в том, что ты обладаешь навыками для того чтобы стать Мечником. Как тебе известно, чтобы быть Мечником, требуется физический дух!"; next; mes $@npcnames$; mes "Без этих качеств ты не сможешь стать настоящим Мечником. Что касается условий для сдачи теста, то они очень просты."; next; mes $@npcnames$; mes "Тебе нужно будет пройти три отрезка путей, и достичь финиша в течении ^FF000010 минут^000000."; next; mes $@npcnames$; mes "Если ты выберешь 'Сдаться' или не уложишься во времени, то твой тест будет естественно провален!."; next; mes $@npcnames$; mes "Если ты уверен, что у тебя хватит сил, чтобы пройти данный тест, то иди ко входу и поговори с Сотрудником зала."; next; mes $@npcnames$; mes "В ходе своего пути ты можешь падать в случайно расставленные ямы. Однако курс придуман именно так, нужно пройти мимо этих расставленных ям."; next; mes $@npcnames$; mes "Тем не менее, будь осторожен с ними, ведь это будит тратить твоё драгоценное время. Я тебе всё объяснила, давай Вперёд!"; close; } izlude_in,30,163,0 script Сотрудник Зала#swd_1 105,{ set $@npcnames$,"[^BC7F15Сотрудник тренировочного Зала^000000]"; mes $@npcnames$; if (BaseJob == Job_Swordman) { mes "Хм? Как вы тут оказались? Вы не должны находиться здесь, поэтому пожалуйста, уходите отсюда немедленно."; close2; warp "izlude_in",66,170; end; } else if (BaseJob != Job_Novice) { mes "Кто ты такой?! Этот Тренировочный зал только для Меченосцев! Тебе не разрешено быть здесь! Уходи! Проваливай!"; close2; warp "izlude_in",66,170; end; } if (job_sword_q == 1) { mes "А вот и долгожданный кандидат в Мечники. Отлично! Ты выглядишь многообещающе!"; next; mes $@npcnames$; mes "Попробуй расслабиться и сделай всё, что сможешь. Тест он не такой уж и сложный."; set job_sword_q,2; } else if (job_sword_q == 2) { mes "Перездача? Ты не волнуйся о ней. Ничего с тобой плохого не случится. Вот, лучше возьми яблочек и взбодрись!"; getitem 512,5; //Apple set job_sword_q,3; } else if (job_sword_q == 3) mes "Никогда не сдавайся!"; close2; warp "job_sword1",10,245; end; } job_sword1,230,245,2 script Медик#swd_1 105,{ set $@npcnames$,"[^BC7F15Медик^000000]"; callfunc "F_JobSwdMedic","1st!"; } job_sword1,230,242,2 script Сотрудник Зала#swd_2 105,{ set $@npcnames$,"[^BC7F15Сотрудник тренировочного Зала^000000]"; callfunc "F_JobSwdStaff",1; } job_sword1,230,207,2 script Медик#2swd_2 105,{ set $@npcnames$,"[^BC7F15Медик^000000]"; callfunc "F_JobSwdMedic","2nd!"; } job_sword1,230,204,2 script Сотрудник Зала#2swd_3 105,{ set $@npcnames$,"[^BC7F15Сотрудник тренировочного Зала^000000]"; callfunc "F_JobSwdStaff",1; } job_sword1,223,167,2 script Мэй#swd_1_success 92,{ set $@npcnames$,"[^BC7F15Экзаменатор Мэй^000000]"; mapannounce "job_sword1","Кандидат " + strcharinfo(0) + ". Вы успешно завершили тест.",bc_map; set job_sword_q,4; mes $@npcnames$; mes "Я искренне поздравляю Вас со сдачей этого не лёгкого Теста!"; mes "Я уже отправила Ваш результат в Департамент Профессий. Пожалуйста, проследуйте к Офицеру в центре. Спасибо."; close2; warp "izlude_in",66,173; end; } function script F_JobSwdMedic { percentheal 100,0; mes $@npcnames$; mes "Это контрольная точка номер "+getarg(0)+" Не унывай!"; close; } function script F_JobSwdStaff { mes $@npcnames$; mes "Ты сдаёшься?"; next; if (select("Да.:Нет.") == 1) { mapannounce "job_sword1","Кандидат " + strcharinfo(0) + " завалил тест.",bc_map; warp "izlude_in",65,165; end; } mes $@npcnames$; mes "Браво! Тогда вперёд!"; close; } function script F_JobSwdTestStaff { OnTouch: mes $@npcnames$; mes "Кандидат " + strcharinfo(0) + ". Ты сдаёшься??"; next; if (select("Да.:Нет.") == 1) { mapannounce "job_sword1","Кандидат " + strcharinfo(0) + " завалил тест...",bc_map; warp "izlude_in",65,165; end; } warp "job_sword1",getarg(0),getarg(1); end; } function script F_JobSwdTestStaff2 { OnTouch: mapannounce "job_sword1","Кандидат " + strcharinfo(0) + ". Вы прошли "+getarg(0)+" этап.",bc_map; warp "job_sword1",getarg(1),getarg(2); end; } job_sword1,223,243,0 warp checkp1-2#swd_1 1,1,job_sword1,11,206 job_sword1,223,205,0 warp checkp2-3#swd_1 1,1,job_sword1,11,168 job_sword1,7,245,0 script Сотрудник Зала#swd_4 45,1,3,{ callfunc "F_JobSwdTestStaff",10,245; } job_sword1,8,207,0 script Сотрудник Зала#swd_5 45,1,6,{ callfunc "F_JobSwdTestStaff",11,207; } job_sword1,8,169,0 script Сотрудник Зала#swd_6 45,1,6,{ callfunc "F_JobSwdTestStaff",11,169; } job_sword1,192,244,0 script Сотрудник Зала#swd_7 45,1,3,{ callfunc "F_JobSwdTestStaff2","1st",215,244; } job_sword1,193,207,0 script Сотрудник Зала#swd_8 45,1,3,{ callfunc "F_JobSwdTestStaff2","2nd",215,205; warp "job_sword1",215,205; } job_sword1,193,168,0 script Сотрудник Зала#swd_9 45,1,3,{ callfunc "F_JobSwdTestStaff2","3rd",215,167; } job_sword1,65,117,0 warp pitfall01-01 1,1,job_sword1,10,245 job_sword1,98,27,0 warp pitfall02-01 1,1,job_sword1,11,207 job_sword1,161,27,0 warp pitfall02-02 1,1,job_sword1,11,207 job_sword1,239,117,0 warp pitfall03-01 1,1,job_sword1,11,169 job_sword1,16,251,0 script 1_blank_1_a::SwdTrap1 -1,0,1,{ OnTouch: switch(rand(1,5)) { case 1: warp "job_sword1",65,56; end; case 2: warp "job_sword1",29,26; end; case 3: warp "job_sword1",43,16; end; case 4: warp "job_sword1",23,112; end; case 5: warp "job_sword1",58,83; end; } } job_sword1,19,251,0 duplicate(SwdTrap1) 1_blank_1_b -1,0,1 job_sword1,17,250,0 duplicate(SwdTrap1) 1_blank_1_c -1,1,0 job_sword1,16,238,0 duplicate(SwdTrap1) 1_blank_2_a -1,0,1 job_sword1,19,238,0 duplicate(SwdTrap1) 1_blank_2_b -1,0,1 job_sword1,17,239,0 duplicate(SwdTrap1) 1_blank_2_c -1,0,1 job_sword1,28,247,0 duplicate(SwdTrap1) 1_blank_3_a -1,4,0 job_sword1,33,245,0 duplicate(SwdTrap1) 1_blank_3_b -1,0,2 job_sword1,29,242,0 duplicate(SwdTrap1) 1_blank_3_c -1,4,0 job_sword1,24,244,0 duplicate(SwdTrap1) 1_blank_3_d -1,0,2 job_sword1,38,251,0 duplicate(SwdTrap1) 1_blank_4_a -1,0,1 job_sword1,41,251,0 duplicate(SwdTrap1) 1_blank_4_b -1,0,1 job_sword1,39,250,0 duplicate(SwdTrap1) 1_blank_4_c -1,1,0 job_sword1,38,238,0 duplicate(SwdTrap1) 1_blank_5_a -1,0,1 job_sword1,41,238,0 duplicate(SwdTrap1) 1_blank_5_b -1,0,1 job_sword1,39,239,0 duplicate(SwdTrap1) 1_blank_5_c -1,1,0 job_sword1,54,251,0 duplicate(SwdTrap1) 1_blank_6_a -1,0,1 job_sword1,71,251,0 duplicate(SwdTrap1) 1_blank_6_b -1,0,1 job_sword1,62,250,0 duplicate(SwdTrap1) 1_blank_6_c -1,9,0 job_sword1,62,247,0 duplicate(SwdTrap1) 1_blank_7_a -1,8,0 job_sword1,71,244,0 duplicate(SwdTrap1) 1_blank_7_b -1,0,2 job_sword1,63,242,0 duplicate(SwdTrap1) 1_blank_7_c -1,8,0 job_sword1,54,244,0 duplicate(SwdTrap1) 1_blank_7_d -1,0,2 job_sword1,54,238,0 duplicate(SwdTrap1) 1_blank_8_a -1,0,1 job_sword1,71,238,0 duplicate(SwdTrap1) 1_blank_8_b -1,0,1 job_sword1,62,239,0 duplicate(SwdTrap1) 1_blank_8_c -1,9,0 job_sword1,102,247,0 duplicate(SwdTrap1) 1_blank_9_a -1,2,0 job_sword1,105,245,0 duplicate(SwdTrap1) 1_blank_9_b -1,0,2 job_sword1,103,242,0 duplicate(SwdTrap1) 1_blank_9_c -1,2,0 job_sword1,100,244,0 duplicate(SwdTrap1) 1_blank_9_d -1,0,2 job_sword1,156,249,0 duplicate(SwdTrap1) 1_blank_10_a -1,14,0 job_sword1,156,248,0 duplicate(SwdTrap1) 1_blank_10_b -1,14,0 job_sword1,170,249,0 duplicate(SwdTrap1) 1_blank_10_c -1,1,0 job_sword1,170,248,0 duplicate(SwdTrap1) 1_blank_10_d -1,1,0 job_sword1,156,245,0 duplicate(SwdTrap1) 1_blank_11_a -1,14,0 job_sword1,156,244,0 duplicate(SwdTrap1) 1_blank_11_b -1,14,0 job_sword1,170,245,0 duplicate(SwdTrap1) 1_blank_11_c -1,1,0 job_sword1,170,244,0 duplicate(SwdTrap1) 1_blank_11_d -1,1,0 job_sword1,156,241,0 duplicate(SwdTrap1) 1_blank_12_a -1,14,0 job_sword1,156,240,0 duplicate(SwdTrap1) 1_blank_12_b -1,14,0 job_sword1,170,241,0 duplicate(SwdTrap1) 1_blank_12_c -1,1,0 job_sword1,170,240,0 duplicate(SwdTrap1) 1_blank_12_d -1,1,0 job_sword1,180,251,0 duplicate(SwdTrap1) 1_blank_13_a -1,0,1 job_sword1,183,251,0 duplicate(SwdTrap1) 1_blank_13_b -1,0,1 job_sword1,181,250,0 duplicate(SwdTrap1) 1_blank_13_c -1,1,0 job_sword1,180,238,0 duplicate(SwdTrap1) 1_blank_14_a -1,0,1 job_sword1,183,238,0 duplicate(SwdTrap1) 1_blank_14_b -1,0,1 job_sword1,181,239,0 duplicate(SwdTrap1) 1_blank_14_c -1,1,0 job_sword1,193,245,0 warp 1_rest 1,3,job_sword1,215,244 job_sword1,56,212,0 script 2_blank_1_a::SwdTrap2 -1,40,0,{ OnTouch: switch(rand(1,5)) { case 1: warp "job_sword1",162,120; end; case 2: warp "job_sword1",94,120; end; case 3: warp "job_sword1",94,85; end; case 4: warp "job_sword1",162,85; end; case 5: warp "job_sword1",130,47; end; } } job_sword1,95,212,0 duplicate(SwdTrap2) 2_blank_1_b -1,2,0 job_sword1,56,210,0 duplicate(SwdTrap2) 2_blank_2_a -1,40,0 job_sword1,95,210,0 duplicate(SwdTrap2) 2_blank_2_b -1,2,0 job_sword1,16,206,0 duplicate(SwdTrap2) 2_blank_2_c -1,0,3 job_sword1,97,206,0 duplicate(SwdTrap2) 2_blank_2_d -1,0,3 job_sword1,56,203,0 duplicate(SwdTrap2) 2_blank_2_e -1,40,0 job_sword1,95,203,0 duplicate(SwdTrap2) 2_blank_2_f -1,2,0 job_sword1,56,201,0 duplicate(SwdTrap2) 2_blank_3_a -1,40,0 job_sword1,95,201,0 duplicate(SwdTrap2) 2_blank_3_b -1,2,0 job_sword1,113,212,0 duplicate(SwdTrap2) 2_blank_4_a -1,14,0 job_sword1,125,212,0 duplicate(SwdTrap2) 2_blank_4_b -1,2,0 job_sword1,113,210,0 duplicate(SwdTrap2) 2_blank_5_a -1,14,0 job_sword1,125,210,0 duplicate(SwdTrap2) 2_blank_5_b -1,2,0 job_sword1,100,206,0 duplicate(SwdTrap2) 2_blank_5_c -1,0,3 job_sword1,127,206,0 duplicate(SwdTrap2) 2_blank_5_d -1,0,3 job_sword1,113,203,0 duplicate(SwdTrap2) 2_blank_5_e -1,14,0 job_sword1,125,210,0 duplicate(SwdTrap2) 2_blank_5_f -1,2,0 job_sword1,113,201,0 duplicate(SwdTrap2) 2_blank_6_a -1,14,0 job_sword1,113,201,0 duplicate(SwdTrap2) 2_blank_6_b -1,2,0 job_sword1,155,212,0 duplicate(SwdTrap2) 2_blank_7_a -1,21,0 job_sword1,181,212,0 duplicate(SwdTrap2) 2_blank_7_b -1,2,0 job_sword1,155,210,0 duplicate(SwdTrap2) 2_blank_8_a -1,21,0 job_sword1,181,210,0 duplicate(SwdTrap2) 2_blank_8_b -1,2,0 job_sword1,130,206,0 duplicate(SwdTrap2) 2_blank_8_c -1,0,3 job_sword1,183,206,0 duplicate(SwdTrap2) 2_blank_8_d -1,0,3 job_sword1,155,203,0 duplicate(SwdTrap2) 2_blank_8_e -1,21,0 job_sword1,181,203,0 duplicate(SwdTrap2) 2_blank_8_f -1,2,0 job_sword1,155,201,0 duplicate(SwdTrap2) 2_blank_9_a -1,40,0 job_sword1,181,201,0 duplicate(SwdTrap2) 2_blank_9_b -1,2,0 job_sword1,17,174,0 script 3_blank_1_a::SwdTrap3 -1,2,0,{ OnTouch: switch(rand(1,5)) { case 1: warp "job_sword1",195,15; end; case 2: warp "job_sword1",195,38; end; case 3: warp "job_sword1",231,30; end; case 4: warp "job_sword1",198,65; end; case 5: warp "job_sword1",196,116; end; } } job_sword1,17,163,0 duplicate(SwdTrap3) 3_blank_2_a -1,2,0 job_sword1,29,171,0 duplicate(SwdTrap3) 3_blank_3_a -1,2,0 job_sword1,31,168,0 duplicate(SwdTrap3) 3_blank_3_b -1,0,2 job_sword1,28,166,0 duplicate(SwdTrap3) 3_blank_3_c -1,2,0 job_sword1,26,168,0 duplicate(SwdTrap3) 3_blank_3_d -1,0,2 job_sword1,36,169,0 duplicate(SwdTrap3) 3_blank_4_a -1,0,0 job_sword1,37,169,0 duplicate(SwdTrap3) 3_blank_4_b -1,0,0 job_sword1,37,168,0 duplicate(SwdTrap3) 3_blank_4_c -1,0,0 job_sword1,36,168,0 duplicate(SwdTrap3) 3_blank_4_c2 -1,0,0 job_sword1,40,175,0 duplicate(SwdTrap3) 3_blank_5_a -1,0,1 job_sword1,41,175,0 duplicate(SwdTrap3) 3_blank_5_b -1,0,1 job_sword1,41,171,0 duplicate(SwdTrap3) 3_blank_6_a -1,1,0 job_sword1,41,170,0 duplicate(SwdTrap3) 3_blank_6_b -1,1,0 job_sword1,41,167,0 duplicate(SwdTrap3) 3_blank_6_c -1,1,0 job_sword1,41,166,0 duplicate(SwdTrap3) 3_blank_6_d -1,1,0 job_sword1,42,169,0 duplicate(SwdTrap3) 3_blank_6_e -1,0,1 job_sword1,43,170,0 duplicate(SwdTrap3) 3_blank_6_f -1,0,1 job_sword1,43,167,0 duplicate(SwdTrap3) 3_blank_6_g -1,0,1 job_sword1,40,162,0 duplicate(SwdTrap3) 3_blank_7_a -1,0,1 job_sword1,41,162,0 duplicate(SwdTrap3) 3_blank_7_b -1,0,1 job_sword1,46,175,0 duplicate(SwdTrap3) 3_blank_8_a -1,0,1 job_sword1,51,175,0 duplicate(SwdTrap3) 3_blank_8_b -1,0,1 job_sword1,47,174,0 duplicate(SwdTrap3) 3_blank_8_c -1,1,0 job_sword1,50,174,0 duplicate(SwdTrap3) 3_blank_8_d -1,1,0 job_sword1,48,173,0 duplicate(SwdTrap3) 3_blank_8_e -1,0,1 job_sword1,49,173,0 duplicate(SwdTrap3) 3_blank_8_f -1,0,1 job_sword1,46,162,0 duplicate(SwdTrap3) 3_blank_9_a -1,0,1 job_sword1,51,162,0 duplicate(SwdTrap3) 3_blank_9_b -1,0,1 job_sword1,47,163,0 duplicate(SwdTrap3) 3_blank_9_c -1,1,0 job_sword1,50,163,0 duplicate(SwdTrap3) 3_blank_9_d -1,1,0 job_sword1,48,164,0 duplicate(SwdTrap3) 3_blank_9_e -1,0,1 job_sword1,49,164,0 duplicate(SwdTrap3) 3_blank_9_f -1,0,1 job_sword1,54,170,0 duplicate(SwdTrap3) 3_blank_10_a -1,0,1 job_sword1,55,170,0 duplicate(SwdTrap3) 3_blank_10_b -1,0,1 job_sword1,54,167,0 duplicate(SwdTrap3) 3_blank_10_c -1,0,1 job_sword1,55,167,0 duplicate(SwdTrap3) 3_blank_10_d -1,0,1 job_sword1,53,169,0 duplicate(SwdTrap3) 3_blank_10_e -1,1,0 job_sword1,53,168,0 duplicate(SwdTrap3) 3_blank_10_f -1,1,0 job_sword1,56,169,0 duplicate(SwdTrap3) 3_blank_10_g -1,1,0 job_sword1,56,168,0 duplicate(SwdTrap3) 3_blank_10_h -1,1,0 job_sword1,58,175,0 duplicate(SwdTrap3) 3_blank_11_a -1,0,1 job_sword1,59,174,0 duplicate(SwdTrap3) 3_blank_11_b -1,1,0 job_sword1,60,173,0 duplicate(SwdTrap3) 3_blank_11_c -1,0,1 job_sword1,61,172,0 duplicate(SwdTrap3) 3_blank_11_d -1,1,0 job_sword1,58,162,0 duplicate(SwdTrap3) 3_blank_12_a -1,0,1 job_sword1,59,163,0 duplicate(SwdTrap3) 3_blank_12_b -1,1,0 job_sword1,60,164,0 duplicate(SwdTrap3) 3_blank_12_c -1,0,1 job_sword1,61,165,0 duplicate(SwdTrap3) 3_blank_12_d -1,1,0 job_sword1,76,172,0 duplicate(SwdTrap3) 3_blank_13_a -1,1,0 job_sword1,77,173,0 duplicate(SwdTrap3) 3_blank_13_b -1,0,1 job_sword1,78,174,0 duplicate(SwdTrap3) 3_blank_13_c -1,1,0 job_sword1,79,175,0 duplicate(SwdTrap3) 3_blank_13_d -1,0,1 job_sword1,76,165,0 duplicate(SwdTrap3) 3_blank_14_a -1,1,0 job_sword1,77,164,0 duplicate(SwdTrap3) 3_blank_14_b -1,0,1 job_sword1,78,163,0 duplicate(SwdTrap3) 3_blank_14_c -1,1,0 job_sword1,79,162,0 duplicate(SwdTrap3) 3_blank_14_d -1,0,1 job_sword1,94,175,0 duplicate(SwdTrap3) 3_blank_15_a -1,0,1 job_sword1,95,174,0 duplicate(SwdTrap3) 3_blank_15_b -1,1,0 job_sword1,98,174,0 duplicate(SwdTrap3) 3_blank_15_c -1,1,0 job_sword1,99,175,0 duplicate(SwdTrap3) 3_blank_16_d -1,0,1 job_sword1,96,169,0 duplicate(SwdTrap3) 3_blank_17_a -1,0,0 job_sword1,97,169,0 duplicate(SwdTrap3) 3_blank_17_b -1,0,0 job_sword1,97,168,0 duplicate(SwdTrap3) 3_blank_17_c -1,0,0 job_sword1,96,168,0 duplicate(SwdTrap3) 3_blank_17_d -1,0,0 job_sword1,94,162,0 duplicate(SwdTrap3) 3_blank_18_a -1,0,1 job_sword1,95,163,0 duplicate(SwdTrap3) 3_blank_18_b -1,1,0 job_sword1,98,163,0 duplicate(SwdTrap3) 3_blank_18_c -1,1,0 job_sword1,99,162,0 duplicate(SwdTrap3) 3_blank_18_d -1,0,1 job_sword1,114,175,0 duplicate(SwdTrap3) 3_blank_19_a -1,0,1 job_sword1,115,175,0 duplicate(SwdTrap3) 3_blank_19_b -1,0,1 job_sword1,114,162,0 duplicate(SwdTrap3) 3_blank_20_a -1,0,1 job_sword1,115,162,0 duplicate(SwdTrap3) 3_blank_20_b -1,0,1 job_sword1,126,175,0 duplicate(SwdTrap3) 3_blank_21_a -1,0,1 job_sword1,127,175,0 duplicate(SwdTrap3) 3_blank_21_b -1,0,1 job_sword1,126,162,0 duplicate(SwdTrap3) 3_blank_23_a -1,0,1 job_sword1,127,162,0 duplicate(SwdTrap3) 3_blank_23_b -1,0,1 job_sword1,160,174,0 duplicate(SwdTrap3) 3_blank_24_a -1,0,2 job_sword1,161,174,0 duplicate(SwdTrap3) 3_blank_24_b -1,0,2 job_sword1,160,163,0 duplicate(SwdTrap3) 3_blank_25_a -1,0,2 job_sword1,161,163,0 duplicate(SwdTrap3) 3_blank_25_b -1,0,2 job_sword1,168,175,0 duplicate(SwdTrap3) 3_blank_26_a -1,0,2 job_sword1,169,175,0 duplicate(SwdTrap3) 3_blank_26_b -1,0,2 job_sword1,168,162,0 duplicate(SwdTrap3) 3_blank_27_a -1,0,2 job_sword1,169,162,0 duplicate(SwdTrap3) 3_blank_27_b -1,0,2 job_sword1,176,174,0 duplicate(SwdTrap3) 3_blank_28_a -1,0,2 job_sword1,177,174,0 duplicate(SwdTrap3) 3_blank_28_b -1,0,2 job_sword1,178,173,0 duplicate(SwdTrap3) 3_blank_28_c -1,1,0 job_sword1,178,172,0 duplicate(SwdTrap3) 3_blank_28_d -1,1,0 job_sword1,181,174,0 duplicate(SwdTrap3) 3_blank_28_e -1,2,0 job_sword1,179,169,0 duplicate(SwdTrap3) 3_blank_29_a -1,3,0 job_sword1,179,168,0 duplicate(SwdTrap3) 3_blank_29_b -1,3,0 job_sword1,182,169,0 duplicate(SwdTrap3) 3_blank_29_c -1,0,2 job_sword1,183,169,0 duplicate(SwdTrap3) 3_blank_29_d -1,0,2 job_sword1,181,167,0 duplicate(SwdTrap3) 3_blank_29_e -1,1,0 job_sword1,181,166,0 duplicate(SwdTrap3) 3_blank_29_f -1,1,0 job_sword1,183,167,0 duplicate(SwdTrap3) 3_blank_29_g -1,0,1 job_sword1,176,163,0 duplicate(SwdTrap3) 3_blank_30_a -1,0,2 job_sword1,177,163,0 duplicate(SwdTrap3) 3_blank_30_b -1,0,2 job_sword1,181,163,0 duplicate(SwdTrap3) 3_blank_30_c -1,2,0 job_sword1,0,0,0,0 monster Чончон 1183,20,0,0,0 job_sword1,35,79,0,0 monster Фабре 1184,3,60000,30000,0 job_sword1,50,108,0,0 monster Фабре 1184,3,60000,30000,0 job_sword1,61,28,0,0 monster Фабре 1184,3,60000,30000,0 job_sword1,61,92,0,0 monster Фабре 1184,3,60000,30000,0 job_sword1,110,112,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,161,94,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,130,76,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,103,58,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,130,24,0,0 monster Фабре 1184,5,60000,30000,0 job_sword1,201,36,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,201,16,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,239,44,0,0 monster Фабре 1184,3,60000,30000,0 job_sword1,239,76,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,231,101,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,234,117,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,198,91,0,0 monster Фабре 1184,2,60000,30000,0 job_sword1,200,63,0,0 monster Фабре 1184,2,60000,30000,0 скриншот Скрытый текст Изменено 5 июля, 2016 пользователем ucell-uz 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 6 июля, 2016 Автор Жалоба Поделиться Опубликовано 6 июля, 2016 (изменено) Магические растворы солюшены hercules путь к скрипту /hercules-master/npc/quests/mage_solution.txt Скрытый текст pay_arche,122,100,0 script Доллшой 4_M_ORIENT01,{ set $@npcnames$,"[^BC7F15Член гильдии магов^000000]"; mes $@npcnames$; mes "Хочешь хаствор? Хм.. не проблема. Принеси мне 50 Зеней и одну пустую Колбу (1 Empty Test Tube). И Пайонский раствор твой."; mes "Ну? о чём задумался? по рукам или как?"; next; if (select("По рукам!:Не, прости друг") == 1) { mes $@npcnames$; if (Zeny < 50) { mes "Эй! А где бабло? Меня не кинешь, тащи за мои услуги 50 Зеней, я много и не прошу."; close; } if (countitem(Empty_Cylinder) == 0) { mes "Интересно, ты собрался уносить раствор без колбы в руках? Я же сказал, принеси мне одну пустую Колбу (1 Empty Test Tube)."; close; } delitem Empty_Cylinder,1; Zeny -= 50; getitem Payon_Potion,1; } close; } moc_ruins,91,150,0 script Понка-хонтас 4_F_04,{ set $@npcnames$,"[^BC7F15Член гильдии магов^000000]"; mes $@npcnames$; mes "Хочешь хаствор? могу в этом помочь. Если ты принесёшь мне 50 Зеней и одну пустую Колбу (1 Empty Test Tube). То я для тебя сделаю Моррокский раствор."; mes "Ну? что скажешь по рукам?"; next; if (select("По рукам!:Забудь об этом") == 1) { mes $@npcnames$; if (Zeny < 50) { mes "Извини, но у тебя недостаток Зеней, принеси мне всего 50 Зеней, для оплаты моих услуг, не всё тут бесплатно делается :-)"; close; } if (countitem(Empty_Cylinder) == 0) { mes "Интересно, и куда я по твоему должна наливать всё это? Я же тебе сказала, принеси мне одну пустую Колбу (1 Empty Test Tube)."; close; } delitem Empty_Cylinder,1; Zeny -= 50; getitem Morocc_Potion,1; } close; } rAthena путь к скрипту /trunk/npc/quests/mage_solution.txt ВНИМАНИЕ скрипты мало чем отличаются, друг от друга, но разница есть, не путайтесь между hA и rA! Скрытый текст под rAthena я не делал, переделывайте сами! скриншот Скрытый текст Получение профессии Мага hercules путь к скрипту /hercules-master/npc/re/jobs/1-1/mage.txt geffen_in,164,124,4 script Член Гильдии Магов 2_F_MAGICMASTER,{ set $@npcnames$,"[^BC7F15Член гильдии магов^000000]"; if (Upper == 1) { if (ADVJOB == Job_High_Wizard || ADVJOB == Job_Professor) { if (Class == Job_Novice_High) { mes $@npcnames$; mes "Ого, давненько мы с тобою не виделись! а я уж подумала что ты умер давно?"; next; mes $@npcnames$; mes ""; if (Sex) mes "Ух, я смотрю ты переродился уже. Что ж, я очень рада за тебя, это хорошо что ты вернулся."; else { mes "Вау!, я смотрю ты переродилась уже. Что же, я очень рада за тебя, это хорошо что ты вернулась к нам."; } next; if (getskilllv("NV_BASIC") < 9) { mes $@npcnames$; mes ""; if (Sex) mes "Хм-м? ты ещё не изучил все ^4A4AFFБазовые Навыки^000000. Тебе нужно сделать это до того, как стать Магом!"; else { mes "Хм-м? ты ещё не изучила ещё все ^4A4AFFБазовые Навыки^000000. Тебе нужно сделать это до того, как станешь Магом!"; } next; mes $@npcnames$; mes "Не торопись. Чем больше ты узнаёшь обо всём, тем больше изучишь магию сново."; close; } mes $@npcnames$; mes "Well, since you have passed the Mage test once, I will not question your qualification. You want to have your magic skills back immediately, don't you?"; next; skill 143,0,0; jobchange Job_Mage_High; skill 157,1,0; mes $@npcnames$; mes "Wow, for some reason, you look way better than you did before. Anyway, I believe you will do a better job being a Mage as well."; close; } else { mes $@npcnames$; mes "Is there anything more I can help you with? If not, why don't you go test your skills? The world is waiting for you~!"; close; } } else { mes $@npcnames$; mes "What, are you interested in the Mage guild? I didn't want to tell you this, but you don't belong here."; next; mes $@npcnames$; mes "I am not sure why you're still standing in front of me, but I can tell that you're not meant to be a Mage."; close; } } mes $@npcnames$; mes ""; if (Sex) mes "Чего тебе дружище?"; else { mes "Чего хотела подруга?"; } next; switch(select("Я хочу стать магом.:Требования, чтобы стать магом.:Ничего особенного.")) { case 1: mes $@npcnames$; if (BaseJob == Job_Mage) { mes ""; if (Sex) mes "Ты разве не понял ещё? Ты уже стал магом, глупыш! )))"; else { mes "Ты что, не поняла ещё? Ты уже стала магом, глупенькая :-D"; } next; mes $@npcnames$; mes "Скоро ты увидишь в себе скрытую силу и сможешь управлять Огнём с помощью силы своего разума!"; close; } if (BaseJob != Job_Novice) { mes "Hey~ C'mon. Quit playing games. You can't be a Mage because you already have another Job."; close; } if (job_magician_q == 0) { mes "Хочешь стать магом? Хм-м..."; if (Sex) mes "Ну-ка, посмотрим на тебя! Симпатичный~! Впрочем, не в моём вкусе..."; else { mes "Ооох, какая ты горячая штучка~!"; mes "Мне нравится твой пыл~"; } next; mes $@npcnames$; mes ""; if (Sex) mes "Перейдём, сразу к делу. Ты сказал, что хочешь быть магом? Давай заполняй тогда вот эту заявку."; else { mes "Впрочем, перейдём сразу к делу. Ты сказала, что хочешь быть магом? Давай заполняй тогда вот эту заявку."; } next; if (select("Заполнить.:Не заполнять.") == 1) { mes $@npcnames$; mes "О-кей. Подпиши вот тут ещё. О, У тебя красивый почерк. Отлично. Значит, тебя зовут... ^3355FF" + strcharinfo(0) + "^000000."; next; mes $@npcnames$; mes "Ну! пришло время проверить тебя."; switch(rand(3)) { case 1: mes "Сделай и принеси мне Магическую Смесь № 1 ^3355FFMixed Solution № 1^000000."; job_magician_q = 1; break; case 2: mes "Сделай и принеси мне Магическую Смесь № 2 ^3355FFMixed Solution № 2^000000."; job_magician_q = 2; break; case 3: mes "Сделай и принеси мне Магическую Смесь № 3 ^3355FFMixed Solution № 3^000000."; job_magician_q = 3; break; default: mes "Сделай и принеси мне Магическую Смесь № 4 ^3355FFMixed Solution № 4^000000."; job_magician_q = 4; } next; getitem Empty_Cylinder,1; mes $@npcnames$; mes "Необходимые ингридиенты написаны в книжках, глянь вот в том шкафу."; next; mes $@npcnames$; mes "Когда соберёшь все ингридиенты, подойди к магической машине в центре комнаты и смешай всё с её помощью. Удачки..!"; close; } mes $@npcnames$; if (Sex) mes "О_о что-о, что-о-о~! Ты сказал мне, что хочешь стать магом, и сразу же передумал!? Может, тебе надо стать более ответственным !?..."; else { mes "О_о что-о~?! Ты сказала мне, что хочешь стать магом, и сразу же передумала!? Может, тебе надо стать более ответственной !?..."; } close; } mes ""; if (Sex) mes "Ну что? Ты готов уже...?"; else { mes "Ну что? Ты готова...?"; } if (getskilllv("NV_BASIC") < 9) { mes ""; if (Sex) mes "Ох, дак ты в добавок и лентяй. Ты ещё и не соответствуешь требованиям."; else { mes "Ах, ты лентяйка. Ты ещё и не соответствуешь требованиям."; } next; mes $@npcnames$; mes "Возвращайся, когда возмёшь ^FF00009й джоб новичком^000000. И не забудь выучить все ^FF0000Базовые навыки^000000 перед тем, как вернёшься."; close; } mes "Так, ты же у нас ^3355FF" + strcharinfo(0) + "^000000 и тебе надо было сделать..."; if (job_magician_q == 1) mes "Магическую Смесь № 1."; else if (job_magician_q == 2) mes "Магическую Смесь № 2."; else if (job_magician_q == 3) mes "Магическую Смесь № 3."; else mes "Магическую Смесь № 4."; next; mes $@npcnames$; mes ""; if (Sex) mes "Хорошо, давай-ка я посмотрю правильно ли ты сделал свою смесь."; else { mes "Хорошо, давай-ка я посмотрю правильно ли ты сделала свою смесь."; } next; mes $@npcnames$; if (countitem(Mage_Test_1) == 0 && countitem(Mage_Test_2) == 0 && countitem(Mage_Test_3) == 0 && countitem(Mage_Test_4) == 0 && countitem(Mage_Test_Etc) == 0) { mes "Эй, а сама смесь-то где, которую я просила сделать...?"; mes "Я же не могу проверить, если ты мне её не покажешь!"; close; } else { if ((job_magician_q == 1 && countitem(Mage_Test_1) == 0) || (job_magician_q == 2 && countitem(Mage_Test_2) == 0) || (job_magician_q == 3 && countitem(Mage_Test_3) == 0) || (job_magician_q == 4 && countitem(Mage_Test_4) == 0)) { mes "Стоп. Но это не та смесь, которую я просила!"; next; mes $@npcnames$; if (job_magician_q == 1) mes "Тебе же чётко и ясно было сказано, сделать Магическую Смесь № 1. А вот это вот что? Вообщем я ничего не знаю, неси мне то что я просила."; else if (job_magician_q == 2) mes "Тебе же чётко и ясно было сказано, сделать Магическую Смесь № 2. А вот это вот что? Вообщем я ничего не знаю, неси мне то что я просила."; else if (job_magician_q == 3) mes "Тебе же чётко и ясно было сказано, сделать Магическую Смесь № 3. А вот это вот что? Вообщем я ничего не знаю, неси мне то что я просила."; else mes "Тебе же чётко и ясно было сказано, сделать Магическую Смесь № 4. А вот это вот что? Вообщем я ничего не знаю, неси мне то что я просила."; if (countitem(Mage_Test_1) != 0) delitem Mage_Test_1,1; else if (countitem(Mage_Test_2) != 0) delitem Mage_Test_2,1; else if (countitem(Mage_Test_3) != 0) delitem Mage_Test_3,1; else if (countitem(Mage_Test_4) != 0) delitem Mage_Test_4,1; else delitem Mage_Test_Etc,1; close; } } if (countitem(Mage_Test_1) != 0) delitem Mage_Test_1,1; else if (countitem(Mage_Test_2) != 0) delitem Mage_Test_2,1; else if (countitem(Mage_Test_3) != 0) delitem Mage_Test_3,1; else if (countitem(Mage_Test_4) != 0) delitem Mage_Test_4,1; else delitem Mage_Test_Etc,1; mes "Хм-м. Я вижу твои старания. Для новичка - очень неплохой результат."; mes "Отличная работа!"; next; mes $@npcnames$; mes ""; if (Sex) mes "Так вот! Я с радостью сообщаю, что ты прошёл Тест на Мага!"; else { mes "Так вот! Я с радостью сообщаю, что ты прошла Тест на Мага!"; } next; mes $@npcnames$; mes "* Гхм *"; mes "Мои поздравления!"; mes "Теперь ты Маг !"; next; callfunc "Job_Change",Job_Mage; callfunc "F_ClearJobVar"; Zeny += 50; if (questprogress(1005)) { completequest 1005; } else if (questprogress(1006)) { completequest 1006; } else if (questprogress(1007)) { completequest 1007; } else if (questprogress(1008)) { completequest 1008; } mes $@npcnames$; mes "Добро пожаловать в Мой Мир~"; mes "Хе хе, как мне нравится это говорить. Ты в курсе, что эта цитата из популярного фильма~"; next; mes $@npcnames$; mes "Теперь, когда ты Маг, как и я, мы с тобой обязательно подружимся~"; close; case 2: mes $@npcnames$; mes "Хочешь стать магом, м-м?"; if (Sex) mes "Для такого симпатяги, как ты, с удовольствием расскажу условия!"; else mes "Для такой няшки как ты, я всегда рада рассказать о требованиях!"; next; mes $@npcnames$; mes "Во-первых, тебе нужно достичь 10го Джоба (профессионального уровня) на Новичке и потратить все очки навыка. Потом тебе надо будет пройти Тест на Мага."; next; if (job_magician_q != 0) { mes $@npcnames$; mes "Твой тест заключается в том, чтобы"; switch(job_magician_q) { case 1: mes "изготовить Магическую Смесь"; mes "^3355FFMixed Solution № 1^000000"; mes "и принести её мне. Всё понятно?"; setquest 1005; break; case 2: mes "изготовить Магическую Смесь"; mes "^3355FFMixed Solution № 2^000000"; mes "и принести её мне. Всё понятно?"; setquest 1006; break; case 3: mes "изготовить Магическую Смесь"; mes "^3355FFMixed Solution № 3^000000"; mes "и принести её мне. Всё понятно?"; setquest 1007; break; default: mes "изготовить Магическую Смесь"; mes "^3355FFMixed Solution № 4^000000"; mes "и принести её мне. Всё понятно?"; setquest 1008; } next; mes $@npcnames$; mes "Ты можешь посмотреть, какие ингридиенты необходимы, вон в том шкафу."; } else { mes $@npcnames$; mes "Тебе нужно будет сделать какую-нибудь специальную Магическую Смесь после того, как оформишь заявку."; } next; mes $@npcnames$; mes ""; if (Sex) mes "Скажи мне, когда будешь готов стать магом, хорошо?"; else { mes "Скажи мне, когда будешь готова стать магом, хорошо!"; } close; case 3: mes $@npcnames$; mes "Ничего...? и это всё...?"; close; } } geffen_in,164,112,4 script Магический Миксер HIDDEN_NPC,{ set $@npcnames$,"[^BC7F15Магический миксер^000000]"; mes $@npcnames$; mes "^3355FFЭта машина является собственностью Геффенской Академии Магов, и используется только для смешивания в магических целях^000000."; next; if (select("Использовать машину.:Не использовать.") == 1) { mes $@npcnames$; mes "^3355FFВыберайте раствор для Магической Смеси (Mixed Solution)^000000."; next; switch(select("Пайонский раствор.:Моррокский раствор.:Нет раствора.")) { case 1: if (countitem(Payon_Potion) == 0) { mes $@npcnames$; mes "^3355FFОшибка. Раствор не найден^000000."; mes "^3355FFПожалуйста проверьте ещё раз^000000."; mes "^3355FFПроцесс остановлен^000000."; close; } .@mixitem2 = 1; break; case 2: if (countitem(Morocc_Potion) == 0) { mes $@npcnames$; mes "^3355FFОшибка. Раствор не найден^000000."; mes "^3355FFПожалуйста проверьте ещё раз^000000."; mes "^3355FFПроцесс остановлен^000000."; close; } .@mixitem2 = 2; break; case 3: .@mixitem2 = 0; break; } while (1) { if (.@progress == 2) { mes $@npcnames$; if (.@mixitem1_1 != 0) mes "Jellopy: " + .@mixitem1_1 + " шт."; if (.@mixitem1_2 != 0) mes "Fluff: " + .@mixitem1_2 + " шт."; if (.@mixitem1_3 != 0) mes "Milk: " + .@mixitem1_3 + " шт."; if (.@mixitem2 == 0) mes "^3355FFРаствор: Отсутствует^000000."; if (.@mixitem2 == 1) mes "^3355FFРаствор: Пайонский^000000."; if (.@mixitem2 == 2) mes "^3355FFРаствор: Моррокский^000000."; next; mes $@npcnames$; mes "^3355FFПожалуйста, подтвердите введёные вами параметры^000000."; next; switch(select("Всё верно, смешать.:Ввести другие параметры.:Отменить.")) { case 1: mes $@npcnames$; mes "^3355FFПожалуйста, вставьте вещи в Магический миксер и убедитесь, что все данные верны^000000."; next; mes $@npcnames$; mes "^3355FFВнимание! Вы не сможете восстановить вещи после их смешивания^000000."; next; mes $@npcnames$; mes "^3355FFЕсли всё верно, нажмите кнопку 'Смешать'. В противном случае, нажмите 'Отмена'^000000."; next; if (select("Нажать кнопку 'Смешать:Нажать кнопку 'Отмена'") == 1) { mes $@npcnames$; mes "^3355FFБыли вставлены вещи в Магический миксер. Пожалуйста ждите^000000."; next; mes $@npcnames$; if (countitem(Jellopy) < .@mixitem1_1) { mes "^3355FFНедостаточно Jellopy^000000."; mes "^3355FFПожалуйста проверьте ещё раз^000000."; mes "^3355FFПроцесс остановлен^000000."; close; } else if (countitem(Fluff) < .@mixitem1_2) { mes "^3355FFНедостаточно Fluff^000000."; mes "^3355FFПожалуйста проверьте ещё раз^000000."; mes "^3355FFПроцесс остановлен^000000."; close; } else if (countitem(Milk) < .@mixitem1_3) { mes "^3355FFНедостаточно Milk^000000."; mes "^3355FFПожалуйста проверьте ещё раз^000000."; mes "^3355FFПроцесс остановлен^000000."; close; } else if (.@mixitem2 == 1 || .@mixitem2 == 2) { if (countitem(Payon_Potion) == 0 && countitem(Morocc_Potion) == 0) { mes "^3355FFОшибка. Раствор не найден^000000."; mes "^3355FFПожалуйста проверьте ещё раз^000000."; mes "^3355FFПроцесс остановлен^000000."; close; } } if (.@mixitem1_1 != 0) delitem Jellopy,.@mixitem1_1; if (.@mixitem1_2 != 0) delitem Fluff,.@mixitem1_2; if (.@mixitem1_3 != 0) delitem Milk,.@mixitem1_3; if (.@mixitem2 == 1) delitem Payon_Potion,1; if (.@mixitem2 == 2) delitem Morocc_Potion,1; mes "^3355FFВещи готовы^000000."; mes "^3355FFЗакройте крышку^000000."; .@progress = 3; next; } break; case 2: .@continue = 0; next; break; case 3: .@mixitem1_1 = 0; .@mixitem1_2 = 0; .@mixitem1_3 = 0; .@progress = 0; .@continue = 0; mes $@npcnames$; mes "^3355FFПерезагрузка завершена успешно^000000."; mes "^3355FFНачать инициализацию сново?^000000"; next; if (select("Да.:Нет.") == 1) break; mes $@npcnames$; mes "^3355FFПроцесс отменён. Спасибо^000000."; close; } if (.@progress == 3) break; } else if (.@progress == 1) { mes $@npcnames$; mes "^3355FFНичего не найдено^000000."; next; } mes $@npcnames$; mes "^3355FFВыберите вещи для смешивания^000000."; while(1) { switch(select("Джеллопи(Jellopy):Пушинка(Fluff):Молоко(Milk):Начать смешивание")) { case 1: while(1) { input .@input; if (.@input > 10000) { next; mes $@npcnames$; mes "^3355FFОшибка: предел товара превышен. Пожалуйста, введите значения менее 10,000 и повторите попытку^000000."; next; } else { if (countitem(Jellopy) > 0) .@mixitem1_1 += .@input; .@progress = 2; break; } } break; case 2: while(1) { input .@input; if (.@input > 10000) { next; mes $@npcnames$; mes "^3355FFОшибка: предел товара превышен. Пожалуйста, введите значения менее 10,000 и повторите попытку^000000."; next; } else { if (countitem(Fluff) > 0) .@mixitem1_2 += .@input; .@progress = 2; break; } } break; case 3: while(1) { input .@input; if (.@input > 10000) { next; mes $@npcnames$; mes "^3355FFОшибка: предел товара превышен. Пожалуйста, введите значения менее 10,000 и повторите попытку^000000."; next; } else { if (countitem(Milk) > 0) .@mixitem1_3 += .@input; .@progress = 2; break; } } break; case 4: if (.@progress != 2) .@progress = 1; .@continue = 1; next; } if (.@continue) break; } } mes $@npcnames$; mes "^3355FFПожалуйста, введите серийный номер Магической Пыльцы^000000."; next; while(1) { input .@input; if (.@input < 1000 || .@input > 9999) { mes $@npcnames$; if (.@input == 0) { mes "^3355FFХотите пропустить это меню?^000000"; next; if (select("Пропустить:Нет") == 1) { break; } } else { mes "^3355FFНеверный серийный номер^000000."; mes "^3355FFПожалуйста, попробуйте снова^000000."; next; } } else { mes $@npcnames$; mes "^3355FFВведён серийный номер^000000 ^FF0000#" + .@input + "^000000 Это правильный серийный номер?"; next; if (select("Подтвердить:Отменить") == 1) { if (.@input == 8472) .@magic_powder = 1; else if (.@input == 3735) .@magic_powder = 2; else if (.@input == 2750) .@magic_powder = 3; else if (.@input == 5429) .@magic_powder = 4; else .@magic_powder = 5; } break; } } mes $@npcnames$; mes "^3355FFВыберите камень-катализатор^000000."; next; switch(select("Yellow Gemstone:Red Gemstone:Blue Gemstone:Алмаз 1 карат(1carat Diamond):Пропустить")) { case 1: .@mixitem3 = 1; break; case 2: .@mixitem3 = 2; break; case 3: .@mixitem3 = 3; break; case 4: .@mixitem3 = 4; break; case 5: break; } mes $@npcnames$; mes "^3355FFВсё готово. Инициируется процесс смешивания^000000."; mes "^3355FFПожалуйста, подождите^000000..."; next; mes $@npcnames$; mes "^3355FF - Пословица дня! - ^000000."; switch(rand(1,5)) { case 1: mes "^3355FFХороший сосед лучше, чем далёкий брат: когда тебе понадобится помощь, можешь положиться на тех, кто рядом с тобой^000000."; break; case 2: mes "^3355FFЧто посеешь, то и пожнёшь: к тебе всегда будут относиться так, как ты относишься к другим^000000."; mes "^3355FFЭто означает что если ты причинил боль другому, то обязательно эта боль к тебе и вернётся^000000."; break; case 3: mes "^3355FFОко за око: когда берёшь что-то у человека, ты должен вернуть или же возместить взятое^000000."; break; case 4: mes "^3355FFСвой свояка видит издалека: ты можешь посмотреть на друзей человека, чтобы сделать выводы о нём самом^000000."; break; default: mes "^3355FFДоверие - наше всё: искренняя вера - качество, которое ничто не заменит^000000."; } next; if (.@mixitem1_1 == 2 && .@mixitem1_2 == 3 && .@mixitem1_3 == 1 && .@mixitem2 == 1 && .@mixitem3 == 1 && .@magic_powder == 1) { mes $@npcnames$; mes "Магическая Смесь №. 1 готова"; getitem Mage_Test_1,1; next; } else if (.@mixitem1_1 == 3 && .@mixitem1_2 == 1 && .@mixitem1_3 == 1 && .@mixitem2 == 0 && .@mixitem3 == 2 && .@magic_powder == 2) { mes $@npcnames$; mes "Магическая Смесь №. 2 готова"; getitem Mage_Test_2,1; next; } else if (.@mixitem1_1 == 6 && .@mixitem1_2 == 1 && .@mixitem1_3 == 0 && .@mixitem2 == 1 && .@mixitem3 == 3 && .@magic_powder == 3) { mes $@npcnames$; mes "Магическая Смесь №. 3 готова"; getitem Mage_Test_3,1; next; } else if (.@mixitem1_1 == 2 && .@mixitem1_2 == 3 && .@mixitem1_3 == 0 && .@mixitem2 == 2 && .@mixitem3 == 4 && .@magic_powder == 4) { mes $@npcnames$; mes "Магическая Смесь №. 4 готова"; getitem Mage_Test_4,1; next; } else { mes $@npcnames$; mes "^3355FFПроизошла непредвиденная ошибка^000000."; getitem Mage_Test_Etc,1; next; } mes $@npcnames$; mes "^3355FFСмешивание завершено успешно. Спасибо^000000."; close; } close; } // The Morroc Solution and Payon Solution traders // are also used in the Sage skill quests, and have // been moved to npc/quests/mage_solution.txt. // // pay_arche,122,100,0 script Dollshoi 4_M_ORIENT01,{} // moc_ruins,91,150,0 script Ponka-Hontas 4_F_04,{} geffen_in,177,112,4 script Книжная полка HIDDEN_NPC,{ set $@npcnames$,"[^BC7F15Инструкция смесей^000000]"; mes $@npcnames$; mes "Наши книги сохранились все в превосходном состоянии, их могут почитать все путешественники."; next; switch(select("Магическая Смесь № 1:Магическая Смесь № 2:Магическая Смесь № 3:Магическая Смесь № 4:Закрыть")) { case 1: set $@npcnames$,"[^BC7F15Магическая Смесь № 1^000000]"; mes $@npcnames$; mes "* Список ингридиентов *"; mes "2 Jellopy - Джеллопи"; mes "3 Fluff - Пушинка"; mes "1 Milk - Молоко"; next; mes $@npcnames$; mes "* Раствор *"; mes "Пайонский раствор."; mes "Где найти: источник Пайон,"; mes "в Деревне Лучников."; next; mes $@npcnames$; mes "* Серийный номер *"; mes "^FF00008472^000000"; next; mes $@npcnames$; mes "* Катализатор *"; mes "Yellow Gemstone"; mes "(производится Магическим Миксером)."; break; case 2: set $@npcnames$,"[^BC7F15Магическая Смесь № 2^000000]"; mes $@npcnames$; mes "* Список ингридиентов *"; mes "3 Jellopy - Джеллопи"; mes "1 Fluff - Пушинка"; mes "1 Milk - Молоко"; next; mes $@npcnames$; mes "* Раствор *"; mes "Не требуется"; next; mes $@npcnames$; mes "* Серийный номер *"; mes "^FF00003735^000000"; next; mes $@npcnames$; mes "* Катализатор *"; mes "Red Gemstone"; mes "(производится Магическим Миксером)."; break; case 3: set $@npcnames$,"[^BC7F15Магическая Смесь № 3^000000]"; mes $@npcnames$; mes "* Список ингридиентов *"; mes "6 Jellopy - Джеллопи"; mes "1 Fluff - Пушинка"; next; mes $@npcnames$; mes "* Раствор *"; mes "Пайонский раствор."; mes "Где найти: источник Пайон,"; mes "в Деревне Лучников."; next; mes $@npcnames$; mes "* Серийный номер *"; mes "^FF00002750^000000"; next; mes $@npcnames$; mes "* Катализатор *"; mes "Blue Gemstone"; mes "(производится Магическим Миксером)."; break; case 4: set $@npcnames$,"[^BC7F15Магическая Смесь № 4^000000]"; mes $@npcnames$; mes "* Список ингридиентов *"; mes "2 Jellopy - Джеллопи"; mes "3 Fluff - Пушинка"; next; mes $@npcnames$; mes "* Раствор *"; mes "Моррокский раствор"; mes "Где найти: источник Моррок,"; mes "возле входа в пираммиды Моррока."; next; mes $@npcnames$; mes "* Серийный номер *"; mes "^FF00005429^000000"; next; mes $@npcnames$; mes "* Катализатор *"; mes "1 carat Diamond"; mes "(производится Магическим Миксером)."; close; } close; } скриншоты Изменено 6 июля, 2016 пользователем ucell-uz 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 6 июля, 2016 Автор Жалоба Поделиться Опубликовано 6 июля, 2016 (изменено) Разговор волшебника hercules путь к скрипту /hercules-master/npc/cities/geffen.txt geffen,59,143,0 script Меера 4_F_02,{ set $@npcnames$,"[^BC7F15Жительница Меера^000000]"; mes $@npcnames$; mes "Добро пожаловать в город Геффен, в город Магии!"; next; mes $@npcnames$; mes "Я не слишком хорошо разбираюсь в магии, но знаешь, что имеет поистине магический вкус? ^CC6600Honey - Мёд^000000!"; next; mes $@npcnames$; mes "Он такооой вкусный и сладкий! Но я не уверена, что он является афродизиаком, но точно знаю, что мёд снимает усталость и помогает оправиться от ран!"; next; mes $@npcnames$; mes "Живущие в лугах шершни проводят всю жизнь, собирая нектар по приказу Пчелиной Королевы. Мёд делается из собранного нектара."; next; mes $@npcnames$; mes "Но это ещё не всё: есть особый вид мёда, который идёт исключительно в пищу Пчелиной Королеве это - ^CC6600Royal Jelly - Королевское желе^000000!"; next; mes $@npcnames$; mes "Ничто не может сравниться с чудесным ароматом Королевского желе. И я думаю, что и для тебя он будет полезней обычного Мёда!"; close; } geffen,156,190,0 script Орволк 4_KID01,{ set $@npcnames$,"[^BC7F15Житель Геффена Орволк^000000]"; mes $@npcnames$; mes "...Интересно. Очень интригующе. ЫЫ-ы! Позволь я расскажу тебе эту удивительную историю~"; next; mes $@npcnames$; mes "В процессе изучения магии, я обнаружил этот таинственный свиток. В нём описывается три компонента под название Yggdrasil - Иггдрасиль."; next; mes $@npcnames$; mes "Листья, семена и плоды Иггдрасиля связывают всё живое в нашем мире. Согласно этому свитку, Иггдрасиль так же поучаствовал в создании мира."; next; mes $@npcnames$; mes "К слову, до меня доходили слухи об удивительном дерере где-то рядом с Комодо. Между ними должна быть связь, я в этом уверен!"; close; } geffen_in,164,109,0 script Волшебник Станза 1_M_WIZARD,{ set $@npcnames$,"[^BC7F15Станза^000000]"; mes $@npcnames$; mes "Я чувствую присутствие могущественного духа. Возможно, это ты...?"; next; mes $@npcnames$; mes ""; if (BaseJob == Job_Mage) { mes ""; if (Sex) mes "Кажется, ты обучен мистическому искусству. Магия... И её сила, обусловлена законом причины и следствия."; else mes "Кажется, ты обучена мистическому искусству. Магия... И её сила, обусловлена законом причины и следствия."; } else if (BaseJob == Job_Acolyte) { mes ""; if (Sex) mes "Ох, брат...Я вижу что ты, так или иначе обладаешь Святой Силой. Предположу, что Святая Сила считается одной из форм мистической энергии..."; else mes "Ах, систра...Я вижу что ты, так или иначе обладаешь Святой Силой. Могу предположить, что Святая Сила считается одной из форм мистической энергии."; } else if (Class == Job_Novice) mes "Хотя сейчас ты, и не можешь использовать магию или другие могущественные навыки но, эти знания могут пригодиться в будущем, юный Новичок......"; else mes "Хоть официально ты и не можешь использовать магию, но ты пользуешься навыками, черпающими потустороннюю энергию, знаешь ты это или нет..."; next; mes $@npcnames$; mes "Если ты используешь мистическую энергию, чтобы наносить вред другим, или идти против правил Матери Природы, эта сила обратится против тебя. Запомни, что посеешь то и пожнёшь."; next; mes $@npcnames$; mes "Правда, есть вещь, которая может защитить колдующего от дурних последствий, позволяя безнаказанно пользоваться конкретными видами магии. Это таинственные сияющие камни, известные как"; next; mes $@npcnames$; mes ""; if (Sex) mes "Драгоценные камни (Gemstone)... Если хочешь в полной мере пользоваться своей силой то, запомни про эту вещь дружок!"; else mes "Драгоценные камни (Gemstone)... Если хочешь в полной мере пользоваться своей силой то, запомни про эту вещь подруга!"; close; } скриншоты Скрытый текст Изменено 7 июля, 2016 пользователем ucell-uz 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 11 октября, 2016 Автор Жалоба Поделиться Опубликовано 11 октября, 2016 (изменено) Украсим нашу консоль Запуска hercules путь к скрипту /hercules-master/src/common/console.c как это выглядит, решил просто замутить от нефиг делать =) Скрытый текст Исходный код Скрытый текст /*====================================== * CORE : Display title *--------------------------------------*/ void display_title(void) { const char *vcstype = sysinfo->vcstype(); ShowMessage("\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_GREEN" Hercules Development Team presents "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" _ _ _ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | | | | | | "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | |_| | ___ _ __ ___ _ _| | ___ ___ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | _ |/ _ \\ '__/ __| | | | |/ _ \\/ __| "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" | | | | __/ | | (__| |_| | | __/\\__ \\ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" \\_| |_/\\___|_| \\___|\\__,_|_|\\___||___/ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_CYAN" http://herc.ws/board/ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_CYAN" / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_CYAN" ( R | U | S | S | I | A | N ) ( A | t | h | e | n | a ) "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_CYAN" \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ "CL_CLL""CL_BOLD"\n"); ShowMessage(""CL_BG_RED""CL_BT_BLUE" http://ea-support.ws/ "CL_CLL""CL_NORMAL"\n"); ShowMessage(""CL_BG_RED""CL_BT_WHITE" =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= "CL_CLL""CL_NORMAL"\n"); ShowInfo("%s revision : '"CL_WHITE"%s"CL_RESET"'\n", vcstype, sysinfo->vcsrevision_scripts()); ShowInfo("OS version: '"CL_CYAN"%s"CL_RESET"'\n", sysinfo->osversion()); ShowInfo("CPU: '"CL_YELLOW"%s [%d]"CL_RESET""CL_BOLD"'\n", sysinfo->cpu(), sysinfo->cpucores()); ShowInfo("Compiled with %s\n", sysinfo->compiler()); Изменено 11 октября, 2016 пользователем ucell-uz 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 11 октября, 2016 Жалоба Поделиться Опубликовано 11 октября, 2016 это круто конечно, но никто кроме Админа это не увидит=\ 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 8 марта, 2017 Автор Жалоба Поделиться Опубликовано 8 марта, 2017 (изменено) Прохождение Квеста Юно (Киель Кайр) hercules путь к скрипту /hercules-master/npc/quests/kiel_hyre_quest.txt Руссификация выполнена на 95%, работаю над остатком 5% скриншоты Скрытый текст Ссылка для загрузки скрипта в шапке, под спойлером, ставим лайки кому не в падлу не стал сюда втыкать весь скрипт, ибо он очень огромен... Скрытый текст kiel_hyre_quest.txt Дирижабль hercules путь к скрипту /hercules-master/npc/airports/airships.txt Руссификация выполнена на 98.8% скриншоты Скрытый текст Ссылка для загрузки скрипта в шапке, под спойлером, ставим лайки кому не в падлу не стал сюда втыкать весь скрипт... Скрытый текст airships.txt [src] @dance, @petinfo, @emotion hercules путь к скрипту /hercules-master/src/map/atcommand.c команды в шапке под спойлером Скрытый текст ACMD(petinfo) { struct pet_data *pd; if (!sd->status.pet_id || !sd->pd ) { clif->message(fd, msg_txt(184)); return false; } pd = sd->pd; snprintf(atcmd_output, sizeof(atcmd_output), "Pet name: %s | Intimate: %u | Hungry: %d", pd->pet.name, pd->pet.intimate, pd->pet.hungry); clif_disp_onlyself(sd, atcmd_output, (int)strlen(atcmd_output)); } // * спасибо пользователю shaitobu * \\ // ========================================================================================= \\ ACMD(dance){ if (!message || !*message) { snprintf(atcmd_output, sizeof(atcmd_output), "usage: @dance 1-9"); return -1; } if ( atoi(message) == 1 ) { clif->specialeffect(&sd->bl, 413, ALL_CLIENT); } else if ( atoi(message) == 2 ) { clif->specialeffect(&sd->bl, 414, ALL_CLIENT); } else if ( atoi(message) == 3 ) { clif->specialeffect(&sd->bl, 415, ALL_CLIENT); } else if ( atoi(message) == 4 ) { clif->specialeffect(&sd->bl, 426, ALL_CLIENT); } else if ( atoi(message) == 5 ) { clif->specialeffect(&sd->bl, 458, ALL_CLIENT); } else if ( atoi(message) == 6 ) { clif->specialeffect(&sd->bl, 466, ALL_CLIENT); } else if ( atoi(message) == 7 ) { clif->specialeffect(&sd->bl, 501, ALL_CLIENT); } else if ( atoi(message) == 8 ) { clif->specialeffect(&sd->bl, 540, ALL_CLIENT); } else if ( atoi(message) == 9 ) { clif->specialeffect(&sd->bl, 550, ALL_CLIENT); } else { clif_disp_onlyself(sd, atcmd_output, (int)strlen(atcmd_output)); } return true; } /* Server Startup */ // ========================================================================================= \\ ACMD(emo){ int emotion_max = 81; // Set las emotion number available forr this command nullpo_retr(-1, sd); if(!message || !*message || atoi(message) < 0 || atoi(message) > emotion_max) { snprintf(atcmd_output, sizeof(atcmd_output), "usage: @emotion 0-%d", emotion_max); clif_disp_onlyself(sd, atcmd_output, (int)strlen(atcmd_output)); return -1; } clif->emotion(&sd->bl,atoi(message)); return 1; } /* Server Startup */ // ========================================================================================= \\ ACMD(heart) { nullpo_retr(-1, sd); if(!message || !*message || atoi(message) < 0 || atoi(message) > 2) { snprintf(atcmd_output, sizeof(atcmd_output), "usage: @heart 1 or 2"); clif_disp_onlyself(sd, atcmd_output, (int)strlen(atcmd_output)); return -1; } if(atoi(message)==1) { clif->specialeffect(&sd->bl,364,0); } else if(atoi(message)==2) { clif->specialeffect(&sd->bl,509,0); } return 1; } /* Server Startup */ далее спускаемся чуток ниже, находим строчку void atcommand_basecommands(void) { и вписываем команды ACMD_DEF(petinfo), ACMD_DEF(dance), ACMD_DEF(emo), ACMD_DEF(heart), Изменено 24 марта, 2017 пользователем ucell-uz 1 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 6 августа, 2017 Автор Жалоба Поделиться Опубликовано 6 августа, 2017 (изменено) Секретарь Группы Эдем + Телепортер hercules путь к скрипту /hercules-master/npc/re/quest/eden/eden_common.txt Скрытый текст // ================================================================================================= \\ // ========================== Eden Group Quests - Service NPCs ===================================== \\ // ================================================================================================= \\ // == Перевод выполнил: Александр Белов, специально для форума Русскоязычная поддержка эмуляторов == \\ // == Athena http://ea-support.ws/index.php?/user/2527-ucell-uz/ ================================== \\ moc_para01,27,35,5 script Секретарь Эдема 4_F_EDEN_OFFICER,{ if(#language == 1) { set $@npcnames$,"^BC7F15[ Секретарь Лим Эвенор ]^000000"; if (checkweight(Knife,1) == 0 || (MaxWeight - Weight) < 2000) { mes $@npcnames$; mes "- Погоди минуточку !! -"; mes "- У тебя сейчас с собой -"; mes "- слишком много предметов. -"; mes "- Пожалуйста, попробуй снова -"; mes "- но после того, как избавишься от лишнего веса. -"; close; } if (countitem(Para_Team_Mark) > 0) { mes $@npcnames$; mes "Привет, коллега! Как настроение сегодня?"; next; mes $@npcnames$; mes "Пожалуйста, проверь на доске справа от тебя, какие квесты доступны тебе на твоём ^FF0000Базовом Уровне,^000000 или же поговори с ^3355FFИнструкторами,^000000 они подскажут, есть ли для тебя какие квесты."; close; } mes $@npcnames$; mes "Приветствую тебя! Ты находишься в ^31CE31Центральном офисе Группы Эдем^000000."; next; mes $@npcnames$; mes "Мы можем предложить прохождение квестов с ^3355FFнаградой в виде опыта, экипировки и некоторых видов зелий.^000000 Однако каждый из квестов доступен только на определённом ^FF0000Базовом Уровне^000000."; next; mes $@npcnames$; mes "^3355FFИнструкторы^000000 могут предложить тебе свои наборы квестов, а наградой будет ^3355FFразнообразная экипировка, в том числе и оружие для твоей профессии!^000000"; next; mes $@npcnames$; mes "Хочешь ли ты присоединиться к нам и стать участником ^31CE31Группы Эдем?^000000"; next; switch(select("Да, запишите меня!:Нет, спасибо")) { case 1: mes $@npcnames$; mes "Отлично! Всё, что от тебя требуется, - это вписать своё имя~"; next; input .@input$; if (.@input$ == strcharinfo(0)) { mes $@npcnames$; emotion e_no1; mes "Ну вот и всё! Прими мои поздравления, ^3131FF"+strcharinfo(0)+",^000000 теперь"; if(Sex == 1) mes "ты стал участником ^31CE31Группы Эдем!^000000"; else { mes "ты стала участницей ^31CE31Группы Эдем!^000000"; } next; mes $@npcnames$; getitem Para_Team_Mark,1; mes "Пусть этот <ITEMLINK>Eden Group<INFO>6219</INFO></ITEMLINK> будет всегда "; mes "при тебе, и тогда все вокруг будут знать, что ты с нами."; next; mes $@npcnames$; mes "Ну а теперь можешь начать какие-нибудь квесты, для этого проверь доску или поговори с ^3131FFИнструкторами^000000."; next; mes $@npcnames$; mes "Удачи! И помни, ты теперь часть Группы Эдем, наслаждайся этим!"; close; } else { mes $@npcnames$; mes "Как же так, ты неправильно вводишь своё имя. Попробуй ещё раз."; emotion e_pif; close; } case 2: mes $@npcnames$; mes "Согласна, Квесты ^31CE31Группы Эдем^000000 не для всех."; close; } } if(#language == 2) { set $@npcnames$,"^BC7F15[ Secretary Lime Evenor ]^000000"; mes $@npcnames$; if (checkweight(Knife,1) == 0 || (MaxWeight - Weight) < 2000) { mes "- Wait a minute !! -"; mes "- Currently you're carrying -"; mes "- too many items with you. -"; mes "- Please try again -"; mes "- after you loose some weight. -"; close; } if (countitem(Para_Team_Mark) > 0) { mes "Hello member! How are you today?"; next; mes $@npcnames$; mes "Please check the boards to your right to see which quest are available at your current ^FF0000Base Level,^000000 or talk to the ^3355FFInstructors,^000000 to see if they any quests for you."; close; } mes $@npcnames$; mes "Welcome! Dear adventurer, this is the ^31CE31Paradise Group Headquarters.^000000."; next; mes $@npcnames$; mes "We offer a number of quest that ^3355FFgive experience points, equipment, and sometimes points.^000000 But the quests available are limited by your ^FF0000Base Level^000000."; next; mes $@npcnames$; mes "The ^3355FFInstructors^000000 will also offer their own set of quests and reward you with ^3355FFmany gears, including weapons for your class!^000000"; next; mes $@npcnames$; mes "Would you like join us and become a member of the ^31CE31Paradise Group?^000000"; next; switch(select("Yes, sign my up!:No, thanks")) { case 1: mes $@npcnames$; mes "Great! All. I need is for you to - wtite your name here~"; next; input .@input$; if (.@input$ == strcharinfo(0)) { mes $@npcnames$; mes "Well that's all! Congratulations, ^3131FF"+strcharinfo(0)+",^000000 you are now a member of the ^31CE31Paradise Group!^000000"; next; mes $@npcnames$; getitem Para_Team_Mark,1; mes "Keep this <ITEMLINK>Eden Group<INFO>6219</INFO></ITEMLINK> with you"; mes "at all times to let others know you are with us."; next; mes $@npcnames$; mes "Now you can check the boards or talking to the ^3131FFInstructors^000000 to start some quests."; next; mes $@npcnames$; mes "Good luck! and enjoy, your time with us in the Paradise Group!"; close; } else { mes $@npcnames$; mes "How can you spell your name wrong? Write it again."; close; } case 2: mes $@npcnames$; mes "I understand, Quests the ^31CE31Paradise Group^000000 are not meant for everyone."; close; } } } prontera,124,76,3 script Сотрудник Группы Эдем#0::eto 4_F_NOVICE,{ if(#language == 1) { set $@npcnames$,"^BC7F15[ Сотрудник Группы Эдем ]^000000"; mes $@npcnames$; mes "Привет, не желаешь посетить ^31CE31Центральный офис Группы Эдем?^000000"; next; mes $@npcnames$; mes "Мы можем предложить тебе ряд квестов с ^3131FFнаградой в виде опыта, экипировки, оружия.^000000"; next; switch (select("Я хочу отправиться туда:Нет, спасибо не нужно")) { case 1: mes $@npcnames$; mes "Чудесно! Я отправляю тебя туда прямо сейчас."; nak_warp = strnpcinfo(2); close2; warp "moc_para01",31,14; OnInit: questinfo 1001, QTYPE_QUEST2, 2; end; case 2: mes $@npcnames$; mes "Согласна, Квесты ^31CE31Группы Эдем^000000 не для всех."; close; } } if(#language == 2) { set $@npcnames$,"^BC7F15[ Eden Teleport Officer ]^000000"; mes $@npcnames$; mes "Hello, would you like to visit the ^31CE31Paradise Group Headquarters?^000000"; next; mes $@npcnames$; mes "We offer a number of quest that ^3355FFgive experience points, equipment, and weapons.^000000"; next; switch (select("Take me there:No, thanks")) { case 1: mes $@npcnames$; mes "Great! I will send you there now."; nak_warp = strnpcinfo(2); close2; warp "moc_para01",31,14; end; case 2: mes $@npcnames$; mes "I understand, Quests the ^31CE31Paradise Group^000000 are not meant for everyone."; close; } } } //prontera,124,76,3 duplicate(eto) Eden Teleport Officer#1 4_F_NOVICE moc_ruins,68,164,3 duplicate(eto) Сотрудник Группы Эдем#2 4_F_NOVICE geffen,132,66,3 duplicate(eto) Сотрудник Группы Эдем#3 4_F_NOVICE alberta,124,67,3 duplicate(eto) Сотрудник Группы Эдем#4 4_F_NOVICE aldebaran,133,119,5 duplicate(eto) Сотрудник Группы Эдем#5 4_F_NOVICE izlude_in,68,162,1 duplicate(eto) Сотрудник Группы Эдем#6 4_F_NOVICE prt_church,103,78,3 duplicate(eto) Сотрудник Группы Эдем#7 4_F_NOVICE geffen_in,160,104,5 duplicate(eto) Сотрудник Группы Эдем#8 4_F_NOVICE moc_prydb1,53,126,3 duplicate(eto) Сотрудник Группы Эдем#9 4_F_NOVICE alberta_in,75,39,3 duplicate(eto) Сотрудник Группы Эдем#10 4_F_NOVICE payon_in02,58,58,1 duplicate(eto) Сотрудник Группы Эдем#11 4_F_NOVICE payon,177,111,3 duplicate(eto) Сотрудник Группы Эдем#12 4_F_NOVICE que_ng,33,73,3 duplicate(eto) Сотрудник Группы Эдем#13 4_F_NOVICE que_ng,144,161,5 duplicate(eto) Сотрудник Группы Эдем#14 4_F_NOVICE yuno,144,189,5 duplicate(eto) Сотрудник Группы Эдем#15 4_F_NOVICE rachel,125,144,3 duplicate(eto) Сотрудник Группы Эдем#16 4_F_NOVICE comodo,202,151,4 duplicate(eto) Сотрудник Группы Эдем#17 4_F_NOVICE hugel,93,153,4 duplicate(eto) Сотрудник Группы Эдем#18 4_F_NOVICE veins,220,109,4 duplicate(eto) Сотрудник Группы Эдем#19 4_F_NOVICE einbroch,250,211,4 duplicate(eto) Сотрудник Группы Эдем#20 4_F_NOVICE lighthalzen,164,86,4 duplicate(eto) Сотрудник Группы Эдем#21 4_F_NOVICE amatsu,100,145,5 duplicate(eto) Сотрудник Группы Эдем#22 4_F_NOVICE ayothaya,221,191,3 duplicate(eto) Сотрудник Группы Эдем#23 4_F_NOVICE louyang,224,107,3 duplicate(eto) Сотрудник Группы Эдем#24 4_F_NOVICE gonryun,162,122,5 duplicate(eto) Сотрудник Группы Эдем#25 4_F_NOVICE moscovia,209,197,5 duplicate(eto) Сотрудник Группы Эдем#26 4_F_NOVICE brasilis,191,224,3 duplicate(eto) Сотрудник Группы Эдем#27 4_F_NOVICE dewata,192,193,5 duplicate(eto) Сотрудник Группы Эдем#28 4_F_NOVICE morocc,161,97,5 duplicate(eto) Сотрудник Группы Эдем#29 4_F_NOVICE izlude,131,148,4 duplicate(eto) Сотрудник Группы Эдем#30 4_F_NOVICE izlude_a,131,148,4 duplicate(eto) Сотрудник Группы Эдем#30::eto_iz_a 4_F_NOVICE izlude_b,131,148,4 duplicate(eto) Сотрудник Группы Эдем#30::eto_iz_b 4_F_NOVICE izlude_c,131,148,4 duplicate(eto) Сотрудник Группы Эдем#30::eto_iz_c 4_F_NOVICE izlude_d,131,148,4 duplicate(eto) Сотрудник Группы Эдем#30::eto_iz_d 4_F_NOVICE umbala,105,158,3 duplicate(eto) Сотрудник Группы Эдем#31 4_F_NOVICE malaya,238,206,6 duplicate(eto) Сотрудник Группы Эдем#32 4_F_NOVICE moc_para01,30,10,0 script #eden_out WARPNPC,1,1,{ OnTouch: switch (nak_warp) { case 1: warp "prontera",116,72; end; case 2: warp "moc_ruins",64,161; end; case 3: warp "geffen",120,39; end; case 4: warp "alberta",117,56; end; case 5: warp "aldebaran",168,112; end; case 6: warp "izlude_in",73,165; end; case 7: warp "prt_church",99,78; end; case 8: warp "geffen_in",162,99; end; case 9: warp "moc_prydb1",51,118; end; case 10: warp "alberta_in",73,43; end; case 11: warp "payon_in02",64,60; end; case 12: warp "payon",161,58; end; case 13: warp "que_ng",33,63; end; case 14: warp "que_ng",144,166; end; case 15: warp "yuno",158,125; end; case 16: warp "rachel",115,125; end; case 17: warp "comodo",192,145; end; case 18: warp "hugel",88,148; end; case 19: warp "veins",216,104; end; case 20: warp "einbroch",246,204; end; case 21: warp "lighthalzen",159,95; end; case 22: warp "amatsu",110,150; end; case 23: warp "ayothaya",217,178; end; case 24: warp "louyang",217,103; end; case 25: warp "gonryun",155,120; end; case 26: warp "moscovia",218,198; end; case 27: warp "brasilis",190,220; end; case 28: warp "dewata",192,182; end; case 29: warp "morocc",161,97; end; case 30: warp "izlude",134,118; end; // Old coordinates: (127,142) case 31: warp "umbala",94,154; end; case 32: warp "malaya",234,199; end; default: warp "prontera",116,72; end; } end; } moc_para01,47,39,3 script Задняя Комната HIDDEN_NPC,{ if(#language == 1) { if (countitem(Para_Team_Mark) > 0) { mes "Хочешь пройти в заднюю комнату?"; next; switch (select("Войти:Не входить")) { case 1: mes "^FF0000Сюда, пожалуйста.^000000"; close2; warp "moc_para01",106,14; end; case 2: mes "^3355FFПриходи ещё.^000000"; close; } } mes "Ох, ты не можешь войти сюда, это доступно только участникам ^31CE31Группы^000000"; mes "Если хочешь получить доступ ко всем местам Эдема, подойди к ^3355FFСекретарю^000000"; close; } if(#language == 2) { if (countitem(Para_Team_Mark) > 0) { mes "Would you like enter the back room?"; next; switch (select("Enter:Don't Enter")) { case 1: mes "^FF0000This way please.^000000"; close2; warp "moc_para01",106,14; end; case 2: mes "^3355FFCome again.^000000"; close; } } mes "Oh, this is an exclusive place for members only ^31CE31Eden's^000000"; mes "If you want to go inside, you have to join the Eden Group on the ^3355FFSecretary^000000"; close; } } moc_para01,15,27,3 trader Tool Dealers 4_M_HUMERCHANT,{ OnInit: sellitem Spectacles; sellitem Arrow; sellitem Wing_Of_Fly; sellitem Wing_Of_Butterfly; sellitem Booby_Trap; sellitem Leaf_Of_Yggdrasil; } Изменено 7 августа, 2017 пользователем ucell-uz 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 С отступами все плохо.. Малочитаемо (: Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 7 августа, 2017 Автор Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) 11 час назад, Кеник сказал: С отступами все плохо.. Малочитаемо (: кеник это ты имеешь в виду то что идёт через таб? ну если да я не думаю что это проблема -) Изменено 7 августа, 2017 пользователем ucell-uz Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 7 августа, 2017 Автор Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) ппц там много )) как бы с ума не сойти, от этих квестов + ещё приходится срезать лишнее и добавлять заканчиваю с переводом нпц Инструктора ура и те квесты которые он даёт.. полностью перевёл квест.. в айсе которая связана с нпц наоми сейчас мучаюсь с нпц который даёт шмот эдема и оружие к зачарованию, там просто голову поломать можно, учитывая тот факт что я краб в скриптинге предлагаю тестовый вариант, естественно всё ещё в процессе, но если кто-то хочет взглянуть на сам скрипт Скрытый текст moc_para01,23,35,5 script Инструктор Ура#2nd01 4_M_KNIGHT_BLACK,{ set $@npcnames$,"^BC7F15[ Инструктор Ура ]^000000"; if (countitem(Para_Team_Mark) < 1) { mes $@npcnames$; mes "Пожалуйста, зарегистрируйся у ^3355FFСекретаря Эдема^000000."; } else if (para_2nd01 == 0) { if (BaseLevel < 60) { mes $@npcnames$; mes ""; if(Sex == 1) mes "Сожалею, но ты должен достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; else { mes "Сожалею, но ты должна достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; } close; } else if (BaseLevel < 70) { mes $@npcnames$; mes "Ты как раз вовремя! у меня для тебя есть новый квест. Что скажешь, готов начать его сейчас?"; next; switch(select("Да:Нет")) { case 1: mes $@npcnames$; mes "Отлично! Найди ^3131FFРомео в Комодо.^000000"; next; mes $@npcnames$; mes "Он находится близ входа в ^3131FFПещеру на Севере Комодо^000000"; para_2nd01 = 1; setquest 7214; // Advanced Training at Comodo close; case 2: mes $@npcnames$; mes "Плохо, очень плохо. А я как раз припас такую хорошую награду для тебя..."; } close; } else if (BaseLevel < 80) { mes "Let's see..."; mes "Your level would suggest that Comodo is just too easy for you."; mes "Yeah, here we go."; next; mes "[Instructor Ur]"; mes "Do you know where Glast Heim is?"; mes "If there was a tragic accident now, the capital of the Rune-Midgarts Kingdom could revert back to there."; next; mes "[Instructor Ur]"; mes "Well, if it wasn't infested with undead monsters, it would become the new capitol of Rune-Midgarts."; next; mes "[Instructor Ur]"; mes "Please, come back alive."; para_2nd01 = 7; setquest 7219; // Advanced Training at Glast Heim } else if (BaseLevel < 90) { mes "Ah, ok so for you..."; mes "Hmm where do I send you?"; next; mes "[Instructor Ur]"; mes "There an industrial city called Einbroch."; mes "You know it? It's a city covered in smog."; mes "It's a pretty gloomy city come to think of it."; next; mes "[Instructor Ur]"; mes "Anyways, go to Einbroch and find the Dispatched Instructor there. He should be in the field south of the main city."; setquest 7223; // Advanced Training in Einbroch para_2nd01 = 12; } else callsub S_Quest89100; } else if (para_2nd01 == 5) { mes "Oh, there he is."; mes "Romeo seems to be back from his field report."; next; mes "[Instructor Ur]"; mes "We have rewards for you."; mes "I'm sure Romeo gave you some items, but we brought more useful things."; next; mes "[Instructor Ur]"; mes "Do you know where the weapon storage is at?"; mes "Go out through that large blue door and walk to the end of the hallway."; mes "Ask the Blacksmith, and he will give you new equipment."; next; mes "[Instructor Ur]"; mes "And the 2nd stage training and missions start at level 70, so come back then."; mes "Don't forget, I'll be waiting for you."; para_2nd01 = 6; para_2nd02 = 1; erasequest 7218; // Report to Instructor Ur } else if (para_2nd01 == 6) { if (BaseLevel > 69) { mes "Hey, buddy~"; mes "What's going on?"; next; switch( select( "I want to start training.", "I'm just visiting." ) ) { mes "[Instructor Ur]"; case 1: mes "Hmm... You have a good form!"; mes "Let me see...."; mes "Which location would suit you...?"; next; mes "[Instructor Ur]"; if (BaseLevel < 80) { mes "Ah, this place should be good!"; mes "Do you know where Glast Heim is?"; mes "If it wasn't for that terrible accident, Glast Heim would still be"; mes "the capital of Rune Midgard, not Prontera."; next; mes "[Instructor Ur]"; mes "Anyways, that ancient castle is now full of undead monsters ."; mes "It's especially bad around the Abbey in the south."; next; mes "[Instructor Ur]"; mes "All of those undead monsters come from the underground graveyard"; mes "Well... I guess you don't have to go all the way into the graveyard..."; next; mes "[Instructor Ur]"; mes "Once you get to the Abbey you'll see our unit member stationed in front of the entrance."; mes "Follow his instructions to help clear out that area."; next; mes "[Instructor Ur]"; mes "Please come back alive."; para_2nd01 = 7; setquest 7219; // Advanced Training at Glast Heim } else if (BaseLevel < 90) callsub S_Quest7990; else callsub S_Quest89100; close; case 2: mes "Really? At your level, I think you can easily complete the top class missions.."; mes "I'll be here if you change your mind."; close; } } else { mes "2nd stage training missions start at level 70."; mes "I'll see you then."; mes "Did you pick up the necessary equipment from the storage?"; mes "Hahaha!"; } } else if (para_2nd01 == 10) { mes "Oh! You're here!"; mes "I just got a message from Johan."; mes "I think he's not telling me something, but I can't figure out what that is."; next; mes "[Instructor Ur]"; mes "Anyways, good job. I'm glad you're not hurt"; mes "The Blacksmith BK said he'll reinforce your weapon."; next; callsub S_Para2; mes "[Instructor Ur]"; mes "You know where the Blacksmith is at right??"; mes "Go out through the blue door, to the end of the hallway."; mes "BK is a great blacksmith, he'll make your weapon stronger."; mes "What are you waiting for?"; para_2nd01 = 11; // Report to Instructor Ur erasequest 7222; } else if (para_2nd01 == 11) { if (BaseLevel > 79) { mes "Ah, ever so improving "+ strcharinfo(0) +"?"; mes "To what do I owe this pleasure?"; next; switch( select( "I came for more training.", "I'm just visiting." ) ) { mes "[Instructor Ur]"; case 1: mes "Hmm... You have a good form!"; mes "Let me see...."; next; mes "[Instructor Ur]"; if (BaseLevel < 90) callsub S_Quest7990; else callsub S_Quest89100; close; case 2: mes "Really? At your level, I think you can easily complete the top class missions.."; mes "I'll be here if you change your mind."; close; } } else { mes "3rd stage training starts at level 80."; mes "I'll see you then."; mes "Oh, if you haven't reinforced your weapon yet, go talk to BK."; } } else if (para_2nd01 == 15) { mes "Ah, you've come."; mes "I just received a message from Kiren."; mes "How was he? He didn't throw a tantrum for waking him up?"; mes "I wouldn't be surprised if he did"; next; mes "[Instructor Ur]"; mes "Anyways, good job. I'm glad you're not hurt."; mes "The Blacksmith BK said he'll reinforce your weapon."; next; callsub S_Para2; mes "[Instructor Ur]"; mes "You know where the Blacksmith is at right??"; mes "Go out through the blue door, to the end of the hallway."; mes "BK is a great blacksmith, he'll make your weapon stronger."; mes "What are you waiting for?"; erasequest 7228; // Report to Instructor Ur para_2nd01 = 16; } else if (para_2nd01 == 16) { if (BaseLevel > 89) { mes "It's nice to see you still strong!"; mes "What brings you today?"; next; if (select( "I want to continue training.", "I'm just visiting." ) == 2) { mes "[Instructor Ur]"; mes "Really? At your level, I think you can easily complete the top class missions.."; mes "I'll be here if you change your mind."; close; } mes "[Instructor Ur]"; callsub S_Quest89100; } else { mes "4th stage training starts at level 90."; mes "I'll see you then."; mes "Oh, if you haven't reinforced your weapon yet, go talk to BK."; } } else if (para_2nd01 == 20) { mes $@npcnames$; callsub S_Para2; mes "Пройди в заднюю комнату, и поговори "; mes "там с <NAVI>Тореном<INFO>moc_para01,47,37,0,000,0</INFO></NAVI> ^3131FFи с Экспертом по Оружию^000000 и получишь награду."; para_2nd01 = 30; erasequest 7232; //Report to Instructor Ur } else if (para_2nd01 == 29) { mes $@npcnames$; mes "Ты уже всё? Отличная работа!"; next; mes $@npcnames$; callsub S_Para2; mes "Пройди в заднюю комнату, и поговори "; mes "там с <NAVI>Майклом<INFO>moc_para01,47,37,0,000,0</INFO></NAVI> ^3131FFи с Экспертом по Оружию^000000 и получишь награду."; para_2nd01 = 30; erasequest 7237; // Report to Instructor Ur } else if (para_2nd01 == 30) { mes $@npcnames$; mes "Пройди в заднюю комнату, и поговори "; mes "там с <NAVI>Тореном<INFO>moc_para01,47,37,0,000,0</INFO></NAVI> ^3131FFи с Экспертом по Оружию^000000 и получишь награду."; } else if (para_2nd01 < 5) callsub S_Direction,"Ромео в Комодо"; else if (para_2nd01 < 10) callsub S_Direction,"Glast Heim Castle"; else if (para_2nd01 < 15) callsub S_Direction,"Einbroch"; else if (para_2nd01 < 20) callsub S_Direction,"Наоми в Ледяном Подземелье"; else if (para_2nd01 < 29) { mes "You have to travel very far to get to the ^4d4dffRune Midgard Expedition Camp^000000!"; mes "If you want to stay there then earn your keep by doing missions. Got it?"; } close; S_Para2: if (para_2nd02 == 0) { mes "Ты уже всё? Отличная работа!"; para_2nd02 = 1; next; } return; S_Direction: mes $@npcnames$; mes "Чего же ты ждёшь? Ступай и найди ^4d4dff"+ getarg(0) +"^000000"; return; S_Quest7990: mes "Hmm.. Not bad ..."; mes "You must be getting a hang of this.."; mes "Let's go with a simple mission this time"; next; mes "[Instructor Ur]"; mes "There is a industrial city called Einbroch."; mes "You've heard of it? It's a city clouded with pollution."; mes "You'll appreciate the environment here so much more after visiting that city..."; mes "We should all be thankful."; next; mes "[Instructor Ur]"; mes "Anyways, go out to the field south of Einbroch and you'll see the Dispatched Instructor."; mes "I'm sure he'll recognize you first."; mes "Don't forget to bring the Eden Group badge."; next; mes "[Instructor Ur]"; mes "The city's pollution is unbearable"; mes "But the surrounding fields are relatively clean..."; mes "This should be pretty easy for you."; para_2nd01 = 12; setquest 7223; // Advanced Training in Einbroch return; S_Quest89100: if (BaseLevel < 100) { mes $@npcnames$; mes "Ты как раз вовремя! у меня для тебя есть новый квест. Что скажешь, готов начать его сейчас?"; next; switch(select("Да:Нет")) { case 1: mes $@npcnames$; mes "Отлично! Найди ^3131FFНаоми в Ледяном Подземелье.^000000"; next; mes $@npcnames$; mes "Она находится недалеко от ^3131FFВхода^000000 внутри самого Подземелья"; para_2nd01 = 17; setquest 7229; // Advanced Training in Ice Dungeon close; case 2: mes $@npcnames$; mes "Плохо, очень плохо. А я как раз припас такую хорошую награду для тебя..."; } close; } else { mes "Well, well..."; mes "I don't even know where to send you now."; mes "I'm sure you are familiar with most places around here"; next; mes "[Instructor Ur]"; mes "Then, should I send you somewhere farther this time?"; mes "There is a cat hand agent here."; mes "Do you see him over there?"; next; mes "[Instructor Ur]"; mes "Through him, you can get to Ash Vacuum pretty easily ."; mes "Since there is a Expedition Camp there..."; next; mes "[Instructor Ur]"; mes "All you have to do is find the Eden Group agent there."; mes "Tell him I sent you, and he'll give you instructions."; mes "You can explore the new world"; mes "It's like a vacation isn't it?"; next; mes "[Instructor Ur]"; mes "Hahaha!"; mes ".. Maybe I'll go instead of sending you."; mes "Anyways, their names are Ma~ something... I don't know."; next; mes "[Instructor Ur]"; mes "So, the mission, once again, is finding our agent at the Midgard Expedition Camp."; mes "Isn't this the easiest mission you've ever had?"; mes "Don't forget my present when you come back~!"; para_2nd01 = 22; setquest 7233; // Advanced Training at Ash Vacuum } return; } //- 90~99 - ice_dun01,154,13,5 script Наоми#05 4_F_JOB_BLACKSMITH,{ set $@npcnames$,"^BC7F15[ Наоми ]^000000"; mes $@npcnames$; if (para_2nd01 <= 17) { if (para_2nd01 < 17) { mes "Т-так-к... Х-х-холод-д-дн-н-н-о..."; close; } mes "Как же тут холодно."; next; mes $@npcnames$; mes "Ещё эти надоедливые Сиромы со своим ледяным дыханием..."; next; mes $@npcnames$; mes "Можешь убить ^3131FF30 шт. Siroma^000000 для меня?"; para_2nd01 = 18; erasequest 7229; // Advanced Training in Ice Dungeon setquest 7230; // Siroma hunting } else if (para_2nd01 == 18) { if (questprogress(7230,HUNTING) == 2) { mes "Спасибо, но этих Сиром по-прежнему полно здесь!"; next; mes $@npcnames$; mes "Мне нужно сделать кое-какой горячительный напиток. Ну... чтобы не замёрзнуть совсем. Поможешь?"; next; mes $@npcnames$; mes "Нужно ещё убить ^3131FF30 шт. Siroma^000000 и"; mes "принести мне ^3131FF30 шт. <ITEMLINK>Ice Cubic<INFO>7066</INFO></ITEMLINK>"; mes "1 шт. <ITEMLINK>Milk<INFO>519</INFO></ITEMLINK> и 1шт. <ITEMLINK>Sweet Sauce<INFO>7453</INFO></ITEMLINK>^000000"; mes "Ладно?"; para_2nd01 = 19; erasequest 7230; // Siroma hunting setquest 7231; // Hunting and Gathering getexp 40000,40000; npcskill "AL_HEAL",10,99,60; percentheal 0,100; } else { mes "Пожалуйста, убей ^3131FF30 шт. Siroma^000000. Терпеть их не могу."; } } else if (para_2nd01 == 19) { if (questprogress(7231,HUNTING) == 2 && countitem(Ice_Piece) > 29 && countitem(Sweet_Sauce) > 0 && countitem(Milk) > 0) { mes "Ура-ура, ты справился!"; next; mes $@npcnames$; mes "Ну теперь-то я буду в порядке, можешь обо мне не беспокоиться."; next; mes $@npcnames$; mes "Возвращайся в ^31CE31Центральный офис Группы Эдем^000000 за наградой."; delitem Ice_Piece,30; delitem Sweet_Sauce,1; delitem Milk,1; para_2nd01 = 20; erasequest 7231; // Hunting and Gathering setquest 7232; // Report to Instructor Ur getexp 40000,40000; } else { mes "Нужно ещё убить ^3131FF30 шт. Siroma^000000 и"; mes "принести мне ^3131FF30 шт. <ITEMLINK>Ice Cubic<INFO>7066</INFO></ITEMLINK>"; mes "1 шт. <ITEMLINK>Milk<INFO>519</INFO></ITEMLINK> и 1шт. <ITEMLINK>Sweet Sauce<INFO>7453</INFO></ITEMLINK>^000000"; mes "Ладно?"; } } else if (para_2nd01 == 20) { mes "Возвращайся в ^31CE31Центральный офис Группы Эдем^000000 за наградой."; } else mes "Alas, is there anywhere where the buildup of ice caps is more than here?"; close; } moc_para01,112,96,5 script Administrator Michael 4_M_RUSMAN1,{ mes "[Michael]"; mes "Why did you come here?"; next; switch (select("To get supplies:Where is here?:Upgrade equipment")) { mes "[Michael]"; case 1: if (para_suv01 == 11) { mes "If you've completed step 1"; mes "we can supply you with a Eden Group Hat, Uniform, Manteau and Boots."; mes "^4d4dffCheck your inventory first.^000000"; next; if (select("Let me check my inventory:I have enough room.") == 1) { mes "[Michael]"; mes "Make sure you have enough room for the supplies."; close; } mes "[Michael]"; mes "Two of the supplies, the ^4d4dffHat and Manteau^000000,"; mes "will only be given out once."; mes "So treat them with caution and care."; next; mes "[Michael]"; mes "As for the Boots and the Uniforms, you will receive better quality ones based on your course grades."; next; mes "[Michael]"; mes "One Eden Group Hat."; mes "One Eden Group Uniform I."; mes "One pair of Eden Group Boots I."; mes "One Eden Group Manteau."; mes "A total of 4 supplies, that's all."; para_suv01 = 12; para_suv02 = 1; getitem Para_Team_Hat,1; getitem Para_Team_Manteau,1; getitem Para_Team_Boots1,1; getitem Para_Team_Uniform1,1; next; mes "[Michael]"; mes "Is that correct?"; mes "It is manufactured for beginners so they don't have the best effect but they're still cheaper than equipment in the shops."; next; mes "[Michael]"; mes "We made them especially for the Eden Group."; } else if (para_suv01 == 22) { mes "If you've completed step 2, we offer extra weapons including the basic equipment."; next; mes "[Michael]"; mes "We have chosen the proper weapon for each class."; mes "But we can't support some classes that can't join us."; next; mes "[Michael]"; mes "We can't manufacture all of the weapons in the world, don't you agree?"; next; mes "[Michael]"; mes "We will supply 1 Weapon, Shoes and Uniform so a total of three things."; mes "Also we supply extra things to consider some members who can't use some of the supplies."; next; mes "[Michael]"; mes "^4d4dffPlease check your inventory to get those items.^000000"; next; if (select("I will make more space.:I have got enough space.") == 1) { mes "[Michael]"; mes "Make enough space."; close; } mes "[Michael]"; if (Class == Job_Swordman || Class == Job_Swordman_High || Class == Job_Knight || Class == Job_Crusader) { callsub S_Select,"We have one and Two-handed swords", P_Slayer1,"Eden Slayer I","Two-handed sword","Attack 162","", P_Sabre1,"Eden Saber I","One-handed sword","Attack 147","This is what we strive for."; } if (Class == Job_Thief || Class == Job_Thief_High || Class == Job_Assassin || Class == Job_Rogue || Class == Job_Ninja || Class == Job_Novice || Class == Job_Novice_High) { callsub S_Select,"", P_Dagger1,"Eden Dagger I","Dagger","MATK+60, attack 124","This is what we strive for."; } if (Class == Job_Merchant || Class == Job_Merchant_High || Class == Job_Blacksmith || Class == Job_Alchemist) { callsub S_Select,"We have a mace and a One-handed sword", P_Sabre1,"Eden Saber I","One-handed sword","Attack 147","This is what we strive for.", P_Mace1,"Eden Mace I","Mace","Attack 142",""; } if (Class == Job_Archer || Class == Job_Archer_High || Class == Job_Hunter || Class == Job_Dancer || Class == Job_Bard) { callsub S_Select,"", P_Bow1,"Eden Bow I","Bow","Attack 82",""; } if (Class == Job_Acolyte || Class == Job_Acolyte_High || Class == Job_Priest || Class == Job_Monk) { callsub S_Select,"We have a mace and a staff", P_Mace1,"Eden Mace I","Mace","Attack 142","", P_Staff1,"Eden Staff I","Staff","INT+2, MATK+125, attack 60",""; } if (Class == Job_Mage || Class == Job_Mage_High || Class == Job_Wizard || Class == Job_Sage) { callsub S_Select,"", P_Staff1,"Eden Staff I","Staff","INT+2, MATK+125, attack 60",""; } if (Class == Job_Gunslinger) { callsub S_Select,"", P_Revolver1,"Eden Revolver I","Revolver","HIT-5, attack 44",""; } mes "Let me see... you will receive.."; mes "the Eden Group Boots II and Uniform II."; next; mes "[Michael]"; para_suv01 = 23; getitem P_Dagger1,1; getitem Para_Team_Boots2,1; getitem Para_Team_Uniform2,1; if (para_suv02 == 0) { mes "I don't know what weapon will suit you so, you'll get a Dagger."; mes "You don't have a record of receiving any supplies"; mes "so, you'll receive the Eden Group Hat and Manteau aswell."; getitem Para_Team_Hat,1; getitem Para_Team_Manteau,1; para_suv02 = 2; next; mes "[Michael]"; mes "Check your supplies again and look after it."; close; } para_suv02 = 2; mes "A Weapon, Uniform and Boots all 3 supplies."; mes "I don't know what weapon will suit you so, you'll get a Dagger."; mes "Please check it again."; next; mes "[Michael]"; mes "I hope they're useful to you."; } else if (para_suv01 == 37) { mes "You've completed the last training course."; mes "It's time for you to receive a new weapon."; next; mes "[Michael]"; mes "We have more upgraded weapons, uniforms and boots."; mes "Ah, in case of the weapon that was made only for 1st jobs."; mes "So, I can't offer them to higher jobs."; next; mes "[Michael]"; mes "^4d4dffPlease check you inventory to get those supplies.^000000"; next; if (select("I'll come back.:I have enough room.") == 1) { mes "[Michael]"; mes "Make sure you have enough room."; close; } mes "[Michael]"; if (Class == Job_Swordman || Class == Job_Swordman_High || Class == Job_Knight || Class == Job_Crusader) { callsub S_Select,"We have one and Two-handed swords", P_Sabre2,"Eden Saber II","One-handed sword","Attack 170","", P_Slayer2,"Eden Slayer II","Two-handed sword","Attack 185",""; } if (Class == Job_Thief || Class == Job_Thief_High || Class == Job_Assassin || Class == Job_Rogue || Class == Job_Novice || Class == Job_Novice_High || Class == Job_SuperNovice || Class == Job_Soul_Linker || Class == Job_Ninja) { callsub S_Select,"", P_Dagger2,"Eden Dagger II","Dagger","MATK+70, attack 158",""; } if (Class == Job_Acolyte || Class == Job_Acolyte_High || Class == Job_Priest || Class == Job_Monk) { callsub S_Select,"We have a mace and a staff", P_Mace2,"Eden Mace II","Mace","Attack 163","", P_Staff2,"Eden Staff II","Staff","INT+3, MATK+150, attack 60",""; } if (Class == Job_Archer || Class == Job_Archer_High || Class == Job_Hunter || Class == Job_Dancer || Class == Job_Bard) { callsub S_Select,"", P_Bow2,"Eden Bow II","Bow","Attack 82",""; } if (Class == Job_Mage || Class == Job_Mage_High || Class == Job_Wizard || Class == Job_Sage) { callsub S_Select,"", P_Staff2,"Eden Staff II","Staff","INT+3, MATK+155, attack 60",""; } if (Class == Job_Merchant || Class == Job_Merchant_High || Class == Job_Blacksmith || Class == Job_Alchemist) { callsub S_Select,"We have a mace and a One-handed sword", P_Sabre2,"Eden Saber II","One-handed sword","Attack 170","", P_Mace2,"Eden Mace II","Mace","Attack 163",""; } if (Class == Job_Gunslinger) { callsub S_Select,"", P_Revolver2,"Eden Revolver II","Revolver","HIT-5, attack 60",""; } mes "Let me see... you will receive.."; mes "the Eden Group Boots III and Uniform III."; next; para_suv01 = 38; getitem Para_Team_Boots3,1; getitem Para_Team_Uniform3,1; mes "[Michael]"; if (para_suv02 == 0) { mes "You don't have a record of receiving any supplies"; mes "so, you'll receive the Eden Group Hat and Manteau aswell."; para_suv02 = 3; getitem Para_Team_Hat,1; getitem Para_Team_Manteau,1; next; mes "[Michael]"; mes "Check your supplies again and look after it."; close; } para_suv02 = 3; mes "A Uniform and Boots all 2 supplies."; mes "Please check it again."; next; mes "[Michael]"; mes "I hope they're useful to you."; } else { mes "Wait...I will check the record..."; mes "..."; mes "...hummmm."; next; mes "[Michael]"; mes "Sorry, but I can't find any record that you can obtain supplies."; mes "Are you sure?"; } close; case 2: mes "We store weapons, armor and other goods which were created by the Eden Group here."; mes "We also have a lot of special stuff."; next; mes "[Michael]"; mes "To prepare for emergencies, we hav enough equipment and supplies for an entire army."; mes "Frankly... we don't have a use for it now but in case soemthing happens like in Morroc."; next; mes "[Michael]"; mes "Just take a look around and don't touch anything."; next; mes "[Michael]"; mes "If I make a mistake, Reke will punish me."; close; case 3: mes "You mean upgrading equipment, right?"; mes "We can only upgrade the Eden Group Hat."; next; mes "[Michael]"; if (para_suv02 == 3) { if (countitem(Para_Team_Hat) > 0) { disable_items; mes "What status bonus do you want to upgrade?"; next; switch (select("Upgrade STR:Upgrade AGI:Upgrade VIT:Upgrade INT:Upgrade DEX:Upgrade LUK:Nevermind.")) { case 1: callsub S_Upgrade,"STR",4701; case 2: callsub S_Upgrade,"AGI",4731; case 3: callsub S_Upgrade,"VIT",4741; case 4: callsub S_Upgrade,"INT",4711; case 5: callsub S_Upgrade,"DEX",4721; case 6: callsub S_Upgrade,"LUK",4751; case 7: mes "[Michael]"; mes "Why? It'll be beter than it is."; mes "Anyway, we can only offer you one Hat."; next; mes "[Michael]"; mes "What you do with it is up to you."; close; } } mes "First come with a Hat that you want me to upgrade."; mes "Make sure that it's in your inventory, got it?"; close; } if (para_suv02 == 4) { mes "Umm, didn't you upgrade this already?"; mes "According to the records"; mes ""+strcharinfo(0)+": Has already upgraded their Hat."; next; mes "[Michael]"; mes "We can only offer 1 upgrade."; mes "Sorry but I can't do it twice."; close; } mes "You haven't received all the supplies up to step 3."; mes "Upgrading your Hat is a special service."; next; mes "[Michael]"; mes "Sorry but I can't help you."; close; } S_Upgrade: mes "[Michael]"; mes "I see."; mes "I will ^4d4dffUpgrade "+ getarg(0) +"^000000."; mes "Are you sure?"; next; switch (select("Yes I am.:No wait.")) { case 1: mes "[Michael]"; mes "I will start to upgrade."; next; mes "[Michael]"; mes "Here you are."; para_suv02 = 4; delitem Para_Team_Hat,1; getitem2 5583,1,1,0,0,0,0,0,getarg(1); close; case 2: mes "[Michael]"; mes "Don't you want to upgrade?"; close; } S_Select: .@total_arg = getargcount(); if (.@total_arg < 7) mes "We only have 1 weapon for you."; else { mes "What kind of weapon do you want?"; mes getarg(0); mes "Here are the options."; } next; mes "[Michael]"; for ( .@i = 1; .@i < .@total_arg; .@i += 5 ) { .@menu$ = .@menu$ + getarg(.@i+1) + ":"; mes getarg(.@i+1)+": "+ getarg(.@i+2) +". "+ getarg(.@i+3) +"."; } if (.@total_arg < 7) mes "It is Lv. 2 and the required level is "+ (para_suv01 == 22 ? "26" : "40") +"."; else mes "Both of them are Lv. 2 weapons and the required level is "+ (para_suv01 == 22 ? "26" : "40") +"."; next; mes "[Michael]"; mes "They also can't be traded with other players or be refined."; next; if (.@total_arg < 7) { .@i = 1; mes "[Michael]"; mes "You'll receive the "+ getarg(.@i+1) +"."; next; mes "[Michael]"; } else { .@i = (select(.@menu$) -1) *5 +1; mes "[Michael]"; mes "You've chosen the "+ getarg(.@i+1) +"."; } if (para_suv01 == 22) { mes "Additionally you'll receive the Eden Group Boots II and Uniform II."; next; getitem Para_Team_Boots2,1; getitem Para_Team_Uniform2,1; para_suv01 = 23; } else { mes "Additionally you'll receive the Eden Group Boots III and Uniform III."; next; getitem Para_Team_Boots3,1; getitem Para_Team_Uniform3,1; para_suv01 = 38; } getitem getarg(.@i),1; mes "[Michael]"; if (para_suv02 == 0) { mes "You don't have a record of receiving any supplies"; mes "so, you'll receive the Eden Group Hat and Manteau aswell."; getitem Para_Team_Hat,1; getitem Para_Team_Manteau,1; if (para_suv01 == 22) para_suv02 = 2; else para_suv02 = 3; next; mes "[Michael]"; mes "Check your supplies again and look after it."; } else { if (para_suv01 == 22) para_suv02 = 2; else para_suv02 = 3; mes "A "+ getarg(.@i+2) +", Uniform and Boots all 3 supplies."; mes "Please check it again."; next; mes "[Michael]"; mes "I hope they're useful to you."; mes getarg(.@i+4); } close; } moc_para01,111,83,3 script Торен#2nd10 2_M_OLDBLSMITH,{ if (checkweight(Para_Team_Manteau2,5) == 0) { mes "- You have too many items in your inventory to continue -"; close; } mes "[Thorn]"; if (countitem(Para_Team_Mark) < 1) { mes "Хм..м. Ты не можешь возпользоваться моими услугами, для начала подойди к ^3355FFСекретарю^000000 и зарегистрируйся."; close; } mes "Йо! Чем могу помочь?"; next; switch( select( "Где моя награда?", "Зачаруй мне...", "Give me new equipment." ) ) { mes "[Thorn]"; case 3: if (para_2nd01 < 6) { mes "Hmm equipment strengthening."; mes "I don't exactly do that for just anyone."; mes "The first step is at least a higher degree of training so have you done the Eden Group training yet?"; next; mes "[Thorn]"; mes "You have not awakened yet."; mes "First do the missions set forth by Instructor Ur and I'll help you strengthen your equipment."; next; mes "[Thorn]"; mes "I won't help you unless you do that first!"; } else if (para_2nd04 == 3) { mes "Strengthen your equipment eh?"; mes "I'll strengthen the new Eden Group equipment for you by giving it a random stat boost."; next; mes "[Thorn]"; mes "So what equipment do you want to enhance?"; next; switch( select( "Eden Group Manteau II", "Eden Group Armor IV", "Eden Group Boots IV" ) ) { case 1: callsub S_Enchant,Para_Team_Manteau2,"Manteau"; case 2: callsub S_Enchant,Para_Team_Armor,"Armor"; case 3: callsub S_Enchant,Para_Team_Boots4,"Boots"; } } else { mes "I will strengthen your equipment after you've done a personal request of mine."; next; mes "[Thorn]"; mes "I just want to be sure that you're worthy of using my services."; } close; case 2: if (para_2nd02 < 2) { mes "Сперва раздобудь ^3131FFПродвинутую Экипировку Эдема.^000000"; } else if (para_2nd04 == 0) { mes "Хорошо, но для этого мне нужно пару предметов."; next; mes "[Thorn]"; if (BaseLevel < 80) { mes "Принеси мне ^3131FF20 шт.^000000 <ITEMLINK>Iron Ore<INFO>1002</INFO></ITEMLINK>"; mes "и ^3131FF10 шт.^000000 <ITEMLINK>Iron<INFO>998</INFO></ITEMLINK>"; } else { mes "Принеси мне ^3131FF20 шт.^000000 <ITEMLINK>Used Iron Plate<INFO>7319</INFO></ITEMLINK>"; .@add = 1; } next; para_2nd04 = 1 + .@add; setquest (7238 + .@add); // Errands for Thorn (easy/hard) close; } else if (para_2nd04 == 1 || para_2nd04 == 2) { if (para_2nd04 == 1) { setarray .@item[0],Iron_Ore,Iron; setarray .@amount[0],20,10; setarray .@countitem[0],countitem(Iron_Ore),countitem(Iron); .@string$ = "Принеси мне ^3131FF20 шт.^000000 <ITEMLINK>Iron Ore<INFO>1002</INFO></ITEMLINK>"; .@string$ = "и ^3131FF10 шт.^000000 <ITEMLINK>Iron<INFO>998</INFO></ITEMLINK>"; } else { .@item[0] = 7319; .@amount[0] = 20; .@countitem[0] = countitem(Old_Steel_Plate); .@add = 1; .@string$ = "Принеси мне ^3131FF20 шт.^000000 <ITEMLINK>Used Iron Plate<INFO>7319</INFO></ITEMLINK>"; } if (.@countitem[0] >= .@amount[0] && .@countitem[1] >= .@amount[1]) { mes "Let me guess..."; mes "You've brought me the best quality materials."; mes "Good."; next; mes "[Thorn]"; mes "I can always use more Iron materials."; mes "Instead of a normal reward I'll give you an advanced equipment."; next; mes "[Thorn]"; mes "If at any time you think you have equipment that you need to strengthen come by me again."; delitem .@item[0],.@amount[0]; if (.@countitem[1]) delitem .@item[1],.@amount[1]; para_2nd04 = 3; erasequest (7238 + .@add); setquest 7240; } else { mes .@string$; } } else if (para_2nd04 == 3) { mes "Now, that's it."; mes "That's enough for today."; mes "For now, ask me to strengthen your equipment and I'll do it for you."; next; mes "[Thorn]"; mes "If you have one of these bring them to me."; mes "Eden Group Manteau II, Eden Group Armor IV, Eden Group Boots IV."; } else if (para_2nd04 == 4) { if (questprogress(7241,PLAYTIME) == 1) { mes "Come back later."; mes "You have to wait for some time first."; } else { mes "Uh-huh..."; mes "What are we going to... oh don't worry."; mes "Come to me later."; erasequest 7241; // Errands for Thorn timer para_2nd04 = 0; } } close; case 1: if (para_2nd02 < 1) { mes "Я тебе ничего не должен, проваливай!"; } else if (para_2nd02 == 1) { mes "Ты, должно быть, ^3131FF"+strcharinfo(0)+",^000000 верно?"; mes "Инструктор Ура говорил мне о тебе."; next; mes "У меня для тебя есть один неплохой набор экипировки, носи его с гордостью, ведь ты член ^31CE31Группы Эдем.^000000 И не вздумай продавать что-либо из этого."; next; mes "[Thorn]"; mes "Можешь выбрать для себя ^4d4dffоружие.^000000"; next; mes "[Thorn]"; if (BaseJob == Job_Knight || BaseJob == Job_Crusader) { callsub L_Select,"One-handed sword, two-handed sword or spear.", P_Slayer3,"Eden Group Slayer III","Two-handed Sword, Attack 200", P_Saber3,"Eden Group Saber III","One-handed Sword, Attack 185", P_Sphere1,"Eden Group Spear I","One-handed, Attack 165"; } else if (BaseJob == Job_Assassin) { callsub L_Select,"You have your choice of dagger or katar.", P_Dagger3,"Eden Group Dagger III","Dagger, MATK +80, ATK 165", P_Katar1,"Eden Group Katar I","Katar, ATK 155"; } else if (BaseJob == Job_Rogue || BaseClass == Job_Novice) getitem P_Dagger3,1; else if (BaseJob == Job_Alchemist || BaseJob == Job_Blacksmith) { callsub L_Select,"Your options are Mace, Saber and Axe.", P_Mace3,"Eden Group Mace III","Mace, Attack 172", P_Saber3,"Eden Group Saber III","Sword, Attack 185", P_Two_Handed_Axe1,"Eden Group Axe I","Axe, Attack 195"; } else if (BaseJob == Job_Wizard) getitem P_Staff3,1; else if (BaseJob == Job_Sage) { callsub L_Select,"", P_Staff3,"Eden Group Staff III","Staff, MATK + 170, INT +4, Attack 60", P_Dic1,"Eden Group Dictionary I","Book, MATK +100, Attack 135"; } else if (BaseJob == Job_Priest) { callsub L_Select,"", P_Staff3,"Eden Group Staff III","Staff, MATK + 170, INT +4, Attack 60", P_Dic1,"Eden Group Dictionary I","Book, MATK +100, Attack 135", P_Mace3,"Eden Group Mace III","Mace, Attack 172"; } else if (BaseJob == Job_Monk) { callsub L_Select,"", P_Knuckle1,"Eden Group Knuckles I","Knuckle, Attack 120", P_Mace3,"Eden Group Mace III","Mace, Attack 172"; } else if (BaseJob == Job_Hunter) getitem P_Bow3,1; else if (BaseJob == Job_Bard) { callsub L_Select,"", P_Bow3,"Eden Group Bow III","Bow, Attack 140", P_String_Inst1,"Eden Group Guitar I","Guitar, Attack 125"; } else if (BaseJob == Job_Dancer) { callsub L_Select,"", P_Bow3,"Eden Group Bow III","Bow, Attack 140", P_Tail1,"Eden Group Whip I","Whip, Attack 125"; } else if (Class == Job_Ninja) { callsub L_Select,"", P_Dagger3,"Eden Group Dagger III","Dagger, MATK +80, ATK 165", P_Huuma_Shuriken1,"Eden Group Huuma Shuriken I","Huuma Suriken, MATK +50, ATK 170"; } else if (Class == Job_Star_Gladiator) getitem P_Dic1,1; else if (Class == Job_Soul_Linker) { callsub L_Select,"", P_Dagger3,"Eden Group Dagger III","Dagger, MATK +80, ATK 165", P_Staff3,"Eden Group Staff III","Staff, MATK +170, INT +4, ATK 60"; } else if (Class == Job_Gunslinger) getitem P_Revolver3,1; else { mes "Hmm, you are eligible to receive equipment."; mes "Yeah I understand that."; next; mes "[Thorn]"; mes "Hmm something went wrong though. I'm not sure what..."; close; } para_2nd02 = 2; getitem Para_Team_Hat2,1; getitem Para_Team_Manteau2,1; getitem Para_Team_Boots4,1; getitem Para_Team_Armor,1; mes "Увидимся позже. И удачи тебе в приключениях!"; } else if (para_2nd02 == 2) { mes "Я уже выдал тебе наиболее продвинутую экипировку из имеющихся."; } else { mes "Have you gotten your gear yet?"; mes "I can give you the gear but I can't strengthen it for you."; next; mes "[Thorn]"; mes "Your armor can be strengthened by someone else."; mes "I wish I could but I can't."; } } close; L_Select: mes getarg(0); for ( .@i = 1; .@i < getargcount(); .@i += 3 ) { .@menu$ = .@menu$ + getarg(.@i+1) + ":"; mes getarg(.@i+1)+" : "+ getarg(.@i+2); } next; .@i = (select(.@menu$) -1) *3 +1; mes "[Toren]"; getitem getarg(.@i),1; return; S_Enchant: mes "[Thorn]"; if (countitem(getarg(0)) > 0) { setarray .@bonus[1], Luck2, Mdef4, Def3, Strength2, Mdef6, Def6, Agility2, Mdef8, Def9, Dexterity2, Inteligence2, Vitality2; .@1st = .@bonus[ rand(1,12) ]; .@2nd = .@bonus[ rand(1,12) ]; mes "Eden Group "+ getarg(1) +"?"; mes "I understand."; mes "Remember the stats that are enhanced will be random."; mes "You sure you want me to enhance this?"; next; switch( select( "I changed my mind.", "Yes, enhance it." ) ) { mes "[Thorn]"; case 1: mes "You sure you don't want to enhance it?"; mes "It's your choice."; close; case 2: mes "I understand."; mes "Let's begin the enhancement."; next; specialeffect EF_REPAIRWEAPON; progressbar "ffff00",3; delitem getarg(0),1; para_2nd04 = 4; changequest 7240,7241; getitem2 getarg(0),1,1,0,0,0,0,.@1st,.@2nd; mes "[Thorn]"; mes "Ok, seems that the enhancement went well."; mes "If you don't like the result then you can come back again tomorrow."; close; } } mes "Hmm... Don't you have the "+ getarg(1) +"?"; mes "I don't think you have it with you."; close; } moc_para01,112,79,3 script Weapons Expert BK#2nd11 4_M_REPAIR,{ setarray .@wplist[0], P_Slayer3, P_Saber3, P_Dagger3, P_Katar1, P_Two_Handed_Axe1, P_Sphere1, P_Staff3, P_Mace3, P_Bow3, P_Dic1, P_String_Inst1, P_Tail1, P_Revolver3, P_Knuckle1, P_Huuma_Shuriken1; .@menu$ = "Eden Group Slayer III:" + "Eden Group Saber III:" + "Eden Group Dagger III:" + "Eden Group Katar I:" + "Eden Group Axe I:" + "Eden Group Spear I:" + "Eden Group Staff III:" + "Eden Group Mace III:" + "Eden Group Bow III:" + "Eden Group Dictionary I:" + "Eden Group Guitar I:" + "Eden Group Whip I:" + "Eden Group Revolver III:" + "Eden Group Knuckles I:" + "Eden Group Huuma Shuriken I"; mes "[BK]"; mes "What's happening?"; mes "No way?!"; next; if (select( "Enhancing weapons.", "What?" ) == 2) { mes "[BK]"; mes "Yeah?"; mes "Are you asking me what I know?"; next; select("...??"); mes "[BK]"; mes ".....????"; close; } mes "[BK]"; mes "Ah, you're here to enhance your gear."; mes "Okay, shall we?"; next; mes "[BK]"; if (para_2nd02 < 2) { mes "You have to have the equipment first in order for me to do anything."; mes "Didn't you get anything from Thorn yet?"; } else if (para_2nd02 == 2) { if (para_2nd01 < 11) { mes "Hmm, no."; mes "I don't have permission from Instructor Ur."; mes "You have to finish your training."; next; mes "[BK]"; mes "Once you do that I can help you."; mes "Until then I won't talk to you."; } else { mes "Okay, what weapon do you want to enhance?"; next; .@s = select(.@menu$) -1; mes "[BK]"; if (countitem(.@wplist[.@s]) > 0) { mes "Ok for the first reinforcement."; mes "ATK + 3% or MATK + 3%?"; mes "I'll give you the option to grant this effect on the selected gear."; next; mes "[BK]"; mes "You can't change your mind after so choose wisely."; next; if (select( "ATK +3%","MATK +3%" ) == 1) { .@string$ = "Ok, you've chosen to raise physical attack."; .@card = Atk3; } else { .@string$ = "Ok, you've chosen to raise magical attack."; .@card = Matk3; .@add = 1; } mes "[BK]"; mes .@string$; mes "Would you look at that. Your weapon will now be stronger."; para_2nd03 = 1 + .@add; next; specialeffect EF_REPAIRWEAPON; progressbar "ffff00",3; para_2nd02 = 3; delitem .@wplist[.@s],1; getitem2 .@wplist[.@s],1,1,0,0,0,0,0,.@card; mes "[BK]"; mes "Isn't it magnificent?"; mes "I know, I know, I'm pretty amazing!"; } else { mes "Are you kidding me?"; mes "You don't seem to have that weapon in your possession."; } } } else if (para_2nd02 == 3) { if (para_2nd01 < 16) { mes "Hmm, I'm not sure you're ready."; mes "All 3 steps of Instructor Ur's missions have to be completed first."; next; mes "[BK]"; mes "You get what I'm saying?"; mes "Finish the third mission from Instructor Ur."; } else { mes "Good. So you previously received an addition to Atk or Matk."; mes "For this option you can choose from Brute, Plant, Fish, Dragon, Increased Heal."; next; mes "[BK]"; mes "Once you've chosen you can't change your mind again."; mes "But your weapon will increase damage to the type of enhancement you pick."; next; mes "[BK]"; mes "Basically I will add a random monster card with the property type that you choose."; mes "Good luck!"; next; switch( select( "Brute Type", "Plant Type", "Insect Type", "Fish Type", "Dragon Type", "Increased Heal" ) ) { case 1: setarray .@arg[0],Goblin_Card,Bradium_Goram_Card,111; .@type$ = "Brute"; break; case 2: setarray .@arg[0],Scorpion_Card,Nepenthes_Card,121; .@type$ = "Plant"; break; case 3: setarray .@arg[0],Caramel_Card,Pinguicula_Card,131; .@type$ = "Insect"; break; case 4: setarray .@arg[0],Flora_Card,Naga_Card,141; .@type$ = "Fish"; break; case 5: setarray .@arg[0],Petit_Card,Egg_Of_Draco_Card,151; .@type$ = "Dragon"; break; case 6: setarray .@arg[0],Heal_Amount2,Heal_Amount2,161; } mes "[BK]"; for ( .@i = 0; .@i < 15; .@i++ ) { if (countitem(.@wplist[.@i]) > 0) { if (.@arg[0] == Heal_Amount2) mes "Good. Your weapon will now increase Heal effectiveness."; else mes "Good. Your weapon will increase attacks to "+ .@type$ +" type monsters."; next; specialeffect EF_REPAIRWEAPON; progressbar "ffff00",3; delitem .@wplist[.@i],1; para_2nd02 = 4; if (para_2nd03 == 1) { para_2nd03 = .@arg[2]; getitem2 .@wplist[.@i],1,1,0,0,0,0,.@arg[0],Atk3; } else { para_2nd03 = .@arg[2] + 100; getitem2 .@wplist[.@i],1,1,0,0,0,0,.@arg[1],Matk3; } mes "[BK]"; mes "Isn't it magnificent?"; mes "I know, I know, I'm pretty amazing!"; close; } } mes "Sorry, but it doesn't seem like you have a weapon that can be enhanced."; mes "How did this happen?"; close; } } else if (para_2nd02 == 4) { if (para_2nd01 < 30) { mes "Instructor Ur has a lot of training missions doesn't he?"; mes "There's only one more stage."; mes "Reach the final stage of training."; } else { mes "Okay, this is the last step."; mes "I will make your weapon even more enhanced."; next; mes "[BK]"; mes "The card added from the previous step will be doubled."; mes "And if you have a healing weapon it will increase it's healing efficiency."; mes "You understand?"; next; mes "[BK]"; mes "Ok what weapon did you have now?"; next; .@s = select(.@menu$) -1; mes "[BK]"; if (countitem(.@wplist[.@s]) > 0) { mes "Doubling the strength of your bonus stat."; next; specialeffect EF_REPAIRWEAPON; progressbar "ffff00",3; delitem .@wplist[.@s],1; para_2nd02 = 5; if (para_2nd03 == 111) getitem2 .@wplist[.@s],1,1,0,0,0,Goblin_Card,Goblin_Card,Atk3; else if (para_2nd03 == 121) getitem2 .@wplist[.@s],1,1,0,0,0,Scorpion_Card,Scorpion_Card,Atk3; else if (para_2nd03 == 131) getitem2 .@wplist[.@s],1,1,0,0,0,Caramel_Card,Caramel_Card,Atk3; else if (para_2nd03 == 141) getitem2 .@wplist[.@s],1,1,0,0,0,Flora_Card,Flora_Card,Atk3; else if (para_2nd03 == 151) getitem2 .@wplist[.@s],1,1,0,0,0,Petit_Card,Petit_Card,Atk3; else if (para_2nd03 == 161) getitem2 .@wplist[.@s],1,1,0,0,0,Heal_Amount2,Heal_Amount2,Atk3; else if (para_2nd03 == 211) getitem2 .@wplist[.@s],1,1,0,0,0,Bradium_Goram_Card,Bradium_Goram_Card,Matk3; else if (para_2nd03 == 221) getitem2 .@wplist[.@s],1,1,0,0,0,Nepenthes_Card,Nepenthes_Card,Matk3; else if (para_2nd03 == 231) getitem2 .@wplist[.@s],1,1,0,0,0,Pinguicula_Card,Pinguicula_Card,Matk3; else if (para_2nd03 == 241) getitem2 .@wplist[.@s],1,1,0,0,0,Naga_Card,Naga_Card,Matk3; else if (para_2nd03 == 251) getitem2 .@wplist[.@s],1,1,0,0,0,Egg_Of_Draco_Card,Egg_Of_Draco_Card,Matk3; else if (para_2nd03 == 261) getitem2 .@wplist[.@s],1,1,0,0,0,Heal_Amount2,Heal_Amount2,Matk3; mes "[BK]"; mes "Isn't it magnificent?"; mes "I know, I know, I'm pretty amazing!"; } else { mes "Hey, you think I'm joking?"; mes "Do you have the weapons or not?"; } } } else if (para_2nd02 > 4) { mes "How do you like your enhanced weapon?"; mes "Hopefully it has helped you."; next; mes "[BK]"; mes "I've given you the peak of your weapon's efficiency."; mes "Weapons aren't the only things that need strength, though, don't you agree?"; next; mes "[BK]"; mes "Come on admit it."; mes "Thorn gave inspiration and I intend on providing strong equipment, that's how to live life."; mes "Hahahaha!"; } close; } Изменено 7 августа, 2017 пользователем ucell-uz Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 11 час назад, ucell-uz сказал: кеник это ты имеешь в виду то что идёт через таб? ну если да я не думаю что это проблема -) Именно это. Читать тяжело (: И это как раз-таки проблема.. Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 7 августа, 2017 Автор Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) 10 минуту назад, Кеник сказал: Именно это. Читать тяжело (: И это как раз-таки проблема.. ну я конечно извиняюсь, я использую разрешение экрана 1440х900 и меня устраивает, конечно если использовать 2990х1680 логично что всё мелкое будет) Изменено 7 августа, 2017 пользователем ucell-uz Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) Отвечу тут, По тому что другим пачянам будет интересно... наверное.... Доска Эдэма 91-99, код скрипта сумбурен и трудно читаем, Хабиля с нуля напишет такой квсест с использованием элементов из скрипта доска эдема 91-99 Хабиля напишет похожий скрипт, который-бы соответствовал стандартам Хабили в скриптинге и кодинге. По тому что Хабиле нужен скрипт ежедневной охоты. суть каждый день квест не даеться насильно, свой ежедневный квест можно выбрать из 3 наборов - легкий (охота на монстров соответсвующих уровню игрока) - средний (Охота на монстров чуть сильнее уровня игрока) - сложный (Охота на монстров значительно сильнее уровня игрока) Каждый день наборы монстров на которых можно поохотиьься меняються.... пока времени особо нет... извините.... Изменено 7 августа, 2017 пользователем Habilis Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 7 августа, 2017 Автор Жалоба Поделиться Опубликовано 7 августа, 2017 3 минуты назад, Habilis сказал: Отвечу тут, По тому что другим пачянам будет интересно... наверное.... Доска Эдэма 91-99, код скрипта сумбурен и трудно читаем, Хабиля с нуля напишет такой квсест с использованием элементов из скрипта доска эдема 91-99 Хабиля напишет похожий скрипт, который-бы соответствовал стандартам Хабили в скриптинге и кодинге. По тому что Хабиле нужен скрипт ежедневной охоты. пока времени особо нет... извините.... ну чтож мистер хабиб, будим ждать! Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 Потом ты из этого скрипта сможешь выдернуть что тебе нужно... Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 7 августа, 2017 Автор Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) 3 минуты назад, Habilis сказал: Потом ты из этого скрипта сможешь выдернуть что тебе нужно... надеюсь что разберусь что и откуда резать -) мне основное это чтобы квест проходился 1 раз, и только 1 чаром, чтобы за выполненную доску давали итем, мессаги с сообщением что вы не можете проходить эту доску поскольку она уже вся пройдена, чтобы мобов нельзя было брать паралельно с мессагой типо ты не можешь взять другого моба пока не пройдёшь то что у тебя взято я конечно не в курсе что вы там готовите, но думаю это будет интересно Изменено 7 августа, 2017 пользователем ucell-uz Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) Можещь попробовать сам, это не так сложно... особенно если прочтещь и поймещь это Из доков герка по скриптингу http://herc.ws/wiki/Basic_Scripting Цитата name - permanent character integer variable name$ - permanent character string variable Так декларируеться (несгораемая) переменная привязванная к чару (цифры/текст) 1 час назад, ucell-uz сказал: чтобы квест проходился 1 раз, и только 1 чаром, lastEdemBoardStatus = 1; Почему Хабиля всем переменным дал префикс LastEdemBoard? чтобы обозначить доску 91-99, Хабиля назвал ее последняя по тому что цифры в переменных Хабилю пугают.... Переменная выдающяя статус (название должно быть уникальным) 0 (не инициированв, по дефолту у всех) 1 доска выполняеться 2 доска пройдена ставиш 1 когда хотябы 1 задание взято По эитой переменной проверяеш пройденность доски. Когда даешь приз, выставляешь 2 lastEdemBoardStatus = 2; Тут уже чуть-чуть сложнее, но все равно уровень сложности, не очень... 1 час назад, ucell-uz сказал: чтобы мобов нельзя было брать паралельно с мессагой типо ты не можешь взять другого моба пока не пройдёшь то что у тебя взято Тут нужно 2 переменные LastEdemBoardCurrentMission = 1; LastEdemBoardMissions$ = "|1|4|7|"; LastEdemBoardCurrentMission - последняя взятая миссия ( йд кейса в котором монстр) Когда миссия выполнена ставишь 0 потом сравниваешь if(LastEdemBoardCurrentMission != 0) { уже какая-то миссия взята, не даешь миссию } else { даешь миссию } LastEdemBoardMissions$ - переменная содержащяя какие мисси уже пройдены почему такой формат? "|1|4|7|" , в (несгораемые) переменные нельзя сохранить массив... (Хабиле кажеться....) Это обход этого запрета, суда сохраняються уже пройденные миссии Если хочешь чтобы миссию можно было пройти 1 только раз.... Сложность тут только в том чтобы каждый раз это "|1|4|7|" приображать в массив и при надобности обратно в такой-же формат для сохранения... УПД : Что именно хочет Хабиля, так это ежедневные задания но для Пре-РЕ (Эдем борды для РЕ серверов) Хабиля хочет разбросать Доски с обьявлениями об Охоте по разным городам с разными уровнями 11-25 Излюд 26-40 Моррок 41-55 56-70 71-85 86-90 91-99 Задание можно отметить как выполненое на самой доске, и получаешь Експы чуток и зеней А в пронтере в здании у кузнеца будет стоять такой БИЧ кароч и он будет давать награды за пройденые доски (когда всю доску прошел) У него можно посмотреть и трофеии свои кароч Пока ниче не решил нада продумать-прикинуть чо как чо каво... Изменено 7 августа, 2017 пользователем Habilis Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 2 часа назад, ucell-uz сказал: ну я конечно извиняюсь, я использую разрешение экрана 1440х900 и меня устраивает, конечно если использовать 2990х1680 логично что всё мелкое будет) Разрешение-то тут причем? У меня браузер обычно на половину ширины экрана развернут, да (: Сравни: Скрытый текст moc_para01,23,35,5 script Инструктор Ура#2nd01 4_M_KNIGHT_BLACK,{ set $@npcnames$,"^BC7F15[ Инструктор Ура ]^000000"; if (countitem(Para_Team_Mark) < 1) { mes $@npcnames$; mes "Пожалуйста, зарегистрируйся у ^3355FFСекретаря Эдема^000000."; } else if (para_2nd01 == 0) { if (BaseLevel < 60) { mes $@npcnames$; mes ""; if(Sex == 1) mes "Сожалею, но ты должен достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; else { mes "Сожалею, но ты должна достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; } close; } else if (BaseLevel < 70) { mes $@npcnames$; mes "Ты как раз вовремя! у меня для тебя есть новый квест. Что скажешь, готов начать его сейчас?"; next; switch(select("Да:Нет")) { case 1: mes $@npcnames$; И то, о чем я говорю: Скрытый текст moc_para01,23,35,5 script Инструктор Ура#2nd01 4_M_KNIGHT_BLACK,{ set $@npcnames$,"^BC7F15[ Инструктор Ура ]^000000"; if (countitem(Para_Team_Mark) < 1) { mes $@npcnames$; mes "Пожалуйста, зарегистрируйся у ^3355FFСекретаря Эдема^000000."; } else if (para_2nd01 == 0) { if (BaseLevel < 60) { mes $@npcnames$; mes ""; if(Sex == 1) mes "Сожалею, но ты должен достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; else { mes "Сожалею, но ты должна достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; } close; } else if (BaseLevel < 70) { mes $@npcnames$; А еще вот в таких местах лучше явно использовать фигурные скобки Скрытый текст if(Sex == 1) mes "Сожалею, но ты должен достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; else { mes "Сожалею, но ты должна достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; } Дважды перечитал, чтобы понять к какому if'у относится else. Это все не влияет на работоспособность скрипта, но влияет на дальнейшую поддержку (откроешь через 3 месяца и гораздо быстрее поймешь что и к чему) и на восприятие твоих скриптов другими людьми (ты же их не себе в копилку складываешь, а шаришь для всех) "Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте" (с) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) 5 минут назад, Кеник сказал: "Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте" (с) Совершенно согласен, те кто работали с Хабилей подтвердят... только Хабиля пачанов никогда не выслежиывает а п*дюлей дает прям наместе! Изменено 7 августа, 2017 пользователем Habilis 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) УПД: Кеник, увы такая х*ня в рияльных скриптах герка к примеру из доски 11-25 for(.@i = 11124; .@i<11134; ++.@i) if (questprogress(.@i,PLAYTIME) == 2) erasequest .@i; В нотпад++ скобки подцеркиваються (кто знает о чем Хабиля тот поймет) И хабиля привык ориентироваться по подчеркнутым скобкам карочь..... Ну щяс кароч пукан подостудил, ладно, тут все по одной строчке... хуль if (getarg(3,0)) if (countitem(getarg(3)) < getarg(4)) { mes "[Spike]"; mes "You don't have enough "+getitemname(getarg(3))+"."; mes "You need to bring "+getarg(4)+" "+getitemname(getarg(3))+"."; close; } БЛИААААА..... Изменено 7 августа, 2017 пользователем Habilis Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 5 минут назад, Habilis сказал: УПД: Кеник, увы такая х*ня в рияльных скриптах герка к примеру из доски 11-25 for(.@i = 11124; .@i<11134; ++.@i) if (questprogress(.@i,PLAYTIME) == 2) erasequest .@i; В нотпад++ скобки подцеркиваються (кто знает о чем Хабиля тот поймет) И хабиля привык ориентироваться по подчеркнутым скобкам карочь..... Ну так неполный кусок кода) Если там что-то вроде mes .npcname$; mes "Ololo"; next; for(.@i = 11124; .@i<11134; ++.@i) if (questprogress(.@i,PLAYTIME) == 2) erasequest .@i; mes .npcname$; mes "bye-bye"; close; Это нормально. И читается нормально. Когда if, внутри него if, в конце этого еще один if и сразу else if. Сиди и гадай к чему этот else, особенно с корявыми отступами. Я тут вижу if без скобок, после него else такой же однострочный, но уже со скобками. Машинально понимаю, что он относится к предыдущему if, а не соседнему if(Sex == 1) mes "Сожалею, но ты должен достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; else { mes "Сожалею, но ты должна достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; } Ссылка на комментарий Поделиться на другие сайты Поделиться
Habilis Опубликовано 7 августа, 2017 Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) Все равно х*ня.... Лучше не экономить строчки тем что скобки убираешь... Изменено 7 августа, 2017 пользователем Habilis Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 7 августа, 2017 Автор Жалоба Поделиться Опубликовано 7 августа, 2017 (изменено) ну ёлы палы, я же не профи, чего вы от меня хотите )) возможно есть ошибки малые, но я на них обращаю внимание только когда эмуль ругается в консоли мне главное работоспособность скрипта, а то что скрывается за кодом, ну я уж хз, яж говорю я краб, но слава богу все скрипты рабочие ну чёж поделать поймите и простите)) если вы профи в скриптинге, вы сами уже подправите, я не юзаю нотепад++ юзаю обычный виндовый блокнот xD ещё раз напомню...обращаю внимание когда скрипт даёт эрор в консоли, собираю скрипты ну как вам сказать)) методом тыка, если мучится чё-нить и получится if(Sex == 1) mes "Сожалею, но ты должен достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; else { mes "Сожалею, но ты должна достигнуть, как минимум, ^FF000060 Базового Уровня,^000000 чтобы начать мои квесты."; } я срезал с квеста на получение профы мага, только тогда я заметил что выбор пола тут расчитан, увы значить сам изначально в скрипте была допущена ошибка, с самого паблика, не судите строго но как было, так я и срезал, и я долго мучился чтобы его пристроить в другой скрипт, потому что када я срезал были эроры, помощи я как такого в скриптинге ни у кого не прошу, не то что стыдно просто заваливать не хочу тупыми постами, и ждать ответа на него долго не хочется, поэтому и собираю методом тыка, результат есть, работает главное и норм... Изменено 7 августа, 2017 пользователем ucell-uz 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 8 августа, 2017 Жалоба Поделиться Опубликовано 8 августа, 2017 7 часов назад, ucell-uz сказал: ну ёлы палы, я же не профи, чего вы от меня хотите )) возможно есть ошибки малые, но я на них обращаю внимание только когда эмуль ругается в консолимне главное работоспособность скрипта, а то что скрывается за кодом, ну я уж хз, яж говорю я краб, но слава богу все скрипты рабочие ещё раз напомню...обращаю внимание когда скрипт даёт эрор в консоли, собираю скрипты ну как вам сказать)) методом тыка, если мучится чё-нить и получится Порочная логика. "мне главное работоспособность скрипта, а то что скрывается за кодом, ну я уж хз" - такое работает когда только для себя делаешь. Тебе с этим потом и мучиться. И я ведь говорю не с целью сказать, что ты дурак, а чтобы ты понял о чем я и в будущем обращал на это внимание. Лично для меня - грош цена твоим скриптам сейчас. Я быстрее сам напишу, чем разберусь, что у тебя написано и приведу в порядок. Цитата я не юзаю нотепад++ юзаю обычный виндовый блокнот xD Сказал, будто это аргумент.. Чтоб тебе рабочие с мебельной фабрики говорили "Мы не юзаем современные инструменты, только топор и нож xD", ну и мебель соответствующую привозили. 7 часов назад, ucell-uz сказал: я срезал с квеста на получение профы мага, только тогда я заметил что выбор пола тут расчитан, увы значить сам изначально в скрипте была допущена ошибка, с самого паблика, не судите строго но как было, так я и срезал, и я долго мучился чтобы его пристроить в другой скрипт, потому что када я срезал были эроры, помощи я как такого в скриптинге ни у кого не прошу, не то что стыдно просто заваливать не хочу тупыми постами, и ждать ответа на него долго не хочется, поэтому и собираю методом тыка, результат есть, работает главное и норм... Логика из разряда "Мопед не мой, я только объявление разместил" 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
ucell-uz Опубликовано 8 августа, 2017 Автор Жалоба Поделиться Опубликовано 8 августа, 2017 (изменено) if(Sex) mes "..."; else mes "..."; clauses with simple mes "Welcome, " + (Sex?"Mr.":"Mrs.") + " " + strcharinfo(0); согласен, дурак, но на тот момент я не знал что есть папка /док/ скрипты переводил конечно же для себя, а выкладывал ну ро умирает, хотел привлечь публику видать придётся код проверять, на ошибки, или пере-собрать, ну и на том спс.. Юна и Юпи hercules путь к скрипту /hercules-master/npc/cities/prontera.txt Скрытый текст prontera,160,133,2 script Юпи#pront 8_F,{ if(#language == 1) { set $@npcnames$,"^BC7F15[ Юпи ]^000000"; mes $@npcnames$; if(Sex) mes "Хотя многие монстры могут выглядеть одинаково, будь осторожен! ^000000 Среди монстров с одинаковой базовой формой есть разновидности."; else mes "Хотя многие монстры могут выглядеть одинаково, будь внимательна! ^000000 Среди монстров с одинаковой базовой формой, есть разновидности."; next; mes $@npcnames$; if(Sex) mes "Монстр, выглядящий в точности так же, как мирное и слабое существо, с которым ты уже сталкивался, может оказаться диким и злобным!"; else mes "Монстр, выглядящий в точности так же, как мирное и слабое существо, с которым ты уже сталкивалась, может оказаться диким и злобным!"; next; mes $@npcnames$; mes "Отличить разновидности монстров друг от друга можно по их цвету. Дикие и более серьёзные монстры, раскрашены в более опасный цвет."; close; } if(#language == 2) { set $@npcnames$,"^BC7F15[ YuPi ]^000000"; mes $@npcnames$; mes "Although many monsters may look the same, be careful! There are variations among monsters that have the same basic form."; next; mes $@npcnames$; mes "One monster, that looks just like a peaceful and weak one that you've already encountered, may actually be wild and ferocious!"; next; mes $@npcnames$; mes "You can tell these kinds of monsters apart by their body color. Wilder and more powerful monsters have more dangerous looking colors."; close; } } prontera,148,203,2 script Юна#pront 8_F_GIRL,{ if(#language == 1) { set $@npcnames$,"^BC7F15[ Юна ]^000000"; mes $@npcnames$; mes "Узри..."; mes "Могущественного Одина !"; mes "Бога Мудрости !"; mes "Бога Войны !"; next; mes $@npcnames$; mes "Здесь, в Рун-Мидгарде, мы служим Одину, и грозному богу, который пожертвовал одним из своих глаз, чтобы обрести мудрость."; next; mes $@npcnames$; mes "Скульптура, которую ты видишь - это статуя могущественного Одина. ^000000 Правда, это сущий позор, потому что она на него обсалютно не похожа."; next; mes $@npcnames$; if(Sex) mes "Могу поспорить, когда ты увидел эту статую впервые, ты подумал... ^3355FF 'Ах, что за мускулистый мужчина на коне^000000.'"; else mes "Могу поспорить, когда ты увидела эту статую впервые, ты подумала, ^3355FF 'Ах, что за мускулистый мужчина на коне^000000.'"; next; mes $@npcnames$; mes "Но эта статуя явно не достатачно мускулиста и не достатачно божественна, чтобы дать верное представление о боге ! ^000000 Может, если бы у него был бы нимб?"; close; } if(#language == 2) { set $@npcnames$,"^BC7F15[ YuNa ]^000000"; mes $@npcnames$; mes "Behold..."; mes "Mighty Odin !"; mes "God of Wisdom !"; mes "God of War !"; next; mes $@npcnames$; mes "Here, in Rune-Midgard, we serve Odin, and the fearsome god who sacrificed one of his eyes in order to acquire wisdom."; next; mes $@npcnames$; mes "I mean, this statue is totally different from our image of Odin. ^000000 I guess the sculptor took too many artistic liberties."; next; mes $@npcnames$; mes "I bet the first time you saw this statue, you thought... ^3355FF 'Oh, what a nice muscle man on a horse^000000.'"; next; mes $@npcnames$; mes "But this statue is obviously not muscular enough, not godly enough to fairly represent a god ! ^000000 Maybe if he had a halo?"; close; } } будем надеяться что данный скрипт соответствует вашим стандартам, я не хочу ни под кого подстраиваться, делаю как для себя так и для юзеров... Если вы спросите почему такие отступы в тексте скрипта в разговоре, отвечу сразу в самой игре чтобы это выглядело читаимо... Изменено 8 августа, 2017 пользователем ucell-uz Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения