Browse Source

Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife

Myles Croft (Hooded Silence) 2 months ago
parent
commit
791ad567b0

+ 256 - 189
locations/Cheatmenu_din.qsrc

@@ -434,10 +434,11 @@ if $ARGS[0] = 'permanent':
 
 	*nl
 	'No dream chance: <a href="exec: cheatVars[''no_dream_chance''] = input(''Enter no dream chance (%)'') & dynamic $cheatmenu[$cheatmenu[''this_menu'']]">' + iif(cheatVars['no_dream_chance'] > 0, '<<cheatVars[''no_dream_chance'']>>%</a>, <a href="exec:cheatVars[''no_dream_chance''] = 0 & dynamic $cheatmenu[$cheatmenu[''this_menu'']]">Enabled</a>', 'Disabled</a>')
-
 	*nl
-	'<font color="red"><b>WARNING!</b></font>: Disabling states may cause some events not to trigger. Use at your own risk!'
+
 	$cheatmenu['table_end']
+
+	'<center><font color="red"><b>WARNING!</b></font>: Disabling states may cause some events not to trigger. Use at your own risk!</center>'
 end
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -819,158 +820,170 @@ if $ARGS[0] = 'looks':
 	'<center><h1>Cheat Menu - Character Appearance</h1></center>'
 	'<center><font color="red"><b>WARNING!</b></font>: Using cheats can cause bugs and break your save, use them with care. When reporting bugs, please mention any cheats you used.</center>'
 	*nl
