summaryrefslogtreecommitdiff
path: root/scripts/toy.groovy
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2018-12-03 13:18:06 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2018-12-03 13:18:06 +0000
commit2e7c397f29d9fd761ab63d3bf0e11dbb82660217 (patch)
tree01b17f1432287cf15cbc861e6002fa024dfec23a /scripts/toy.groovy
parentAdds playKneel (diff)
downloadtoy-2e7c397f29d9fd761ab63d3bf0e11dbb82660217.zip
Update play for punishments
Diffstat (limited to 'scripts/toy.groovy')
-rw-r--r--scripts/toy.groovy28
1 files changed, 23 insertions, 5 deletions
diff --git a/scripts/toy.groovy b/scripts/toy.groovy
index f0a89d6..f13bfc7 100644
--- a/scripts/toy.groovy
+++ b/scripts/toy.groovy
@@ -644,16 +644,34 @@ def sessionSummon = { imageSpec ->
return false;
};
def sessionPlay = {
- def play = { amount, activities ->
+ def ph = (float)1.0;
+ def pm = { val ->
+ ph *= val;
+ };
+ def ap = { val ->
+ adjustPunish(-val * ph);
+ };
+ def play = { amount, activities, use = null ->
(getRandom(amount) + 1).times {
if (!sessionAborted) {
- activities[getRandom(activities.size())]();
+ def val = (Float)activities[getRandom(activities.size())]();
+ if (val && use) {
+ use(val);
+ }
}
};
};
- play(3, [preRelease, preEdge, preGag, preClamps, preCollar, preStrip]);
- play(3, [playStrokes, playEdges, playNothing]);
- play(2, [postEdge, postCum, postChastity]);
+ def cp = getPunish();
+ if (cp > 50) {
+ preChastity();
+ play((int)(cp / 100), [preGag, preClamps, preCollar, preStrip], pm);
+ play(3, [playKneel/*, playCorner, playCbt*/], ap);
+ }
+ else {
+ play(3, [preRelease, preEdge, preGag, preClamps, preCollar, preStrip]);
+ play(3, [playStrokes, playEdges, playNothing]);
+ play(2, [postEdge, postCum, postChastity]);
+ }
};
def sessionRelease = { goodToy ->
if (goodToy) {