Browse Source

Обновить 'locations/stat.qsrc'

Lusticon 4 months ago
parent
commit
b85ae957bd
1 changed files with 20 additions and 17 deletions
  1. 20 17
      locations/stat.qsrc

+ 20 - 17
locations/stat.qsrc

@@ -358,7 +358,8 @@ end
 !! 6 fetish heel - 60
 !! Only run if at least X minutes have passed since last time
 if heelsminut > totminut: heelsminut = totminut & !! fix for time cheat
-if totminut >= heelsminut + 120:
+if totminut >= heelsminut + 30:
+	heelstime = totminut-heelsminut
 	heelsminut = totminut
 	!! Only check experience and pain gain and if the player wears heels, flats give nothing
 	if PShoHeels > 1:
@@ -378,41 +379,43 @@ if totminut >= heelsminut + 120:
 		if pcs_heels < heelsRequiredskill:
 			heelsSkilldiff = heelsRequiredskill - pcs_heels
 			if heelsSkilldiff <= 5:
-				gs 'exp_gain', 'heels', rand(3,6)
-				if pain['feet'] < 40: gs 'pain', rand(0,1), 'feet', 'ache'
+				gs 'exp_gain', 'heels', rand(min(3,heelstime/30),min(6,heelstime/15))
+				if pain['feet'] < 40: gs 'pain', rand(heelstime/30,heelstime/20), 'feet', 'ache'
 			elseif heelsSkilldiff <= 10:
-				gs 'exp_gain', 'heels', rand(5,9)
-				if pain['feet'] < 50: gs 'pain', rand(0,2), 'feet', 'ache'
+				gs 'exp_gain', 'heels', rand(min(5,heelstime/20),min(9,heelstime/10))
+				if pain['feet'] < 50: gs 'pain', rand(heelstime/25,heelstime/16), 'feet', 'ache'
 			elseif heelsSkilldiff <= 15:
-				gs 'exp_gain', 'heels', rand(7,12)
-				if pain['feet'] < 60: gs 'pain', rand(1,3), 'feet', 'ache'
+				gs 'exp_gain', 'heels', rand(min(7,heelstime/15),min(12,heelstime/8))
+				if pain['feet'] < 60: gs 'pain', rand(heelstime/20,heelstime/12), 'feet', 'ache'
 			elseif heelsSkilldiff <= 20:
-				gs 'exp_gain', 'heels', rand(9,15)
-				if pain['feet'] < 70: gs 'pain', rand(2,4), 'feet', 'ache'
+				gs 'exp_gain', 'heels', rand(min(9,heelstime/10),min(15,heelstime/5))
+				if pain['feet'] < 70: gs 'pain', rand(heelstime/15,heelstime/8), 'feet', 'ache'
 			elseif heelsSkilldiff > 20:
-				gs 'exp_gain', 'heels', rand(12,20)
-				if pain['feet'] < 80: gs 'pain', rand(3,5), 'feet', 'ache'
+				gs 'exp_gain', 'heels', rand(min(12,heelstime/5),min(20,heelstime/2))
+				if pain['feet'] < 80: gs 'pain', rand(heelstime/10,heelstime/5), 'feet', 'ache'
 			end
 		!! Player skill is equal to or higher than the required skill
 		!! Maybe have excessive skill result in no gain, or even a degrading skill?
 		else
+			gs 'pain', rand(heelstime/60,heelstime/30), 'feet', 'ache'
 			heelsSkilldiff = pcs_heels - heelsRequiredskill
 			if heelsSkilldiff <= 5:
-				gs 'exp_gain', 'heels', rand(3,6)
+				gs 'exp_gain', 'heels', rand(min(5,heelstime/6),min(9,heelstime/3))
 			elseif heelsSkilldiff <= 10:
-				gs 'exp_gain', 'heels', rand(2,4)
+				gs 'exp_gain', 'heels', rand(min(4,heelstime/10),min(7,heelstime/5))
 			elseif heelsSkilldiff <= 15:
-				gs 'exp_gain', 'heels', rand(1,2)
+				gs 'exp_gain', 'heels', rand(min(2,heelstime/20),min(4,heelstime/10))
 			elseif heelsSkilldiff <= 20:
-				gs 'exp_gain', 'heels', 0
-			elseif heelsSkilldiff > 20:
-				heels_deg -= rand(0,1)
+				gs 'exp_gain', 'heels', rand(min(1,heelstime/30),min(2,heelstime/15))
+			else:
+				heels_deg -= max(0,rand(0,5) - PShoHeels)
 			end
 		end
 	!! If not wearing heels, degrade heels skill
 	else
 		heels_deg -= rand(0,1)
 	end
+	killvar 'heelstime'
 end
 !!!!!!!!!!!!!!! End heels