-	$cheatmenu['table_start']
-	'<<$pcs_firstname>> <<$pcs_lastname>> (<<$pcs_nickname>>). <a href="exec:dynamic $cheatmenu[''rename'']">Rename</a>'
-
-
-	if face_style['type'] = 1: '<a href="exec: dynamic $cheatmenu[''change_avatar_path'']">Change current profile path:</a> <<$face_style[''avatar_path'']>>'
-	if face_style['type'] ! 0: '<a href="exec: face_style[''type''] = 0 & dynamic $cheatmenu[''looks'']">Use the dynamic profile system</a>'
-	if face_style['type'] ! 1: '<a href="exec: face_style[''type''] = 1 & $face_style[''avatar_path''] += iif($face_style[''avatar_path''] = '''', ''images/avatar.jpg'', '''') & dynamic $cheatmenu[''looks'']">Use a fixed profile image</a>'
-	if face_style['type'] ! 2: '<a href="exec: face_style[''type''] = 2 & dynamic $cheatmenu[''looks'']">Use the rendered profile system</a>'
-
-	if $face_style['avatar_hair'] ! '':
-		'<a href="exec: $face_style[''avatar_hair''] = '''' & dynamic $cheatmenu[''looks'']">Custom Hair: ON</a>'
-		'<<$face_style[''avatar_hair'']>>'
-	else
-		'<a href="exec:dynamic $cheatmenu[''avatar_hair_set'']">Custom Hair: OFF</a>'
-	end
-	*nl
-	'<a href="exec:gs ''Cheatmenu_din'', ''parameters''">Show design parameters of body</a>'
-	'<a href="exec:gs ''Cheatmenu_din'', ''vneshpara''">Show beauty parameters</a>'
-	*nl
-	'You are <a href="exec: pcs_dob += 10000 & dynamic $cheatmenu[''age'']">(-1)</a> <<age>> <a href="exec: pcs_dob -= 10000 & dynamic $cheatmenu[''age'']">(+1)</a> years old'
-	*nl
-	'You look <<vidage>> years old'
-	'<a href="exec:dynamic $cheatmenu[''visualage'']">Change apparent age</a>'
-	*nl
-	'You are <<pcs_hgt>> centimetres tall'
-	'<a href="exec:pcs_hgt = input(''Enter <<$pcs_nickname>>s height in centimetres<br><br>(default 165, min 100, max 200, values below 150 and above 180 will cause problems in the calculation of BMI/weight the more you deviate from the default 170)'') & dynamic $cheatmenu[''looks'']">Change <<$pcs_nickname>>''s height</a>'
-	*nl
-	*p 'Musculature (<<stren_plus_lvl>>): ' & dynamic $cheatmenu['printLooksLinks'], 'stren_plus', 'Musculature'
-	*pl '<font color="grey">Allows strength to go past 100'
-	*pl'<font color="red">Negatively</font> affects appearance</font>'
-	*nl
-	*p 'Toned Butt (<<butt_tr_lvl>>): ' & dynamic $cheatmenu['printLooksLinks'], 'butt_tr', 'Toned Butt'
-	*nl
-	'You have <<$titsize>> breasts'
-	if tits < 11:'<a href="exec: bodyVars[''bust_silicone''] += 5 & dynamic $cheatmenu[''looks'']">Enlarge breasts(silicone)</a>'
-	if bodyVars['bust_silicone'] => 1:'<a href="exec: bodyVars[''bust_silicone''] = min(0, bodyVars[''bust_silicone'']-5) & dynamic $cheatmenu[''looks'']">Shrink breasts(silicone)</a>'
-	if tits < 11 and pcs_mass['bust_gen'] < 50:'<a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_bust'', 5">Enlarge breasts (natural)</a>'
-	if pcs_mass['bust'] => 6 and pcs_mass['bust_gen'] => 6: '<a href="exec: titreduc = 1 & gs ''Cheatmenu_din'', ''change_pcs_mass_bust'', -5">Shrink breasts (natural)</a>'
-	*nl
-	if pcs_buttsize <= 14:
-		$cmd_temp_butt_desc = 'flat'
-	elseif pcs_buttsize <= 25:
-		$cmd_temp_butt_desc = 'average'
-	elseif pcs_buttsize <= 40:
-		$cmd_temp_butt_desc = 'pert'
-	elseif pcs_buttsize <= 59:
-		$cmd_temp_butt_desc = 'heart-shaped'
-	else
-		$cmd_temp_butt_desc = 'bubble'
-	end
-	'You have a <<$cmd_temp_butt_desc>> butt'
-	if pcs_buttsize < 50: '<a href="exec: bodyVars[''butt_silicone''] += 10 & dynamic $cheatmenu[''looks'']">Enlarge butt (silicone)</a>'
-	if bodyVars['butt_silicone'] => 1: '<a href="exec: bodyVars[''butt_silicone''] = max(0, bodyVars[''butt_silicone'']-10) & dynamic $cheatmenu[''looks'']">Shrink butt (silicone)</a>'
-	if pcs_mass['butt'] < 50 and pcs_mass['butt_gen'] < 50: '<a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_butt'', 10">Enlarge butt (natural)</a>'
-	if pcs_mass['butt'] => 6 and pcs_mass['butt_gen'] => 6: '<a href="exec: assreduc = 1 & gs ''Cheatmenu_din'', ''change_pcs_mass_butt'', -10">Shrink butt (natural)</a>'
-	killvar '$cmd_temp_butt_desc'
-	!! if pcs_buttsize < 20:'<a href="exec: bodyVars[''butt_cheat''] += 2 & dynamic $cheatmenu[''looks'']">Enlarge butt</a>'
-	!! if pcs_buttsize > 1:'<a href="exec: bodyVars[''butt_cheat''] -= 2 & dynamic $cheatmenu[''looks'']">Shrink butt</a>'
-	!! if bodyVars['butt_cheat'] ! 0:'<a href="exec: bodyVars[''butt_cheat''] = 0 & dynamic $cheatmenu[''looks'']">Reset butt shape to default</a>'
-	*nl
-	'<<$pc_descFull[''lip'']>>'
-	if pcs_lip < 4:'<a href="exec:pcs_lip += 1 & dynamic $cheatmenu[''looks'']">Enlarge lips</a>'
-	if pcs_lip > 0:'<a href="exec:pcs_lip -= 1 & dynamic $cheatmenu[''looks'']">Shrink lips</a>'
-	*nl
-	'<<$pc_descFull[''skin'']>>'
-	if pcs_skin < 900: '<a href="exec:pcs_skin += 200 & gs ''AppearanceSystem'', ''UpdateBaseAppearance'' & dynamic $cheatmenu[''looks'']">Improve skin</a>'
-	if pcs_skin > 0: '<a href="exec:pcs_skin -= 200 & gs ''AppearanceSystem'', ''UpdateBaseAppearance'' & dynamic $cheatmenu[''looks'']">Worsen skin</a>'
-	if pcs_tan >= 0:'<a href="exec:pcs_tan += 10 & dynamic $cheatmenu[''looks'']">Become tanned</a>'
-	if pcs_tan > 0:'<a href="exec:pcs_tan = 0 & dynamic $cheatmenu[''looks'']">Remove tan</a>'
-	*nl
-	'<<$pc_descFull[''throat'']>>'
-	if pcs_throat <= 31:'<a href="exec:pcs_throat += 5 & dynamic $cheatmenu[''looks'']">Increase throat capacity</a>'
-	if pcs_throat >= 5:'<a href="exec:pcs_throat -= 5 & dynamic $cheatmenu[''looks'']">Decrease throat capacity</a>'
-	if dounspell = 1:
+	'<center><table width="1000" cellspacing="0" cellpadding="10" valign="top"><tr><td width="33%" valign="top">'
+		'<<$pcs_firstname>> <<$pcs_lastname>> (<<$pcs_nickname>>). <a href="exec:dynamic $cheatmenu[''rename'']">Rename</a>'
 		*nl
-		'<a href="exec:dounsplkil = 2 & gs ''body'', ''hardreset''">Hard Reset body shape</a>'
-	end
-
-	*nl
-	'<<$pcs_vag>>'
-	if pcs_vag > 0:'<a href="exec:pcs_vag = 0 & dynamic $cheatmenu[''looks'']">Reinstate virginity</a>'
-	if stat['think_virgin'] < 1:'<a href="exec:stat[''vaginal''] = 0 & stat[''vaginal_fist''] = 0 & stat[''vaginal_dildo''] = 0 & stat[''vaginal_strap''] = 0 & dynamic $cheatmenu[''looks'']">Make Sveta believe she is a virgin again (resets the related sex stats)</a>'
-	if pcs_vag <= 25:'<a href="exec:gs ''Cheatmenu_din'', ''vagenlarge''">Enlarge comfortable vaginal capacity</a>'
-	if pcs_vag >= 5:'<a href="exec:gs ''Cheatmenu_din'', ''vagreduce''">Reduce comfortable vaginal capacity</a>'
-	'Your comfortable vaginal capacity will reduce by <<vshrink>> every <<vshrinkdays>> days.'
-	if vshrink < 10:'<a href="exec:vshrink += 1 & dynamic $cheatmenu[''looks'']">Increase amount of reduction</a>'
-	if vshrink > 0:'<a href="exec:vshrink -= 1 & dynamic $cheatmenu[''looks'']">Reduce amount of reduction</a>'
-	if vshrinkdays < 10:'<a href="exec:vshrinkdays += 1 & dynamic $cheatmenu[''looks'']">Increase number of days it takes</a>'
-	if vshrinkdays > 1:'<a href="exec:vshrinkdays -= 1 & dynamic $cheatmenu[''looks'']">Reduce number of days it takes</a>'
-	'When gaped your vagina will reduce each stage (up to 4 for maximum gape) every <<vgape[4]>> minutes.'
-	if vgape[4] < 60:'<a href="exec:vgape[4] += 5 & dynamic $cheatmenu[''looks'']">Increase time by 5 minutes</a>'
-	if vgape[4] > 5:'<a href="exec:vgape[4] -= 5 & dynamic $cheatmenu[''looks'']">Reduce time by 5 minutes</a>'
-	*nl
-	'<<$pcs_ass>>'
-	if pcs_ass <= 25:'<a href="exec:gs ''Cheatmenu_din'', ''assenlarge''">Enlarge comfortable anal capacity</a>'
-	if pcs_ass >= 5:'<a href="exec:gs ''Cheatmenu_din'', ''assreduce''">Reduce comfortable anal capacity</a>'
-	'Your comfortable anal capacity will reduce by <<ashrink>> every <<ashrinkdays>> days.'
-	if ashrink < 10:'<a href="exec:ashrink += 1 & dynamic $cheatmenu[''looks'']">Increase amount of reduction</a>'
-	if ashrink > 0:'<a href="exec:ashrink -= 1 & dynamic $cheatmenu[''looks'']">Reduce amount of reduction</a>'
-	if ashrinkdays < 10:'<a href="exec:ashrinkdays += 1 & dynamic $cheatmenu[''looks'']">Increase number of days it takes</a>'
-	if ashrinkdays > 1:'<a href="exec:ashrinkdays -= 1 & dynamic $cheatmenu[''looks'']">Reduce number of days it takes</a>'
-	'When gaped your anus will reduce each stage (up to 4 for maximum gape) every <<agape[4]>> minutes.'
-	if agape[4] < 60:'<a href="exec:agape[4] += 5 & dynamic $cheatmenu[''looks'']">Increase time by 5 minutes</a>'
-	if agape[4] > 5:'<a href="exec:agape[4] -= 5 & dynamic $cheatmenu[''looks'']">Reduce time by 5 minutes</a>'
-	*nl
-	if dounspell = 0:
-		if fat ! 0: '<a href="exec:fat = 0 & dynamic $cheatmenu[''looks'']">Zero fat</a>'
-		'Body Fat = (<<pcs_mass[''body'']>>): <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -10">-10</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -5">-5</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -1">-1</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 1">+1</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 5">+5</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 10">+10</a>'
-		'Note: You need some Body Fat to survive, any value under 11 is clasified as "starving" and a value of 0 can lead to a Game Over. <<func(''body'', ''CalcOptBodyMass'')>> gives a bmi of 22.5.'
-	end
-	*nl
-	'<a href="exec:dynamic $cheatmenu[''tatoo'']">Tattoo removal</a>'
-	*nl
-	'<<$hair>>'
-	if pcs_haircol = 0:
-		'Your hair is now (prev) <<$pcs_haircol>> <a href="exec:pcs_haircol +=1 & dynamic $cheatmenu[''looks''] & nathcol = pcs_haircol">(next)</a>'
-	elseif pcs_haircol > 0 and pcs_haircol < 3:
-		'Your hair is now <a href="exec:pcs_haircol -=1 & dynamic $cheatmenu[''looks'']" & nathcol = pcs_haircol>(prev)</a> <<$pcs_haircol>> <a href="exec:pcs_haircol +=1 & dynamic $cheatmenu[''looks'']" & pcs_haircol = nathcol>(next)</a>'
-	elseif pcs_haircol = 3:
-		'Your hair is now <a href="exec:pcs_haircol -=1 & dynamic $cheatmenu[''looks'']" & nathcol = pcs_haircol>(prev)</a> <<$pcs_haircol>> (next)'
-	else
-		'To change your natural hair color, you have to <a href="exec:pcs_haircol = nathcol & dynamic $cheatmenu[''looks'']">restore your natural hair color</a> first.'
-	end
-	if pcs_hairlng > 975:
-		'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 100 & dynamic $cheatmenu[''looks'']">-100</a> <a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a>'
-	elseif pcs_hairlng > 900:
-		'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 100 & dynamic $cheatmenu[''looks'']">-100</a> <a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a>'
-	elseif pcs_hairlng >= 100:
-		'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 100 & dynamic $cheatmenu[''looks'']">-100</a> <a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
-	elseif pcs_hairlng >= 25:
-		'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
-	elseif pcs_hairlng >= 5:
-		'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
-	else
-		'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
-	end
-	if hairgrowcht = 0:'<a href="exec:hairgrowcht = 1 & dynamic $cheatmenu[''looks'']">Stop hair growth</a>'
-	if hairgrowcht = 1:'<a href="exec:hairgrowcht = 0 & dynamic $cheatmenu[''looks'']">Allow hair growth</a>'
-	*nl
-	'<<$pc_descFull[''eyes'']>>'
-	if pcs_naturallashes < 2:'<a href="exec:pcs_naturallashes += 1 & dynamic $cheatmenu[''looks'']">Enlarge lashes</a>'
-	if pcs_naturallashes > 0:'<a href="exec:pcs_naturallashes -= 1 & dynamic $cheatmenu[''looks'']">Shrink lashes</a>'
-	if pcs_eyesize < 3:'<a href="exec:pcs_eyesize += 1 & dynamic $cheatmenu[''looks'']">Increase the size of the eye</a>'
-	if pcs_eyesize > 0:'<a href="exec:pcs_eyesize -= 1 & dynamic $cheatmenu[''looks'']">Reduce the size of the eye</a>'
-	if pcs_eyecol <= 0:
-		'Your eyes are now (prev) <<$pcs_eyecol>> <a href="exec:pcs_eyecol +=1 & dynamic $cheatmenu[''looks'']">(next)</a>'
-	elseif pcs_eyecol > 0 and pcs_eyecol < 3:
-		'Your eyes are now <a href="exec:pcs_eyecol -=1 & dynamic $cheatmenu[''looks'']">(prev)</a> <<$pcs_eyecol>> <a href="exec:pcs_eyecol +=1 & dynamic $cheatmenu[''looks'']">(next)</a>'
-	elseif pcs_eyecol >= 3:
-		'Your eyes are now <a href="exec:pcs_eyecol -=1 & dynamic $cheatmenu[''looks'']">(prev)</a> <<$pcs_eyecol>> (next)'
-	end
-	$cheatmenu['table_end']
+		if face_style['type'] = 1: '<a href="exec: dynamic $cheatmenu[''change_avatar_path'']">Change current profile path:</a> <<$face_style[''avatar_path'']>>'
+		if face_style['type'] = 0:
+			'Using the dynamic profile system'
+		else
+			'<a href="exec: face_style[''type''] = 0 & dynamic $cheatmenu[''looks'']">Use the dynamic profile system</a>'
+		end
+		if face_style['type'] = 1:
+			'Using a fixed profile image'
+		else
+			'<a href="exec: face_style[''type''] = 1 & $face_style[''avatar_path''] += iif($face_style[''avatar_path''] = '''', ''images/avatar.jpg'', '''') & dynamic $cheatmenu[''looks'']">Use a fixed profile image</a>'
+		end
+		if face_style['type'] = 2:
+			'Using the rendered profile system'
+		else
+			'<a href="exec: face_style[''type''] = 2 & dynamic $cheatmenu[''looks'']">Use the rendered profile system</a>'
+		end
+		*nl
+		if $face_style['avatar_hair'] = '':
+			'<a href="exec:dynamic $cheatmenu[''avatar_hair_set'']">Custom Hair: OFF</a>'
+		else
+			'<a href="exec: $face_style[''avatar_hair''] = '''' & dynamic $cheatmenu[''looks'']">Custom Hair: ON</a>'
+			'<<$face_style[''avatar_hair'']>>'
+		end
+		*nl
+		'<a href="exec:gs ''Cheatmenu_din'', ''parameters''">Show design parameters of body</a>'
+		'<a href="exec:gs ''Cheatmenu_din'', ''vneshpara''">Show beauty parameters</a>'
+		*nl
+		'You are <a href="exec: pcs_dob += 10000 & dynamic $cheatmenu[''age'']">(-1)</a> <<age>> <a href="exec: pcs_dob -= 10000 & dynamic $cheatmenu[''age'']">(+1)</a> years old'
+		*nl
+		'You look <<vidage>> years old'
+		'<a href="exec:dynamic $cheatmenu[''visualage'']">Change apparent age</a>'
+		*nl
+		'You are <<pcs_hgt>> centimetres tall'
+		'<a href="exec:pcs_hgt = input(''Enter <<$pcs_nickname>>s height in centimetres<br><br>(default 165, min 100, max 200, values below 150 and above 180 will cause problems in the calculation of BMI/weight the more you deviate from the default 170)'') & dynamic $cheatmenu[''looks'']">Change <<$pcs_nickname>>''s height</a>'
+		*nl
+		'Musculature (<<stren_plus_lvl>>): ' & dynamic $cheatmenu['printLooksLinks'], 'stren_plus', 'Musculature'
+		'<font color="grey">Allows strength to go past 100'
+		'<font color="red">Negatively</font> affects appearance</font>'
+		*nl
+		'Toned Butt (<<butt_tr_lvl>>): ' & dynamic $cheatmenu['printLooksLinks'], 'butt_tr', 'Toned Butt'
+		*nl
+		'You have <<$titsize>> breasts'
+		if tits < 11:'<a href="exec: bodyVars[''bust_silicone''] += 5 & dynamic $cheatmenu[''looks'']">Enlarge breasts(silicone)</a>'
+		if bodyVars['bust_silicone'] => 1:'<a href="exec: bodyVars[''bust_silicone''] = min(0, bodyVars[''bust_silicone'']-5) & dynamic $cheatmenu[''looks'']">Shrink breasts(silicone)</a>'
+		if tits < 11 and pcs_mass['bust_gen'] < 50:'<a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_bust'', 5">Enlarge breasts (natural)</a>'
+		if pcs_mass['bust'] => 6 and pcs_mass['bust_gen'] => 6: '<a href="exec: titreduc = 1 & gs ''Cheatmenu_din'', ''change_pcs_mass_bust'', -5">Shrink breasts (natural)</a>'
+		*nl
+		if pcs_buttsize <= 14:
+			$cmd_temp_butt_desc = 'flat'
+		elseif pcs_buttsize <= 25:
+			$cmd_temp_butt_desc = 'average'
+		elseif pcs_buttsize <= 40:
+			$cmd_temp_butt_desc = 'pert'
+		elseif pcs_buttsize <= 59:
+			$cmd_temp_butt_desc = 'heart-shaped'
+		else
+			$cmd_temp_butt_desc = 'bubble'
+		end
+		'You have a <<$cmd_temp_butt_desc>> butt'
+		if pcs_buttsize < 50: '<a href="exec: bodyVars[''butt_silicone''] += 10 & dynamic $cheatmenu[''looks'']">Enlarge butt (silicone)</a>'
+		if bodyVars['butt_silicone'] => 1: '<a href="exec: bodyVars[''butt_silicone''] = max(0, bodyVars[''butt_silicone'']-10) & dynamic $cheatmenu[''looks'']">Shrink butt (silicone)</a>'
+		if pcs_mass['butt'] < 50 and pcs_mass['butt_gen'] < 50: '<a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_butt'', 10">Enlarge butt (natural)</a>'
+		if pcs_mass['butt'] => 6 and pcs_mass['butt_gen'] => 6: '<a href="exec: assreduc = 1 & gs ''Cheatmenu_din'', ''change_pcs_mass_butt'', -10">Shrink butt (natural)</a>'
+		killvar '$cmd_temp_butt_desc'
+		!! if pcs_buttsize < 20:'<a href="exec: bodyVars[''butt_cheat''] += 2 & dynamic $cheatmenu[''looks'']">Enlarge butt</a>'
+		!! if pcs_buttsize > 1:'<a href="exec: bodyVars[''butt_cheat''] -= 2 & dynamic $cheatmenu[''looks'']">Shrink butt</a>'
+		!! if bodyVars['butt_cheat'] ! 0:'<a href="exec: bodyVars[''butt_cheat''] = 0 & dynamic $cheatmenu[''looks'']">Reset butt shape to default</a>'
+		*nl
+		'<<$pc_descFull[''lip'']>>'
+		if pcs_lip < 4:'<a href="exec:pcs_lip += 1 & dynamic $cheatmenu[''looks'']">Enlarge lips</a>'
+		if pcs_lip > 0:'<a href="exec:pcs_lip -= 1 & dynamic $cheatmenu[''looks'']">Shrink lips</a>'
+	'</td><td width="33%" valign="top">'
+		!*nl
+		'<<$pc_descFull[''skin'']>>'
+		if pcs_skin < 900: '<a href="exec:pcs_skin += 200 & gs ''AppearanceSystem'', ''UpdateBaseAppearance'' & dynamic $cheatmenu[''looks'']">Improve skin</a>'
+		if pcs_skin > 0: '<a href="exec:pcs_skin -= 200 & gs ''AppearanceSystem'', ''UpdateBaseAppearance'' & dynamic $cheatmenu[''looks'']">Worsen skin</a>'
+		if pcs_tan >= 0:'<a href="exec:pcs_tan += 10 & dynamic $cheatmenu[''looks'']">Become tanned</a>'
+		if pcs_tan > 0:'<a href="exec:pcs_tan = 0 & dynamic $cheatmenu[''looks'']">Remove tan</a>'
+		*nl
+		'<<$pc_descFull[''throat'']>>'
+		if pcs_throat <= 31:'<a href="exec:pcs_throat += 5 & dynamic $cheatmenu[''looks'']">Increase throat capacity</a>'
+		if pcs_throat >= 5:'<a href="exec:pcs_throat -= 5 & dynamic $cheatmenu[''looks'']">Decrease throat capacity</a>'
+		if dounspell = 1:
+			*nl
+			'<a href="exec:dounsplkil = 2 & gs ''body'', ''hardreset''">Hard Reset body shape</a>'
+		end
+		*nl
+		'<<$pcs_vag>>'
+		if pcs_vag > 0:'<a href="exec:pcs_vag = 0 & dynamic $cheatmenu[''looks'']">Reinstate virginity</a>'
+		if stat['think_virgin'] < 1:'<a href="exec:stat[''vaginal''] = 0 & stat[''vaginal_fist''] = 0 & stat[''vaginal_dildo''] = 0 & stat[''vaginal_strap''] = 0 & dynamic $cheatmenu[''looks'']">Make Sveta believe she is a virgin again (resets the related sex stats)</a>'
+		if pcs_vag <= 25:'<a href="exec:gs ''Cheatmenu_din'', ''vagenlarge''">Enlarge comfortable vaginal capacity</a>'
+		if pcs_vag >= 5:'<a href="exec:gs ''Cheatmenu_din'', ''vagreduce''">Reduce comfortable vaginal capacity</a>'
+		'Your comfortable vaginal capacity will reduce by <<vshrink>> every <<vshrinkdays>> days.'
+		if vshrink < 10:'<a href="exec:vshrink += 1 & dynamic $cheatmenu[''looks'']">Increase amount of reduction</a>'
+		if vshrink > 0:'<a href="exec:vshrink -= 1 & dynamic $cheatmenu[''looks'']">Reduce amount of reduction</a>'
+		if vshrinkdays < 10:'<a href="exec:vshrinkdays += 1 & dynamic $cheatmenu[''looks'']">Increase number of days it takes</a>'
+		if vshrinkdays > 1:'<a href="exec:vshrinkdays -= 1 & dynamic $cheatmenu[''looks'']">Reduce number of days it takes</a>'
+		'When gaped your vagina will reduce each stage (up to 4 for maximum gape) every <<vgape[4]>> minutes.'
+		if vgape[4] < 60:'<a href="exec:vgape[4] += 5 & dynamic $cheatmenu[''looks'']">Increase time by 5 minutes</a>'
+		if vgape[4] > 5:'<a href="exec:vgape[4] -= 5 & dynamic $cheatmenu[''looks'']">Reduce time by 5 minutes</a>'
+		*nl
+		'<<$pcs_ass>>'
+		if pcs_ass <= 25:'<a href="exec:gs ''Cheatmenu_din'', ''assenlarge''">Enlarge comfortable anal capacity</a>'
+		if pcs_ass >= 5:'<a href="exec:gs ''Cheatmenu_din'', ''assreduce''">Reduce comfortable anal capacity</a>'
+		'Your comfortable anal capacity will reduce by <<ashrink>> every <<ashrinkdays>> days.'
+		if ashrink < 10:'<a href="exec:ashrink += 1 & dynamic $cheatmenu[''looks'']">Increase amount of reduction</a>'
+		if ashrink > 0:'<a href="exec:ashrink -= 1 & dynamic $cheatmenu[''looks'']">Reduce amount of reduction</a>'
+		if ashrinkdays < 10:'<a href="exec:ashrinkdays += 1 & dynamic $cheatmenu[''looks'']">Increase number of days it takes</a>'
+		if ashrinkdays > 1:'<a href="exec:ashrinkdays -= 1 & dynamic $cheatmenu[''looks'']">Reduce number of days it takes</a>'
+		'When gaped your anus will reduce each stage (up to 4 for maximum gape) every <<agape[4]>> minutes.'
+		if agape[4] < 60:'<a href="exec:agape[4] += 5 & dynamic $cheatmenu[''looks'']">Increase time by 5 minutes</a>'
+		if agape[4] > 5:'<a href="exec:agape[4] -= 5 & dynamic $cheatmenu[''looks'']">Reduce time by 5 minutes</a>'
+	'</td><td width="33%" valign="top">'
+		!*nl
+		if dounspell = 0:
+			if fat ! 0: '<a href="exec:fat = 0 & dynamic $cheatmenu[''looks'']">Zero fat</a>'
+			'Body Fat = (<<pcs_mass[''body'']>>): <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -10">-10</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -5">-5</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -1">-1</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 1">+1</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 5">+5</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 10">+10</a>'
+			'Note: You need some Body Fat to survive, any value under 11 is clasified as "starving" and a value of 0 can lead to a Game Over. <<func(''body'', ''CalcOptBodyMass'')>> gives a bmi of 22.5.'
+		end
+		*nl
+		'<a href="exec:dynamic $cheatmenu[''tatoo'']">Tattoo removal</a>'
+		*nl
+		'<<$hair>>'
+		if pcs_haircol = 0:
+			'Your hair is now (prev) <<$pcs_haircol>> <a href="exec:pcs_haircol +=1 & dynamic $cheatmenu[''looks''] & nathcol = pcs_haircol">(next)</a>'
+		elseif pcs_haircol > 0 and pcs_haircol < 3:
+			'Your hair is now <a href="exec:pcs_haircol -=1 & dynamic $cheatmenu[''looks'']" & nathcol = pcs_haircol>(prev)</a> <<$pcs_haircol>> <a href="exec:pcs_haircol +=1 & dynamic $cheatmenu[''looks'']" & pcs_haircol = nathcol>(next)</a>'
+		elseif pcs_haircol = 3:
+			'Your hair is now <a href="exec:pcs_haircol -=1 & dynamic $cheatmenu[''looks'']" & nathcol = pcs_haircol>(prev)</a> <<$pcs_haircol>> (next)'
+		else
+			'To change your natural hair color, you have to <a href="exec:pcs_haircol = nathcol & dynamic $cheatmenu[''looks'']">restore your natural hair color</a> first.'
+		end
+		if pcs_hairlng > 975:
+			'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 100 & dynamic $cheatmenu[''looks'']">-100</a> <a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a>'
+		elseif pcs_hairlng > 900:
+			'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 100 & dynamic $cheatmenu[''looks'']">-100</a> <a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a>'
+		elseif pcs_hairlng >= 100:
+			'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 100 & dynamic $cheatmenu[''looks'']">-100</a> <a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
+		elseif pcs_hairlng >= 25:
+			'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 25 & dynamic $cheatmenu[''looks'']">-25</a> <a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
+		elseif pcs_hairlng >= 5:
+			'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng -= 5 & dynamic $cheatmenu[''looks'']">-5</a> <a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
+		else
+			'Hair length (<<pcs_hairlng>>)	<a href="exec:pcs_hairlng += 5 & dynamic $cheatmenu[''looks'']">+5</a> <a href="exec:pcs_hairlng += 25 & dynamic $cheatmenu[''looks'']">+25</a> <a href="exec:pcs_hairlng += 100 & dynamic $cheatmenu[''looks'']">+100</a>'
+		end
+		if hairgrowcht = 0:'<a href="exec:hairgrowcht = 1 & dynamic $cheatmenu[''looks'']">Stop hair growth</a>'
+		if hairgrowcht = 1:'<a href="exec:hairgrowcht = 0 & dynamic $cheatmenu[''looks'']">Allow hair growth</a>'
+		*nl
+		'<<$pc_descFull[''eyes'']>>'
+		if pcs_naturallashes < 2:'<a href="exec:pcs_naturallashes += 1 & dynamic $cheatmenu[''looks'']">Enlarge lashes</a>'
+		if pcs_naturallashes > 0:'<a href="exec:pcs_naturallashes -= 1 & dynamic $cheatmenu[''looks'']">Shrink lashes</a>'
+		if pcs_eyesize < 3:'<a href="exec:pcs_eyesize += 1 & dynamic $cheatmenu[''looks'']">Increase the size of the eye</a>'
+		if pcs_eyesize > 0:'<a href="exec:pcs_eyesize -= 1 & dynamic $cheatmenu[''looks'']">Reduce the size of the eye</a>'
+		if pcs_eyecol <= 0:
+			'Your eyes are now (prev) <<$pcs_eyecol>> <a href="exec:pcs_eyecol +=1 & dynamic $cheatmenu[''looks'']">(next)</a>'
+		elseif pcs_eyecol > 0 and pcs_eyecol < 3:
+			'Your eyes are now <a href="exec:pcs_eyecol -=1 & dynamic $cheatmenu[''looks'']">(prev)</a> <<$pcs_eyecol>> <a href="exec:pcs_eyecol +=1 & dynamic $cheatmenu[''looks'']">(next)</a>'
+		elseif pcs_eyecol >= 3:
+			'Your eyes are now <a href="exec:pcs_eyecol -=1 & dynamic $cheatmenu[''looks'']">(prev)</a> <<$pcs_eyecol>> (next)'
+		end
+	'</td></tr></table>'
 end
 
 $cheatmenu['change_avatar_path'] = "gs 'Cheatmenu_din', 'change_avatar_path'"
