Explorar o código

[Refactored] Refactored hair description

ADCSux %!s(int64=2) %!d(string=hai) anos
pai
achega
341e127e72
Modificáronse 1 ficheiros con 147 adicións e 469 borrados
  1. 147 469
      locations/body_desc.qsrc

+ 147 - 469
locations/body_desc.qsrc

@@ -216,7 +216,7 @@ if $ARGS[0] = 'breasts':
 		$pcdesc_breastsword = 'bolt-ons'
 		pcdesc_breastimplantcheck = 1
 	elseif pcs_bustdisparity >= 8:
-		$pcdesc_breastsqualifierinsertive = ', <<$pcdesc_haircolourwordy>> overdone fuckdoll'
+		$pcdesc_breastsqualifierinsertive = ', <<$pc_descWordy[''hair colour'']>> overdone fuckdoll'
 		$pcdesc_breastsword = 'bolt-ons'
 		pcdesc_breastimplantcheck = 1
 	!! This triggers if they have fake breasts, but they are not obviously, blatantly fake breasts. In fact, this should be what triggers most of the time with a PC who has implants, given average cases.
@@ -1211,576 +1211,254 @@ if $ARGS[0] = 'hair':
 		hpigtail = 0
 	end
 
+	!Hair status - whether hair is tangled or combed
 	if pcs_hairbsh = 0:
 		if pcs_hairlng > 30:
 			$pcs_hairbsh = 'tangled. You should comb it to keep it healthy'
-			rand_hairmess = rand(0,3)
-			if rand_hairmess = 0:
-				$pcdesc_hairmessrandom = 'tangled'
-			elseif rand_hairmess = 1:
-				$pcdesc_hairmessrandom = 'tousled'
-			elseif rand_hairmess = 2:
-				$pcdesc_hairmessrandom = 'disheveled'
-			elseif rand_hairmess = 3:
-				$pcdesc_hairmessrandom = 'mussed'
-			end
-			$pcdesc_hairmess = 'tangled'
+			$pc_desc['hair status'] = func($this, 'ChooseDescWord', 'tangled', 'tousled', 'disheveled', 'mussed')
 			$pcdesc_hairmessinsertive = ', tangled'
-			$pcdesc_hairmesswordy = 'tangled, poorly-kept'
+			$pc_descWordy['hair status'] = 'tangled, poorly-kept'
 		else
 			$pcs_hairbsh = 'messy. You should style it to keep it looking good'
-			rand_hairmess = rand(0,1)
-			if rand_hairmess = 0:
-				$pcdesc_hairmessrandom = 'messy'
-			elseif rand_hairmess = 1:
-				$pcdesc_hairmessrandom = 'unkempt'
-			end
-			$pcdesc_hairmess = 'messy'
-			$pcdesc_hairmessinsertive = ', messy'
-			$pcdesc_hairmesswordy = 'messy, poorly-kept'
+			$pc_desc['hair status'] = func($this, 'ChooseDescWord', 'tangled', 'tousled', 'disheveled', 'mussed')
+			$pc_descWordy['hair status'] = 'messy, poorly-kept'
 		end
 	else
 		$pcs_hairbsh = 'neatly styled'
-		rand_hairmess = rand(0,1)
-		if rand_hairmess = 0:
-			$pcdesc_hairmessrandom = 'neat'
-		elseif rand_hairmess = 1:
-			$pcdesc_hairmessrandom = 'well-kept'
-		end
-		$pcdesc_hairmess = 'neat'
+		$pc_desc['hair status'] = func($this, 'ChooseDescWord', 'tangled', 'tousled', 'disheveled', 'mussed')
 		$pcdesc_hairmessinsertive = ', neat'
-		$pcdesc_hairmesswordy = 'neat, well-maintained'
+		$pc_descWordy['hair status'] = 'neat, well-maintained'
 	end
 
+	!Hair texture - straight or curly
 	if curly <= 0:
 		$curly = 'straight, slightly wavy '
 		!! Not a lot of variety here, I know -- it is for future compatibility, so everything can have be reached in the same fashion.
-		$pcdesc_hairtexturerandom = 'straight'
-		$pcdesc_hairwordrandom = 'locks'
-		$pcdesc_hairtexturewordy = 'straight, slightly wavy'
-		$pcdesc_hairwordwordy = 'locks'
-		$pcdesc_hairtexture = 'straight'
-		$pcdesc_hairword = 'locks'
+		$pc_desc['hair texture'] = 'straight'
+		$pc_descWordy['hair texture'] = 'locks'
 	else
 		$curly = 'curly '
-		rand_hairword = rand(0,1)
-		$pcdesc_hairtexturerandom = 'curly'
-		if rand_hairword = 0:
-			$pcdesc_hairwordrandom = 'curls'
-		elseif rand_hairword = 1:
-			$pcdesc_hairwordrandom = 'ringlets'
-		end
-		$pcdesc_hairtexturewordy = 'playfully curly'
-		$pcdesc_hairwordwordy = 'curls'
-		$pcdesc_hairtexture = 'curly'
-		$pcdesc_hairword = 'curls'
+		$pc_desc['hair texture'] = func($this, 'ChooseDescWord', 'curls', 'ringlets')
+		$pc_descWordy['hair texture'] = 'playfully curly'
 	end
 
 	!! If you are baffled by the need for a forehead descriptor here, it is primarily just for writing about cumshots. I honestly cannot think of another use case. Other variables largely just for compatibility.
 	if hbangs <= 0:
 		$hbangs = ''
-		$pcdesc_foreheadrandom = 'forehead'
-		$pcdesc_foreheadwordy = 'forehead'
-		$pcdesc_forehead = 'forehead'
+		$pc_desc['hair bang'] = 'forehead'
+		$pc_descWordy['hair bang'] = 'forehead'
 	else
 		$hbangs = ', with a fringe covering your forehead'
-		rand_bangs = rand(0,1)
-		if rand_bangs = 0:
-			$pcdesc_foreheadrandom = 'bangs'
-		elseif rand_bangs = 1:
-			$pcdesc_foreheadrandom = 'fringe'
-		end
-		$pcdesc_foreheadwordy = 'fringe'
-		$pcdesc_forehead = 'bangs'
+		$pc_desc['hair bang'] = func($this, 'ChooseDescWord', 'bangs', 'fringe')
+		$pc_descWordy['hair bang'] = 'fringe'
 	end
 
 	!! Be careful when adding random-assigned synonyms to hair colours to ensure that you do not accidentally describe a different shade of the colour you are describing.
 	!! Honestly, we probably do not need all the light medium dark colour splitting for the bright colours, but it is sadly too late to go back on them.
 	if pcs_haircol = 0:
 		$pcs_haircol = 'black'
-		$pcdesc_haircolour = 'black'
-		rand_hair = rand(0,9)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'black'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'ebony'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'obsidian'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'jet-black'
-		elseif rand_hair = 4:
-			$pcdesc_hairrandom = 'charcoal black'
-		elseif rand_hair = 5:
-			$pcdesc_hairrandom = 'raven black'
-		elseif rand_hair = 6:
-			$pcdesc_hairrandom = 'sable'
-		elseif rand_hair = 7:
-			$pcdesc_hairrandom = 'inky-black'
-		elseif rand_hair = 8:
-			$pcdesc_hairrandom = 'coal-black'
-		elseif rand_hair = 9:
-			$pcdesc_hairrandom = 'pitch-black'
-		end
-		$pcdesc_haircolourwordy = 'dark, obsidian-black'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'black', 'ebony', 'obsidian', 'jet-black', 'charcoal black', 'ravenblack','sable')
+		$pc_descWordy['hair colour'] = 'dark, obsidian-black'
+
 	elseif pcs_haircol = 1:
 		$pcs_haircol = 'brown'
-		$pcdesc_haircolour = 'brown'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'brown'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'russet brown'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'chestnut brown'
-		end
-		$pcdesc_haircolourwordy = 'russet brown'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'brown', 'russet brown', 'chestnut brown')
+		$pc_descWordy['hair colour'] = 'russet brown'
+
 	elseif pcs_haircol = 2:
 		$pcs_haircol = 'red'
