| @@ -2670,30 +2670,95 @@ function fart(vol) | |||
| function wear_shoes() { | |||
| macro.footShoeWorn = true; | |||
| let line = describe("wear-shoe",macro.shoe.container,macro,verbose); | |||
| let summary = summarize(macro.shoe.container.sum(),false); | |||
| footwearUpdate(); | |||
| update([line,summary,newline]); | |||
| } | |||
| function remove_shoes() { | |||
| macro.footShoeWorn = false; | |||
| let line = describe("remove-shoe",macro.shoe.container,macro,verbose); | |||
| let summary = summarize(macro.shoe.container.sum(),false); | |||
| footwearUpdate(); | |||
| update([line,summary,newline]); | |||
| } | |||
| function wear_socks() { | |||
| macro.footSockWorn = true; | |||
| let line = describe("wear-sock",macro.sock.container,macro,verbose); | |||
| let summary = summarize(macro.sock.container.sum(),false); | |||
| footwearUpdate(); | |||
| update([line,summary,newline]); | |||
| } | |||
| function remove_socks() { | |||
| macro.footSockWorn = false; | |||
| let line = describe("remove-sock",macro.sock.container,macro,verbose); | |||
| let summary = summarize(macro.sock.container.sum(),false); | |||
| footwearUpdate(); | |||
| update([line,summary,newline]); | |||
| } | |||
| function stuff_shoes() { | |||
| let prey = getPrey(biome, macro.pawArea/5, false); | |||
| macro.shoe.add(prey); | |||
| let line = describe("stuff-shoe",prey,macro,verbose); | |||
| let summary = summarize(prey.sum(),false); | |||
| update([line,summary,newline]); | |||
| } | |||
| function stuff_socks() { | |||
| let prey = getPrey(biome, macro.pawArea/5, false); | |||
| macro.sock.add(prey); | |||
| let line = describe("stuff-sock",prey,macro,verbose); | |||
| let summary = summarize(prey.sum(),false); | |||
| update([line,summary,newline]); | |||
| } | |||
| function dump_shoes() { | |||
| let prey = macro.shoe.container; | |||
| macro.shoe.container = new Container(); | |||
| let line = describe("dump-shoe",prey,macro,verbose); | |||
| let summary = summarize(prey.sum(),false); | |||
| update([line,summary,newline]); | |||
| } | |||
| function dump_socks() { | |||
| let prey = macro.sock.container; | |||
| macro.sock.container = new Container(); | |||
| let line = describe("dump-sock",prey,macro,verbose); | |||
| let summary = summarize(prey.sum(),false); | |||
| update([line,summary,newline]); | |||
| } | |||
| function footwearUpdate() { | |||
| disable_button("wear_shoes"); | |||
| disable_button("remove_socks"); | |||
| disable_button("remove_shoes"); | |||
| disable_button("wear_socks"); | |||
| disable_button("remove_socks"); | |||
| disable_button("stuff_shoes"); | |||
| @@ -2701,21 +2766,31 @@ function footwearUpdate() { | |||
| disable_button("stuff_socks"); | |||
| disable_button("dump_socks"); | |||
| if (macro.footShoeWorn) { | |||
| enable_button("remove_shoes"); | |||
| } else { | |||
| enable_button("wear_shoes"); | |||
| enable_button("stuff_shoes"); | |||
| enable_button("dump_shoes"); | |||
| if (macro.footSockWorn) { | |||
| enable_button("remove_socks"); | |||
| if (macro.footShoeEnabled) { | |||
| if (macro.footShoeWorn) { | |||
| enable_button("remove_shoes"); | |||
| } else { | |||
| enable_button("wear_socks"); | |||
| enable_button("stuff_socks"); | |||
| enable_button("dump_socks"); | |||
| enable_button("stuff_shoes"); | |||
| enable_button("dump_shoes"); | |||
| if (!macro.footSockEnabled || macro.footSockWorn) { | |||
| enable_button("wear_shoes"); | |||
| } | |||
| } | |||
| } | |||
| if (!macro.footShoeEnabled || !macro.footShoeWorn) { | |||
| if (macro.footSockEnabled) { | |||
| if (macro.footSockWorn) { | |||
| enable_button("remove_socks"); | |||
| } else { | |||
| enable_button("wear_socks"); | |||
| enable_button("stuff_socks"); | |||
| enable_button("dump_socks"); | |||
| } | |||
| } | |||
| } | |||
| } | |||
| function transformNumbers(line) | |||
| @@ -3229,9 +3304,12 @@ function startGame(e) { | |||
| } | |||
| } | |||
| if (macro.footShoeEnabled || macro.footSockEnabled) { | |||
| if (macro.footWear) { | |||
| enable_panel("shoes"); | |||
| macro.footShoeWorn = macro.footShoeEnabled; | |||
| macro.footSockWorn = macro.footSockEnabled; | |||
| footwearUpdate(); | |||
| } | |||
| @@ -21,7 +21,8 @@ var actions = ["eat","chew","stomp","kick","anal-vore","ass-crush","tail-slap"," | |||
| "breast-vore","breast-milk","unbirth","sheath-stuff","sheath-squeeze","sheath-crush", | |||
| "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", | |||
| "paw-stench","ass-stench","belch","fart","stomach","womb","balls","bowels","bowels-to-stomach","breasts","soul-digest"]; | |||
| "paw-stench","ass-stench","belch","fart","stomach","womb","balls","bowels","bowels-to-stomach","breasts","soul-digest", | |||
| "wear-shoe","remove-shoe","wear-sock","remove-sock","stuff-shoe","dump-shoe","stuff-sock","dump-sock"]; | |||
| for (let i=0; i<actions.length; i++) { | |||
| rules[actions[i]] = []; | |||
| @@ -522,6 +523,74 @@ function defaultSoulDigest(container, macro, verbose) { | |||
| } | |||
| } | |||
| function defaultWearShoe(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You slip on your shoes."; | |||
| } else { | |||
| return "You slip on your shoes, " + macro.toeDesc(true) + " wriggling against " + container.describe(false) + " trapped within!"; | |||
| } | |||
| } | |||
| function defaultRemoveShoe(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You pull off your shoes."; | |||
| } else { | |||
| return "You pull off your shoes, " + macro.toeDesc(true) + " rubbing against " + container.describe(false) + " on the way out."; | |||
| } | |||
| } | |||
| function defaultWearSock(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You slip on your socks."; | |||
| } else { | |||
| return "You slip on your socks, " + macro.toeDesc(true) + " grinding against " + container.describe(false) + " trapped in the cotton tube!"; | |||
| } | |||
| } | |||
| function defaultRemoveSock(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You pull off your socks. Cool air washes over your " + macro.toeOnlyDesc(true); | |||
| } else { | |||
| return "You pull off your socks, leaving " + container.describe(false) + " trapped at the bottom."; | |||
| } | |||
| } | |||
| function defaultStuffShoe(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You don't have anything to stuff into your shoes."; | |||
| } else { | |||
| return "You grab " + container.describe(verbose) + " and stuff " + (container.count > 1 ? "them" : "it") + " into your shoe!"; | |||
| } | |||
| } | |||
| function defaultStuffSock(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You don't have anything to stuff into your socks."; | |||
| } else { | |||
| return "You grab " + container.describe(verbose) + " and stuff " + (container.count > 1 ? "them" : "it") + " into your sock!"; | |||
| } | |||
| } | |||
| function defaultDumpShoe(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "Your shoes are empty, silly."; | |||
| } else { | |||
| return "You shake out your shoes, dumping " + container.describe(false) + " onto the ground."; | |||
| } | |||
| } | |||
| function defaultDumpSock(container, macro, verbose) { | |||
| if (container.count == 0) { | |||
| return "You don't have anything to stuff into your socks."; | |||
| } else { | |||
| return "You turn your socks inside-out, dumping " + container.describe(false) + " onto the ground."; | |||
| } | |||
| } | |||
| // EATING | |||
| rules["eat"].push({ | |||
| @@ -75,7 +75,7 @@ | |||
| </div> | |||
| <div id="log-area"> | |||
| <div id="log"> | |||
| <div>Welcome to Stroll 0.5.16</div> | |||
| <div>Welcome to Stroll 0.5.17</div> | |||
| <div><b>This game features 18+ content</b></div> | |||
| <div><a href="https://chemicalcrux.org/stroll">Changelog</a></div> | |||
| <div><a href="https://t.me/joinchat/BSXHzUZmSqc-CXB1khkuYw">Telegram discussion group</a></div> | |||
| @@ -91,6 +91,7 @@ | |||
| <button class="action-part-button" id="action-part-breasts">Breasts</button> | |||
| <button class="action-part-button" id="action-part-tails">Tails</button> | |||
| <button class="action-part-button" id="action-part-souls">Souls</button> | |||
| <button class="action-part-button" id="action-part-shoes">Shoes</button> | |||
| <button class="action-part-button" id="action-part-misc">Misc</button> | |||
| </div> | |||
| @@ -159,7 +160,7 @@ | |||
| </div> | |||
| </div> | |||
| <div class="character-build"> | |||
| <p>Welcome to Stroll 0.5.16</p> | |||
| <p>Welcome to Stroll 0.5.178</p> | |||
| <p><b>This game features 18+ content</b></p> | |||
| <p><a href="https://chemicalcrux.org/stroll">Changelog</a></p> | |||
| <p><a href="https://t.me/joinchat/BSXHzUZmSqc-CXB1khkuYw">Telegram discussion group</a></p> | |||