@@ -1161,42 +1174,96 @@ if $ARGS[0] = 'tatoo':
 	'<center><h1>Cheat Menu - Tattoos</h1></center>'
 	act 'Return to appearance menu':dynamic $cheatmenu['looks']
 	*nl
-	if tatarm = 0:'You do not have a tattoo on your arm</a>'
-	if tatarm >= 1:'<a href="exec:tattCount-=1 & tatarm = 0 & dynamic $cheatmenu[''tatoo'']">Remove your arm tattoo</a>'
-	if tatass = 0:'You do not have a tattoo on your ass</a>'
-	if tatass >= 1:'<a href="exec:tattCount-=1 & tatass = 0 & dynamic $cheatmenu[''tatoo'']">Remove your ass tattoo</a>'
-	if tatback = 0:'You do not have a tattoo on your back</a>'
-	if tatback >= 1:'<a href="exec:tattCount-=1 & tatback = 0 & dynamic $cheatmenu[''tatoo'']">Remove your back tattoo</a>'
-	if tatblly = 0:'You do not have a tattoo on your belly</a>'
-	if tatblly >= 1:'<a href="exec:tattCount-=1 & tatblly = 0 & dynamic $cheatmenu[''tatoo'']">Remove your belly tattoo</a>'
-	if tatbrst = 0:'You do not have a tattoo on your breast</a>'
-	if tatbrst >= 1:'<a href="exec:tattCount-=1 & tatbrst = 0 & dynamic $cheatmenu[''tatoo'']">Remove your breast tattoo</a>'
-	if tatchst = 0:'You do not have a tattoo on your chest</a>'
-	if tatchst >= 1:'<a href="exec:tattCount-=1 & tatchst = 0 & dynamic $cheatmenu[''tatoo'']">Remove your chest tattoo</a>'
-	if tatfce = 0:'You do not have a tattoo on your face</a>'
-	if tatfce >= 1:'<a href="exec:tattCount-=1 & tatfce = 0 & dynamic $cheatmenu[''tatoo'']">Remove your face tattoo</a>'
-	if tatankle = 0:'You do not have a tattoo on your ankle</a>'
-	if tatankle >= 1:'<a href="exec:tattCount-=1 & tatankle = 0 & dynamic $cheatmenu[''tatoo'']">Remove your ankle tattoo</a>'
-	if tatleg = 0:'You do not have a tattoo on your leg</a>'
-	if tatleg >= 1:'<a href="exec:tattCount-=1 & tatleg = 0 & dynamic $cheatmenu[''tatoo'']">Remove your leg tattoo</a>'
-	if tatlip = 0:'You do not have a tattoo on your lip</a>'
-	if tatlip >= 1:'<a href="exec:tattCount-=1 & tatlip = 0 & dynamic $cheatmenu[''tatoo'']">Remove your lip tattoo</a>'
-	if tatneck = 0:'You do not have a tattoo on your neck</a>'
-	if tatneck >= 1:'<a href="exec:tattCount-=1 & tatneck = 0 & dynamic $cheatmenu[''tatoo'']">Remove your neck tattoo</a>'
-	if tatvag = 0:'You do not have a pubic tattoo</a>'
-	if tatvag >= 1:'<a href="exec:tattCount-=1 & tatvag = 0 & dynamic $cheatmenu[''tatoo'']">Remove your pubic tattoo</a>'
-	if tatlech = 0:'You do not have a tattoo on your shoulder</a>'
-	if tatlech >= 1:'<a href="exec:tattCount-=1 & tatlech = 0 & dynamic $cheatmenu[''tatoo'']">Remove your shoulder tattoo</a>'
-	if tatside = 0:'You do not have a tattoo on your side</a>'
-	if tatside >= 1:'<a href="exec:tattCount-=1 & tatside = 0 & dynamic $cheatmenu[''tatoo'']">Remove your the tattoo on your side</a>'
-	if tatupb = 0:'You do not have a tramp stamp</a>'
-	if tatupb >= 1:'<a href="exec:tattCount-=1 & tatupb = 0 & dynamic $cheatmenu[''tatoo'']">Remove your tramp stamp</a>'
-	if tatunder = 0:'You do not have an under breast tattoo</a>'
-	if tatunder >= 1:'<a href="exec:tattCount-=1 & tatunder = 0 & dynamic $cheatmenu[''tatoo'']">Remove your under breast tattoo</a>'
-	if tatwrist = 0:'You do not have a tattoo on your wrist</a>'
-	if tatwrist >= 1:'<a href="exec:tattCount-=1 & tatwrist = 0 & dynamic $cheatmenu[''tatoo'']">Remove your wrist tattoo</a>'
-	if tathand = 0:'You do not have a tattoo on your hand</a>'
-	if tathand >= 1:'<a href="exec:tattCount-=1 & tathand = 0 & dynamic $cheatmenu[''tatoo'']">Remove your hand tattoo</a>'
+	if pcs_tattoos['ankle'] <= 0:
+		'You do not have a tattoo on your ankle'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''ankle'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your ankle tattoo</a>'
+	end
+	if pcs_tattoos['arm'] <= 0:
+		'You do not have a tattoo on your arm'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''arm'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your arm tattoo</a>'
+	end
+	if pcs_tattoos['ass'] <= 0:
+		'You do not have a tattoo on your ass'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''ass'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your ass tattoo</a>'
+	end
+	if pcs_tattoos['back'] <= 0:
+		'You do not have a tattoo on your back'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''back'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your back tattoo</a>'
+	end
+	if pcs_tattoos['belly'] <= 0:
+		'You do not have a tattoo on your belly'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''belly'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your belly tattoo</a>'
+	end
+	if pcs_tattoos['breast'] <= 0:
+		'You do not have a tattoo on your breast'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''breast'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your breast tattoo</a>'
+	end
+	if pcs_tattoos['chest'] <= 0:
+		'You do not have a tattoo on your chest'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''chest'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your chest tattoo</a>'
+	end
+	if pcs_tattoos['face'] <= 0:
+		'You do not have a tattoo on your face'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''face'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your face tattoo</a>'
+	end
+	if pcs_tattoos['leg'] <= 0:
+		'You do not have a tattoo on your leg'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''leg'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your leg tattoo</a>'
+	end
+	if pcs_tattoos['lip'] <= 0:
+		'You do not have a tattoo on your leg'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''lip'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your lip tattoo</a>'
+	end
+	if pcs_tattoos['neck'] <= 0:
+		'You do not have a tattoo on your neck'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''neck'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your neck tattoo</a>'
+	end
+	if pcs_tattoos['pussy'] <= 0:
+		'You do not have a pubic tattoo'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''pussy'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your pubic tattoo</a>'
+	end
+	if pcs_tattoos['shoulder'] <= 0:
+		'You do not have a tattoo on your shoulder'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''shoulder'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your shoulder tattoo</a>'
+	end
+	if pcs_tattoos['side'] <= 0:
+		'You do not have a tattoo on your side'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''side'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your the tattoo on your side</a>'
+	end
+	if pcs_tattoos['tramp'] <= 0:
+		'You do not have a tramp stamp'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''tramp'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your tramp stamp</a>'
+	end
+	if pcs_tattoos['under'] <= 0:
+		'You do not have an under breast tattoo'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''under'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your under breast tattoo</a>'
+	end
+	if pcs_tattoos['wrist'] <= 0:
+		'You do not have a tattoo on your wrist'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''wrist'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your wrist tattoo</a>'
+	end
+	if pcs_tattoos['hand'] <= 0:
+		'You do not have a tattoo on your hand'
+	else
+		'<a href="exec: gs ''tattoo_management'', ''remove'', ''hand'' & gs ''Cheatmenu_din'', ''tatoo''">Remove your hand tattoo</a>'
+	end
 	if cosmetic_tattoo = 0:'You do not have the makup tattoo</a>'
 	if cosmetic_tattoo >= 1:'<a href="exec:cosmetic_tattoo = 0 & dynamic $cheatmenu[''tatoo'']">Remove your makup tattoo</a>'
 end

