diff --git a/src/npc/descriptions/skin.js b/src/npc/descriptions/skin.js
index 61c5fcc70b903ce28ddd91f9779de7d6b0ad3e19..41bba0961a02ccaa1b2fa9bcd5fa73cfcb42bdee 100644
--- a/src/npc/descriptions/skin.js
+++ b/src/npc/descriptions/skin.js
@@ -1,38 +1,13 @@
 App.Desc.skin = function(slave) {
-	const r = [];
+	let r = [];
 	const {
 		he, him, his, hers, himself, boy, He, His
 	} = getPronouns(slave);
 
 	if (slave.fuckdoll > 0) {
 		r.push(`The small areas of visible skin are`);
-		if (slave.markings === "freckles") {
-			r.push(`${slave.skin} and lightly`);
-			if (skinToneLevel(slave.skin) > 5 && skinToneLevel(slave.skin) < 10 && slave.hColor === "red") {
-				r.push(`freckled, an attractive combination.`);
-			} else {
-				r.push(`freckled.`);
-			}
-		} else if (slave.markings === "heavily freckled") {
-			r.push(`${slave.skin} and heavily`);
-			if (skinToneLevel(slave.skin) > 5 && skinToneLevel(slave.skin) < 10 && slave.hColor === "red") {
-				r.push(`freckled, an attractive combination.`);
-			} else {
-				r.push(`freckled.`);
-			}
-		} else {
-			r.push(`${slave.skin}.`);
-		}
-		if (slave.skin === "sun tanned" || slave.skin === "spray tanned") {
-			r.push(`${His} skin has been`);
-			if (slave.skin === "sun tanned") {
-				r.push(`tanned to a natural, healthy-looking tone.`);
-			} else if (slave.skin === "spray tanned") {
-				r.push(`tanned with obvious, garish-looking makeup.`);
-			} else {
-				r.push(`tanned.`);
-			}
-		}
+		r = r.concat(freckles());
+		r = r.concat(tanned());
 	} else if (V.seeNationality === 1) {
 		if (slave.nationality === 0) {
 			r.push(`Ethnically, ${he}'s`);
@@ -47,32 +22,9 @@ App.Desc.skin = function(slave) {
 		} else {
 			r.push(`${He}'s originally <span class="tan">${slave.nationality};</span> ethnically, ${he}'s`);
 		}
-		r.push(`<span class="tan">${slave.race},</span> and ${his} skin is ${slave.skin}`);
-		if (slave.markings === "freckles") {
-			r.push(`and lightly `);
-			if ((skinToneLevel(slave.skin) > 5) && (skinToneLevel(slave.skin) < 10) && (slave.hColor === "red")) {
-				r.push(`freckled, an attractive combination.`);
-			} else {
-				r.push(`freckled.`);
-			}
-		} else if (slave.markings === "heavily freckled") {
-			r.push(`and heavily`);
-			if ((skinToneLevel(slave.skin) > 5) && (skinToneLevel(slave.skin) < 10) && (slave.hColor === "red")) {
-				r.push(`freckled, an attractive combination.`);
-			} else {
-				r.push(`freckled.`);
-			}
-		}
-		if (slave.skin === "sun tanned" || slave.skin === "spray tanned") {
-			r.push(`${His} skin has been`);
-			if (slave.skin === "sun tanned") {
-				r.push(`tanned to a natural, healthy-looking tone.`);
-			} else if (slave.skin === "spray tanned") {
-				r.push(`tanned with obvious, garish-looking makeup.`);
-			} else {
-				r.push(`tanned.`);
-			}
-		}
+		r.push(`<span class="tan">${slave.race},</span> and ${his} skin is`);
+		r = r.concat(freckles());
+		r = r.concat(tanned());
 		if (slave.race !== slave.origRace && V.saleDescription !== 1) {
 			r.push(`${He} has received plastic surgery to appear ${slave.race}; ${he} is originally ${slave.origRace}.`);
 		} else if (slave.race !== slave.origRace && V.saleDescription === 1) {
@@ -88,32 +40,8 @@ App.Desc.skin = function(slave) {
 		}
 	} else if ((V.seeRace === 1)) {
 		r.push(`Ethnically, ${he}'s <span class="tan">${slave.race},</span> and ${his} skin is`);
-		if (slave.markings === "freckles") {
-			r.push(`${slave.skin} and lightly`);
-			if ((skinToneLevel(slave.skin) > 5) && (skinToneLevel(slave.skin) < 10) && (slave.hColor === "red")) {
-				r.push(`freckled, an attractive combination.`);
-			} else {
-				r.push(`freckled.`);
-			}
-		} else if (slave.markings === "heavily freckled") {
-			r.push(`${slave.skin} and heavily`);
-			if ((skinToneLevel(slave.skin) > 5) && (skinToneLevel(slave.skin) < 10) && (slave.hColor === "red")) {
-				r.push(`freckled, an attractive combination`);
-			} else {
-				r.push(`freckled.`);
-			}
-		} else {
-			r.push(`${slave.skin}.`);
-		}
-		if (slave.skin === "sun tanned" || slave.skin === "spray tanned") {
-			r.push(`${His} skin has been tanned`);
-			if (slave.skin === "sun tanned") {
-				r.push(`to a natural, healthy-looking tone`);
-			} else if (slave.skin === "spray tanned") {
-				r.push(`with obvious, garish-looking makeup`);
-			}
-			r.push(`.`);
-		}
+		r = r.concat(freckles());
+		r = r.concat(tanned());
 		if (slave.race !== slave.origRace && V.saleDescription !== 1) {
 			r.push(`${He} has received plastic surgery to appear ${slave.race}; ${he} is originally ${slave.origRace}`);
 		} else if (slave.race !== slave.origRace && V.saleDescription === 1) {
@@ -128,31 +56,45 @@ App.Desc.skin = function(slave) {
 			}
 		}
 	} else {
-		r.push(`${His} skin is ${slave.skin}`);
+		r.push(`${His} skin is`);
+		r = r.concat(freckles());
+		r = r.concat(tanned());
+	} return r.join(" ");
+
+	function freckles() {
+		const r = [];
 		if (slave.markings === "freckles") {
-			r.push(`and lightly freckled`);
+			r.push(`${slave.skin} and lightly `);
 			if ((skinToneLevel(slave.skin) > 5) && (skinToneLevel(slave.skin) < 10) && (slave.hColor === "red")) {
-				r.push(`freckled, an attractive combination`);
+				r.push(`freckled, an attractive combination.`);
 			} else {
 				r.push(`freckled.`);
 			}
 		} else if (slave.markings === "heavily freckled") {
-			r.push(`and heavily`);
+			r.push(`${slave.skin} and heavily`);
 			if ((skinToneLevel(slave.skin) > 5) && (skinToneLevel(slave.skin) < 10) && (slave.hColor === "red")) {
-				r.push(`freckled, an attractive combination`);
+				r.push(`freckled, an attractive combination.`);
 			} else {
 				r.push(`freckled.`);
 			}
+		} else {
+			r.push(`${slave.skin}.`);
 		}
+		return r;
+	}
+
+	function tanned() {
+		const r = [];
 		if (slave.skin === "sun tanned" || slave.skin === "spray tanned") {
 			r.push(`${His} skin has been`);
 			if (slave.skin === "sun tanned") {
-				r.push(`tanned to a natural, healthy-looking tone`);
+				r.push(`tanned to a natural, healthy-looking tone.`);
 			} else if (slave.skin === "spray tanned") {
-				r.push(`tanned with obvious, garish-looking makeup`);
+				r.push(`tanned with obvious, garish-looking makeup.`);
 			} else {
 				r.push(`tanned.`);
 			}
 		}
-	} return r.join(" ");
+		return r;
+	}
 };