From 2ecc53649b447c11e52839a1af7fe6d2ab58a392 Mon Sep 17 00:00:00 2001
From: Pedy <admin@8ch.net>
Date: Sat, 1 Sep 2018 00:27:53 +0300
Subject: [PATCH] Fixes

---
 src/cheat.tw                | 12 ++++++------
 src/widgets/widgets_mod.tw  | 38 ++++++++++++++++++++++---------------
 src/widgets/widgets_text.tw |  5 ++---
 3 files changed, 31 insertions(+), 24 deletions(-)

diff --git a/src/cheat.tw b/src/cheat.tw
index 1f8e1c2..b7ac7ab 100644
--- a/src/cheat.tw
+++ b/src/cheat.tw
@@ -281,26 +281,26 @@ set:
 <br>
 
 <<if $playergender is "m">>
-[[female|Cheats][$playergender to "f", $penisexist to 0, $vaginaexist to 1]] | male
+[[female|Cheats][$playergender to "f", $penisexist to 0, $vaginaexist to 1, $penisstate = "none", $vaginastate = 0]] | male
 <<elseif $playergender is "f">>
-female | [[male|Cheats][$playergender to "m", $penisexist to 1, $vaginaexist to 0]]
+female | [[male|Cheats][$playergender to "m", $penisexist to 1, $vaginaexist to 0, $penisstate = 0, $vaginastate = "none"]]
 <</if>>
 ($playergender) Gender/sex
 <br>
 
 <<if $vaginaexist is 1>>
-[[remove|Cheats][$vaginaexist to 0]] | grow
+[[remove|Cheats][$vaginaexist to 0, $vaginastate = "none"]] | grow
 <<else>>
-remove | [[grow|Cheats][$vaginaexist to 1]]
+remove | [[grow|Cheats][$vaginaexist to 1, $vaginastate = 0]]
 <</if>>
 ($vaginaexist) Vagina
 <br>
 
 
 <<if $penisexist is 1>>
-[[remove|Cheats][$penisexist to 0]] | grow
+[[remove|Cheats][$penisexist to 0, $penisstate = "none"]] | grow
 <<else>>
-remove | [[grow|Cheats][$penisexist to 1]]
+remove | [[grow|Cheats][$penisexist to 1, $penisstate = 0]]
 <</if>>
 ($penisexist) Penis
 <br>
diff --git a/src/widgets/widgets_mod.tw b/src/widgets/widgets_mod.tw
index e9068c5..59fdf98 100644
--- a/src/widgets/widgets_mod.tw
+++ b/src/widgets/widgets_mod.tw
@@ -531,11 +531,23 @@ $loss_output
 			<</if>>
 		<</if>>
 
-		<<if jsSplitcheck($args[0], "a") || _local == 1>>
+		<<if jsSplitcheck($args[0], "a") || _local == 1 || _local == 0>>
 			<<set $output = "penis:cock:dick">>
 		<<else>>
 			<<set $output = "willy:nilly:weewee:peepee:weenie">> /* these variants are mostly for the player character to say, using them in description would be too silly */
 		<</if>>
+	<<case "hardeness">>
+		<<if $arousal gte 8000>>
+			<<set $output = "rock-hard:demanding:eager:fully engorged:raging:vigorous:fiery">>
+		<<elseif $arousal gte 6000>>
+			<<set $output = "erect:stiff:hard:ready">>
+		<<elseif $arousal gte 4000>>
+			<<set $output = "raising:hardening:half-hard:swelling:bulging">>
+		<<elseif $arousal gte 2000>>
+			<<set $output = "still soft:somewhat soft">>
+		<<else>>
+			<<set $output = "flaccid:soft:shrunk:limp">>
+		<</if>>
 	<<case "vagina">>
 		<<set _local = 0>>
 		<<if jsSplitcheck($args[0], "player")>>
@@ -556,9 +568,9 @@ $loss_output
 
 		<<if jsSplitcheck($args[0], "ex") || _local == 1>>
 			<<set $output = "fuckhole:snatch:twat:honeypot">>
-		<<elseif jsSplitcheck($args[0], "a") || _local == 2>>
+		<<elseif jsSplitcheck($args[0], "a") || _local == 2 || _local == 0>>
 			<<set $output = "vagina:pussy:cunt">>
-		<<else>>
+		<<elseif jsSplitcheck($args[0], "ch") || _local == 3>>
 			<<set $output = "pussy:cunny:coochie:quim">>
 		<</if>>
 	<<case "ass">>
@@ -568,11 +580,7 @@ $loss_output
 		<<if jsSplitcheck($args[0], "player")>>
 			<<if $analstat >= 100 && jsRandom(2)>>
 				<<set _local = 1>>
-			<<else>>
-				<<set _local = 2>>
 			<</if>>
-		<<elseif jsSplitcheck($args[0], "npc")>>
-			<<set _local = 2>>
 		<</if>>
 
 		<<if jsSplitcheck($args[0], "ex") || _local == 1>>
@@ -598,7 +606,7 @@ $loss_output
 				<<set _local = $args[0].toLowerCase().split(":")[1]>>
 
 				<<if _local == "vagina" && $vaginalvirginity == 1 || _local == "anus" && $analvirginity == 1>>
-					<<set $output = "virgin:virginal:unused:chaste:celibate:shut tight:untapped:cherry">>
+					<<set $output = "virgin:virginal:unused:shut tight:untapped:cherry">>
 				<<else>>
 					<<if _local == "vagina">><<set _local = $vaginalstat>><<else>><<set _local = $analstat>><</if>>
 					<<if _local < 1200>>
@@ -822,13 +830,13 @@ $loss_output
 			<<set $output = "<<fsyn 'twitch:ing//cumming'>>">>
 		<<else>>
 			<<if $arousal gte 8000>>
-				<<set $output = "<<fsyn 'throb:ing//hardeness'>>">>
+				<<set $output = "<<fsyn 'throb:ing'>>">>
 			<<elseif $arousal gte 6000>>
-				<<set $output = "<<fsyn 'wet//hardeness'>>">>
+				<<set $output = "<<fsyn 'wet'>>">>
 			<<elseif $arousal gte 4000>>
-				<<set $output = "<<fsyn 'tremble:ing//hardeness'>>">>
+				<<set $output = "<<fsyn 'tremble:ing'>>">>
 			<<elseif $arousal gte 2000>>
-				<<set $output = "<<fsyn 'tingle:ing//hardeness'>>">>
+				<<set $output = "<<fsyn 'tingle:ing'>>">>
 			<<else>>
 				<<set _local = 1>>
 			<</if>>
@@ -837,13 +845,13 @@ $loss_output
 	/* if none of the descriptors were attached, we flip local and can have an additional descriptor with a high chance, otherwise we can attach it with much lowered chance */
 	<<if (_local == 1 && jsRandom(2)) || (_local == 0 && !jsRandom(4))>>
 		<<if $penilevirginity == 1>>
-			<<set $output += jsSplitr("virgin:celibate:virginal:unused") + "@">>
+			<<set $output += " " + jsSplitr("virgin:virginal:unused") + "@">>
 		<</if>>
 
 		<<if $devstate gte 1>>
-			<<set $output += " <<fsyn 'adult_ad:penis'>>">>
+			<<set $output += " <<fsyn 'adult_ad:penis//hardeness'>>">>
 		<<else>>
-			<<set $output += " <<fsyn 'small//cute//immature:penis//tender//loli'>>">>
+			<<set $output += " <<fsyn 'small//cute//immature:penis//tender//loli//hardeness'>>">>
 		<</if>>
 		/* for now assume that shota penis is small, size cannot be specified yet, cut-uncut state as well */
 	<</if>>
diff --git a/src/widgets/widgets_text.tw b/src/widgets/widgets_text.tw
index da3a769..f932b27 100644
--- a/src/widgets/widgets_text.tw
+++ b/src/widgets/widgets_text.tw
@@ -1089,7 +1089,6 @@ boy
 	<<if $penilevirginity == 1>>
 		<<set $output += jsSplitr("virgin:celibate:virginal:unused") + " ">>
 	<</if>>
-
 	<<set $output += "<<fsyn 'penis'>>">>
 <</if>>
 <<if $penisexist is 1 and $vaginaexist is 1>>
@@ -2358,7 +2357,7 @@ nuns
 <<widget "vaginalvirginitywarning">><<nobr>>
 
 <<if $vaginalvirginity is 1>>
-<span class="red"> This action will <<print jsSplitr("deflower you:take your virginity:tear your hymen")>>.</span>
+<span class="red"> This action will <<print jsSplitr("deflower your vagina:take your vaginal virginity:tear your hymen")>>.</span>
 <</if>>
 
 <</nobr>><</widget>>
@@ -2369,7 +2368,7 @@ nuns
 <<widget "penilevirginitywarning">><<nobr>>
 
 <<if $penilevirginity is 1>>
-<span class="red"> This action will <<print jsSplitr("deflower you:take your virginity")>> you.</span>
+<span class="red"> This action will <<print jsSplitr("take your penile virginity")>>.</span>
 <</if>>
 
 <</nobr>><</widget>>
\ No newline at end of file
-- 
GitLab