+ 5 - 2
locations/_face_image.qsrc

@@ -2,6 +2,11 @@
 
 !!use with - <img <<$set_imgh>> src="<<func(''$face_image'')>>">
 
+!! type = 1: custom image
+!! type = 2: 3D generated image
+!! type = 0: picture image
+
+
 if face_style['type'] = 1:
 	if $face_style['avatar_path'] = '': $face_style['avatar_path'] = 'images/avatar.jpg'
 	$result = $face_style['avatar_path']
@@ -296,6 +301,4 @@ else
 end
 
 
-
 --- $face_image ---------------------------------
-

+ 3 - 3
locations/albina_starlets.qsrc

@@ -315,10 +315,10 @@ if $ARGS[0] = 'starlets':
 						dynamic $showerdin
 						if deodorant_on = 1: gs 'sweat', 'remove_deo' & '<br>Your deodorant gets washed away in the shower.'
 
-						if pcs_apprnc >= 52 and (stat['think_virgin'] = 0 or stat['vaginal'] > 0):
-							if pcs_apprnc < 64:
+						if pcs_hotcat >= 6 and (stat['think_virgin'] = 0 or stat['vaginal'] > 0):
+							if pcs_hotcat < 8:
 								AlbinaQW['StarletCustomer'] = rand(1,15)
-							elseif pcs_apprnc < 72:
+							elseif pcs_hotcat < 9:
 								AlbinaQW['StarletCustomer'] = rand(1,12)
 							else
 								AlbinaQW['StarletCustomer'] = rand(1,10)

+ 5 - 4
locations/gad_prostitutes.qsrc

@@ -267,22 +267,23 @@ if $ARGS[0] = 'work_alone':
 
 	gs 'shortgs', 'setloc', 'gad_prostitutes', 'work'
 	menu_off = 0
+	$prostitution_location = 'gadukino'
 	gs 'stat'
 
 	gs 'prostitution_functions', 'parameters'
 
-	if $prostitute_names['gadukino'] = '':
+	if $prostitute_names[$prostitution_location] = '':
 		'If you want, you can tell your clients a different name.'
 
