//===== eAthena Script =======================================
//= Stylist
//===== By: ==================================================
//= Saithis
//===== Credits: =============================================
//= eAthena Dev team (some of the text)
//===== Current Version: =====================================
//= 1.2
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
//= Revised dye NPC
//===== TODO: ================================================
// - Implement price for look change
//===== Additional Comments: =================================
//= v1.0 - First release [Saithis]
//= v1.1 - The NPC remebers now the direction (keep going - go back) [Saithis]
//= v1.2 - Use getbattleflag to get max values [Saithis]
//============================================================
prontera,183,213,3 script Stylist 122,{
mes "[^FF8000Stylist^000000]";
mes "I'm the greatest stylist in all of Rune-Midgard~~!";
mes "I can change your hair style or color!";
mes "What do you wish to change?";
next;
switch(select("Hair style:Hair color:Cloth color:Nothing")){
case 1:
set .@what,1;
set .@min,getbattleflag("min_hair_style");
set .@max,getbattleflag("max_hair_style");
set .@what$,"hairstyle";
break;
case 2:
set .@what,6;
set .@min,getbattleflag("min_hair_color");
set .@max,getbattleflag("max_hair_color");
set .@what$,"haircolor";
break;
case 3:
set .@what,7;
set .@min,getbattleflag("min_cloth_color");
set .@max,getbattleflag("max_cloth_color");
set .@what$,"cloth color";
break;
default:
mes "[^FF8000Stylist^000000]";
mes "Well come again.";
close;
}
mes "[^FF8000Stylist^000000]";
mes "Do you want to browse through the choices, or do you know what you want?";
next;
if(select("Browse:I know what I want") == 2){
mes "[^FF8000Stylist^000000]";
mes "Great! Now just pick a "+.@what$+" and I'll get started!";
next;
mes "[^FF8000Stylist^000000]";
mes "Please pick a "+.@what$+" number ^0000FFbetween "+.@min+" and "+.@max+"^000000.";
mes "Number "+.@min+", by the way, is the default "+.@what$+" for your character.";
next;
while(1){
input .@set,.@min,.@max;
setlook .@what,.@set;
mes "[^FF8000Stylist^000000]";
mes "Is this good, or do you want a different "+.@what$+"?";
next;
if(select("This is good:Different "+.@what$+", please") == 1) break;
}
} else {
mes "[^FF8000Stylist^000000]";
mes "Okay, here we go~! Just stop me when you see something you like, okay?";
set .@look,.@min;
while(1){
next;
mes "[^FF8000Stylist^000000]";
setlook .@what,.@look;
mes "This is "+.@what$+" Number^FF9009 "+.@look+" ^000000!";
if(.@look == .@min)
select("Keep going::I like this one");
else if(.@look == .@max)
select(":Go back:I like this one");
else if(.@direction)
select("Go back:Keep going:I like this one");
else
select("Keep going:Go back:I like this one");
if(.@direction && !(.@look == .@max || .@look == .@min)) {
if(@menu == 1) {
set .@look,.@look-1;
set .@direction,1;
} else if(@menu == 2) {
set .@look,.@look+1;
set .@direction,0;
} else
break;
} else {
if(@menu == 1) {
set .@look,.@look+1;
set .@direction,0;
} else if(@menu == 2) {
set .@look,.@look-1;
set .@direction,1;
} else
break;
}
}
}
next;
mes "[^FF8000Stylist^000000]";
mes "You look great~! I love it~! ^_^";
close;
}