-		$pcdesc_haircolour = 'red'
 		!! Remember, this is not the vibrant dyed red colour, this is a natural red
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'fiery red'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'coppery red'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'ginger'
-		end
-		$pcdesc_haircolourwordy = 'fiery red'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'fiery red', 'coppery red', 'ginger')
+		$pc_descWordy['hair colour'] = 'fiery red'
+
 	elseif pcs_haircol = 3:
 		$pcs_haircol = 'blonde'
-		$pcdesc_haircolour = 'blonde'
-		rand_hair = rand(0,3)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'blonde'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'golden-blonde'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'golden'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'fair, blonde'
-		end
-		$pcdesc_haircolourwordy = 'beautiful golden-blonde'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'blonde', 'golden-blonde', 'golden', 'fair, blonde')
+		$pc_descWordy['hair colour'] = 'beautiful golden-blonde'
+
 	elseif pcs_haircol = 4:
 		$pcs_haircol = 'light red'
-		$pcdesc_haircolour = 'light red'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'strawberry blonde'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'fire-engine red'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'scarlet'
-		end
-		$pcdesc_haircolourwordy = 'glowing, pale red'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'strawberry blonde', 'fire-engine red', 'scarlet')
+		$pc_descWordy['hair colour'] = 'glowing, pale red'
+
 	elseif pcs_haircol = 5:
 		$pcs_haircol = 'dark blue'
-		$pcdesc_haircolour = 'dark blue'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'dark blue'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'blurple'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'midnight blue'
-		end
-		$pcdesc_haircolourwordy = 'rich, purplish-blue'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'dark blue', 'blurple', 'midnight blue')
+		$pc_descWordy['hair colour'] = 'rich, purplish-blue'
+
 	elseif pcs_haircol = 6:
 		$pcs_haircol = 'blue'
-		$pcdesc_haircolour = 'blue'
-		rand_hair = rand(0,1)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'blue'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'electric blue'
-		end
-		$pcdesc_haircolourwordy = 'vibrant, electric blue'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'blue', 'electric blue')
+		$pc_descWordy['hair colour'] = 'vibrant, electric blue'
+
 	elseif pcs_haircol = 7:
 		$pcs_haircol = 'light blue'
-		$pcdesc_haircolour = 'light blue'
-		rand_hair = rand(0,3)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'light blue'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'azure'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'pale blue'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'candy-floss blue'
-		end
-		$pcdesc_haircolourwordy = 'pale, candy-coloured blue'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'light blue', 'azure', 'pale blue', 'candy-floss blue')
+		$pc_descWordy['hair colour'] = 'pale, candy-coloured blue'
+
 	elseif pcs_haircol = 8:
 		$pcs_haircol = 'dark green'
-		$pcdesc_haircolour = 'dark green'
-		$pcdesc_hairrandom = 'dark green'
+		$pc_desc['hair colour'] = 'dark green'
 		!! Emerald green is actually a lighter colour, but with the specific qualifier of deep, it can be used here for lack of a better one.
-		$pcdesc_haircolourwordy = 'deep, emerald-green'
+		$pc_descWordy['hair colour'] = 'deep, emerald-green'
+
 	elseif pcs_haircol = 9:
 		$pcs_haircol = 'green'
-		$pcdesc_haircolour = 'green'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'green'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'forest green'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'fern-green'
-		end
-		$pcdesc_haircolourwordy = 'vibrant, forest-green'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'green', 'forest green', 'fern-green')
+		$pc_descWordy['hair colour'] = 'vibrant, forest-green'
+
 	elseif pcs_haircol = 10:
 		$pcs_haircol = 'light green'
-		$pcdesc_haircolour = 'light green'
-		rand_hair = rand(0,4)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'light green'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'pale green'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'leaf-green'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'minty green'
-		elseif rand_hair = 4:
-			$pcdesc_hairrandom = 'candy-floss green'
-		end
-		$pcdesc_haircolourwordy = 'pale, leaf-green'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'light green', 'pale green', 'leaf-green', 'minty green', 'candy-floss green')
+		$pc_descWordy['hair colour'] = 'pale, leaf-green'
+
 	elseif pcs_haircol = 11:
 		$pcs_haircol = 'dark pink'