-		$prostitute_names['gadukino'] = input("What name do you want to tell your clients? (Leave blank for <<$pcs_nickname>>)")
-		if $prostitute_names['gadukino'] = '': $prostitute_names['gadukino'] = $pcs_nickname
+		$prostitute_names[$prostitution_location] = input("What name do you want to tell your clients? (Leave blank for <<$pcs_nickname>>)")
+		if $prostitute_names[$prostitution_location] = '': $prostitute_names[$prostitution_location] = $pcs_nickname
 	end
 
 	!! TODO: Should find some video that is more roadside - evening, morning, different weather, etc.
 	'<center><video autoplay src="images/shared/prostitution/car/normal/negotiation/search.mp4"></video></center>'
 
 	!! TODO: Need to rewrite this to reflect the Gadukino location
-	!!'You are walking near the gas station waiting for a client. On a scale from 1 to 10 you look like a <<pcs_hotcat>>. A good looking girl will always earn more money.'+iif(pcs_makeup < 2, ' You should '+iif(pcs_makeup = 0, 'fix your make-up', 'wear make-up')+' to increase your earnings.', ' Wearing make-up is a good way to increase your earnings.')+iif(pirsA > 0 and pirsA < 10000, ' Your tongue piercing will make a blowjob more enjoyable for most men, that could bring in a small bonus.', '')+iif($pantyworntype = 'eroto' and CloSkirtShortness > 4, ' Wearing such a short skirt reveals your slutty panties to your potential customers.', '')+iif(pcs_apprnc = -10, ' You don''t look healthy and should seek treatment for your STD. There is a high chance that a guy won''t touch you without a condom.', '')
+	!!'You are walking near the gas station waiting for a client. On a scale from 1 to 10 you look like a <<pcs_hotcat>>. A good looking girl will always earn more money.'+iif(pcs_makeup < 2, ' You should '+iif(pcs_makeup = 0, 'fix your make-up', 'wear make-up')+' to increase your earnings.', ' Wearing make-up is a good way to increase your earnings.')+iif(pcs_piercings['tongue'] > 0, ' Your tongue piercing will make a blowjob more enjoyable for most men, that could bring in a small bonus.', '')+iif($pantyworntype = 'eroto' and CloSkirtShortness > 4, ' Wearing such a short skirt reveals your slutty panties to your potential customers.', '')+iif(pcs_apprnc = -10, ' You don''t look healthy and should seek treatment for your STD. There is a high chance that a guy won''t touch you without a condom.', '')
 
 	!! TODO: The enema thing should be aligned with the rest of the game.
 	if klismaday ! daystart: '<br>Almost no men will like dirty anal sex, even with a condom, and it''s probably a safe bet that they won''t pay a lot for it. So you should start giving yourself an enema before going to work.'

+ 5 - 5
locations/gas_station_gp_117.qsrc

@@ -377,18 +377,18 @@ if $ARGS[0] = 'work':
 
 	*clr & cla
 	$loc_arg = 'work'
-	$used_name = 'street'
+	$prostitution_location = 'gas_station'
 	$menu_arg = 'work'
 	menu_off = 0
 	gs 'stat'
 
 	gs 'prostitution_functions', 'parameters'
-
-	if $prostitute_names['street'] = '':
+	
+	if $prostitute_names[$prostitution_location] = '':
 		'If you want, you can tell your clients a different name.'
 
-		$prostitute_names['street'] = input("What name do you want to tell your clients? (Leave blank for <<$pcs_nickname>>)")
-		if $prostitute_names['street'] = '': $prostitute_names['street'] = $pcs_nickname
+		$prostitute_names[$prostitution_location] = input("What name do you want to tell your clients? (Leave blank for <<$pcs_nickname>>)")
+		if $prostitute_names[$prostitution_location] = '': $prostitute_names[$prostitution_location] = $pcs_nickname
 	end
 
 	'<center><video autoplay src="images/shared/prostitution/car/normal/negotiation/search.mp4"></video></center>'

+ 134 - 86
locations/homes_properties.qsrc

@@ -1,5 +1,13 @@
 # homes_properties
 
+!! Easier to remember than which number is which.
+NO_ACCESS = 0
+RENTED = 1
+OWNED = 2
+TENANTS = 3
+ACCESSIBLE = 4
+PURCHASED = 5  && !! Used only for generic checks where both OWNED and TENANTS fulfill the criterion. 
+
 if ARRSIZE('homes') < 16 or ARRSIZE('home_name') < 7:
 	gs 'homes_properties_attr'
 end
@@ -75,11 +83,12 @@ end
 !!			- empty strying   ->  '' - will work as if a location was passed, but will use the actual value of $loc
 !!			- A number as str -> '1', '2' - this should be the id of the property
 !!			  					NOTE: only added in case someone really want to use the old ids
-!! ARGS[2]: ownership type
+!! ARGS[2]: ownership type -> access code
 !!			0: no acces  -> 'no access'
-!!			1: not owned but can live her - a rented property or living at some else''s place
+!!			1: rented - a rented property
 !!			2: owned     -> 'owned'
-!!			3: owned and rented out -> 'tenants'
+!!			3: tenants -> a property that is owned, but inaccessible because it has been rented out
+!!			4: accessible -> not owned, not rented, but can live there - parents, friends, dorm, etc.
 !! ARGS[3]: construction status - optional
 !!			0: land only
 !!			1: foundation, frames built, utilities are connected
@@ -88,110 +97,139 @@ end
 !!			0: not renovated
 !!			1: fully renovated
 if $ARGS[0] = 'set_access':
-	$propcode = iif($ARGS[1] = '', $home_name[$loc], $home_name[$ARGS[1]])
-	orig_status_code = accessible_property[$propcode]
-	new_status_code = ARGS[2]
-	if orig_status_code ! new_status_code:
-		if $accessible_property[$propcode] = '' or $accessible_property['<<$propcode>>-display'] = '' or $accessible_property['<<$propcode>>-name'] = '':
-			if $property['code'] ! $propcode:
-				gs 'homes_properties_attr', 'get_property_attr', $propcode
+
+	$property_code =  iif($ARGS[1] = '', $home_name[$loc], $home_name[$ARGS[1]])
+	original_access_code = accessible_property[$property_code]
+	new_access_code = ARGS[2]
+
+
+
+	if original_access_code ! new_access_code:
+		!! Should only run if the access code has changed
+
+		!! seems unnecessary, but cuts down on typo related bugs.
+		$_display = $property_code+"-display"
+		$_name = $property_code+"-name"
+		$_type = $property_code+"-type"
+		$_construction_state = $property_code+"-construction-status"
+		$_is_home = $property_code+"-is-home"
+		$_is_rental = $property_code+"-rental"
+		$_renovated = $property_code+"-renovated"
+		$_sales_price = $property_code+"-sales-price"
+		$_rent = $property_code+"-rent"
+		$_tenant_day = $property_code+"-tenant-day"
+		$_tenant_month = $property_code+"-tenant-month"
+
+		!! If the below is true, then Sveta never had access to property (or something wiped out the accessible property/home list).
+		if $accessible_property[$property_code] = '' or $accessible_property[$_display] = '' or $accessible_property[$_name] = '':
+			!! This should happen only the first time Sveta gets access to the property.
+			!! Adds the property - with all of its attributes - to the accessible_property list.
+			if $property['code'] ! $property_code: 
+				gs 'homes_properties_attr', 'get_property_attr', $property_code
 			else
 				nokill = 1
 			end
-			if ARGS[2] = 1 and property['rental'] = 0: new_status_code = 4
-			accessible_property[$propcode] = new_status_code
-			$accessible_property[$propcode] = $propcode
-			$accessible_property['<<$propcode>>-name'] = $property['name']
-			$accessible_property['<<$propcode>>-type'] = $property['type']
+
+			$accessible_property[$property_code] = $property_code
+			$accessible_property[$_name] = $property['name']
+			$accessible_property[$_type] = $property['type']
 
 			if property['construction_needed'] = 1:
-				accessible_property['<<$propcode>>-construction-status'] = ARGS[3]
-				$accessible_property['<<$propcode>>-display'] = $property['display_<<ARGS[3]>>']
+				accessible_property[$_construction_state] = ARGS[3]
+				$accessible_property[$_display] = $property['display_<<ARGS[3]>>']
 			else
-				accessible_property['<<$propcode>>-construction-status'] = 2
-				$accessible_property['<<$propcode>>-display'] = $property['display']
+				accessible_property[$_construction_state] = 2
+				$accessible_property[$_display] = $property['display']
 			end
 
-			if INSTR($property['type'], 'residence') > 0: accessible_property['<<$propcode>>-is-home'] = 1
-			accessible_property['<<$propcode>>-rental'] = property['rental']
-			accessible_property['<<$propcode>>-renovated'] = ARGS[4]
-			accessible_property['<<$propcode>>-sales-price'] = property['price']
-			accessible_property['<<$propcode>>-rent'] = property['rent']
+			if INSTR($property['type'], 'residence') > 0: accessible_property[$_is_home] = 1
+			accessible_property[$_is_rental] = property['rental']
+			accessible_property[$_renovated] = ARGS[4]
+			accessible_property[$_sales_price] = property['price']
+			accessible_property[$_rent] = property['rent']
 		end
+		!! If the property code is 4 (ACCESSIBLE) but it is a rental property, then the code should be 1 (RENTED).
+		if new_access_code = 1 and property['rental'] = 1: new_access_code = 1
+		accessible_property[$property_code] = new_access_code
 
-		if accessible_property[$propcode] = 0:
+		if accessible_property[$property_code] = NO_ACCESS:
 			!! If this was the current home then killing it
-			if $home['current'] = $propcode: killvar '$home'
-
+			if $home['current'] = $property_code: killvar '$home'
 			!! Updating home counts
 			!! NOTE: Valid transitions: 1 -> 0, 2 -> 0, 4 -> 0
-			if accessible_property['<<$propcode>>-is-home'] = 1:
-				if orig_status_code = 1:
+			if accessible_property[$_is_home] = 1:
+				if original_access_code = RENTED:
 					accessible_property['rental_home_count'] -= 1
 					accessible_property['available_for_rent_home_count'] += 1
 				end
-				if orig_status_code = 2: accessible_property['owned_home_count'] -= 1
-				if accessible_property['<<$propcode>>-construction-status'] = 2: accessible_property['furnishable_home_count'] -= 1
+				if original_access_code = OWNED: accessible_property['owned_home_count'] -= 1
+				if accessible_property[$_construction_state] = 2: accessible_property['furnishable_home_count'] -= 1
 				accessible_property['accessible_home_count'] -= 1
 			end
 			if accessible_property['accessible_home_count'] = 1:
 				gs 'homes_properties', 'get_accessible_properties', 'home'
-				if accessible_property['<<$ARGS[1]>>-is-home'] = 1: gs 'homes_properties', 'set_home', $property_code
+				if accessible_property[$_is_home] = 1: gs 'homes_properties', 'set_home', $property_code
 				gs 'homes_properties', 'clean_up_property_data'
 			end
 		!! Property is rented
