Dantia/Scripts/Shifting

From Elanthipedia
< Dantia
Jump to navigation Jump to search
Dantia/Scripts/Shifting
Category Scripts,Genie scripts,Magic scripts,Empath scripts
Front-end Genie
Author Dantia


Description

This script creates an interactable window to allow you to select the type of shift and option. It will also track the progress of the shift, and allow you to select follow up shifts once your ability returns to you.


Instructions

As with all shifting, ensure you are in a justice-free zone by typing JUSTICE. Then, with your patient in the same room as you, initiate the script by typing .shift <patient_name>.


Version History

  • Version 1.0: Original script

Script

# Dantia's Shift Selector
# Use at your own risk.
# Version 1.1

action instant goto parsefeature when RETURN TO FEATURES
action instant goto cancelshift when CANCEL SHIFT

parsefeature:
put #window remove ShiftSelect
pause 0.1
put #window add ShiftSelect
put #clear ShiftSelect
put #echo >ShiftSelect ** Welcome to Dantia's Shift Selector. **
put #echo >ShiftSelect ** Let's make %1 beautiful! **
put #echo >ShiftSelect
put #echo >ShiftSelect ** Please select the feature you wish to shift. **
put #echo >ShiftSelect
put #link >ShiftSelect {Age} {#parse Shift feature_age}
put #link >ShiftSelect {Gender} {#parse Shift feature_gender}
put #link >ShiftSelect {Body Height} {#parse Shift feature_body_height}
put #link >ShiftSelect {Body Build} {#parse Shift feature_body_build}
put #link >ShiftSelect {Skin/Fur/Scales} {#parse Shift feature_skin_fur_scales}
put #link >ShiftSelect {Fur Markings} {#parse Shift feature_primary_markings}
put #link >ShiftSelect {Face Masking} {#parse Shift feature_secondary_color}
put #link >ShiftSelect {Secondary Markings} {#parse Shift feature_secondary_markings}
put #link >ShiftSelect {Pale Silver Underbelly} {#parse Shift feature_pale_silver_underbelly}
put #link >ShiftSelect {Hair Length} {#parse Shift feature_hair_length}
put #link >ShiftSelect {Hair Color} {#parse Shift feature_hair_color}
put #link >ShiftSelect {Hair Streak} {#parse Shift feature_hair_streak}
put #link >ShiftSelect {Hair Texture} {#parse Shift feature_hair_texture}
put #link >ShiftSelect {Head Crest} {#parse Shift feature_head_crest}
put #link >ShiftSelect {Face Shape} {#parse Shift feature_face_shape}
put #link >ShiftSelect {Ear Shape} {#parse Shift feature_ear_shape}
put #link >ShiftSelect {Tufted Ears} {#parse Shift feature_tufted_ears}
put #link >ShiftSelect {Eye Color} {#parse Shift feature_eye_color}
put #link >ShiftSelect {Eye Shape} {#parse Shift feature_eye_shape}
put #link >ShiftSelect {Nose Shape} {#parse Shift feature_nose_shape}
put #link >ShiftSelect {Dimples} {#parse Shift feature_dimples}
put #link >ShiftSelect {Cleft Chin} {#parse Shift feature_cleft_chin}
put #link >ShiftSelect {Beard} {#parse Shift feature_beard}
put #link >ShiftSelect {Distinguishing Mark} {#parse Shift feature_distinguishing_mark}
put #link >ShiftSelect {Tail Shape} {#parse Shift feature_tail_shape}
put #link >ShiftSelect {Tufted Tail} {#parse Shift feature_tufted_tail}
	waitforre Shift feature_(age|gender|body_height|body_build|skin_fur_scales|primary_markings|secondary_color|secondary_markings|pale_silver_underbelly|hair_length|hair_color|hair_streak|hair_texture|head_crest|face_shape|ear_shape|tufted_ears|eye_color|eye_shape|nose_shape|dimples|cleft_chin|beard|distinguishing_mark|tail_shape|tufted_tail)
	goto feature_$1
	
################## AGE ##################

feature_age:
put #var Shift.Feature.Base age year
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's AGE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Younger} {#parse set option young}
put #link >ShiftSelect {Older} {#parse set option old}
     waitforre set option (young|old)
     put #var Shift.Feature.Option $1
goto checkshift

################## GENDER ##################

feature_gender:
put #var Shift.Feature.Base gender
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's GENDER. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Male} {#parse set option male}
put #link >ShiftSelect {Female} {#parse set option female}
     waitforre set option (male|female)
     put #var Shift.Feature.Option $1
goto checkshift

################## HEIGHT ##################

feature_body_height:
put #var Shift.Feature.Base height
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's HEIGHT. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Taller} {#parse set option tall}
put #link >ShiftSelect {Shorter} {#parse set option short}
     waitforre set option (tall|short)
     put #var Shift.Feature.Option $1
goto checkshift

################## BUILD ##################

