[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Подскажите пожалуйста!
KorsarДата: Пятница, 23.11.2007, 14:45 | Сообщение # 1
...
Группа: Администраторы
Сообщений: 61
Статус: Offline
Народ, подскажите пожалуйста как мне сделать чтобы если к нпс во второй раз подходишь он говорил типа *Это снова ты?! Я же сказал тебе больше ко мне не подходить!*.... я просто делаю свой квест на мага и каждый раз когда Волшебник дает задание и если к нему еще раз подойти он снова начнет разговор сначала, я хочу чтобы было так - Когда подходишь и берешь задание как надо, а когда 2 раз подходишь без итемов от задания от говорит *Ты не собрал итемы*, а когда приходишь с итемами он грит то да се варит зелье и делает тя магом... Вот скрипт:
//This script сделан через блокнот Командой УфаРаггейм, она состоит из одного человека)) - Korsar...
//version 1.30
prontera.gat,158,188,5 script Волшебник 64,{
if (class == 0) goto novoice;
if (class == 12) goto assassin;
mes "[Волшебник]";
mes "Здравствуй "+strcharinfo(0)+", чем я могу тебе помочь?";
next;
menu "Я хочу быть магом",nomage,"Откуда ты знаешь мое имя?",knowname,"Нет, ничего, до свидания...",nono;
nomage:
mes "[Волшебник]";
mes "Боюсь что это невозможно, ты уже имеешь профессию...";
mes "Ничем помочь не могу, до свидания...";
close;
end;
knowname:
mes "[Волшебник]";
mes "Я много чего знаю...";
mes "Когда дело касается магии не стоит задавать лишних вопросов...";
menu "Ладно, я хочу быть магом!",nomage,"Ясно, ну ладно, до свидания...",nono;
nono:
mes "[Волшебник]";
mes "До свидания...";
mes "Возможно еще увидимся...";
close;
end;
assassin:
mes "[Волшебник]";
mes "Боюсь вам придется удалиться, не терплю Убийц!!!";
mes "Если ты сейчас же не уйдешь, мне предется применить магию!";
next;
mes "[Волшебник]";
mes "У тебя еще есть время чтобы уйти пока я тебя не отправил на тот свет!";
next;
menu "Попробуй, салага!",assassindie,"Я уже ухожу...",assassingo;
assassindie:
warp "prontera.gat",160,190;
monster "prontera.gat",160,190,"Вызванный Магом",1139,3,"Волшебник";
assassingo:
mes "[Волшебник]";
mes "Хорошо!";
close;
end;
novoice:
mes "[Волшебник]";
mes "Здравствуй, "+strcharinfo(0)+", чем могу помочь?";
next;
menu "Я хочу быть магом",mage,"Откуда ты знаешь мое имя?",knowname,"Нет, ничего, до свидания...",nono;
mage:
mes "[Волшебник]";
mes "Хм... Ты уверен? Магом быть непросто, тебе придется полностью углубиться в чтение различных книг...";
mes "Это серьезный выбор...";
next;
mes "[Волшебник]";
mes "Что решишь?";
next;
menu "Да, я хочу быть магом!",mageone,"Расскажи мне о магах...",mageinfo,"Нет, я передумал...",nono;
mageinfo:
mes "[Волшебник]";
mes "Хм... Ты любопытен, это черта мага...";
mes "Ну что я могу рассказать, маг использует силы природы для установление порядка. Но существуют и темные маги, о которых я тебе не буду рассказывать...";
next;
mes "[Волшебник]";
mes "Главная характеристика мага - интелект, от интелекта зависит урон от заклинаний... Я бы тебе посоветовал бы развивать интелект и сноровку, что ускоряет наложение заклинания, я сам развивал интелект и сноровку, поэтому знаю что это отличный маг!";
next;
mes "[Волшебник]";
mes "Ну вот и все что я мог рассказать тебе о магах...";
next;
menu "Отлично! Хочу быть магом!",mageone,"Я передумал... До свидания...",nono;
mageone:
if (JobLevel != 10) goto nojoblvl;
if (skillpoint != 0) goto skpoint;
mes "[Волшебник]";
mes "Хм, я смотрю ты подготовился, молодец!";
mes "Из тебя выйдет хороший маг!";
next;
mes "[Волшебник]";
mes "Но тебе придеться выполнить одно задание...";
next;
mes "[Волшебник]";
mes "Что, еще не передумал? (Смеется)";
menu "Нет конечно.",qest,"Нее, не хочу задание!",noqest;
noqest:
mes "Тогда извини, до свидания... Я не могу тебя сделать магом если ты не выполнишь задание...";
next;
menu "Почему?",whynomage,"Пока!",nono;
whynomage:
mes "[Волшебник]";
mes "Все очень просто! Я могу сделать тебя магом только наделив тебя силой стихий...";
mes "Наделить я тебя могу лишь приготовив специальное зелье из некоторых ингредиентов, которые ты должен принести, но отказываешся...";
next;
mes "[Волшебник]";
mes "Отказываешся выполнять задание, не будет ни ингридиентов, ни квалификации... Понял?";
next;
menu "Ладно, что принести?",qest,"Пойду ка я отсуда!",nono;
nojoblvl:
mes "[Волшебник]";
mes "Ты должен достигнуть 10 профессионального уровня, иди готовся дальше...";
close;
end;
skpoint:
mes "[Волшебник]";
mes "У тебя остались нераспределенные очки умений, распредили ка их сначала...";
close;
end;
qest:
mes "Ты должен принести мне одну очень твердую скорлупу, простую скорлупу, четыре стебля, молоко и пустую колбочку...";
mes "Это все, что ты должен принести...";
close;
end;
Вот тут я запутался(((
if (countitem(936) < 1) || (countitem(935) < 1) || (countitem(519) < 1) || (countitem(905) < 4 ) || (countitem(1092) < 1) goto itemerror;
delitem 936,1;
delitem 519,1;
delitem 905,4;
delitem 1092,1;
mes "[Волшебник]";
mes "О, я вижу ты все принес, теперь подожди немного...";
mes "...................................................";
mes "^0000ff*Смешивает все в колбочке*^000000";
mes "^0000ff*Заливает молоко*^000000";
mes "^0000ff*Бормочет какие то непонятные слова..*^000000";
next;
mes "[Волшебник]";
mes "На ка, выпей это...";
next;
mes "[Волшебник]";
mes "Поздравляю! Ты теперь маг!";
jobchange 2;
close;
end;
itemerror:
mes "[Волшебник]";
mes "Ты не принес ингридиенты, я не могу пока что тебя сделать магом, найди их и тогда я сварю зелье, а пока что до свидания...";
close;
end;
}


Я не РоСкриптер
Я только учусь).....

P.S. Буду рад если научите разбираться в ГРФ архивах)

Сообщение отредактировал Korsar - Пятница, 23.11.2007, 14:46
 
DimkinSДата: Понедельник, 03.12.2007, 13:39 | Сообщение # 2
Poring
Группа: Пользователи
Сообщений: 4
Статус: Offline
Элементарно!
Просто делаешь такую конструкцию:

Первый раз подошел - поболтал, выставляешь флаг set A1,1;
Второй раз в начало кода прописываешь:
if (A1 == 1) {mes "Ты уже у меня был!"; close}

т.е получается код к примеру:

prontera.gat бла-бла-бла {
if (A1 == 1) {mes "Хм. Я тебе уже дал подарок. Пошел вон! Наглец!"; close;}
mes "О, привет, ты новенький, вот держи подарок!";
getitem 616,1;
set A1,1;
close;
}

//----------------------------------------------------
в твоем случае:
prontera.gat бла-бла-бла {

if (A1==1) {
if (countitem(616)>0) {mes "О ты все принес!"; goto L_mag; //переход на метку превращения в мага};
//в противном случае, если нет ОКА в кармане будет выполнено:
mes "Опять ты ничего не принес! Я же сказал принести мне 1 ОКА.";
close;
}

mes "Иди и принеси мне 1 ОКА и ты станешь магом.";
set A1,1;
close;

L_mag:
jobchange бла-бла-бла
mes "Теперь ты маг!";
close;

}

//============================
я редко читаю форум и новые сообщения. Если что ася 287944102

Сообщение отредактировал DimkinS - Понедельник, 03.12.2007, 13:50
 
KorsarДата: Четверг, 06.12.2007, 12:13 | Сообщение # 3
...
Группа: Администраторы
Сообщений: 61
Статус: Offline
Спасибо большое, ты единственный кто мне на понятном языке объяснил эту систему, но я уже во всем разобрался сам) В любом случае спасибо)

Я не РоСкриптер
Я только учусь).....

P.S. Буду рад если научите разбираться в ГРФ архивах)

 
  • Страница 1 из 1
  • 1
Поиск: