diff options
| author | Dan Goodliffe <dan@randomdan.homeip.net> | 2018-12-30 15:21:03 +0000 | 
|---|---|---|
| committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2018-12-30 15:21:03 +0000 | 
| commit | b4d5b3124cdc033b016e4f4eea1c7cb3d905d12f (patch) | |
| tree | a1cc4f4bdf382a5ba26c7a412c6dccd63722a20a /scripts/toy.groovy | |
| parent | Don't exit when owner goes to bed, just drop back to the lounge (diff) | |
| download | toy-b4d5b3124cdc033b016e4f4eea1c7cb3d905d12f.zip | |
Maintain list of toys to hand in session
Used to avoid repeating instructions to fetch them again etc
Diffstat (limited to 'scripts/toy.groovy')
| -rw-r--r-- | scripts/toy.groovy | 50 | 
1 files changed, 37 insertions, 13 deletions
diff --git a/scripts/toy.groovy b/scripts/toy.groovy index 1deaf3c..8bb614b 100644 --- a/scripts/toy.groovy +++ b/scripts/toy.groovy @@ -16,6 +16,7 @@ final soonFormatter = java.time.format.DateTimeFormatter.ofPattern("EEEE 'at' h:  // Notes  // toys.<name> ankle_cuffs, ballgag, blindfold, chastity_belt, clothespins, cockring, dog_collar, handcuffs, hood, nipple_clamps, ring_gag  final BALLGAG = "ballgag", COLLAR = "dog_collar", CLAMPS = "nipple_clamps", CHASTITY = "chastity_belt", HANDCUFFS = "handcuffs"; +final SPOON = "spoon";  // fetish.<name>  final BONDAGE = "bondage", CBT = "cbt", CHORES = "chores", PAIN = "pain";  // toy.permission.<name> @@ -220,6 +221,7 @@ def execEvents = { rt ->  	}  };  def sessionAborted = null; +def sessionToys = [:];  def gagText = { t, p ->  	if (!is(GAGGED)) return t;  	return t.split(/\s+/) @@ -717,11 +719,20 @@ def chastity = { pre ->  				["But...", "I just like to be sure."]]);  	}  	wait(getRandom(5) + 10); -	present([DRESSED,TEASE], [ -			["Go to your room,", "Run along now,"], -			["get your chastity device and"], -			["lock it on.", "get that cock secured away."], -			["Bring back the key.", "I want the key of course."]]); +	if (sessionToys.containsKey(CHASTITY)) { +		present([DRESSED,TEASE], [ +				["Time to", "Get your chastity device and"], +				["lock my cock away again now.", "get that cock back in its cage."], +				["And for you to", "And then"], +				["hand over the key", "give me the key back."]]); +	} +	else { +		present([DRESSED,TEASE], [ +				["Go to your room,", "Run along now,"], +				["get your chastity device and"], +				["lock it on.", "get that cock secured away."], +				["Bring back the key.", "I want the key of course."]]); +	}  	wait(10);  	show(null);  	showButtonGT("Locked, mistress. Here's the key.", "locked", 180, 1); @@ -794,20 +805,31 @@ def playNothing = {  	};  };  def playCbt = { -	present([DRESSED], [ -			["Go to the kitchen...", "From the kitchen..."], -			["bring me", "get yourself"], -			["a wooden spoon or similar."]]); -	showButtonG("Yes, mistress", "ok"); -	wait(5);  	final BEATS = [  		// bpm:30, len:60 ],  		[ bpm:90, len:45 ],  		[ bpm:165, len:30 ],  		[ bpm:180, len:30 ],  		[ bpm:240, len:20 ], -		]; -	showButtonGT("Back, mistress", "back", 20, 1); +	]; +	if (sessionToys.containsKey(SPOON)) { +		present([DRESSED], [ +				["Pick up", "Grab"], +				["your", "that"], +				["wooden spoon"], +				["again."]]); +		wait(10); +	} +	else { +		present([DRESSED], [ +				["Go to the kitchen...", "From the kitchen..."], +				["bring me", "get yourself"], +				["a wooden spoon or similar."]]); +		showButtonG("Yes, mistress", "ok"); +		wait(5); +		showButtonGT("Back, mistress", "back", 20, 1); +		sessionToys[SPOON] = getTime(); +	}  	present([DRESSED], [  			["Good.", "Right."],  			["Take those balls in one hand", "In one hand, hold your balls"], @@ -1013,6 +1035,7 @@ def sessionSummon = { imageSpec ->  	return false;  };  def sessionPlay = { +	if (is(CHASTE)) sessionToys[CHASTITY] = getTime();  	def ph = (float)1.0;  	def pm = { val ->  		if (val) { @@ -1130,6 +1153,7 @@ def sessionRelease = { goodToy ->  	wait(10);  	showLounge();  	sessionAborted = null; +	sessionToys = [:];  	if (goodToy) {  		adjustPunish(-20);  	}  | 