-		$pcdesc_haircolour = 'dark pink'
-		rand_hair = rand(0,1)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'dark pink'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'purplish-pink'
-		end
-		$pcdesc_haircolourwordy = 'dark, purplish-pink'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'dark pink', 'purplish-pink')
+		$pc_descWordy['hair colour'] = 'dark, purplish-pink'
+
 	elseif pcs_haircol = 12:
 		$pcs_haircol = 'pink'
-		$pcdesc_haircolour = 'pink'
-		rand_hair = rand(0,4)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'bubblegum-pink'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'Barbie pink'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'fuchsia'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'pink'
-		elseif rand_hair = 4:
-			$pcdesc_hairrandom = 'bright pink'
-		end
-		$pcdesc_haircolourwordy = 'bright, bubblegum-pink'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'bubblegum-pink', 'Barbie pink', 'fuchsia', 'pink', 'bright pink')
+		$pc_descWordy['hair colour'] = 'bright, bubblegum-pink'
+	
 	elseif pcs_haircol = 13:
 		$pcs_haircol = 'light pink'
-		$pcdesc_haircolour = 'light pink'
-		rand_hair = rand(0,5)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'light pink'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'pale pink'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'babydoll pink'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'China pink'
-		elseif rand_hair = 4:
-			$pcdesc_hairrandom = 'cotton-candy pink'
-		elseif rand_hair = 5:
-			$pcdesc_hairrandom = 'candy-floss pink'
-		end
-		$pcdesc_haircolourwordy = 'pale, cotton-candy pink'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'light pink', 'pale pink', 'babydoll pink', 'China pink', 'cotton-candy pink', 'candy-floss pink')
+		$pc_descWordy['hair colour'] = 'pale, cotton-candy pink'
+	
 	elseif pcs_haircol = 14:
 		$pcs_haircol = 'dark purple'
-		$pcdesc_haircolour = 'dark purple'
-		rand_hair = rand(0,3)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'dark purple'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'deep purple'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'midnight purple'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'indigo'
-		end
-		$pcdesc_haircolourwordy = 'deep, bluish-purple'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'dark purple', 'deep purple', 'midnight purple', 'indigo')
+		$pc_descWordy['hair colour'] = 'deep, bluish-purple'
+	
 	elseif pcs_haircol = 15:
 		$pcs_haircol = 'purple'
-		$pcdesc_haircolour = 'purple'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'purple'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'plum purple'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'royal purple'
-		end
-		$pcdesc_haircolourwordy = 'rich, royal purple'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'purple', 'plum purple', 'royal purple')
+		$pc_descWordy['hair colour'] = 'rich, royal purple'
+	
 	elseif pcs_haircol = 16:
 		$pcs_haircol = 'light purple'
-		$pcdesc_haircolour = 'light purple'
-		rand_hair = rand(0,3)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'light purple'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'pale purple'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'amethyst coloured'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'lavender'
-		end
-		$pcdesc_haircolourwordy = 'pale, floral purple'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'light purple', 'pale purple', 'amethyst coloured', 'lavender')
+		$pc_descWordy['hair colour'] = 'pale, floral purple'
+	
 	elseif pcs_haircol = 17:
 		$pcs_haircol = 'light orange'
-		$pcdesc_haircolour = 'light orange'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'orange'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'pumpkin orange'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'bright orange'
-		end
-		$pcdesc_haircolourwordy = 'bright, fiery orange'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'light orange', 'pumpkin orange', 'bright orange')
+		$pc_descWordy['hair colour'] = 'bright, fiery orange'
+	
 	elseif pcs_haircol = 18:
 		$pcs_haircol = 'dark red'
-		$pcdesc_haircolour = 'dark red'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'dark red'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'wine red'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'auburn'
-		end
-		$pcdesc_haircolourwordy = 'deep, seductive red'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'dark red', 'wine red', 'auburn')
+		$pc_descWordy['hair colour'] = 'deep, seductive red'
+	
 	elseif pcs_haircol = 19:
 		$pcs_haircol = 'medium red'
