//Le Livre d'Ymir http://www.bookofymir.net/ //traduit par Myllena //===== eAthena Script ======================================= //= Kafra Express - Stylist Module //===== By: ================================================== //= Skotlex //===== Current Version: ===================================== //= 2.0 //===== Compatible With: ===================================== //= eAthena SVN8637+ //===== Description: ========================================= //= Part of the Kafra Express Script Package. //= Offers dying of hair, clothes and hair-style adjusts //===== Additional Comments: ================================= //= See config.txt for configuration. //============================================================ - script keInit_dye -1,{ OnInit: //Load Config donpcevent "keConfig::OnLoadDye"; end; } function script F_keStylist { function SF_inputpalette; function SF_wheelpalette; set @jobClass,eaclass(class); if (@jobClass == -1) set @maxCDye,0; else { if ((@jobClass&EAJ_BASEMASK) == EAJ_NOVICE) { if (@jobClass&EAJL_2) set @maxCDye, $@kedy_clothJSN; else set @maxCDye, $@kedy_clothJN; } else { if (@jobClass&EAJL_2) set @maxCDye, $@kedy_clothJ2ND; else set @maxCDye, $@kedy_clothJ1ST; } } do { if ($@kedy_enableHairstyle) { set @kmenu, select( "- Retour", "- Choisir une de Coupe de Cheveux (actuellement n°"+getlook(1)+"/"+$@kedy_styles+")", "- Parcourir les Coupes de Cheveux", "- Choisir une Couleur de Cheveux (actuellement n°"+getlook(6)+"/"+$@kedy_hair+")", "- Parcourir les Couleurs de Cheveux", "- Choisir une Couleur de Vêtements (actuellement n°"+getlook(7)+"/"+@maxCDye+")", "- Parcourir les Couleurs de Vêtements" ); } else { set @kmenu, select( "- Retour", "- Choisir une Couleur de Cheveux (actuellement n°"+getlook(6)+"/"+$@kedy_hair+")", "- Parcourir les Couleurs de Cheveux", "- Choisir une Couleur de Vêtements (actuellement n°"+getlook(7)+"/"+@maxCDye+")", "- Parcourir les Couleurs de Vêtements" ); if (@kmenu > 1) set @kmenu, @kmenu+2; } switch (@kmenu) { case 2: //Hair Style Input SF_inputpalette 1,$@kedy_styles; break; case 3: //Hair Style Wheel SF_wheelpalette 1,$@kedy_styles; break; case 4: //Hair Dye Input SF_inputpalette 6,$@kedy_hair; break; case 5: //Hair Dye Wheel SF_wheelpalette 6,$@kedy_hair; break; case 6: //Clothes Input SF_inputpalette 7,@maxCDye; break; case 7: //Clothes Wheel SF_wheelpalette 7,@maxCDye ; break; } } while (@kmenu > 1); return; //Subfunction: SF_inputpalette(int part, int maxPalette) //Sets a palette from the user's request. function SF_inputpalette { input @pal; if (@pal < 0 || @pal > getarg(1)) { callfunc "F_keIntro", e_swt2, "Désolée, cette couleur n'est pas disponible."; return; } setlook getarg(0),@pal; emotion e_lv; } //SF_ end //Subfunction: SF_wheelpalette(int part, int maxPalette) //Sets a palette through browsing. function SF_wheelpalette { set @loc, getarg(0); set @max, getarg(1); set @pal, getlook(@loc); set @dir, 1; do { if (@dir > 0) set @submenu, select( "Suivant", "Précédent", "C'est parfait! (choix n°"+@pal+")" ); else set @submenu, select( "Précédent", "Suivant", "C'est parfait! (choix n°"+@pal+")" ); switch (@submenu) { case 2: //Swap direction set @dir, @dir*-1; case 1: set @pal, @pal+@dir; if (@pal < 0) set @pal, @max; else if (@pal > @max) set @pal, 0; setlook @loc,@pal; } } while (@submenu != 3); emotion e_lv2; } //SF_ end }