| @@ -1980,6 +1980,22 @@ function cleavage_absorb() | |||||
| macro.arouse((preyMass > 0 ? 15 : 5)); | macro.arouse((preyMass > 0 ? 15 : 5)); | ||||
| } | } | ||||
| function breast_toy() | |||||
| { | |||||
| let prey = macro.cleavage.container; | |||||
| let line = describe("breast-toy", prey, macro, verbose); | |||||
| let linesummary = summarize(prey.sum(), false); | |||||
| let people = get_living_prey(prey.sum()); | |||||
| let preyMass = prey.sum_property("mass"); | |||||
| let sound = getSound("insert",preyMass); | |||||
| update([sound,line,linesummary,newline]); | |||||
| macro.arouse(15); | |||||
| } | |||||
| function breast_crush() | function breast_crush() | ||||
| { | { | ||||
| let area = macro.breastArea; | let area = macro.breastArea; | ||||
| @@ -2084,6 +2100,22 @@ function unbirth() | |||||
| macro.arouse(20); | macro.arouse(20); | ||||
| } | } | ||||
| function slit_toy() | |||||
| { | |||||
| let prey = macro.womb.contents[0].merge(macro.womb.contents[1]); | |||||
| let line = describe("slit-toy", prey, macro, verbose); | |||||
| let linesummary = summarize(prey.sum(), false); | |||||
| let people = get_living_prey(prey.sum()); | |||||
| let preyMass = prey.sum_property("mass"); | |||||
| let sound = getSound("insert",preyMass); | |||||
| update([sound,line,linesummary,newline]); | |||||
| macro.arouse(15); | |||||
| } | |||||
| function sheath_stuff() | function sheath_stuff() | ||||
| { | { | ||||
| let area = Math.min(macro.handArea, macro.dickArea); | let area = Math.min(macro.handArea, macro.dickArea); | ||||
| @@ -2103,10 +2135,10 @@ function sheath_stuff() | |||||
| macro.arouse(15); | macro.arouse(15); | ||||
| } | } | ||||
| function sheath_squeeze() | |||||
| function sheath_toy() | |||||
| { | { | ||||
| let prey = macro.sheath.container; | let prey = macro.sheath.container; | ||||
| let line = describe("sheath-squeeze", prey, macro, verbose); | |||||
| let line = describe("sheath-toy", prey, macro, verbose); | |||||
| let linesummary = summarize(prey.sum(), false); | let linesummary = summarize(prey.sum(), false); | ||||
| let people = get_living_prey(prey.sum()); | let people = get_living_prey(prey.sum()); | ||||
| @@ -3187,7 +3219,7 @@ function startGame(e) { | |||||
| enable_victim("sheath-absorb","Absorbed by sheath"); | enable_victim("sheath-absorb","Absorbed by sheath"); | ||||
| enable_button("sheath_stuff"); | enable_button("sheath_stuff"); | ||||
| enable_button("sheath_squeeze"); | |||||
| enable_button("sheath_toy"); | |||||
| enable_button("sheath_clench"); | enable_button("sheath_clench"); | ||||
| enable_button("sheath_absorb"); | enable_button("sheath_absorb"); | ||||
| } | } | ||||
| @@ -3203,6 +3235,7 @@ function startGame(e) { | |||||
| enable_panel("vagina"); | enable_panel("vagina"); | ||||
| enable_button("unbirth"); | enable_button("unbirth"); | ||||
| enable_button("slit_toy"); | |||||
| enable_stat("femcum"); | enable_stat("femcum"); | ||||
| @@ -3222,6 +3255,7 @@ function startGame(e) { | |||||
| enable_panel("breasts"); | enable_panel("breasts"); | ||||
| enable_button("breast_crush"); | enable_button("breast_crush"); | ||||
| enable_button("breast_toy"); | |||||
| enable_button("cleavage_stuff"); | enable_button("cleavage_stuff"); | ||||
| enable_button("cleavage_crush"); | enable_button("cleavage_crush"); | ||||
| enable_button("cleavage_drop"); | enable_button("cleavage_drop"); | ||||
| @@ -18,11 +18,12 @@ function getDefault(name) { | |||||
| var actions = ["eat","chew","stomp","stomp-wedge","flex-toes","kick","anal-vore","ass-crush","tail-slap","tail-vore", | var actions = ["eat","chew","stomp","stomp-wedge","flex-toes","kick","anal-vore","ass-crush","tail-slap","tail-vore", | ||||
| "cleavage-stuff","cleavage-crush","cleavage-drop","cleavage-absorb","breast-crush", | "cleavage-stuff","cleavage-crush","cleavage-drop","cleavage-absorb","breast-crush", | ||||
| "breast-vore","breast-milk","unbirth","sheath-stuff","sheath-squeeze","sheath-clench","sheath-crush", | |||||
| "breast-vore","breast-milk","unbirth","sheath-stuff","sheath-clench","sheath-crush", | |||||
| "sheath-absorb","cock-vore","cockslap","ball-smother","male-spurt","male-orgasm","female-spurt", | "sheath-absorb","cock-vore","cockslap","ball-smother","male-spurt","male-orgasm","female-spurt", | ||||
| "female-orgasm","grind","pouch-stuff","pouch-rub","pouch-eat","pouch-absorb","soul-vore","soul-absorb-paw", | "female-orgasm","grind","pouch-stuff","pouch-rub","pouch-eat","pouch-absorb","soul-vore","soul-absorb-paw", | ||||
| "paw-stench","ass-stench","belch","fart","stomach","womb","balls","bowels","bowels-to-stomach","breasts","bladder","soul-digest", | "paw-stench","ass-stench","belch","fart","stomach","womb","balls","bowels","bowels-to-stomach","breasts","bladder","soul-digest", | ||||
| "wear-shoe","remove-shoe","wear-sock","remove-sock","stuff-shoe","dump-shoe","stuff-sock","dump-sock","piss","bladder-vore","scat"]; | |||||
| "wear-shoe","remove-shoe","wear-sock","remove-sock","stuff-shoe","dump-shoe","stuff-sock","dump-sock","piss","bladder-vore","scat", | |||||
| "sheath-toy","slit-toy","breast-toy",""]; | |||||
| for (let i=0; i<actions.length; i++) { | for (let i=0; i<actions.length; i++) { | ||||
| rules[actions[i]] = []; | rules[actions[i]] = []; | ||||
| @@ -309,7 +310,23 @@ function defaultSheathStuff(container, macro, verbose) { | |||||
| return "You pluck " + container.describe(verbose) + " from the ground and slip them into your musky sheath."; | return "You pluck " + container.describe(verbose) + " from the ground and slip them into your musky sheath."; | ||||
| } | } | ||||
| function defaultSheathSqueeze(container, macro, verbose) { | |||||
| function defaultBreastToy(container, macro, verbose) { | |||||
| if (container.count > 0) { | |||||
| return "You smush your breasts together, squeezing " + container.describe(false) + " between the heavy mounds."; | |||||
| } else { | |||||
| return "You smush your breasts together."; | |||||
| } | |||||
| } | |||||
| function defaultSlitToy(container, macro, verbose) { | |||||
| if (container.count > 0) { | |||||
| return "You slip your fingers into your snatch, teasing yourself and pushing the " + container.describe(false) + " within a little deeper."; | |||||
| } else { | |||||
| return "Your slp your fingers into your snatch and tease yourself."; | |||||
| } | |||||
| } | |||||
| function defaultSheathToy(container, macro, verbose) { | |||||
| if (container.count > 0) { | if (container.count > 0) { | ||||
| if (macro.orgasm) { | if (macro.orgasm) { | ||||
| return "You stroke your spurting cock, then reach down to give your sheath a firm <i>squeeze</i>. Anything within has been ground away to nothingness by the force of your orgasm."; | return "You stroke your spurting cock, then reach down to give your sheath a firm <i>squeeze</i>. Anything within has been ground away to nothingness by the force of your orgasm."; | ||||
| @@ -130,6 +130,7 @@ | |||||
| <div class="action-tab" id="actions-breasts"> | <div class="action-tab" id="actions-breasts"> | ||||
| <button class="action-button" id="button-action-cleavage_stuff">Stuff Cleavage</button> | <button class="action-button" id="button-action-cleavage_stuff">Stuff Cleavage</button> | ||||
| <button class="action-button" id="button-action-breast_toy">Squeeze Cleavage</button> | |||||
| <button class="action-button" id="button-action-cleavage_crush">Crush Cleavage</button> | <button class="action-button" id="button-action-cleavage_crush">Crush Cleavage</button> | ||||
| <button class="action-button" id="button-action-cleavage_drop">Drop Cleavage</button> | <button class="action-button" id="button-action-cleavage_drop">Drop Cleavage</button> | ||||
| <button class="action-button" id="button-action-cleavage_absorb">Absorb Cleavage</button> | <button class="action-button" id="button-action-cleavage_absorb">Absorb Cleavage</button> | ||||
| @@ -140,11 +141,12 @@ | |||||
| <div class="action-tab" id="actions-vagina"> | <div class="action-tab" id="actions-vagina"> | ||||
| <button class="action-button" id="button-action-unbirth">Unbirth</button> | <button class="action-button" id="button-action-unbirth">Unbirth</button> | ||||
| <button class="action-button" id="button-action-slit_toy">Finger Slit</button> | |||||
| </div> | </div> | ||||
| <div class="action-tab" id="actions-dick"> | <div class="action-tab" id="actions-dick"> | ||||
| <button class="action-button" id="button-action-sheath_stuff">Stuff Sheath</button> | <button class="action-button" id="button-action-sheath_stuff">Stuff Sheath</button> | ||||
| <button class="action-button" id="button-action-sheath_squeeze">Squeeze Sheath</button> | |||||
| <button class="action-button" id="button-action-sheath_toy">Squeeze Sheath</button> | |||||
| <button class="action-button" id="button-action-sheath_clench">Clench Sheath</button> | <button class="action-button" id="button-action-sheath_clench">Clench Sheath</button> | ||||
| <button class="action-button" id="button-action-sheath_absorb">Absorb Sheath</button> | <button class="action-button" id="button-action-sheath_absorb">Absorb Sheath</button> | ||||
| <button class="action-button" id="button-action-cockslap">Cockslap</button> | <button class="action-button" id="button-action-cockslap">Cockslap</button> | ||||