-		$pcdesc_haircolour = 'medium red'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'medium red'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'cherry red'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'bronze'
-		end
-		$pcdesc_haircolourwordy = 'strong, fiery red'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'medium red', 'cherry red', 'bronze')
+		$pc_descWordy['hair colour'] = 'strong, fiery red'
+	
 	elseif pcs_haircol = 20:
 		$pcs_haircol = 'turquoise'
-		$pcdesc_haircolour = 'turquoise'
-		rand_hair = rand(0,3)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'turquoise'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'ultramarine'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'aquamarine'
-		elseif rand_hair = 3:
-			$pcdesc_hairrandom = 'sea green'
-		end
-		$pcdesc_haircolourwordy = 'soft milky blue'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'turquoise', 'ultramarine', 'aquamarine', 'sea green')
+		$pc_descWordy['hair colour'] = 'soft milky blue'
+	
 	elseif pcs_haircol = 21:
 		$pcs_haircol = 'medium orange'
-		$pcdesc_haircolour = 'medium orange'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'medium orange'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'pumpkin orange'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'carrot orange'
-		end
-		$pcdesc_haircolourwordy = 'strong, fiery orange'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'medium orange', 'pumpkin orange', 'carrot orange')
+		$pc_descWordy['hair colour'] = 'strong, fiery orange'
+	
 	elseif pcs_haircol = 22:
 		$pcs_haircol = 'dark orange'
-		$pcdesc_haircolour = 'dark orange'
-		rand_hair = rand(0,2)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'dark orange'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'burnt Orange'
-		elseif rand_hair = 2:
-			$pcdesc_hairrandom = 'rust'
-		end
-		$pcdesc_haircolourwordy = 'strong, burnt orange'
-	!! This below is a catch-all, it should not actually ever wind up occurring, but just in case it does...
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'dark orange', 'burnt Orange', 'rust')
+		$pc_descWordy['hair colour'] = 'strong, burnt orange'
+	
+		!! This below is a catch-all, it should not actually ever wind up occurring, but just in case it does...
 	else
 		$pcs_haircol = 'strangely-coloured'
-		$pcdesc_haircolour = 'strangely-coloured'
-		rand_hair = rand(0,1)
-		if rand_hair = 0:
-			$pcdesc_hairrandom = 'strangely-coloured'
-		elseif rand_hair = 1:
-			$pcdesc_hairrandom = 'multicoloured'
-		end
-		$pcdesc_haircolourwordy = 'exceptionally variegated'
+		$pc_desc['hair colour'] = func($this, 'ChooseDescWord', 'strangely-coloured', 'multicoloured')
+		$pc_descWordy['hair colour'] = 'exceptionally variegated'
 	end
 
-	if hscrunchw <= 0:
-		$hscrunch = ''
-		$hpigtail = ''
-		$pcdesc_hairstylerandom = 'loose'
-		$pcdesc_hairobjectrandom = 'hair'
-		$pcdesc_hairstyle = 'loose'
-		$pcdesc_hairobject = 'hair'
-		$pcdesc_hairobjectwordy = 'loose and free <<$pcs_haircol>> hair'
-	elseif hscrunchw = 1:
-		$hscrunch = 'A hair-tie holds your hair in place with a ponytail.'
-		$hpigtail = ''
-		$pcdesc_hairstylerandom = 'ponytailed'
-		$pcdesc_hairobjectrandom = 'ponytail'
-		$pcdesc_hairstyle = 'ponytailed'
-		$pcdesc_hairobject = 'ponytail'
-		$pcdesc_hairobjectwordy = 'tight, high-set <<$pcs_haircol>> ponytail'
-	else
-		!! The actual, specific setting for hscrunchw when pigtails are desired is 2, but it is better to have a catch-all. Adjust the else above into an elseif set for 2 if more styles involving scrunchies are added.
-		$hscrunch = ''
-		$hpigtail = 'Two scrunchies hold your hair up into two cute, playful twin tails.'
-		$pcdesc_hairstylerandom = 'pigtailed'
-		$pcdesc_hairobjectrandom = 'pigtails'
-		$pcdesc_hairstyle = 'pigtailed'
-		$pcdesc_hairobject = 'pigtails'
-		$pcdesc_hairobjectwordy = 'youthful, playful and flirty <<$pcs_haircol>> pigtails'
-	end
+	!hair style
+	if hscrunchw = 1:
+		$hairstyle = 'A hair-tie holds your hair in place with a ponytail.'
+		$pc_desc['hair style'] = 'ponytail'
+		$pc_descWordy['hair style'] = 'tight, high-set <<$pcs_haircol>> ponytail'
 
