From c3fbcf04899488893067046fd90f9afedb61d451 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Mon, 18 Jun 2018 18:50:12 -0400 Subject: [PATCH] Added basic drool mechanics --- game.js | 38 ++++++++++++++++++++++++++++++++++++++ recursive-desc.js | 12 +++++++++++- stroll.html | 13 +++++++++++++ 3 files changed, 62 insertions(+), 1 deletion(-) diff --git a/game.js b/game.js index 67b8a30..a229f6f 100644 --- a/game.js +++ b/game.js @@ -393,6 +393,10 @@ let macro = return volume * this.breastDensity; }, + get droolVolume() { + return this.scaling(this.droolBaseVolume, this.scale, 3); + }, + "digest": function(owner, organ, time=15) { // ignore if using manual digestion @@ -1928,6 +1932,10 @@ function feed() update([sound,line,linesummary,newline]); macro.arouse(5); + + if (macro.droolEnabled) { + drool(); + } } function chew() @@ -1968,8 +1976,31 @@ function chew() update([sound,line,linesummary,newline]); macro.arouse(10); + + if (macro.droolEnabled) { + drool(); + } } +function drool() +{ + let vol = macro.droolVolume * (Math.random() / 5 + 0.9); + let area = Math.pow(vol, 2/3); + + let prey = getPrey(biome, area); + let line = describe("drool", prey, macro, verbose).replace("$VOLUME",volume(vol,unit,false)); + let linesummary = summarize(prey.sum(), true); + + let people = get_living_prey(prey.sum()); + + let preyMass = prey.sum_property("mass"); + + let sound = getSound("liquid",preyMass); + + add_victim_people("drool",prey); + + update([sound,line,linesummary,newline]); +} function stomp() { if (macro.gooMolten && !macro.footShoeWorn && !macro.footSockWorn) { @@ -3702,6 +3733,8 @@ function breath(type, style) { update([sound, line, linesummary, newline]); add_victim_people("breath-" + type, prey); + + macro.arouse(5); } function breath_fire() { @@ -4222,6 +4255,11 @@ function startGame(e) { enable_victim("chew","Chewed"); } + if (macro.droolEnabled) { + enable_button("drool"); + enable_victim("drool","Drenched in drool"); + } + if (macro.arousalEnabled) { document.querySelector("#arousalMeter").style.display = 'inline-block'; document.querySelector("#orgasmMeter").style.display = 'inline-block'; diff --git a/recursive-desc.js b/recursive-desc.js index 54058d0..1aff9fe 100644 --- a/recursive-desc.js +++ b/recursive-desc.js @@ -31,7 +31,7 @@ var actions = ["eat","chew","vomit","stomp","stomp-wedge","flex-toes","kick","an "sheath-toy","slit-toy","breast-toy","melt","solidify","flood","stomp-goo","goo-digest","ass-goo","goo-stomach-pull","goo-stomach-push", "goo-bowels-pull","goo-bowels-push","goo-womb-pull","goo-womb-push","goo-balls-pull","goo-balls-push","goo-breasts-pull","goo-breasts-push", "goo-tail-pull","goo-tail-push","goo-paws-pull","goo-paws-push","paw-vore","paw-vore-toes","paws","crop-swallow","crop-transfer", -"breath-fire","breath-ice","breath-electric","breath-smoke","breath-radiation","breath-foul"]; +"breath-fire","breath-ice","breath-electric","breath-smoke","breath-radiation","breath-foul","drool"]; for (let i=0; iCrop Swallow + @@ -1118,6 +1119,18 @@ + +
+ + +
+
  • + + +
    +
  • +
    +