feature_body_build:
put #var Shift.Feature.Base build
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's BUILD. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Athletic} {#parse set option athletic}
put #link >ShiftSelect {Brawny} {#parse set option brawny}
put #link >ShiftSelect {Burly} {#parse set option burly}
put #link >ShiftSelect {Curvacious} {#parse set option curvaceous}
put #link >ShiftSelect {Emaciated} {#parse set option emaciated}
put #link >ShiftSelect {Fat} {#parse set option fat}
put #link >ShiftSelect {Generous} {#parse set option generous}
put #link >ShiftSelect {Hefty} {#parse set option hefty}
put #link >ShiftSelect {Lean} {#parse set option lean}
put #link >ShiftSelect {Lithe} {#parse set option lithe}
put #link >ShiftSelect {Lissome} {#parse set option lissome}
put #link >ShiftSelect {Matronly (female)} {#parse set option thin}
put #link >ShiftSelect {Plump} {#parse set option plump}
put #link >ShiftSelect {Portly} {#parse set option portly}
put #link >ShiftSelect {Pot-Bellied} {#parse set option pot-bellied}
put #link >ShiftSelect {Rotund} {#parse set option rotund}
put #link >ShiftSelect {Thin} {#parse set option thin}
put #link >ShiftSelect {Scrawny} {#parse set option scrawny}
put #link >ShiftSelect {Shapely} {#parse set option shapely}
put #link >ShiftSelect {Slender} {#parse set option slender}
put #link >ShiftSelect {Stocky} {#parse set option stocky}
put #link >ShiftSelect {Stout} {#parse set option stout}
put #link >ShiftSelect {Svelte} {#parse set option svelte}
put #link >ShiftSelect {Wiry} {#parse set option wiry}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (creation default)} {#parse set option original}
     waitforre set option (athletic|brawny|burly|curvaceous|emaciated|fat|generous|hefty|lean|lithe|lissome|thin|plump|portly|pot-bellied|rotund|thin|scrawny|shapely|slender|stocky|stout|svelte|wity|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## SKIN/FUR/SCALES ##################

feature_skin_fur_scales:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's SKIN/FUR/SCALES. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Client race:
put #echo >ShiftSelect
put #link >ShiftSelect {Dwarf} {#parse set race dwarf}
put #link >ShiftSelect {Elf} {#parse set race elf}
put #link >ShiftSelect {Elothian} {#parse set race elothian}
put #link >ShiftSelect {Gnome} {#parse set race gnome}
put #link >ShiftSelect {Gor'Tog} {#parse set race gortog}
put #link >ShiftSelect {Halfling} {#parse set race halfling}
put #link >ShiftSelect {Human} {#parse set race human}
put #link >ShiftSelect {Kaldar} {#parse set race kaldar}
put #link >ShiftSelect {Prydean} {#parse set race prydean}
put #link >ShiftSelect {Rakash} {#parse set race rakash}
put #link >ShiftSelect {Rakash (moonskin)} {#parse set race rakashmoonskin}
put #link >ShiftSelect {S'Kra Mur} {#parse set race skramur}
     waitforre set race (dwarf|elf|elothian|gnome|gortog|halfling|human|kaldar|prydean|rakash|rakashmoonskin|skramur)
goto feature_skin_fur_scales_$1

feature_skin_fur_scales_dwarf:
feature_skin_fur_scales_elf:
feature_skin_fur_scales_elothian:
feature_skin_fur_scales_gnome:
feature_skin_fur_scales_halfling:
feature_skin_fur_scales_human:
feature_skin_fur_scales_kaldar:
put #var Shift.Feature.Base skin
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's SKIN. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blue-veined} {#parse set option blue-veined}
put #link >ShiftSelect {Copper} {#parse set option copper}
put #link >ShiftSelect {Dark} {#parse set option dark}
put #link >ShiftSelect {Dark Brown} {#parse set option dark brown}
put #link >ShiftSelect {Ebon} {#parse set option ebon}
put #link >ShiftSelect {Fair} {#parse set option fair}
put #link >ShiftSelect {Freckled} {#parse set option freckled}
put #link >ShiftSelect {Leathery} {#parse set option leathery}
put #link >ShiftSelect {Pale} {#parse set option pale}
put #link >ShiftSelect {Pockmarked} {#parse set option pockmarked}
put #link >ShiftSelect {Rosy} {#parse set option rosy}
put #link >ShiftSelect {Smooth} {#parse set option smooth}
put #link >ShiftSelect {Tanned} {#parse set option tanned}
put #link >ShiftSelect {Translucent} {#parse set option translucent}
put #link >ShiftSelect {Weathered} {#parse set option weathered}
put #link >ShiftSelect {Wrinkled} {#parse set option wrinkled}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (black|blue-veined|copper|dark|dark brown|ebon|fair|freckled|leathery|pale|pockmarked|rosy|smooth|tanned|translucent|weathered|wrinkled|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_skin_fur_scales_rakash:
put #var Shift.Feature.Base fur
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FUR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blue-veined} {#parse set option blue-veined}
put #link >ShiftSelect {Copper} {#parse set option copper}
put #link >ShiftSelect {Dark} {#parse set option dark}
put #link >ShiftSelect {Dark Brown} {#parse set option dark brown}
put #link >ShiftSelect {Ebon} {#parse set option ebon}
put #link >ShiftSelect {Fair} {#parse set option fair}
put #link >ShiftSelect {Freckled} {#parse set option freckled}
put #link >ShiftSelect {Leathery} {#parse set option leathery}
put #link >ShiftSelect {Pale} {#parse set option pale}
put #link >ShiftSelect {Pockmarked} {#parse set option pockmarked}
put #link >ShiftSelect {Rosy} {#parse set option rosy}
put #link >ShiftSelect {Smooth} {#parse set option smooth}
put #link >ShiftSelect {Tanned} {#parse set option tanned}
put #link >ShiftSelect {Translucent} {#parse set option translucent}
put #link >ShiftSelect {Weathered} {#parse set option weathered}
put #link >ShiftSelect {Wrinkled} {#parse set option wrinkled}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (black|blue-veined|copper|dark|dark brown|ebon|fair|freckled|leathery|pale|pockmarked|rosy|smooth|tanned|translucent|weathered|wrinkled|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_skin_fur_scales_gortog:
put #var Shift.Feature.Base skin
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's SKIN. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Bronze-Green} {#parse set option bronze-green}
put #link >ShiftSelect {Coppery-Green} {#parse set option coppery-green}
put #link >ShiftSelect {Dusky Olive} {#parse set option dusky olive}
put #link >ShiftSelect {Dark Green} {#parse set option dark green}
put #link >ShiftSelect {Ebon} {#parse set option ebon}
put #link >ShiftSelect {Emerald} {#parse set option emerald}
put #link >ShiftSelect {Green} {#parse set option green}
put #link >ShiftSelect {Green-Grey} {#parse set option green-grey}
put #link >ShiftSelect {Jade} {#parse set option jade}
put #link >ShiftSelect {Leathery} {#parse set option leathery}
put #link >ShiftSelect {Olive} {#parse set option olive}
put #link >ShiftSelect {Pale Green} {#parse set option pale green}
put #link >ShiftSelect {Pockmarked} {#parse set option pockmarked}
put #link >ShiftSelect {Smooth} {#parse set option smooth}
put #link >ShiftSelect {Weathered} {#parse set option weathered}
put #link >ShiftSelect {Wrinkled} {#parse set option wrinkled}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (bronze-green|coppery-green|dusky olive|dark green|ebon|emerald|green|green-grey|jade|leathery|olive|pale green|pockmarked|smooth|weathered|wrinkled|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_skin_fur_scales_skramur:
put #var Shift.Feature.Base scales
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's SCALES. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Brown} {#parse set brown}
put #link >ShiftSelect {Dark Gold-Edged} {#parse set option dark gold-edged}
put #link >ShiftSelect {Camouflage} {#parse set option camouflage}
put #link >ShiftSelect {Golden} {#parse set option golden}
put #link >ShiftSelect {Green} {#parse set option green}
put #link >ShiftSelect {Green-Brown} {#parse set option green-brown}
put #link >ShiftSelect {Green-Grey} {#parse set option green-grey}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Mottled} {#parse set option mottled}
put #link >ShiftSelect {Olive} {#parse set option olive}
put #link >ShiftSelect {Red-Gold} {#parse set option red-gold}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Sorrel} {#parse set option sorrel}
put #link >ShiftSelect {Speckled} {#parse set option speckled}
put #link >ShiftSelect {White} {#parse set option white}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (black|brown|dark gold-edged|camouflage|golden|green|green-brown|green-grey|grey|mottled|olive|red-gold|silver|sorrel|speckled|white|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_skin_fur_scales_prydean:
put #var Shift.Feature.Base fur
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FUR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blue-Grey} {#parse set option blue-grey}
put #link >ShiftSelect {Brown} {#parse set option brown}
put #link >ShiftSelect {Calico} {#parse set option calico}
put #link >ShiftSelect {Creamy White} {#parse set option creamy white}
put #link >ShiftSelect {Dark Brown} {#parse set option dark brown}
put #link >ShiftSelect {Golden} {#parse set golden}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Orange} {#parse set option orange}
put #link >ShiftSelect {Rust-Colored} {#parse set option rust-colored}
put #link >ShiftSelect {Sandy} {#parse set option sandy}
put #link >ShiftSelect {Sepia} {#parse set option sepia}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Tawny} {#parse set option tawny}
put #link >ShiftSelect {Tortoiseshell} {#parse set option tortoiseshell}
put #link >ShiftSelect {White} {#parse set option white}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (black|blue-grey|brown|calico|creamy white|dark brown|golden|grey|orange|rust-colored|sandy|sepia|silver|tawny|tortoiseshell|white|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_skin_fur_scales_rakashmoonskin:
put #var Shift.Feature.Base fur
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FUR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {White} {#parse set option white}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Blonde} {#parse set option blonde}
put #link >ShiftSelect {Agouti} {#parse set option agouti}
put #link >ShiftSelect {Tan} {#parse set option tan}
put #link >ShiftSelect {Ruddy} {#parse set option ruddy}
put #link >ShiftSelect {Piebald} {#parse set option piebald}
put #link >ShiftSelect {Sable} {#parse set option sable}
put #link >ShiftSelect {Silvered Black} {#parse set option silvered black}
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Tri-Color} {#parse set option tri-color}
put #link >ShiftSelect {Brown} {#parse set option brown}
put #link >ShiftSelect {Brindled} {#parse set option brindled}
put #link >ShiftSelect {Fawn} {#parse set option fawn}
put #link >ShiftSelect {Russet} {#parse set option russet}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (black|blue-grey|brown|calico|creamy white|dark brown|golden|grey|orange|rust-colored|sandy|sepia|silver|tawny|tortoiseshell|white|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## PRIMARY MARKINGS ##################

feature_primary_markings:
put #var Shift.Feature.Base primary markings
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's PRIMARY MARKINGS. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Client race:
put #echo >ShiftSelect
put #link >ShiftSelect {Prydean} {#parse set race prydean}
put #link >ShiftSelect {Rakash} {#parse set race rakash}
put #link >ShiftSelect
     waitforre set race (prydean|rakash)
goto feature_primary_markings_$1

feature_primary_markings_prydean:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's PRIMARY MARKINGS. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Black Belly} {#parse set option black belly}
put #link >ShiftSelect {Black Points} {#parse set option black points}
put #link >ShiftSelect {Brown Belly} {#parse set option brown belly}
put #link >ShiftSelect {Brown Points} {#parse set option brown points}
put #link >ShiftSelect {Glittered} {#parse set option glittered}
put #link >ShiftSelect {Grey Belly} {#parse set option grey belly}
put #link >ShiftSelect {Grey Points} {#parse set option grey points}
put #link >ShiftSelect {Sepia Belly} {#parse set option sepia belly}
put #link >ShiftSelect {Sepia Points} {#parse set option sepia points}
put #link >ShiftSelect {Silver Belly} {#parse set option silver belly}
put #link >ShiftSelect {Silver Points} {#parse set option silver points}
put #link >ShiftSelect {White Belly} {#parse set option white belly}
put #link >ShiftSelect {White Points} {#parse set option white points}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (black belly|black points|brown belly|brown points|glittered|grey belly|grey points|sepia belly|sepia points|silver belly|silver points|white belly|white points|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

feature_primary_markings_rakash:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's PRIMARY MARKINGS. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Blonde} {#parse set option blonde}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Ruddy} {#parse set option ruddy}
put #link >ShiftSelect {Sable} {#parse set option sable}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Silvered Black} {#parse set option silvered black}
put #link >ShiftSelect {Tan} {#parse set option tan}
put #link >ShiftSelect {White} {#parse set option white}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (blond|grey|ruddy|sable|silver|silvered black|tan|white|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

################## SECONDARY COLOR ##################

feature_secondary_color:
put #var Shift.Feature.Base secondary color
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's SECONDARY COLOR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blonde} {#parse set option blonde}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Ruddy} {#parse set option ruddy}
put #link >ShiftSelect {Sable} {#parse set option sable}
put #link >ShiftSelect {Sepia} {#parse set option sepia}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Silvered Black} {#parse set option silvered black}
put #link >ShiftSelect {Tan} {#parse set option tan}
put #link >ShiftSelect {White} {#parse set option white}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (black|blonde|grey|ruddy|sable|sepia|silver|silvered black|tan|white|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

################## SECONDARY MARKINGS ##################

feature_secondary_markings:
put #var Shift.Feature.Base secondary markings
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's SECONDARY MARKINGS. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Marbling} {#parse set option marbling}
put #link >ShiftSelect {Rosettes} {#parse set option rosettes}
put #link >ShiftSelect {Stripes} {#parse set option stripes}
put #link >ShiftSelect {Spots} {#parse set option spots}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (marbling|rosettes|stripes|spots|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

################## PALE SILVER UNDERBELLY ##################

feature_pale_silver_underbelly:
put #var Shift.Feature.Base belly
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's PALE SILVER UNDERBELLY. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Absent} {#parse set option absent}
put #link >ShiftSelect {Present} {#parse set option present}
     waitforre set option (absent|present)
     put #var Shift.Feature.Option $1
goto checkshift

################## HAIR LENGTH ##################

feature_hair_length:
put #var Shift.Feature.Base hair length
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's HAIR LENGTH. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Longer} {#parse set option long}
put #link >ShiftSelect {Shorter} {#parse set option short}
     waitforre set option (long|short)
     put #var Shift.Feature.Option $1
goto checkshift

################## HAIR COLOR ##################

feature_hair_color:
put #var Shift.Feature.Base hair color
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's HAIR COLOR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Amber} {#parse set option amber}
put #link >ShiftSelect {Ash-Blonde} {#parse set option ash-blonde}
put #link >ShiftSelect {Auburn} {#parse set option auburn}
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blonde} {#parse set option blonde}
put #link >ShiftSelect {Blue-Black} {#parse set option blue-black}
put #link >ShiftSelect {Bright Green} {#parse set option bright green}
put #link >ShiftSelect {Bright Orange} {#parse set option bright orange}
put #link >ShiftSelect {Brown} {#parse set option brown}
put #link >ShiftSelect {Brunette} {#parse set option brunette}
put #link >ShiftSelect {Dark Brown} {#parse set option dark brown}
put #link >ShiftSelect {Deep Blue} {#parse set option deep blue}
put #link >ShiftSelect {Deep Purple} {#parse set option deep purple}
put #link >ShiftSelect {Flaxen} {#parse set option flaxen}
put #link >ShiftSelect {Ginger} {#parse set option ginger}
put #link >ShiftSelect {Golden} {#parse set option golden}
put #link >ShiftSelect {Golden Brown} {#parse set option golden brown}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Honey} {#parse set option honey}
put #link >ShiftSelect {Lavender} {#parse set option lavender}
put #link >ShiftSelect {Light Brown} {#parse set option light brown}
put #link >ShiftSelect {Mouse Brown} {#parse set option mouse brown}
put #link >ShiftSelect {Platinum} {#parse set option platinum}
put #link >ShiftSelect {Red} {#parse set option red}
put #link >ShiftSelect {Red-Gold} {#parse set option red-gold}
put #link >ShiftSelect {Russet} {#parse set option russet}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Silver-Gilt} {#parse set option silver-gilt}
put #link >ShiftSelect {Snow-White} {#parse set option snow-white}
put #link >ShiftSelect {Strawberry} {#parse set option strawberry}
put #link >ShiftSelect {White} {#parse set option white}
put #echo >ShiftSelect
put #link >ShiftSelect {Original} {#parse set option original}
     waitforre set option (amber|ash-blonde|auburn|black|blonde|blue-black|bright green|bright orange|brown|brunette|dark brown|deep blue|deep purple|flaxen|ginger|golden|golden brown|grey|honey|lavender|light brown|mouse brown|platinum|red|red-gold|russet|silver|silver-gilt|snow-white|strawberry|white|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## HAIR STREAK ##################

feature_hair_streak:
put #var Shift.Feature.Base hair streak
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's HAIR STREAK. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Amber} {#parse set option amber}
put #link >ShiftSelect {Ash-Blonde} {#parse set option ash-blonde}
put #link >ShiftSelect {Auburn} {#parse set option auburn}
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blonde} {#parse set option blonde}
put #link >ShiftSelect {Blue-Black} {#parse set option blue-black}
put #link >ShiftSelect {Bright Green} {#parse set option bright green}
put #link >ShiftSelect {Bright Orange} {#parse set option bright orange}
put #link >ShiftSelect {Brown} {#parse set option brown}
put #link >ShiftSelect {Brunette} {#parse set option brunette}
put #link >ShiftSelect {Dark Brown} {#parse set option dark brown}
put #link >ShiftSelect {Deep Blue} {#parse set option deep blue}
put #link >ShiftSelect {Deep Purple} {#parse set option deep purple}
put #link >ShiftSelect {Flaxen} {#parse set option flaxen}
put #link >ShiftSelect {Ginger} {#parse set option ginger}
put #link >ShiftSelect {Golden} {#parse set option golden}
put #link >ShiftSelect {Golden Brown} {#parse set option golden brown}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Honey} {#parse set option honey}
put #link >ShiftSelect {Lavender} {#parse set option lavender}
put #link >ShiftSelect {Light Brown} {#parse set option light brown}
put #link >ShiftSelect {Mouse Brown} {#parse set option mouse brown}
put #link >ShiftSelect {Platinum} {#parse set option platinum}
put #link >ShiftSelect {Red} {#parse set option red}
put #link >ShiftSelect {Red-Gold} {#parse set option red-gold}
put #link >ShiftSelect {Russet} {#parse set option russet}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Silver-Gilt} {#parse set option silver-gilt}
put #link >ShiftSelect {Snow-White} {#parse set option snow-white}
put #link >ShiftSelect {Strawberry} {#parse set option strawberry}
put #link >ShiftSelect {White} {#parse set option white}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (amber|ash-blonde|auburn|black|blonde|blue-black|bright green|bright orange|brown|brunette|dark brown|deep blue|deep purple|flaxen|ginger|golden|golden brown|grey|honey|lavender|light brown|mouse brown|platinum|red|red-gold|russet|silver|silver-gilt|snow-white|strawberry|white|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

################## HAIR TEXTURE ##################

feature_hair_texture:
put #var Shift.Feature.Base hair texture
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's HAIR TEXTURE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Curly} {#parse set option curly}
put #link >ShiftSelect {Fine} {#parse set option fine}
put #link >ShiftSelect {Peppered} {#parse set option peppered}
put #link >ShiftSelect {Straight} {#parse set option straight}
put #link >ShiftSelect {Thick} {#parse set option thick}
put #link >ShiftSelect {Wavy} {#parse set option wavy}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (curly|fine|peppered|straight|thick|wavy|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## HEAD CREST ##################

feature_head_crest:
put #var Shift.Feature.Base head crest
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's HEAD CREST. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Absent} {#parse set option absent}
put #link >ShiftSelect {Present} {#parse set option present}
     waitforre set option (absent|present)
     put #var Shift.Feature.Option $1
goto checkshift

################## FACE SHAPE ##################

feature_face_shape:
put #var Shift.Feature.Base face shape
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FACE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Client race:
put #echo >ShiftSelect
put #link >ShiftSelect {Dwarf} {#parse set race dwarf}
put #link >ShiftSelect {Elf} {#parse set race elf}
put #link >ShiftSelect {Elothian} {#parse set race elothian}
put #link >ShiftSelect {Gnome} {#parse set race gnome}
put #link >ShiftSelect {Gor'Tog} {#parse set race gortog}
put #link >ShiftSelect {Halfling} {#parse set race halfling}
put #link >ShiftSelect {Human} {#parse set race human}
put #link >ShiftSelect {Kaldar} {#parse set race kaldar}
put #link >ShiftSelect {Prydean} {#parse set race prydean}
put #link >ShiftSelect {Rakash} {#parse set race rakash}
put #link >ShiftSelect {Rakash (moonskin)} {#parse set race rakashmoonskin}
put #link >ShiftSelect {S'Kra Mur} {#parse set race skramur}
put #link >ShiftSelect
     waitforre set race (dwarf|elf|elothian|gnome|gortog|halfling|human|kaldar|prydean|rakash|rakashmoonskin|skramur)
goto feature_face_shape_$1

feature_face_shape_dwarf:
feature_face_shape_elf:
feature_face_shape_elothian:
feature_face_shape_gnome:
feature_face_shape_gortog:
feature_face_shape_halfling:
feature_face_shape_human:
feature_face_shape_kaldar:
feature_face_shape_prydean:
feature_face_shape_rakash:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FACE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Angular} {#parse set option angular}
put #link >ShiftSelect {Heart-Shaped} {#parse set option heart-shaped}
put #link >ShiftSelect {Oval} {#parse set option oval}
put #link >ShiftSelect {Round} {#parse set option round}
put #link >ShiftSelect {Square} {#parse set option square}
put #link >ShiftSelect {Square-Jawed} {#parse set option square-jawed}
put #link >ShiftSelect {Triangular} {#parse set option triangular}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (angular|heart-shaped|oval|round|square|square-jawed|triangular|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_face_shape_skramur:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FACE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Angular} {#parse set option angular}
put #link >ShiftSelect {Elongated} {#parse set option elongated}
put #link >ShiftSelect {Flat-Featured} {#parse set option flat-featured}
put #link >ShiftSelect {Round} {#parse set option round}
put #link >ShiftSelect {Shallow-Featured} {#parse set option shallow-featured}
put #link >ShiftSelect {Sharp-Featured} {#parse set option sharp-featured}
put #link >ShiftSelect {Triangular} {#parse set option triangular}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (angular|elongated|flat-featured|round|shallow-featured|sharp-featured|triangular|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_face_shape_rakashmoonskin:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's FACE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Angular} {#parse set option angular}
put #link >ShiftSelect {Classic Lupine} {#parse set option classic lupine}
put #link >ShiftSelect {Pointy-Eared} {#parse set option pointy-eared}
put #link >ShiftSelect {Pudgy} {#parse set option pudgy}
put #link >ShiftSelect {Square} {#parse set option square}
put #link >ShiftSelect {Triangular} {#parse set option triangular}
put #link >ShiftSelect {Wolfish} {#parse set option wolfish}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (angular|classic lupine|pointy-eared|pudgy|square|triangular|wolfish|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## EAR SHAPE ##################

feature_ear_shape:
put #var Shift.Feature.Base ear shape
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EAR SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Pointed Ears} {#parse set option pointed ears}
put #link >ShiftSelect {Slightly Pointed Ears} {#parse set option slightly pointed ears}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (pointed ears|slightly pointed ears|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## TUFTED EARS ##################

feature_tufted_ears:
put #var Shift.Feature.Base tufted ears
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's TUFTED EARS. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Absent} {#parse set option absent}
put #link >ShiftSelect {Present} {#parse set option present}
     waitforre set option (absent|present)
     put #var Shift.Feature.Option $1
goto checkshift

################## EYE COLOR ##################

feature_eye_color:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EYE COLOR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Which eye:
put #echo >ShiftSelect
put #link >ShiftSelect {Left Eye} {#parse set eye left eye}
put #link >ShiftSelect {Right Eye} {#parse set eye right eye}
put #link >ShiftSelect {Both Eyes} {#parse set eye both eyes}
put #link >ShiftSelect
     waitforre set eye (left eye|right eye|both eyes)
goto feature_eye_color_color

feature_eye_color_color:
put #var Shift.Feature.Base $1
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EYE COLOR. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Ale-Brown} {#parse set option ale-brown}
put #link >ShiftSelect {Amber} {#parse set option amber}
put #link >ShiftSelect {Black} {#parse set option black}
put #link >ShiftSelect {Blue} {#parse set option blue}
put #link >ShiftSelect {Blue-Green} {#parse set option blue-green}
put #link >ShiftSelect {Blue-Grey} {#parse set option blue-grey}
put #link >ShiftSelect {Brown} {#parse set option brown}
put #link >ShiftSelect {Clear Colored} {#parse set option clear colored}
put #link >ShiftSelect {Crystal Blue} {#parse set option crystal blue}
put #link >ShiftSelect {Crystal Green} {#parse set option crystal green}
put #link >ShiftSelect {Dark} {#parse set option dark}
put #link >ShiftSelect {Dark Brown} {#parse set option dark brown}
put #link >ShiftSelect {Emerald} {#parse set option emerald}
put #link >ShiftSelect {Gold} {#parse set option gold}
put #link >ShiftSelect {Green} {#parse set option green}
put #link >ShiftSelect {Grey} {#parse set option grey}
put #link >ShiftSelect {Hazel} {#parse set option hazel}
put #link >ShiftSelect {Jade} {#parse set option jade}
put #link >ShiftSelect {Leaf-Green} {#parse set option leaf-green}
put #link >ShiftSelect {Milky Blue} {#parse set option milky blue}
put #link >ShiftSelect {Milky White} {#parse set option milky white}
put #link >ShiftSelect {Moss-Green} {#parse set option moss-green}
put #link >ShiftSelect {Red} {#parse set option red}
put #link >ShiftSelect {Sapphire} {#parse set option sapphire}
put #link >ShiftSelect {Silver} {#parse set option silver}
put #link >ShiftSelect {Steely Grey} {#parse set option steely grey}
put #link >ShiftSelect {Stormy Grey} {#parse set option stormy grey}
put #link >ShiftSelect {Topaz} {#parse set option topaz}
put #link >ShiftSelect {Turquoise} {#parse set option turquoise}
put #link >ShiftSelect {Violet} {#parse set option violet}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (ale-brown|amber|black|blue|blue-green|blue-grey|brown|clear colored|crystal blue|crystal green|dark|dark brown|emerald|gold|green|grey|hazel|jade|leaf-green|milky blue|milky white|moss-green|red|sapphire|silver|steely grey|stormy grey|topaz|turquoise|violet|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## EYE SHAPE ##################

feature_eye_shape:
put #var Shift.Feature.Base eye shape
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EYE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Client race:
put #echo >ShiftSelect
put #link >ShiftSelect {Dwarf} {#parse set race dwarf}
put #link >ShiftSelect {Elf} {#parse set race elf}
put #link >ShiftSelect {Elothian} {#parse set race elothian}
put #link >ShiftSelect {Gnome} {#parse set race gnome}
put #link >ShiftSelect {Gor'Tog} {#parse set race gortog}
put #link >ShiftSelect {Halfling} {#parse set race halfling}
put #link >ShiftSelect {Human} {#parse set race human}
put #link >ShiftSelect {Kaldar} {#parse set race kaldar}
put #link >ShiftSelect {Prydean} {#parse set race prydean}
put #link >ShiftSelect {Rakash} {#parse set race rakash}
put #link >ShiftSelect {Rakash (moonskin)} {#parse set race rakashmoonskin}
put #link >ShiftSelect {S'Kra Mur} {#parse set race skramur}
put #link >ShiftSelect
     waitforre set race (dwarf|elf|elothian|gnome|gortog|halfling|human|kaldar|prydean|rakash|rakashmoonskin|skramur)
goto feature_eye_shape_$1

feature_eye_shape_dwarf:
feature_eye_shape_human:
feature_eye_shape_elf:
feature_eye_shape_elothian:
feature_eye_shape_gnome:
feature_eye_shape_halfling:
feature_eye_shape_kaldar:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EYE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Almond-Shaped} {#parse set option almond-shaped}
put #link >ShiftSelect {Beady} {#parse set option beady}
put #link >ShiftSelect {Bulging} {#parse set option bulging}
put #link >ShiftSelect {Close-Set} {#parse set option close-set}
put #link >ShiftSelect {Crossed} {#parse set option crossed}
put #link >ShiftSelect {Deep-Set} {#parse set option deep-set}
put #link >ShiftSelect {Gold-Flecked} {#parse set option gold-flecked}
put #link >ShiftSelect {Limpid} {#parse set option limpid}
put #link >ShiftSelect {Red-Veined} {#parse set option red-veined}
put #link >ShiftSelect {Silver-Flecked} {#parse set option silver-flecked}
put #link >ShiftSelect {Sparkling} {#parse set option sparkling}
put #link >ShiftSelect {Thick-Lashed} {#parse set option thick-lashed}
put #link >ShiftSelect {Tilted} {#parse set option tilted}
put #link >ShiftSelect {Tilted Almond-Shaped} {#parse set option tilted almond-shaped}
put #link >ShiftSelect {Twitching} {#parse set option twitching}
put #link >ShiftSelect {Wide-Set} {#parse set option wide-set}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (almond-shaped|beady|bulging|close-set|crossed|deep-set|gold-flecked|limpid|red-veined|silver-flecked|sparkling|thick-lashed|tilted|tilted almond-shaped|twitching|wide-set|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

feature_eye_shape_gortog:
feature_eye_shape_skramur:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EYE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Almond-Shaped} {#parse set option almond-shaped}
put #link >ShiftSelect {Beady} {#parse set option beady}
put #link >ShiftSelect {Bulging} {#parse set option bulging}
put #link >ShiftSelect {Close-Set} {#parse set option close-set}
put #link >ShiftSelect {Crinkled} {#parse set option crinkled}
put #link >ShiftSelect {Crossed} {#parse set option crossed}
put #link >ShiftSelect {Deep-Set} {#parse set option deep-set}
put #link >ShiftSelect {Gold-Flecked} {#parse set option gold-flecked}
put #link >ShiftSelect {Limpid} {#parse set option limpid}
put #link >ShiftSelect {Red-Veined} {#parse set option red-veined}
put #link >ShiftSelect {Silver-Flecked} {#parse set option silver-flecked}
put #link >ShiftSelect {Sparkling} {#parse set option sparkling}
put #link >ShiftSelect {Tilted} {#parse set option tilted}
put #link >ShiftSelect {Twitching} {#parse set option twitching}
put #link >ShiftSelect {Wide-Set} {#parse set option wide-set}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (almond-shaped|beady|bulging|close-set|crinkled|crossed|deep-set|gold-flecked|limpid|red-veined|silver-flecked|sparkling|tilted|twitching|wide-set|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

feature_eye_shape_rakash:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's EYE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Almond-Shaped} {#parse set option almond-shaped}
put #link >ShiftSelect {Beady} {#parse set option beady}
put #link >ShiftSelect {Bulging} {#parse set option bulging}
put #link >ShiftSelect {Close-Set} {#parse set option close-set}
put #link >ShiftSelect {Crossed} {#parse set option crossed}
put #link >ShiftSelect {Deep-Set} {#parse set option deep-set}
put #link >ShiftSelect {Gold-Flecked} {#parse set option gold-flecked}
put #link >ShiftSelect {Limpid} {#parse set option limpid}
put #link >ShiftSelect {Red-Veined} {#parse set option red-veined}
put #link >ShiftSelect {Silver-Flecked} {#parse set option silver-flecked}
put #link >ShiftSelect {Sparkling} {#parse set option sparkling}
put #link >ShiftSelect {Thick-Lashed} {#parse set option thick-lashed}
put #link >ShiftSelect {Tilted} {#parse set option tilted}
put #link >ShiftSelect {Twitching} {#parse set option twitching}
put #link >ShiftSelect {Wide-Set} {#parse set option wide-set}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
put #link >ShiftSelect {Absent} {#parse set option absent}
     waitforre set option (almond-shaped|beady|bulging|close-set|crossed|deep-set|gold-flecked|limpid|red-veined|silver-flecked|sparkling|thick-lashed|tilted|twitching|wide-set|standard|original|absent)
     put #var Shift.Feature.Option $1
goto checkshift

################## NOSE SHAPE ##################

feature_nose_shape:
put #var Shift.Feature.Base nose shape
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's NOSE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Client race:
put #echo >ShiftSelect
put #link >ShiftSelect {Dwarf} {#parse set race dwarf}
put #link >ShiftSelect {Elf} {#parse set race elf}
put #link >ShiftSelect {Elothian} {#parse set race elothian}
put #link >ShiftSelect {Gnome} {#parse set race gnome}
put #link >ShiftSelect {Gor'Tog} {#parse set race gortog}
put #link >ShiftSelect {Halfling} {#parse set race halfling}
put #link >ShiftSelect {Human} {#parse set race human}
put #link >ShiftSelect {Kaldar} {#parse set race kaldar}
put #link >ShiftSelect {Prydean} {#parse set race prydean}
put #link >ShiftSelect {Rakash} {#parse set race rakash}
put #link >ShiftSelect {Rakash (moonskin)} {#parse set race rakashmoonskin}
put #link >ShiftSelect {S'Kra Mur} {#parse set race skramur}
put #link >ShiftSelect
     waitforre set race (dwarf|elf|elothian|gnome|gortog|halfling|human|kaldar|prydean|rakash|rakashmoonskin|skramur)
goto feature_eye_shape_$1

feature_nose_shape_dwarf:
feature_nose_shape_human:
feature_nose_shape_elf:
feature_nose_shape_elothian:
feature_nose_shape_gnome:
feature_nose_shape_gortog:
feature_nose_shape_halfling:
feature_nose_shape_kaldar:
feature_nose_shape_rakash:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's NOSE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Aquiline} {#parse set option aquiline}
put #link >ShiftSelect {Beak-Like} {#parse set option beak-like}
put #link >ShiftSelect {Broken} {#parse set option broken}
put #link >ShiftSelect {Bulbous} {#parse set option bulbous}
put #link >ShiftSelect {Button} {#parse set option button}
put #link >ShiftSelect {Classical} {#parse set option classical}
put #link >ShiftSelect {Crooked} {#parse set option crooked}
put #link >ShiftSelect {Freckled} {#parse set option freckled}
put #link >ShiftSelect {Hooked} {#parse set option hooked}
put #link >ShiftSelect {Pinched} {#parse set option pinched}
put #link >ShiftSelect {Pointy} {#parse set option pointy}
put #link >ShiftSelect {Small} {#parse set option small}
put #link >ShiftSelect {Straight} {#parse set option straight}
put #link >ShiftSelect {Upturned} {#parse set option upturned}
put #link >ShiftSelect {Wart-Tipped} {#parse set option wart-tipped}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (aquiline|beak-like|broken|bulbous|button|classical|crooked|freckled|hooked|pinched|pointy|small|straight|upturned|wart-tipped|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_nose_shape_skramur:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's NOSE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Blunt} {#parse set option blunt}
put #link >ShiftSelect {Crooked} {#parse set option crooked}
put #link >ShiftSelect {Dappled} {#parse set option dappled}
put #link >ShiftSelect {Elegant} {#parse set option elegant}
put #link >ShiftSelect {Flat} {#parse set option flat}
put #link >ShiftSelect {Long} {#parse set option long}
put #link >ShiftSelect {Narrow} {#parse set option narrow}
put #link >ShiftSelect {Pointed} {#parse set option pointed}
put #link >ShiftSelect {Rounded} {#parse set option rounded}
put #link >ShiftSelect {Slender} {#parse set option slender}
put #link >ShiftSelect {Speckled} {#parse set option speckled}
put #link >ShiftSelect {Straight} {#parse set option straight}
put #link >ShiftSelect {Striped} {#parse set option striped}
put #link >ShiftSelect {Squared} {#parse set option squared}
put #link >ShiftSelect {Upturned} {#parse set option upturned}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (blunt|crooked|dappled|elegant|flat|long|narrow|pointed|rounded|slender|speckled|straight|striped|squared|upturned|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_nose_shape_prydean:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's NOSE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Aquiline} {#parse set option aquiline}
put #link >ShiftSelect {Beak-Like} {#parse set option beak-like}
put #link >ShiftSelect {Broken} {#parse set option broken}
put #link >ShiftSelect {Bulbous} {#parse set option bulbous}
put #link >ShiftSelect {Button} {#parse set option button}
put #link >ShiftSelect {Classical} {#parse set option classical}
put #link >ShiftSelect {Crooked} {#parse set option crooked}
put #link >ShiftSelect {Hooked} {#parse set option hooked}
put #link >ShiftSelect {Narrow} {#parse set option narrow}
put #link >ShiftSelect {Pointy} {#parse set option pointy}
put #link >ShiftSelect {Pushed-In} {#parse set option pushed-in}
put #link >ShiftSelect {Pinched} {#parse set option pinched}
put #link >ShiftSelect {Small} {#parse set option small}
put #link >ShiftSelect {Straight} {#parse set option straight}
put #link >ShiftSelect {Upturned} {#parse set option upturned}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (aquiline|beak-like|broken|bulbous|button|classical|crooked|hooked|narrow|point|pushed-in|pinched|small|straight|upturned|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

feature_nose_shape_rakashmoonskin:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's NOSE SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Select option:
put #echo >ShiftSelect
put #link >ShiftSelect {Blunted} {#parse set option blunted}
put #link >ShiftSelect {Crooked} {#parse set option crooked}
put #link >ShiftSelect {Dewlapped} {#parse set option dewlapped}
put #link >ShiftSelect {Elegant} {#parse set option elegant}
put #link >ShiftSelect {Long} {#parse set option long}
put #link >ShiftSelect {Narrow} {#parse set option narrow}
put #link >ShiftSelect {Patchy} {#parse set option patchy}
put #link >ShiftSelect {Pointed} {#parse set option pointed}
put #link >ShiftSelect {Pug} {#parse set option pug}
put #link >ShiftSelect {Pushed-In} {#parse set option pushed-in}
put #link >ShiftSelect {Rounded} {#parse set option rounded}
put #link >ShiftSelect {Slender} {#parse set option slender}
put #link >ShiftSelect {Straight} {#parse set option straight}
put #link >ShiftSelect {Stubby} {#parse set option stubby}
put #link >ShiftSelect {Squared} {#parse set option squared}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (blunted|crooked|dewlapped|elegant|long|narrow|patchy|pointed|pug|pushed-in|rounded|slender|straight|stubby|squared|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## DIMPLES ##################

feature_dimples:
put #var Shift.Feature.Base dimples
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's DIMPLES. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Absent} {#parse set option absent}
put #link >ShiftSelect {Present} {#parse set option present}
     waitforre set option (absent|present)
     put #var Shift.Feature.Option $1
goto checkshift

################## CLEFT CHIN ##################

feature_cleft_chin:
put #var Shift.Feature.Base cleft chin
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's CLEFT CHIN. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Absent} {#parse set option absent}
put #link >ShiftSelect {Present} {#parse set option present}
     waitforre set option (absent|present)
     put #var Shift.Feature.Option $1
goto checkshift

################## BEARD ##################

feature_beard:
put #var Shift.Feature.Base beard
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's BEARD. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Freeze} {#parse set option freeze}
put #link >ShiftSelect {Longer} {#parse set option long}
put #link >ShiftSelect {Shorter} {#parse set option short}
     waitforre set option (freeze|long|short)
     put #var Shift.Feature.Option $1
goto checkshift

################## DISTINGUISHING MARK ##################

feature_distinguishing_mark:
put #var Shift.Feature.Base distinguishing mark
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's DISTINGUISHING MARK. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Elegant Arched Eyebrows} {#parse set option elegant arched eyebrows}
put #link >ShiftSelect {Frown Lines} {#parse set option frown lines}
put #link >ShiftSelect {Generous Mouth} {#parse set option generous mouth}
put #link >ShiftSelect {Heavy Jowls} {#parse set option heavy jowls}
put #link >ShiftSelect {Laugh Lines} {#parse set option laugh lines}
put #link >ShiftSelect {Missing Tooth} {#parse set option missing tooth}
put #link >ShiftSelect {Pouting Lips} {#parse set option pouting lips}
put #echo >ShiftSelect
put #link >ShiftSelect {Standard (race default)} {#parse set option standard}
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (elegant arched eyebrows|frown lines|generous mouth|heavy jowls|laugh lines|missing tooth|pouting lips|standard|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## TAIL SHAPE ##################

feature_tail_shape:
put #var Shift.Feature.Base tail shape
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's TAIL SHAPE. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Crooked Tail} {#parse set option crooked tail}
put #link >ShiftSelect {Curving Tail} {#parse set option curving tail}
put #link >ShiftSelect {Kinked Tail} {#parse set option kinked tail}
put #link >ShiftSelect {Long Tail} {#parse set option long tail}
put #link >ShiftSelect {Slender Tail} {#parse set option slender tail}
put #link >ShiftSelect {Straight Tail} {#parse set option straight tail}
put #link >ShiftSelect {Stubby Tail} {#parse set option stubby tail}
put #link >ShiftSelect {Thick Tail} {#parse set option thick tail}
put #echo >ShiftSelect
put #link >ShiftSelect {Original (character creation)} {#parse set option original}
     waitforre set option (crooked tail|curving tail|kinked tail|long tail|slender tail|straight tail|stubby tail|thick tail|original)
     put #var Shift.Feature.Option $1
goto checkshift

################## TUFTED TAIL ##################

feature_tufted_tail:
put #var Shift.Feature.Base tufted tail
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** We're shifting %1's TUFTED TAIL. **
put #echo >ShiftSelect
put #link >ShiftSelect {< Go back} {#parse RETURN TO FEATURES}
put #echo >ShiftSelect
put #echo >ShiftSelect
put #echo >ShiftSelect Shift options:
put #echo >ShiftSelect
put #link >ShiftSelect {Absent} {#parse set option absent}
put #link >ShiftSelect {Present} {#parse set option present}
     waitforre set option (absent|present)
     put #var Shift.Feature.Option $1
goto checkshift

############### SHIFTING SECTION ##################

checkshift:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** Client: %1
put #echo >ShiftSelect ** Feature: $Shift.Feature.Base
put #echo >ShiftSelect ** Option: $Shift.Feature.Option
put #echo >ShiftSelect
put #echo >ShiftSelect Is this correct?
put #echo >ShiftSelect
put #link >ShiftSelect {Yes} {#parse set confirm yes}
put #link >ShiftSelect {No} {#parse RETURN TO FEATURES}
     waitfor set confirm yes
goto startshift

startshift:
put #clear ShiftSelect
pause 0.1
put #echo >ShiftSelect ** Client: %1
put #echo >ShiftSelect ** Feature: $Shift.Feature.Base
put #echo >ShiftSelect ** Option: $Shift.Feature.Option
put #echo >ShiftSelect
put #echo >ShiftSelect ** {CANCEL SHIFT} {#parse CANCEL SHIFT}
put #echo >ShiftSelect
put #echo >ShiftSelect ** Initiating link...
put touch %1
pause 0.5
put #echo >ShiftSelect ** Requesting shift...
put shift %1 $Shift.Feature.Base $Shift.Feature.Option
put #echo >ShiftSelect ** Waiting for shift acceptance...
waitfor eyes lower briefly
put #echo >ShiftSelect ** Shift accepted...
put shift %1
put #echo >ShiftSelect ** Shift in progress...
waitfor You fall over, feeling the ability to alter others' features slip from your grasp
put #echo >ShiftSelect ** Shift complete!
put #echo >ShiftSelect ** Waiting for shift ability to return...
waitfor You feel your ability to Shift return to you.
put #echo >ShiftSelect 
put #echo >ShiftSelect Perform another shift? 
put #echo >ShiftSelect
put #link >ShiftSelect {Yes} {#parse RETURN TO FEATURES}
put #link >ShiftSelect {No} {#parse TIME TO QUIT}
	waitfor TIME TO QUIT
goto exit

cancelshift:
shift cancel
goto exit

exit:
put #clear ShiftSelect
pause 0.1
put #window remove ShiftSelect
exit