-	if hpingripw <= 0:
-		$hpingrip = ''
-		$pcdesc_hairstylerandom = 'loose'
-		$pcdesc_hairobjectrandom = 'hair'
-		$pcdesc_hairstyle = 'loose'
-		$pcdesc_hairobject = 'hair'
-		$pcdesc_hairobjectwordy = 'loose and free <<$pcs_haircol>> hair'
-	else
-		$hpingrip = 'Hair-pins hold your hair in place in a stylish updo.'
-		rand_hairstyle = rand(0,1)
-		if rand_hairstyle = 0:
-			$pcdesc_hairstylerandom = 'upswept'
-		elseif rand_hairstyle = 1:
-			$pcdesc_hairstylerandom = 'ornately-pinned'
-		end
-		$pcdesc_hairobjectrandom = 'updo'
-		$pcdesc_hairstyle = 'upswept'
-		$pcdesc_hairobject = 'updo'
-		$pcdesc_hairobjectwordy = 'ornate, intricately-pinned <<$pcs_haircol>> updo'
-	end
+	elseif hscrunchw = 2:
+		!Pigtails
+		$hairstyle = 'Two scrunchies hold your hair up into two cute, playful twin tails.'
+		$pc_desc['hair style'] = 'pigtails'
+		$pc_descWordy['hair style'] = 'youthful, playful and flirty <<$pcs_haircol>> pigtails'
+
+	elseif hbraids > 0:	
+		$hairstyle = 'Your hair is beautifully braided.'
+		$pc_desc['hair style'] = 'braid'
+		$pc_descWordy['hair style'] = 'delicately-wound <<$pcs_haircol>> braid'
 
-	if hbraids <= 0:
-		$hbraids = ''
-		$pcdesc_hairstylerandom = 'loose'
-		$pcdesc_hairobjectrandom = 'hair'
-		$pcdesc_hairstyle = 'loose'
-		$pcdesc_hairobject = 'hair'
-		$pcdesc_hairobjectwordy = 'loose and free <<$pcs_haircol>> hair'
-	else	
-		$hbraids = 'Your hair is beautifully braided.'
-		rand_hairstyle = rand(0,1)
-		rand_hairobject = rand(0,1)
-		if rand_hairstyle = 0:
-			$pcdesc_hairstylerandom = 'braided'
-		elseif rand_hairstyle = 1:
-			$pcdesc_hairstylerandom = 'plaited'
-		end
-		if rand_hairobject = 0:
-			$pcdesc_hairobjectrandom = 'braids'
-		elseif rand_hairobject = 1:
-			$pcdesc_hairobjectrandom = 'plaits'
-		end
-		$pcdesc_hairstyle = 'braided'
-		$pcdesc_hairobject = 'braid'
-		$pcdesc_hairobjectwordy = 'delicately-wound <<$pcs_haircol>> braid'
+	elseif hpingripw > 0:
+		$hairstyle = 'Hair-pins hold your hair in place in a stylish updo.'
+		$pc_desc['hair style'] = 'upswept'
+		$pc_descWordy['hair style'] = 'ornate, intricately-pinned <<$pcs_haircol>> updo'
+
+	else
+		$hairstyle = ''
+		$pc_desc['hair style'] = 'loose'
+		$pc_descWordy['hair style'] = 'loose and free <<$pcs_haircol>> hair'
 	end
 
+	!Hair length
 	if avatar_hair = 1:
 		$hair = $av_hair
 		!! I do not really understand how the avatar system works in terms of hair growth and such, so these descriptors will just have to do
