From 69eb06640606e950bfe0d60b1be980aebca74e91 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 1 May 2021 14:17:33 -0300 Subject: Fix some hairy issues ;-) --- npc/functions/barber.txt | 4 ++-- npc/functions/headstyles.txt | 25 +++++++++++++++++++++++++ npc/items/mirror.txt | 15 ++++++++------- npc/items/scissors.txt | 4 ++-- 4 files changed, 37 insertions(+), 11 deletions(-) diff --git a/npc/functions/barber.txt b/npc/functions/barber.txt index 0626029c..9827f388 100644 --- a/npc/functions/barber.txt +++ b/npc/functions/barber.txt @@ -19,10 +19,10 @@ function script BarberSayStyle { switch (getarg(0, 3)) { case 1: - message strcharinfo(0), l("@@", .@style_name$); + message strcharinfo(0), l("%s", .@style_name$); break; case 2: - message strcharinfo(0), l("@@", .@color_name$); + message strcharinfo(0), l("%s", .@color_name$); break; case 3: speech S_FIRST_BLANK_LINE | S_LAST_NEXT, diff --git a/npc/functions/headstyles.txt b/npc/functions/headstyles.txt index 91395fd1..dd4be8e7 100644 --- a/npc/functions/headstyles.txt +++ b/npc/functions/headstyles.txt @@ -95,3 +95,28 @@ L_Ifriton: "11", "12", "13", "14", "15"; return; } + +// Hairstyle config +// set array of style and colors +- script hairstyle_config NPC_HIDDEN,{ + end; + +OnInit: + setarray $@hairstyle$[0], "(none)", "Bald", "Bowl cut", "Combed back", + "Emo", "Mohawk", "Pompadour", "Center parting", "Long and slick", + "Short and curly", "Pigtails", "Long and curly", "Parted", + "Perky ponytail", "Wave", "Mane", "Bun", "Wavy", "Bunches", + "Long ponytail", "Infinitely long", "Choppy", "Wild", "Punk", + "Imperial", "Side strand", "Messy", "Flat ponytail", + "Tapered Nape"; + + setarray $@haircolor$[0], "Off black", "Ash brown", "Dark brown", + "Dark copper", "Auburn brown", "Honey brown", "Copper blonde", + "Golden blonde", "Pure platinum", "Cherry blossom", "Pinky pink", + "Fire red", "Light violet", "Purple plum", "Navy blue", + "Lagoon blue", "Twisted teal", "Spring Green", "Forest Green", + "Silver Grey", "Esperia Blue"; + + setarray $@REFEXP[0], 400, 900, 2250, 6500, 15000; + end; +} diff --git a/npc/items/mirror.txt b/npc/items/mirror.txt index 9e114c36..b29e7fec 100644 --- a/npc/items/mirror.txt +++ b/npc/items/mirror.txt @@ -3,16 +3,17 @@ function script useMirror { goto L_Rand; L_Rand: - @mirror_rnd = @mirror_rnd + 1; - @style = rand(1,getarraysize(@HairStyles$)); - @color = rand((15 * (Class - 1)),((15 * (Class - 1)) + (getarraysize(@HairColors$) - 1))); - if(((getlook(LOOK_HAIR_STYLE) == @style) || (getlook(LOOK_HAIR_COLOR) == @color)) && @mirror_rnd < 15) - goto L_Rand; - if(@fixedMirror) + .@mirror_rnd = .@mirror_rnd + 1; + @style = rand(1,getarraysize($@hairstyle$)-1); + @color = rand(getarraysize($@haircolor$)); + if (((getlook(LOOK_HAIR_STYLE) == @style) || + (getlook(LOOK_HAIR_COLOR) == @color)) && + .@mirror_rnd < 15) + goto L_Rand; + if (@fixedMirror) setlook LOOK_HAIR_STYLE, @style; setlook LOOK_HAIR_COLOR, @color; //if(!@fixedMirror) getitem "SilverMirror", 1; <== this can be used in the future to have a portable hair color changer (like scissors but for the color) @fixedMirror = 0; - @mirror_rnd = 0; return; } diff --git a/npc/items/scissors.txt b/npc/items/scissors.txt index d27e8f6f..b21a36e8 100644 --- a/npc/items/scissors.txt +++ b/npc/items/scissors.txt @@ -3,11 +3,11 @@ function script useScissors { if (rand(3)) goto L_Change; message strcharinfo(0), "Whoops!"; - heal -20 - rand(Hp >> 1), 0; + heal -20 - rand(Hp >> 1), 0; // ??? return; L_Change: callfunc "getHeadStyles"; - setlook LOOK_HAIR_STYLE, rand(1,getarraysize(@HairStyles$)); + setlook LOOK_HAIR_STYLE, rand(1,getarraysize($@hairstyle$)-1); return; } -- cgit v1.2.3-60-g2f50