Назад

Шаблон простого итем квеста

Автор: Renegade: Дата: 05.25.2010

Это был мой самый первый скрипт. Теперь его использую для создания новых квестов и небольших ивентов переписывая и дополняя. Возможно кому-то пригодится.



prontera.gat,168,162,5 script Отец Онуфрий 60, {

if (nya_1 = 2) {

mes "Ты уже получил свой ништячок";

close;
}
else if(nya_1 < 1){
mes "блаблабла привет";
next;
mes "привет ^_^";
next;
mes "хочеш ништячок?";
next;
switch(select("Конечно!:Да ну..")){
case 1:{
mes "Найди Попа Василия в порингленде, он даст тебе ништячок.";
set nya_1, 1
}
case 2:
{
set nya_1, 0;
close;}
}




pay_fild04,23,230,3 script Поп Василий 46{
set .npc$,"[Поп Василий]";
if (checkweight(1201,1) == 0) {
mes .npc$;
mes "- Подожди! -";
mes "- По моему -";
mes "- У тебя с собой слишком много вещей. -";
mes "- Положи чтото в кафру! -";
close;
}

if (nya_1 < 1) {

mes .npc$;
mes "- Ик! -";

close;
}
else if(nya_1 = 1){
mes .npc$;
mes "О, тебя прислал Отец Онуфрий";
next;
mes "Да, он сказал у тебя есть для меня ништячок ^____^";
next;
mes .npc$;
mes "Есть, но просто так ты его не получишь, нужно принести мне коечто";
next;
mes "Ясненько";
next;
switch(select("Взятся:Не хочу ништячокв")){
case 1:{
mes .npc$;
mes "Итак, я могу дать тебе ништячок";
next;
mes "И как мне его получить??";
next;
mes .npc$;
mes "Для этого тебе надо:";
mes "100 Jellopy ";
mes "50 Empty Bottle";
mes "1 Unripe Apple";
next;
mes "Приниси мне эти вещи и я дам тебе долгожданный ништячок!";
if (countitem(909) > 99 && countitem(713) > 49 && countitem(619) > 0) {
next;
mes .npc$;
mes "Ты вернулся...Надеюсь у тебя все с собой?";
switch(select("Да у меня все с собой!:Уйти!")){
case 1: {
mes .npc$;
mes "Отлично я даю тебе твои чесно заслуженные ништячки";
delitem 909,100;
delitem 713,50;
delitem 619,1;
getitem 603,10;
set nya_1, 2;
}
case 2:
close;
}
close;
}
next;
mes "Приходи когда соберешь все нужные вещи!";
close;
}
case 2:
close;
}
}

Автор: XKoriKX: Дата: 05.25.2010

prontera,150,150,6 script Квестер 78,{
mes "Квестер";
mes "Ку ,"+strcharinfo(0)+".";
mes "Хочишьли ты пройти кастом квестик на ";
mes ""+getitemname(#fedol)+"";
next;
menu "Да",L_Jump,"Нет",L_figu;
L_Jump:
if (getgmlevel() < 60) { goto L_NEGM; }
mes "Ты можешь поменять требуемый лут на квест,и вещь которая будет за него даваться.";
next;
mes "Будешь менять вещь?";
next;
switch(select("Да","В магазин")) {
case 1:
mes "Выбери сколько вещей нужно на квест.";
next;
menu "1",L_1,"2",L_2,"3",L_3,"4",L_4,"5",L_5,"6",L_6;
L_1:
mes "Вводим Id вещи, а потом кол-во требуемое на квест.";
input #kupar1;
input #lololol1;
mes "Вы выбрали "+getitemname(#kupar1)+","+#lololol1+".";
next;
mes "Введите Id вещи, которую вы получите по прохождению квеста.";
input #fedol; mes "Это будет "+getitemname(#fedol)+".";
next;
mes "Введи кол-во денег, требуемую за вещь.";
input #zene4ki;
set #google,1;
close;
L_2:
mes "Вводим Id вещи, а потом кол-во требуемое на квест.";
input #kupar1;
input #lololol1;
input #kupar2;
input #lololol2;
mes "Вы выбрали "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+".";
next;
mes "Введите Id вещи, которую вы получите по прохождению квеста.";
input #fedol; mes "Это будет "+getitemname(#fedol)+".";
next;
mes "Введи кол-во денег, требуемую за вещь.";
input #zene4ki;
set #google,2;
close;
L_3:
mes "Вводим Id вещи, а потом кол-во требуемое на квест.";
input #kupar1;
input #lololol1;
input #kupar2;
input #lololol2;
input #kupar3;
input #lololol3;
mes "Вы выбрали "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+".";
next;
mes "Введите Id вещи, которую вы получите по прохождению квеста.";
input #fedol; mes "Это будет "+getitemname(#fedol)+".";
next;
mes "Введи кол-во денег, требуемую за вещь.";
input #zene4ki;
set #google,3;
close;
L_4:
mes "Вводим Id вещи, а потом кол-во требуемое на квест.";
input #kupar1;
input #lololol1;
input #kupar2;
input #lololol2;
input #kupar3;
input #lololol3;
input #kupar4;
input #lololol4;
mes "Вы выбрали "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+".";
next;
mes "Введите Id вещи, которую вы получите по прохождению квеста.";
input #fedol; mes "Это будет "+getitemname(#fedol)+".";
next;
mes "Введи кол-во денег, требуемую за вещь.";
input #zene4ki;
set #google,4;
close;
L_5:
mes "Вводим Id вещи, а потом кол-во требуемое на квест.";
input #kupar1;
input #lololol1;
input #kupar2;
input #lololol2;
input #kupar3;
input #lololol3;
input #kupar4;
input #lololol4;
input #kupar5;
input #lololol5;
mes "Вы выбрали "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+":"+getitemname(#kupar5)+","+#lololol5+".";
next;
mes "Введите Id вещи, которую вы получите по прохождению квеста.";
input #fedol; mes "Это будет "+getitemname(#fedol)+".";
next;
mes "Введи кол-во денег, требуемую за вещь.";
input #zene4ki;
set #google,5;
close;
L_6:
mes "Вводим Id вещи, а потом кол-во требуемое на квест.";
input #kupar1;
input #lololol1;
input #kupar2;
input #lololol2;
input #kupar3;
input #lololol3;
input #kupar4;
input #lololol4;
input #kupar5;
input #lololol5;
input #kupar6;
input #lololol6;
mes "Вы выбрали "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+":"+getitemname(#kupar5)+","+#lololol5+":"+getitemname(#kupar6)+","+#lololol6+".";
next;
mes "Введите Id вещи, которую вы получите по прохождению квеста.";
input #fedol; mes "Это будет "+getitemname(#fedol)+".";
next;
mes "Введи кол-во денег, требуемую за вещь.";
input #zene4ki;
set #google,6;
close;
case 2:
if (#google == 1) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+".";}
if (#google == 2) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+".";}
if (#google == 3) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+".";}
if (#google == 4) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+".";}
if (#google == 5) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+":"+getitemname(#kupar5)+","+#lololol5+".";}
if (#google == 6) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+":"+getitemname(#kupar5)+","+#lololol5+":"+getitemname(#kupar6)+","+#lololol6+".";}
next;
mes "А также "+#zene4ki+" зенек";
next;
mes "Вы готовы сделать "+getitemname(#fedol)+"?";
next;
menu "Да",L_Davai,"Нет",L_figu;
L_NEGM:
if (#google == 1) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+".";}
if (#google == 2) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+".";}
if (#google == 3) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+".";}
if (#google == 4) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+".";}
if (#google == 5) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+":"+getitemname(#kupar5)+","+#lololol5+".";}
if (#google == 6) {
mes "Вам потребуются "+getitemname(#kupar1)+","+#lololol1+":"+getitemname(#kupar2)+","+#lololol2+":"+getitemname(#kupar3)+","+#lololol3+":"+getitemname(#kupar4)+","+#lololol4+":"+getitemname(#kupar5)+","+#lololol5+":"+getitemname(#kupar6)+","+#lololol6+".";}
next;
mes "А также "+#zene4ki+" зенек";
next;
mes "Вы готовы сделать "+getitemname(#fedol)+"?";
next;
menu "Да",L_Davai,"Нет",L_figu;
L_Davai:
if (#google == 6) { if (countitem(#kupara1)>=#lololol1 || countitem(#kupara2)>=#lololol2 || countitem(#kupara3)>=#lololol3 || countitem(#kupara4)>=#lololol4 || countitem(#kupara5)>=#lololol5 || countitem(#kupara6)>=#lololol6 || zeny>=#zene4ki) { goto L_OK; }}
if (#google == 1) { if (countitem(#kupara1)>=#lololol1 || zeny>=#zene4ki) { goto L_OK; }}
if (#google == 2) { if (countitem(#kupara1)>=#lololol1 || countitem(#kupara2)>=#lololol2 || zeny>=#zene4ki) { goto L_OK; }}
if (#google == 3) { if (countitem(#kupara1)>=#lololol1 || countitem(#kupara2)>=#lololol2 || countitem(#kupara3)>=#lololol3 || zeny>=#zene4ki) { goto L_OK; }}
if (#google == 4) { if (countitem(#kupara1)>=#lololol1 || countitem(#kupara2)>=#lololol2 || countitem(#kupara3)>=#lololol3 || countitem(#kupara4)>=#lololol4 || zeny>=#zene4ki) { goto L_OK; }}
if (#google == 5) { if (countitem(#kupara1)>=#lololol1 || countitem(#kupara2)>=#lololol2 || countitem(#kupara3)>=#lololol3 || countitem(#kupara4)>=#lololol4 || countitem(#kupara5)>=#lololol5 || zeny>=#zene4ki) { goto L_OK; }}
mes "У вас нет ингридеентов. Как всё принесёте, так и отдам))";
close;
L_OK:
if (#google == 1) {
delitem #kupar1,#lololol1;
getitem #fedol,1;
set Zeny,Zeny-#zene4ki;
mes "Вот ваш предмет)";
close;
}
if (#google == 2) {
delitem #kupar1,#lololol1;
delitem #kupar2,#lololol2;
getitem #fedol,1;
set Zeny,Zeny-#zene4ki;
mes "Вот ваш предмет)";
close;
}
if (#google == 3) {
delitem #kupar1,#lololol1;
delitem #kupar2,#lololol2;
delitem #kupar3,#lololol3;
getitem #fedol,1;
set Zeny,Zeny-#zene4ki;
mes "Вот ваш предмет)";
close;
}
if (#google == 4) {
delitem #kupar1,#lololol1;
delitem #kupar2,#lololol2;
delitem #kupar3,#lololol3;
delitem #kupar4,#lololol4;
getitem #fedol,1;
set Zeny,Zeny-#zene4ki;
mes "Вот ваш предмет)";
close;
}
if (#google == 5) {
delitem #kupar1,#lololol1;
delitem #kupar2,#lololol2;
delitem #kupar3,#lololol3;
delitem #kupar4,#lololol4;
delitem #kupar5,#lololol5;
getitem #fedol,1;
set Zeny,Zeny-#zene4ki;
mes "Вот ваш предмет)";
close;
}
if (#google == 6) {
delitem #kupar1,#lololol1;
delitem #kupar2,#lololol2;
delitem #kupar3,#lololol3;
delitem #kupar4,#lololol4;
delitem #kupar5,#lololol5;
delitem #kupar6,#lololol6;
getitem #fedol,1;
set Zeny,Zeny-#zene4ki;
mes "Вот ваш предмет)";
close;
L_figu:
mes "Приходи ещё, может ты успеешь на супер распрадажу!)";
close;
}
}
}


Вот получше. Но нужно отреставрировать, так как я писал))) А я не оч знаю скрипты)))

Приемущества:
1) Не надо по сто раз переписывать скрипт. Предметы можно задать прямо в игре.
Недостатки:
1) Он не очень грамотна написан. Надо бы немного подправить.
2) Можно поставить токо 6 видов предметов и Кол-во зенек.

Автор: Denwow: Дата: 03.21.2011

Если не сложно выложите пожалуйста нормальный готовый 1 скрип...я начинающий просто и не очень понимаю...После сравню и думаю пойму...Спасибо

Автор: Cole McCormick: Дата: 03.21.2011

Цитата Denwow;36276]Если не сложно выложите пожалуйста нормальный готовый 1 скрип...я начинающий просто и не очень понимаю...После сравню и думаю пойму...Спасибо


[url]http://rus-ea.ru/showthread.php?t=28[/url:
вот пример, с участием нескольких нпц! Такие квесты интереснее.