-		$pcdesc_hairlength = 'normal length'
-		$pcdesc_hairlengthwordy = 'normal length'
+		$pc_desc['hair length'] = 'normal length'
+		$pc_descWordy['hair length'] = 'normal length'
 	else
 		if pcs_hairlng <= 30:
 			$hair = 'You have very short <<$pcs_haircol>> hair. It doesn''t cover your ears, and looks a little masculine. Nevertheless, some people like this style as it''s easy to take care of.'
-			rand_hairlength = rand(0,1)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'extremely short'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'boyishly short'
-			end
-			$pcdesc_hairlength = 'extremely short'
-			$pcdesc_hairlengthwordy = 'short, and altogether rather boyish'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'extremly short', 'boyishly short')
+			$pc_descWordy['hair length'] = 'short, and altogether rather boyish'
+
 		elseif pcs_hairlng > 30 and pcs_hairlng <= 80:
 			$hair = 'You have short <<$pcs_haircol>> hair which just covers your ears to their lobes. It''s a modern, classy hairstyle. Currently your hair is <<$pcs_hairbsh>>.'
-			rand_hairlength = rand(0,2)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'short'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'pixie-cut'
-			elseif rand_hairlength = 2:
-				$pcdesc_hairlengthrandom = 'androgynously short'
-			end
-			$pcdesc_hairlength = 'short'
-			$pcdesc_hairlengthwordy = 'short, page-boy'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'short', 'pixie-cut', 'androgynously short')
+			$pc_descWordy['hair length'] = 'short, page-boy'
+		
 		elseif pcs_hairlng > 80 and pcs_hairlng <= 160:
-			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. Your hair goes down to your chin line and can be considered of a medium length, which fits almost all face shapes. Your hair is <<$pcs_hairbsh>> at the moment. <<$hscrunch>><<$hpingrip>><<$hpigtail>>'
-			rand_hairlength = rand(0,1)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'medium'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'average'
-			end
-			$pcdesc_hairlength = 'medium'
-			$pcdesc_hairlengthwordy = 'medium-length'
+			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. Your hair goes down to your chin line and can be considered of a medium length, which fits almost all face shapes. Your hair is <<$pcs_hairbsh>> at the moment. <<$hairstyle>>'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'medium', 'average')
+			$pc_descWordy['hair length'] = 'medium-length'
+		
 		elseif pcs_hairlng > 160 and pcs_hairlng <= 260:
-			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. Your hair reaches your shoulders with several strands going just beyond. Currently your hair is <<$pcs_hairbsh>>. <<$hscrunch>><<$hpingrip>><<$hbraids>><<$hpigtail>>'
-			$pcdesc_hairlengthrandom = 'moderate'
-			$pcdesc_hairlength = 'moderate'
-			$pcdesc_hairlengthwordy = 'shoulder-length'
+			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. Your hair reaches your shoulders with several strands going just beyond. Currently your hair is <<$pcs_hairbsh>>. <<$hairstyle>>'
+			$pc_desc['hair length'] = 'moderate'
+			$pc_descWordy['hair length'] = 'shoulder-length'
+		
 		elseif pcs_hairlng > 260 and pcs_hairlng <= 400:
-			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. As your hair reaches your bra line, hairdressers would consider this a rather long style, yet beautiful looks are created with this length. Your hair is <<$pcs_hairbsh>>. <<$hscrunch>><<$hpingrip>><<$hbraids>><<$hpigtail>>'
-			rand_hairlength = rand(0,1)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'long'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'lengthy'
-			end
-			$pcdesc_hairlength = 'long'
-			$pcdesc_hairlengthwordy = 'long, past the shoulders'
+			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. As your hair reaches your bra line, hairdressers would consider this a rather long style, yet beautiful looks are created with this length. Your hair is <<$pcs_hairbsh>>. <<$hairstyle>>'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'long', 'lengthy')
+			$pc_descWordy['hair length'] = 'long, past the shoulders'
+		
 		elseif pcs_hairlng > 400 and pcs_hairlng <= 600:
-			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. As your hair reaches your back, hairdressers would consider this a rather long hair style, yet beautiful looks are created with this length. Your hair is <<$pcs_hairbsh>>. <<$hscrunch>><<$hpingrip>><<$hbraids>><<$hpigtail>>'
-			rand_hairlength = rand(0,3)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'very long'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'rather lengthy'
-			elseif rand_hairlength = 2:
-				$pcdesc_hairlengthrandom = 'quite long'
-			elseif rand_hairlength = 3:
-				$pcdesc_hairlengthrandom = 'back-length'
-			end
-			$pcdesc_hairlength = 'very long'
-			$pcdesc_hairlengthwordy = 'very long, back-length'
+			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. As your hair reaches your back, hairdressers would consider this a rather long hair style, yet beautiful looks are created with this length. Your hair is <<$pcs_hairbsh>>. <<$hairstyle>>'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'very long', 'rather lengthy', 'quite long', 'back-length')
+			$pc_descWordy['hair length'] = 'very long, back-length'
+		
 		elseif pcs_hairlng > 600 and pcs_hairlng <= 800:
-			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. As your hair reaches your butt, hairdressers would consider this a very long hair style, yet beautiful looks are created with this length. Your hair is <<$pcs_hairbsh>>. <<$hscrunch>><<$hpingrip>><<$hbraids>><<$hpigtail>>'
-			rand_hairlength = rand(0,1)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'extremely long'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'waist-length'
-			end
-			$pcdesc_hairlength = 'extremely long'
-			$pcdesc_hairlengthwordy = 'extremely long and waist-length'
+			$hair = 'You have <<$curly>><<$pcs_haircol>> hair<<$hbangs>>. As your hair reaches your butt, hairdressers would consider this a very long hair style, yet beautiful looks are created with this length. Your hair is <<$pcs_hairbsh>>. <<$hairstyle>>'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'extremely long', 'waist-length')
+			$pc_descWordy['hair length'] = 'extremely long and waist-length'
+		
 		else 
-			$hair = 'You have extremely long <<$pcs_haircol>> hair<<$hbangs>>. Reaching all the way past your butt, even Rapunzel would be jealous. Your hair is currently <<$pcs_hairbsh>>. <<$hscrunch>><<$hbraids>>'
-			rand_hairlength = rand(0,1)
-			if rand_hairlength = 0:
-				$pcdesc_hairlengthrandom = 'exceptionally long'
-			elseif rand_hairlength = 1:
-				$pcdesc_hairlengthrandom = 'incredibly lengthy'
-			end
-			$pcdesc_hairlength = 'incredibly long'
-			$pcdesc_hairlengthwordy = 'exceptionally lengthy and princess-like'
+			$hair = 'You have extremely long <<$pcs_haircol>> hair<<$hbangs>>. Reaching all the way past your butt, even Rapunzel would be jealous. Your hair is currently <<$pcs_hairbsh>>. <<$hairstyle>>'
+			$pc_desc['hair length'] = func($this, 'ChooseDescWord', 'exceptionally long', 'incredibly lengthy')
+			$pc_descWordy['hair length'] = 'exceptionally lengthy and princess-like'
 		end
 	end
 
 	!! A pair of ready-made long strings for writers to pull from for descriptions
-	$pcdesc_fullhair = '<<$pcdesc_hairmess>>, <<$pcdesc_hairlength>> <<$pcs_haircol>> <<$pcdesc_hairword>>'
-	$pcdesc_fullhairwordy = '<<$pcdesc_hairmess>>, <<$pcdesc_hairlengthwordy>> <<$pcdesc_hairword>> of <<$pcdesc_haircolourwordy>>'
+	$pc_des['hair'] = '<<$pc_desc[''hair status'']>>, <<$pc_desc[''hair length'']>> <<$pc_desc[''hair colour'']>> <<$pc_descWordy[''hair texture'']>>'
+	$pc_descWordy['hair'] = '<<$pc_desc[''hair status'']>>, <<$pc_descWordy[''hair length'']>> <<$pc_descWordy[''hair texture'']>> of <<$pc_descWordy[''hair colour'']>>'
 end
 
 if $ARGS[0] = 'eyelashes':