-		elseif accessible_property[$propcode] = 1:
+		elseif accessible_property[$property_code] = RENTED:
 			!! Updating home counts
 			!! NOTE: Only valid transition is 0 -> 1
-			if accessible_property['<<$propcode>>-is-home'] = 1:
+			if accessible_property[$_is_home] = 1:
 				accessible_property['rental_home_count'] += 1
 				accessible_property['accessible_home_count'] += 1
 				accessible_property['available_for_rent_home_count'] -= 1
-				if accessible_property['<<$propcode>>-construction-status'] = 2: accessible_property['furnishable_home_count'] +=1
+				if accessible_property[$_construction_state] = 2: accessible_property['furnishable_home_count'] +=1
 			end
 		!! Property is owned
-		elseif accessible_property[$propcode] = 2:
+		elseif accessible_property[$property_code] = OWNED:
 			!! Updating home counts
 			!! NOTE: Valid transitions: 0 -> 2, 1 -> 2, 3-> 2
-			if accessible_property['<<$propcode>>-is-home'] = 1:
-				if orig_status_code = 0:
+			if accessible_property[$_is_home] = 1:
+				if original_access_code = 0:
 					accessible_property['accessible_home_count'] += 1
-				elseif orig_status_code = 1:
+				elseif original_access_code = RENTED:
 					accessible_property['rental_home_count'] -= 1
 					accessible_property['available_for_rent_home_count'] += 1
-				elseif orig_status_code = 3:
+				elseif original_access_code = TENANTS:
 					accessible_property['tenant_home_count'] -= 1
-					accessible_property['<<$propcode>>-tenant-day'] = -1
-					accessible_property['<<$propcode>>-tenant-month'] = -1
-					if accessible_property['<<$propcode>>-construction-status'] = 2: accessible_property['furnishable_home_count'] += 1
+					accessible_property[$_tenant_day] = -1
+					accessible_property[$_tenant_month] = -1
+					if accessible_property[$_construction_state] = 2: accessible_property['furnishable_home_count'] += 1
 				end
-				if accessible_property['<<$propcode>>-construction-status'] = 2 and orig_status_code ! 1: accessible_property['furnishable_home_count'] += 1
+				if accessible_property[$_construction_state] = 2 and original_access_code ! 1: accessible_property['furnishable_home_count'] += 1
 				accessible_property['owned_home_count'] += 1
 			end
 		!! Property has tenants
-		elseif accessible_property[$propcode] = 3:
+		elseif accessible_property[$property_code] = TENANTS:
 			!! Updating home counts
 			!! NOTE: Valid transitions: 2 -> 3
-			if accessible_property['<<$propcode>>-is-home'] = 1:
-				if $home['current'] = $propcode: killvar '$home'
+			if accessible_property[$_is_home] = 1:
+				if $home['current'] = $property_code: killvar '$home'
 
 				accessible_property['tenant_home_count'] += 1
 				accessible_property['owned_home_count'] -= 1
 				accessible_property['accessible_home_count'] -= 1
 
-				if accessible_property['<<$propcode>>-construction-status'] = 2: accessible_property['furnishable_home_count'] -= 1
+				if accessible_property[$_construction_state] = 2: accessible_property['furnishable_home_count'] -= 1
 			end
-		!! Property is just accessible
-		elseif accessible_property[$propcode] = 4:
+		!! Property is just accessible - like the parents' home, or the Meynold's home, etc.
+		elseif accessible_property[$property_code] = ACCESSIBLE:
 			!! Updating home counts
 			!! NOTE: Valid transitions: 0 -> 4
-			if accessible_property['<<$propcode>>-is-home'] = 1:
+			if accessible_property[$_is_home] = 1:
 				accessible_property['accessible_home_count'] += 1
 			end
 		end
 		if nokill = 0 : killvar 'property'
+		
+		killvar '_display' & killvar '_name' & killvar '_type' & killvar '_construction_state'
+		killvar '_is_home' & killvar '_is_rental' & killvar '_renovated' & killvar '_sales_price'
+		killvar '_rent' & 	killvar '_tenant_day' & killvar '_tenant_month' & killvar 'nokill'
 	end
-	killvar 'propcode' & killvar 'orig_status_code' & killvar 'new_status_code' & killvar 'nokill'
+
+	!! Killvar segment
+	killvar 'property_code' & killvar 'original_access_code' & killvar 'new_access_code'
 end
 
 !! Call: dyneval($is_homeless)
