summaryrefslogtreecommitdiff
path: root/world/map/npc/functions/barber.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/functions/barber.txt')
-rw-r--r--world/map/npc/functions/barber.txt250
1 files changed, 0 insertions, 250 deletions
diff --git a/world/map/npc/functions/barber.txt b/world/map/npc/functions/barber.txt
deleted file mode 100644
index dbc7614b..00000000
--- a/world/map/npc/functions/barber.txt
+++ /dev/null
@@ -1,250 +0,0 @@
-// The Barber script has been around since before the repository split
-// so it's hard to figure out who wrote it.
-
-// o11c updated it according to new scripting standards while adding pink.
-// ... and added the code that shows your old color/style.
-
-// Note: there is a soft limit of 15 colors per classes and 20 styles (0-19)
-// This is the number that can be set when creating a character
-// or using GM commands, but scripts (such as this one) can set
-// any value 0-255
-
-function|script|Barber
-{
- if (getequipid(equip_head) == 647)
- goto L_Debug;
- callfunc "getHeadStyles";
- set @hairOpts, 0;
- set @colorOpts, 0;
- set @menu, 0;
- goto L_Main;
-
-L_MainClear:
- clear;
- goto L_Main;
-
-L_Main:
- set @style, getlook(LOOK_HAIR_STYLE);
- set @color, getlook(LOOK_HAIR_COLOR);
- set @style$, "Unknown";
- set @color$, "Unknown";
-
- if (@style >= 1 && @style <= 20)
- set @style$, @HairStyles$[(@style - 1)];
-
- if (@color == ((HC_WHITE - Class) + 1))
- set @color$, "Shocked White";
- set @color, (@color - (15 * (Class - 1)));
- if (@color >= 0 && @color <= 15)
- set @color$, @HairColors$[@color];
-
- if (Sex == 0) set @gender$, " female";
- elif (Sex == 1) set @gender$, " male";
- elif (Class == 3 || Class == 6) set @gender$, "n";
- else set @gender$, "";
-
- mes "You are a" + @gender$ + " " + @species$ + ".";
- mes "Your current style is " + @style$ + " and your current color is " + @color$ + ".";
- set @style$, "";
- set @color$, "";
- menu
- "Change my style", L_Style,
- "Change my color", L_Color,
- "Change my gender", L_Gender,
- "Change my species", L_Species,
- "Nah, I'm fine", L_Done;
-
-L_Gender:
- menu
- "Female.", L_Female,
- "Male.", L_Male,
- "Non-binary.", L_NonBinary,
- "Nah, I'm fine", L_MainClear;
-
-L_Female:
- set Sex, 0;
- goto L_MainClear;
-
-L_Male:
- set Sex, 1;
- goto L_MainClear;
-
-L_NonBinary:
- set Sex, 3;
- goto L_MainClear;
-
-L_Species:
- if (countitem("SkeletonCharm") >= 1)
- menu
- "Talpan", L_Species_next,
- "Tritan", L_Species_next,
- "Ifriton", L_Species_next,
- //"Gispaan", L_Species_next,
- //"Sparron", L_Species_next,
- "Undead", L_Species_next,
- "Nah, I'm fine", L_MainClear;
- //else
- menu
- "Talpan", L_Species_next,
- "Tritan", L_Species_next,
- "Ifriton", L_Species_next,
- //"Gispaan", L_Species_next,
- //"Sparron", L_Species_next,
- "Nah, I'm fine", L_MainClear;
-
-L_Species_next:
- if (@menu == 4) set @menu, 6;
- set Class, @menu;
- callfunc "fixHeadStyles";
- goto L_MainClear;
-
-L_Style:
- if(!@hairOpts) set @HairStyles$[getarraysize(@HairStyles$)], "Surprise me";
- if(!@hairOpts) set @HairStyles$[getarraysize(@HairStyles$)], "Nah, I'm fine";
- if(!@hairOpts) set @hairOpts, 1;
- menu
- @HairStyles$[0], L_MenuItems,
- @HairStyles$[1], L_MenuItems,
- @HairStyles$[2], L_MenuItems,
- @HairStyles$[3], L_MenuItems,
- @HairStyles$[4], L_MenuItems,
- @HairStyles$[5], L_MenuItems,
- @HairStyles$[6], L_MenuItems,
- @HairStyles$[7], L_MenuItems,
- @HairStyles$[8], L_MenuItems,
- @HairStyles$[9], L_MenuItems,
- @HairStyles$[10], L_MenuItems,
- @HairStyles$[11], L_MenuItems,
- @HairStyles$[12], L_MenuItems,
- @HairStyles$[13], L_MenuItems,
- @HairStyles$[14], L_MenuItems,
- @HairStyles$[15], L_MenuItems,
- @HairStyles$[16], L_MenuItems,
- @HairStyles$[17], L_MenuItems,
- @HairStyles$[18], L_MenuItems,
- @HairStyles$[19], L_MenuItems,
- @HairStyles$[20], L_MenuItems,
- @HairStyles$[21], L_MenuItems;
-
-L_MenuItems:
- if(@menu == (getarraysize(@HairStyles$) - 1)) goto L_RandomStyle;
- if(@menu >= getarraysize(@HairStyles$)) goto L_MainClear;
- setlook LOOK_HAIR_STYLE, @menu;
- goto L_MainClear;
-
-L_RandomStyle:
- setarray @randomStyle[0], rand(1, (getarraysize(@HairStyles$) - 2));
- setarray @randomStyle[1], @randomStyle[1] + 1; // infinite loop prevention
- if(@randomStyle[0] == @style && @randomStyle[1] < 15) goto L_RandomStyle;
- setlook LOOK_HAIR_STYLE, @randomStyle[0];
- setarray @randomStyle[1], 0;
- menu
- "Surprise me once again", L_RandomStyle,
- "Go back", L_MainClear,
- "Goodbye", L_Done;
-
-L_Color:
- if(!@colorOpts) set @HairColors$[getarraysize(@HairColors$)], "Surprise me";
- if(!@colorOpts) set @HairColors$[getarraysize(@HairColors$)], "Nah, I'm fine";
- if(!@colorOpts) set @colorOpts, 1;
- menu
- @HairColors$[0], L_MenuItems1,
- @HairColors$[1], L_MenuItems1,
- @HairColors$[2], L_MenuItems1,
- @HairColors$[3], L_MenuItems1,
- @HairColors$[4], L_MenuItems1,
- @HairColors$[5], L_MenuItems1,
- @HairColors$[6], L_MenuItems1,
- @HairColors$[7], L_MenuItems1,
- @HairColors$[8], L_MenuItems1,
- @HairColors$[9], L_MenuItems1,
- @HairColors$[10], L_MenuItems1,
- @HairColors$[11], L_MenuItems1,
- @HairColors$[12], L_MenuItems1,
- @HairColors$[13], L_MenuItems1,
- @HairColors$[14], L_MenuItems1,
- @HairColors$[15], L_MenuItems1,
- @HairColors$[16], L_MenuItems1;
-
-L_MenuItems1:
- if(@menu == (getarraysize(@HairColors$) - 1)) goto L_RandomColor;
- if(@menu >= getarraysize(@HairColors$)) goto L_MainClear;
- setlook LOOK_HAIR_COLOR, ((@menu - 1) + (15 * (Class - 1)));
- goto L_MainClear;
-
-L_RandomColor:
- setarray @randomColor[0], rand((15 * (Class - 1)), ((getarraysize(@HairColors$) - 3) + (15 * (Class - 1))));
- setarray @randomColor[1], @randomColor[1] + 1;
- if(@randomColor[0] == @color && @randomColor[1] < 15) goto L_RandomColor;
- setlook LOOK_HAIR_COLOR, @randomColor[0];
- setarray @randomColor[1], 0;
- menu
- "Surprise me once again", L_RandomColor,
- "Go back", L_MainClear,
- "Goodbye", L_Done;
-
-L_Done:
- // cleanup
- set @menu, 0;
- set @style, 0;
- set @color, 0;
- cleararray @HairStyles$, "", getarraysize(@HairStyles$);
- cleararray @HairColors$, "", getarraysize(@HairColors$);
- set @hairOpts, 0;
- set @colorOpts, 0;
- return;
-
-L_Debug:
- npcaction 9; // FIXME: this should become a builtin (ie `clear`)
- mes "Class: " + Class;
- mes "Style: " + getlook(LOOK_HAIR_STYLE);
- mes "Color: " + getlook(LOOK_HAIR_COLOR);
- mes "Gender: " + Sex;
- menu
- "edit| Set Class", L_DebugClass,
- "edit| Set Style", L_DebugStyle,
- "edit| Set Color", L_DebugColor,
- "edit| Set Gender", L_DebugGender,
- "toggle| Simulate logout", L_DebugLogout,
- "Close", L_Done;
-
-L_DebugLogout:
- callfunc "fixHeadStyles";
- goto L_Debug;
-
-L_DebugClass:
- set @dbg_class, 0;
- mes "input class (0-32767)";
- input @dbg_class;
- if (@dbg_class >= 0 && @dbg_class <= 32767)
- set Class, @dbg_class;
- set @dbg_class, 0;
- goto L_Debug;
-
-L_DebugStyle:
- set @dbg_style, 0;
- mes "input style (0-255)";
- input @dbg_style;
- if (@dbg_style >= 0 && @dbg_style <= 255)
- setlook LOOK_HAIR_STYLE, @dbg_style;
- set @dbg_style, 0;
- goto L_Debug;
-
-L_DebugColor:
- set @dbg_color, 0;
- mes "input color (0-255)";
- input @dbg_color;
- if (@dbg_color >= 0 && @dbg_color <= 255)
- setlook LOOK_HAIR_COLOR, @dbg_color;
- set @dbg_color, 0;
- goto L_Debug;
-
-L_DebugGender:
- set @dbg_gender, 0;
- mes "input gender (0-3)";
- input @dbg_gender;
- if (@dbg_gender >= 0 && @dbg_gender <= 3)
- set Sex, @dbg_gender;
- set @dbg_gender, 0;
- goto L_Debug;
-}