Автор: Jiny: Дата: 10.06.2009
prontera.gat,167,178,4 script Refiner 810,{
function RefElu;
function RefOri;
function Refine;
set @relu, 757;
set @elu, 985;
set @eluprice, 5000;
set @relunum, 5;
set @rori, 756;
set @ori, 984;
set @oriprice, 5000;
set @rorinum, 5;
set @refprice, 10000;
set @maxrefine, 10;
set @repprice, 5000;
mes "[Refiner]";
mes "Привет, что вы хотите сделать сегодня?";
menu "Заточить вещи",REFIN,"Зделать Elunium",ELU,"Зделать Oridecon",ORI,"Починить вещи",REP,"Ничего мне не нужно",QUIT;
REFIN:
mes "Вам нужно "+@refprice+"z на 1-ну заточку.";
mes "Кроме того вам нужно ещё ^FF0000 1 Elunium ^000000 для заточки одежды";
mes "и ^FF0000 1 Oridecon ^000000 для заточки оружия.";
set @headtop$, getequipname(1);
set @armor$, getequipname(2);
set @handl$, getequipname(3);
set @handr$, getequipname(4);
set @garment$, getequipname(5);
set @shoes$, getequipname(6);
set @accl$, getequipname(7);
set @accr$, getequipname(8);
set @headmid$, getequipname(9);
set @headlow$, getequipname(10);
menu
"[Head - Top] "+@headtop$,HEADTOP,
"[Head - Mid] "+@headmid$,HEADMID,
"[Head - Low] "+@headlow$,HEADLOW,
"[Armor] "+@armor$,ARMOR,
"[Garment] "+@garment$,GARMENT,
"[Left Hand] "+@handl$,HANDL,
"[Right Hand] "+@handr$,HANDR,
"[Left Acc] "+@accl$,ACCL,
"[Right Acc] "+@accr$,ACCR,
"[Shoes] "+@shoes$,SHOES;
HEADTOP:
set @slot, 1;
callfunc Refine;
HEADMID:
set @slot, 9;
callfunc Refine;
HEADLOW:
set @slot, 10;
callfunc Refine;
ARMOR:
set @slot, 2;
callfunc Refine;
GARMENT:
set @slot, 5;
callfunc Refine;
HANDL:
set @slot, 3;
callfunc Refine;
HANDR:
set @slot, 4;
callfunc Refine;
ACCL:
set @slot, 7;
callfunc Refine;
ACCR:
set @slot, 8;
callfunc Refine;
SHOES:
set @slot, 6;
callfunc Refine;
ELU:
mes "Вам нужно ^FF0000 "+@relunum+" Rough Elunium ^000000";
mes "А так же ещё понадобится "+@eluprice+"z для 1-ного Elunium'a";
mes "Вам нужно это?";
callfunc RefElu;
ORI:
mes "Вам нужно ^FF0000 "+@rorinum+" Rough Oridecon ^000000";
mes "А так же ещё понадобится "+@oriprice+"z для 1-ного Oridecon'a";
mes "Вам нужно это?";
callfunc RefOri;
REP:
if (getbrokenid(1) == 0) goto NOREP;
mes "Чтобы починить одежду, вам понадобится "+@repprice+"z.";
mes "Выберите что вы хотите починить.";
set @choice, select(getitemname(getbrokenid(1)), getitemname(getbrokenid(2)), getitemname(getbrokenid(3)), getitemname(getbrokenid(4)), getitemname(getbrokenid(5)), getitemname(getbrokenid(6)), getitemname(getbrokenid(7)), getitemname(getbrokenid(8)), getitemname(getbrokenid(9)), getitemname(getbrokenid(10)));
set zeny, zeny - @repprice;
repair(@choice);
goto LATER;
NOREP:
mes "Извените, но у вас нету поломоной вещички.";
close;
QUIT:
mes "Ухх, ну ладно, пока.";
close;
LATER:
mes "Спасибо, удачного вам дня.";
close;
NO:
mes "Эх..., ну ладно, пока.";
close;
NOELU:
mes "Извените, но у вас нету Elunium.";
close;
NOORI:
mes "Извените, но у вас нету Oridicon.";
close;
CANCEL:
mes "Ладно, приходите попозже.";
close;
MAX:
mes "Извените, но вы заточили на максимум эту вещь.";
close;
NOWAY:
mes "Ммм.... Я немогу заточить эту вещь!!!";
close;
NOREQ:
mes "Извените, но у вас нехватает денег или лута для пользования моей услуги";
close;
// ---------------Refine Elunium
function RefElu {
if (countitem(@relu) < @relunum) goto NOELU;
menu "Yes",-,"No",NO;
set zeny, zeny - @eluprice;
delitem @relu, @relunum;
getitem @elu, 1;
callfunc RefElu;
}
// ---------------Refine Oridecon
function RefOri {
if (countitem(@rori) < @rorinum) goto NOORI;
menu "Yes",-,"No",NO;
set zeny, zeny - @oriprice;
delitem @rori, @rorinum;
getitem @ori, 1;
callfunc RefOri;
}
// ---------------Refine Equipment
function Refine {
if (getequiprefinerycnt(@slot) >= @maxrefine) goto MAX;
if (getequipisenableref(@slot) == 0) goto NOWAY;
menu "Do it!",-,"Cancel",CANCEL;
if (zeny < @refprice) goto NOREQ;
set zeny, zeny - @refprice;
if (@slot != 3 && @slot != 4) { goto USEELU; }
else { goto CHECKWEAP; }
USEELU:
if (countitem(@elu) < 1) goto NOREQ;
delitem @elu, 1;
successrefitem(@slot);
goto LOOP;
USEORI:
if (countitem(@ori) < 1) goto NOREQ;
delitem @ori, 1;
successrefitem(@slot);
goto LOOP;
CHECKWEAP:
if (getequipweaponlv(@slot) == 0) goto USEELU;
goto USEORI;
LOOP:
callfunc Refine;
}
}
Автор: : Дата: 01.01.1970