@@ -212,7 +250,7 @@ $is_homeless = {
 !!			  					NOTE: only added in case someone really want to use the old ids
 if $ARGS[0] = 'can_live_here':
 	$canlivecode = iif($ARGS[1] = '', $home_name[$loc], $home_name[$ARGS[1]])
-	result = accessible_property[$canlivecode] > 0 and accessible_property[$canlivecode] ! 3 and func('homes_properties', 'get_property_construction_status', $canlivecode) = 2
+	result = accessible_property[$canlivecode] ! NO_ACCESS and accessible_property[$canlivecode] ! TENANTS and func('homes_properties', 'get_property_construction_status', $canlivecode) = 2
 	killvar 'canlivecode'
 end
 
@@ -253,7 +291,7 @@ end
 !! Tells if the location passed in $ARGS[1] or if empty the $loc is of the  queried status.
 !! If true then returns -1, if false 0.
 !!
-!! $ARGS[1]: the status that is checked
+!! $ARGS[1]: the status that is checked as a string
 !!			 Accepted values
 !!			 'rented' -> is the property rented?
 !!			 'owned'  -> is the property is owned (bought by Sveta) ?
@@ -261,8 +299,15 @@ end
 !!			 'purchased' -> both 'owned' and 'tenants'
 !!			 'blocked' -> is the property blocked?
 !!			 'hasaccess' -> can Sveta use the property (without owning or renting it)?
-!!
-!! $ARGS[2]: the location for which the access is set
+!! ARGS[1]: the status that is checked as a number
+!!			 Accepted values
+!!			 RENTED or 1 -> is the property rented?
+!!			 OWNED or 2  -> is the property is owned (bought by Sveta) ?
+!!			 TENANTS or 3 -> are there tenants in the property?
+!!			 NO_ACCESS or 0  -> is the property blocked?
+!!			 ACCESSIBLE or 4 -> can Sveta use the property (without owning or renting it)?
+!!			 PURCHASED or 5 -> both 'owned' and 'tenants'
+!! $ARGS[2]: the location for which the access is checked
 !!			Accepted values
 !!			- property code   -> 'city_apartment', 'parents_home'
 !!			- a location      ->  'bedrPar', 'koo2x' - A value that can shop up in $loc
@@ -272,18 +317,18 @@ end
 if $ARGS[0] = 'is_property_of_status':
 	$propstatcode = iif($ARGS[2] = '', $home_name[$loc], $home_name[$ARGS[2]])
 
-	if $ARGS[1] = 'rented':
-		result = accessible_property[$propstatcode] = 1
-	elseif $ARGS[1] = 'owned':
-		result = accessible_property[$propstatcode] = 2
-	elseif $ARGS[1] = 'tenants':
-		result = accessible_property[$propstatcode] = 3
-	elseif $ARGS[1] = 'blocked':
-		result = accessible_property[$propstatcode] = 0
-	elseif $ARGS[1] = 'hasacces':
-		result = accessible_property[$propstatcode] = 4
-	elseif $ARGS[1] = 'purchased':
-		result = accessible_property[$propstatcode] = 2 or accessible_property[$propstatcode] = 3
+	if $ARGS[1] = 'rented' or ARGS[1] = RENTED:
+		result = accessible_property[$propstatcode] = RENTED
+	elseif $ARGS[1] = 'owned' or ARGS[1] = OWNED:
+		result = accessible_property[$propstatcode] = OWNED
+	elseif $ARGS[1] = 'tenants' or ARGS[1] = TENANTS:
+		result = accessible_property[$propstatcode] = TENANTS
+	elseif $ARGS[1] = 'blocked' or ARGS[1] = NO_ACCESS:
+		result = accessible_property[$propstatcode] = NO_ACCESS
+	elseif $ARGS[1] = 'hasacces' or ARGS[1] = ACCESSIBLE:
+		result = accessible_property[$propstatcode] = ACCESSIBLE
+	elseif $ARGS[1] = 'purchased' or ARGS[1] = PURCHASED:
+		result = accessible_property[$propstatcode] = OWNED or accessible_property[$propstatcode] = TENANTS
 	else
 		result = 0
 	end
@@ -443,7 +488,7 @@ if $ARGS[0] = 'get_owned_properties':
 		:get_owned_properties_loop
 			$getownedpropcode = iif( $ARGS[2] = '', $accessible_property[hp_i], $ARGS[2] )
 			!!'  Index: <b><<hp_i>></b> Code: <b><<$getownedpropcode>></b> Status: <b><<accessible_property[hp_i]>></b>'
-			if $home_name[$getownedpropcode] ! '' and (accessible_property[$getownedpropcode] = 2 or accessible_property[$getownedpropcode] = 3):
+			if $home_name[$getownedpropcode] ! '' and (accessible_property[$getownedpropcode] = OWNED or accessible_property[$getownedpropcode] = TENANTS):
 				!!'    $ARGS[1]: <b><<$ARGS[hp_i]>></b> Is home: <b><<accessible_property[''<<$getownedpropcode>>-is-home'']>></b>'
 				if ($type ! 'home' and accessible_property['<<$getownedpropcode>>-is-home'] = 0) or ($type ! 'business' and accessible_property['<<$getownedpropcode>>-is-home'] = 1):
 					$property_code[hp_j] = $getownedpropcode
@@ -456,7 +501,7 @@ if $ARGS[0] = 'get_owned_properties':
 					end
 
 					$property_type[hp_j] = $accessible_property['<<$getownedpropcode>>-type']
-					if accessible_property[$getownedpropcode] = 3:
+					if accessible_property[$getownedpropcode] = TENANTS:
 						$property_status_display[hp_j] = 'A(n) <<$property_display[hp_j]>> which is currently occupied by your tenants'
 					else
 						$property_status_display[hp_j] = 'A(n) <<$property_display[hp_j]>> ' + iif($accessible_property[$getownedpropcode] = $home['current'], 'where you currently live.', 'which is currently empty.')
@@ -504,11 +549,11 @@ if $ARGS[0] = 'get_accessible_properties':
 					else
 						$property_display[hp_j] = iif($accessible_property[$getaccessiblepropcode] = '', $property['display'], $accessible_property['<<$getaccessiblepropcode>>-display'])
 					end
-					if accessible_property[$getaccessiblepropcode] = 1:
+					if accessible_property[$getaccessiblepropcode] = RENTED:
 						$property_status_display[hp_j] = 'You rent the <<$property_display[hp_j]>> '+iif($accessible_property[$getaccessiblepropcode] = $home['current'], 'where you currently live.', 'which is currently  empty.')
-					elseif accessible_property[$getaccessiblepropcode] = 2:
+					elseif accessible_property[$getaccessiblepropcode] = OWNED:
 						$property_status_display[hp_j] = 'You own the <<$property_display[hp_j]>> ' + iif($accessible_property[$getaccessiblepropcode] = $home['current'], 'where you currently live.', 'which is currently  empty.')
-					elseif accessible_property[$getaccessiblepropcode] = 3:
+					elseif accessible_property[$getaccessiblepropcode] = TENANTS:
 						$property_status_display[hp_j] = 'You own the <<$property_display[hp_j]>> which is currently occupied by your tenants'
 					else
 						$property_status_display[hp_j] = 'You can stay at the <<$property_display[hp_j]>> which is currently occupied by your tenants'
@@ -725,8 +770,8 @@ end
 !!			  					NOTE: only added in case someone really want to use the old ids
 if $ARGS[0] = 'give_access':
 	$accesscode = iif($ARGS[1] = '', $home_name[$loc], $ARGS[1])
-	gs 'homes_properties', 'set_access', $accesscode, 1
-	if accessible_property['accessible_home_count'] = 1 and accessible_property['<<$accesscode>>-is-home'] = 1 and $home['current'] = '': gs 'homes_properties', 'set_home', $accesscode
+	gs 'homes_properties', 'set_access', $accesscode, ACCESSIBLE
+	if accessible_property['accessible_home_count'] = 1 and accessible_property['<<$accesscode>>-is-home'] = 1 and ($home['current'] = '' or dyneval($is_homeless)): gs 'homes_properties', 'set_home', $accesscode
 	killvar '$accesscode'
 end
 
@@ -739,7 +784,7 @@ end
 !!			  					NOTE: only added in case someone really want to use the old ids
 if $ARGS[0] = 'block_access':
 	$blockcode = iif($ARGS[1] = '', $home_name[$loc], $ARGS[1])
-	gs 'homes_properties', 'set_access', $blockcode, 0
+	gs 'homes_properties', 'set_access', $blockcode, NO_ACCESS
 	if accessible_property['accessible_home_count'] = 1 and ($home['current'] = '' or dyneval($is_homeless)):
 		gs 'homes_properties', 'get_accessible_properties', 'home'
 		if accessible_property['<<$property_code>>-is-home'] = 1: gs 'homes_properties', 'set_home', $property_code
@@ -763,7 +808,7 @@ end
 !!			  					NOTE: only added in case someone really want to use the old ids
 if $ARGS[0] = 'has_access':
 	$hasaccesscode = iif($ARGS[1] = '', $home_name[$loc], $ARGS[1])
-	result = accessible_property[$hasaccesscode] > 0 and accessible_property[$hasaccesscode] ! 3
+	result = accessible_property[$hasaccesscode] ! NO_ACCESS and accessible_property[$hasaccesscode] ! TENANTS
 	killvar 'hasaccesscode'
 end
 
@@ -794,7 +839,7 @@ end
 !! $ARGS[1] = the code of the property, e.g. 'city_apartment'
 !! ARGS[2] = the final sales price in the transaction
 if $ARGS[0] = 'buy_property':
-	gs 'homes_properties', 'set_access', $ARGS[1], 2
+	gs 'homes_properties', 'set_access', $ARGS[1], OWNED
 	accessible_property['<<$ARGS[1]>>-sales-price'] = ARGS[2]
 end
 
@@ -805,7 +850,7 @@ end
 !! $ARGS[1] = the code name of the property, e.g. 'city_apartment'
 !! ARGS[2] = the final sales price in the transaction
 if $ARGS[0] = 'sell_property':
-	gs 'homes_properties', 'set_access',$ARGS[1], 0
+	gs 'homes_properties', 'set_access',$ARGS[1], NO_ACCESS
 	accessible_property['<<$ARGS[1]>>-sales-price'] = ARGS[2]
 end
 
@@ -816,10 +861,10 @@ end
 !!  ARGS[2] - the tenancy end day
 !!  ARGS[3] - the tenancy end month
 if $ARGS[0] = 'tenants_move_in':
-	gs 'homes_properties', 'set_access', $ARGS[1], 3
+	gs 'homes_properties', 'set_access', $ARGS[1], TENANTS
 	accessible_property['<<$ARGS[1]>>-tenant-day'] = ARGS[2]
 	accessible_property['<<$ARGS[1]>>-tenant-month'] = ARGS[3]
-	if $home['current'] = '' and accessible_property['accessible_home_count'] = 1:
+	if ($home['current'] = '' or dyneval($is_homeless)) and accessible_property['accessible_home_count'] = 1:
 		gs 'homes_properties', 'get_accessible_properties', 'home'
 		if accessible_property['<<$property_code>>-is-home']: gs 'homes_properties', 'set_home', $property_code
 		gs 'homes_properties', 'clean_up_property_data'
@@ -851,7 +896,7 @@ if $ARGS[0] = 'tenant_move_out_check':
 			$tenantcode = $accessible_property[hp_i]
 			if $home_name[$tenantcode] ! '' and accessible_property[$tenantcode] = 3:
 				if accessible_property['<<$tenantcode>>-tenant-day'] = day and accessible_property['<<$tenantcode>>-tenant-month'] = month:
-					gs 'homes_properties', 'set_access', $tenantcode, 2
+					gs 'homes_properties', 'set_access', $tenantcode, OWNED
 					$result[hp_j] = '<b><font color="red">Your tenants have moved out from your <<$accessible_property[''<<$tenantcode>>-display'']>> and your apartment is now vacant.</font></b>'
 					hp_j += 1
 				end
@@ -860,7 +905,8 @@ if $ARGS[0] = 'tenant_move_out_check':
 			killvar 'property'
 		if hp_i < count: jump 'tenantloop'
 	end
-	if accessible_property['accessible_home_count'] = 1 and $home['current'] = '':
+
+	if accessible_property['accessible_home_count'] = 1 and ($home['current'] = '' or dyneval($is_homeless)):
 		gs 'homes_properties', 'get_accessible_properties', 'home'
 		if accessible_property['<<$property_code>>-is-home'] = 1: gs 'homes_properties', 'set_home', $property_code
 		gs 'homes_properties', 'clean_up_property_data'
@@ -893,9 +939,11 @@ end
 !! Rents a property. For now with immediate effect.
 !!
 !! $ARGS[1] = the code name of the property, e.g. 'city_apartment'
-!!  ARGS[2] = the number of days the rent is paid for, optional
+!!  ARGS[2] = the number of days the rent is paid for, optional.
+!!			  If not set or the value is zero, it will be set to the length of the month 
+!!			  (ie. 28,29,30 or 31 days)
 if $ARGS[0] = 'rent_property':
-	gs 'homes_properties', 'set_access', $ARGS[1], 1
+	gs 'homes_properties', 'set_access', $ARGS[1], RENTED
 	gs 'homes_properties', 'set_rent_days', $ARGS[1], ARGS[2]
 end
 
@@ -904,7 +952,7 @@ end
 !!
 !! $ARGS[1] = the code name of the property, e.g. 'city_apartment'
 if $ARGS[0] = 'cancel_rent':
-	gs 'homes_properties', 'set_access', $ARGS[1], 0
+	gs 'homes_properties', 'set_access', $ARGS[1], NO_ACCESS
 	gs 'homes_properties', 'set_rent_days', $ARGS[1], -1
 	if accessible_property['accessible_home_count'] > 0 and $home['current'] = '':
 		gs 'homes_properties', 'get_accessible_properties', 'home'

+ 1 - 1
locations/piercing_management.qsrc

@@ -42,7 +42,7 @@ if $ARGS[0] = 'add':
 	if pcs_piercings[$ARGS[1]] <= 0: pcs_piercings['wearing'] += 1
 	pcs_piercings['any'] = 1
 	pcs_piercings[$ARGS[1]] = ARGS[2]
-	psc_piercings['<<$ARGS[1]>>_<<ARGS[2]>>_owned'] = 1
+	pcs_piercings['<<$ARGS[1]>>_<<ARGS[2]>>_owned'] = 1
 	exit
 end
 

+ 4 - 4
locations/pirsingsalon.qsrc

@@ -655,7 +655,7 @@ if $ARGS[0] = 'piercing_navel2':
 
 	if pcs_piercings['navel_<<ARGS[1]>>_owned'] = 1:
 		'You already own this piercing.'
-		act 'Return': gt 'pirsingsalon', 'piercing_brow'
+		act 'Return': gt 'pirsingsalon', 'piercing_navel'
 
 	elseif pcs_piercings['navel'] = 0:
 		if max(money, karta) < 8000:
@@ -946,7 +946,7 @@ if $ARGS[0] = 'tattoo_arm':
 	menu_off = 1
 	gs 'stat'
 
-	if tattoos['arm'] <= 0:
+	if pcs_tattoos['arm'] <= 0:
 		ps_total = func('tattoo_management', 'totals', 'arm')
 		ps_i = 1
 		:looptatarm
@@ -1003,7 +1003,7 @@ if $ARGS[0] = 'tattoo_ass':
 		ps_total = func('tattoo_management', 'totals', 'ass')
 		ps_i = 1
 		:looptatass
-			*p '<a href="exec: gt ''pirsingsalon'', ''tattoo_ass'', <<ps_i>>"><img height="250" src="<<func(''tattoo_management'', ''ass_image'', ps_i)>>"></a>'
+			*p '<a href="exec: gt ''pirsingsalon'', ''tattoo_ass2'', <<ps_i>>"><img height="250" src="<<func(''tattoo_management'', ''ass_image'', ps_i)>>"></a>'
 			ps_i += 1
 		if ps_i <= ps_total: jump 'looptatass'
 
@@ -1837,7 +1837,7 @@ if $ARGS[0] = 'tattoo_wrist2':
 	act 'Return': gt 'pirsingsalon', 'tattoo_wrist'
 end
 
-if $ARGS[0] = 'tattoo_wrist2':
+if $ARGS[0] = 'tattoo_wrist3':
 	minut += 60
 	if $ARGS[2] = 'money': money -= 12000 else karta -= 12000
 	gs 'tattoo_management', 'add', 'wrist', ARGS[1]

+ 7 - 7
locations/prostitution_car_negotiation.qsrc

@@ -145,7 +145,7 @@ if $ARGS[0] = 'client_regular':
 		minut += 1
 		gs 'stat'
 		'<center><video autoplay loop src="images/shared/prostitution/car/regular/negotiation/approach.mp4"></video></center>'
-		'"Hi <<$prostitute_names[$used_name]>>. I was looking for you." He says in a good mood clearly happy to see you.'
+		'"Hi <<$prostitute_names[$prostitution_location]>>. I was looking for you." He says in a good mood clearly happy to see you.'
 		*nl
 		'"Hey sweetie, good to see you again." You say to him with a smile on your lips.'
 
@@ -193,7 +193,7 @@ if $ARGS[0] = 'client_regular':
 								gs 'prostitution_functions', 'payment', 'condom_yes', 'inside_no'
 
 								if mc_inventory['normal_condoms'] > 0 or mc_inventory['equipped_condoms'] > 0:
-									'You pull out a condom out of your '+iif(bag = 1, 'purse', 'pocket')+' and he nods. "No problem <<$prostitute_names[$used_name]>>, better safe than sorry."'
+									'You pull out a condom out of your '+iif(bag = 1, 'purse', 'pocket')+' and he nods. "No problem <<$prostitute_names[$prostitution_location]>>, better safe than sorry."'
 
 									act 'Continue': gt 'prostitution_car_negotiation', 'client_regular_success'
 								else
@@ -215,7 +215,7 @@ if $ARGS[0] = 'client_regular':
 
 										act 'Continue': gt 'prostitution_car_negotiation', 'client_regular_success'
 									else
-										'He sighs and after a second he shrugs. "Fine," he looks at you and reassures you. "Don''t worry about it <<$prostitute_names[$used_name]>>, you''re always worth waiting for."'
+										'He sighs and after a second he shrugs. "Fine," he looks at you and reassures you. "Don''t worry about it <<$prostitute_names[$prostitution_location]>>, you''re always worth waiting for."'
 
 										act 'Leave': gt $loc, 'work'
 									end
@@ -245,7 +245,7 @@ if $ARGS[0] = 'client_regular':
 									$prostitute_client_cumshot = 'Inside'
 									gs 'prostitution_functions', 'payment', 'condom_no', 'inside_yes'
 									'... can cum inside you. "And don''t be afraid to cum inside me if you want and pay for it."'
-									'"Of course I''ll pay for it. You''re the best, <<$prostitute_names[$used_name]>>."'
+									'"Of course I''ll pay for it. You''re the best, <<$prostitute_names[$prostitution_location]>>."'
 
 									act 'Continue': gt 'prostitution_car_negotiation', 'client_regular_success'
 								end
@@ -256,7 +256,7 @@ if $ARGS[0] = 'client_regular':
 							cla & *nl
 							$prostitute_client_condom = 'No'
 							'... never use a condom. "You want to fuck me raw as always?"'
-							'He nods. "Of course, it just isn''t the same with a condom. It''s really great that you do that, <<$prostitute_names[$used_name]>>. You know that, right? There aren''t many girls your age that do it raw."'
+							'He nods. "Of course, it just isn''t the same with a condom. It''s really great that you do that, <<$prostitute_names[$prostitution_location]>>. You know that, right? There aren''t many girls your age that do it raw."'
 							*nl
 							'You smile and tell him that he...'
 
@@ -275,7 +275,7 @@ if $ARGS[0] = 'client_regular':
 								$prostitute_client_cumshot = 'Inside'
 								gs 'prostitution_functions', 'payment', 'condom_no', 'inside_yes'
 								'... can cum inside you. "Yeah, raw is the best way to fuck and remember don''t be afraid to cum anywhere you want."'
-								'"You''re the best whore in the whole area, <<$prostitute_names[$used_name]>>."'
+								'"You''re the best whore in the whole area, <<$prostitute_names[$prostitution_location]>>."'
 
 								act 'Continue': gt 'prostitution_car_negotiation', 'client_regular_success'
 							end
@@ -323,7 +323,7 @@ if $ARGS[0] = 'client_regular_fail':
 	'<center><video autoplay loop src="images/shared/prostitution/car/regular/negotiation/chat'+rand(0,1)+'.mp4"></video></center>'
 	'"I''m sorry sweetie, I know you really like to fuck my '+iif($prostitute['client_scene'] = 'Vaginal', 'pussy', 'ass')+' but I''m not up for that today."'
 	*nl
-	'"Shit? Really?" You nod and he looks disheartened. After a moment he shrugs and throws you a grin. "Don''t worry about it <<$prostitute_names[$used_name]>>, it''s fine, you''re always worth the wait."'
+	'"Shit? Really?" You nod and he looks disheartened. After a moment he shrugs and throws you a grin. "Don''t worry about it <<$prostitute_names[$prostitution_location]>>, it''s fine, you''re always worth the wait."'
 	*nl
 	'"Thanks," you say and step away from the car.'+iif(prostitute['std_mod'] = 1 and mc_inventory['normal_condoms'] < 1 and mc_inventory['equipped_condoms'] < 1, ' As you walk away you think about your decision for a moment. In the end it was the right choice, he was always nice to you and without a condom he surely would catch your STD.', '')
 

+ 6 - 6
locations/prostitution_car_sex.qsrc

@@ -530,7 +530,7 @@ if $ARGS[0] = 'end':
 	else
 		'"Sure, why not, sweetie. I work here several times a week except on Sunday," you say.'
 		'"What''s your name?" He calls after you.'
-		'"<<$prostitute_names[$used_name]>>," you say before you ...'
+		'"<<$prostitute_names[$prostitution_location]>>," you say before you ...'
 	end
 
 	if prostitute['skip_end'] = 0:
@@ -582,7 +582,7 @@ if $ARGS[0] = 'regular_start':
 	cumnostd = 1
 	'<center><video autoplay loop src="images/shared/prostitution/car/regular/sex/start.mp4"></video></center>'
 	'You rub your hand over the hard bulge in his pants and smile seductively at him. "Let''s take care of this."'
-	'He groans and watches you opening his pants. "Yes, <<$prostitute_names[$used_name]>>. I have waited the whole week for this," he tells you while you take his semi-hard cock and rub it slowly with your hand.'
+	'He groans and watches you opening his pants. "Yes, <<$prostitute_names[$prostitution_location]>>. I have waited the whole week for this," he tells you while you take his semi-hard cock and rub it slowly with your hand.'
 	*nl
 	if $prostitute_client_condom = 'Yes':
 		gs 'prostitution_functions', 'remove_condom'
@@ -746,7 +746,7 @@ if $ARGS[0] = 'regular_anal':
 		*nl
 		prostitute_scene_rand = rand(1,10)
 		if prostitute_scene_rand < 5:
-			'"My wife never let me fuck her like this," he tells you clearly '+iif(prostitute_scene_rand < 3, 'annoyed by this. "I should have married a whore like you <<$prostitute_names[$used_name]>>."', 'proud about his wife. "She is a good woman, not a whore like you <<$prostitute_names[$used_name]>>."')
+			'"My wife never let me fuck her like this," he tells you clearly '+iif(prostitute_scene_rand < 3, 'annoyed by this. "I should have married a whore like you <<$prostitute_names[$prostitution_location]>>."', 'proud about his wife. "She is a good woman, not a whore like you <<$prostitute_names[$prostitution_location]>>."')
 		else
 			'"You''re a special one, you know that, right?" He asks you, but you are to busy '+iif(prostitute_scene_rand > 8, 'fucking him', 'getting fucked by him')+' to answer. "Most of those other bitches don''t do anal.'+iif(prostitute_scene_rand > 8, ' If you''re a whore, you''re a whore. They should learn their place in the world, just like you did."', '"')
 		end
@@ -851,7 +851,7 @@ if $ARGS[0] = 'regular_end_0':
 		'You chat with him for some time and he tells you a little bit about himself, his life and his problems. Listening, asking some questions and faking interest in their troubles has become an important part of your job, at least with your regulars. They come to you to reduce stress and that does sometimes mean more than fucking you.'
 		*nl
 		'He suddenly moves his head back to your tits and he plants several kisses on them. "What are you doing?" You laugh. "You can''t get enough of those? Do you?"'
-		'"No never, they are perfect," he grins and suddenly looks a bit more serious as he moves back. "<<$prostitute_names[$used_name]>>, can I kiss you?"'
+		'"No never, they are perfect," he grins and suddenly looks a bit more serious as he moves back. "<<$prostitute_names[$prostitution_location]>>, can I kiss you?"'
 		*nl
 		'You...'
 
@@ -880,7 +880,7 @@ if $ARGS[0] = 'regular_end_0':
 			if $prostitute['kiss'] ! 'yes': $prostitute['kiss'] = 'yes'
 			'<center><video autoplay loop src="images/shared/prostitution/car/regular/negotiation/end_p2.mp4"></video></center>'
 			'... kiss him. It''s a strangely sweet moment in a car next to a gas station after he has solicited you for sex.'
-			'"Thanks <<$prostitute_names[$used_name]>>," he says and he looks happy not sexually satisfied but truly happy.'
+			'"Thanks <<$prostitute_names[$prostitution_location]>>," he says and he looks happy not sexually satisfied but truly happy.'
 
 			gs 'arousal', 'kiss', 3, 'unknown'
 			gs 'arousal', 'end'
@@ -941,7 +941,7 @@ if $ARGS[0] = 'regular_end_1':
 	gs 'fame', 'city', 'prostitute', 2
 	gs 'stat'
 	'<center><video autoplay loop src="images/shared/prostitution/car/regular/negotiation/end_p3.mp4"></video></center>'
-	'"Bye <<$prostitute_names[$used_name]>>, I hope I''ll seeing you again," is the last thing he says to you as you step out of the car. You close the door behind you and step back onto the parking lot of the gas station.'+iif(hour < 23, ' Your shift still isn''t over.', '')
+	'"Bye <<$prostitute_names[$prostitution_location]>>, I hope I''ll seeing you again," is the last thing he says to you as you step out of the car. You close the door behind you and step back onto the parking lot of the gas station.'+iif(hour < 23, ' Your shift still isn''t over.', '')
 
 	killvar 'prostitute_scene_clit'
 	killvar 'prostitute_scene_lick'

+ 4 - 4
locations/road_prostitution.qsrc

@@ -7,7 +7,7 @@ if $ARGS[0] = 'work':
 
 	*clr & cla
 	$loc = 'road_prostitution'
-	$used_name = 'road'
+	$prostitution_location = 'road'
 	$loc_arg = 'work'
 	$menu_arg = 'work'
 	menu_off = 1
@@ -16,10 +16,10 @@ if $ARGS[0] = 'work':
 	gs 'prostitution_functions', 'parameters'
 
 	!! TODO: Make it a bit smarter, if Sveta has fake names set up for other locations, give her a reminder of those.
-	if $prostitute_names['road'] = '':
+	if $prostitute_names[$prostitution_location] = '':
 		'If you want, you can tell your clients a different name.'
-		$prostitute_names['road'] = input("What name do you want to tell your clients?  (Leave blank for  <<$pcs_nickname>>)")
-		if $prostitute_names['road'] = '': $prostitute_names['road'] = $pcs_nickname
+		$prostitute_names[$prostitution_location] = input("What name do you want to tell your clients?  (Leave blank for  <<$pcs_nickname>>)")
+		if $prostitute_names[$prostitution_location] = '': $prostitute_names[$prostitution_location] = $pcs_nickname
 	end
 
 	!! TODO: Should find some video that is more roadside - evening, morning, different weather, etc.

+ 1 - 1
locations/sex_ev_after.qsrc

@@ -2237,7 +2237,7 @@ if $ARGS[0] = 'smoke_phone':
 		end
 	end
 	sex_ev['cigarette'] = 1
-	gs'sex_ev_after', 'smoke_phone'
+	gs'sex_ev_after', 'smoke_ciga_react'
 end
 
 if $ARGS[0] = 'smoke_ciga_react':