Browse Source

[added] Wrapper for willpower in bestmod. Not in use yet, but will take into account PCs experience. Waiting for inverse willpower calculation in base game to be worked out.

oldentree 5 years ago
parent
commit
46a8fd6d93

+ 1 - 0
bestmod.qproj

@@ -14,6 +14,7 @@
             <Location name="mod_bestmod_petshop"/>
             <Location name="mod_bestmod_park_dog"/>
             <Location name="mod_bestmod_lake_dog"/>
+            <Location name="mod_bestmod_willpower"/>
         </Folder>
         <Folder name="setup">
             <Location name="mod_bestmod_options"/>

+ 2 - 1
locations/mod_bestmod.qsrc

@@ -92,7 +92,8 @@ if $curloc = 'din_bad' and $ARGS[0] = 'd_bag':
 	if bm_dog_treat > 0: 'You have <b><<bm_dog_treat>></b> dog treat'+iif(bm_dog_treat > 1, 's ', ' ')+'left in your purse.'
 end
 
-!! Some of the variables used in this mod:
+!! Some of the variables used in this mod
+!! Edit: Use stat['beast'] instead of bm_beast['exp']:
 !! bm_beast[''exp'']			Beastiality experience. Incremented each act.
 !! bm_beast[''num'']			Count of animal partners. Incremented once per individual.
 !! bm_beast[''dog_exp'']		Experience with dogs. Incremented each act with dog.

+ 1 - 1
locations/mod_bestmod_park_dog.qsrc

@@ -90,7 +90,7 @@ end
 
 !! Used before sex, once PC is friendly with stray
 if $ARGS[0] = 'parkdog_setup':
-	!! Ask user for name for the stray
+	!! Ask user for name for the stray?
 	gs 'npcgeneratec', 0, 'Park Stray', rand(1,4)
 	gs 'npcpreservec', $npclastgenerated
 	$bm_parkdog_ID = $npclastsaved

+ 26 - 0
locations/mod_bestmod_willpower.qsrc

@@ -0,0 +1,26 @@
+# mod_bestmod_willpower
+
+!! This file will implement willpower elements exclusive to the bestmod.
+!! See willpower.qsrc in the base game code to see how that library works.
+!! To use call with gs 'mod_bestmod_willpower', '<type>'
+!! An alternate form with three arguments can be used to specify the animal type when 'type' is not 'force' or 'resist':
+!! gs 'mod_bestmod_willpower', '<type>', '<animal_type>'
+
+!! Not used in the game yet as we need the inverse calculation so that it would be
+!! harder to accept when experience is low
+!! Use stat['beast'] instead of bm_beast['exp']
+if $ARGS[0] = 'sex':
+	!! Use basemod willpower calc to calculate the base cost.
+	gs 'willpower', 'calc'
+	!! Use basemod willpower sex to calculate how willing PC is to have sex.
+	gs 'willpower', 'sex'
+	!! will_cost is set now. Now we need to add the penalty based on willingness
+	!! of PC to have sex with an animal
+	if $ARGS[1] ! '':
+		!! Specific species
+		will_cost += bm_beast['<<$ARGS[1]>>_exp']/10
+	else
+		!! Beast sex overall
+		will_cost += bm_beast['exp']/10
+	end
+end