瀏覽代碼

Manual digestion

tags/v0.7.0
Fen Dweller 7 年之前
父節點
當前提交
bf4e6c753f
共有 2 個文件被更改,包括 134 次插入37 次删除
  1. +126
    -37
      game.js
  2. +8
    -0
      stroll.html

+ 126
- 37
game.js 查看文件

@@ -389,7 +389,11 @@ let macro =
},

"digest": function(owner, organ, time=15) {
setTimeout(function() { owner.digest(owner, organ, time); }, time * 1000 / organ.stages);

// ignore if using manual digestion
if (time != 0) {
setTimeout(function() { owner.digest(owner, organ, time); }, time * 1000 / organ.stages);
}

let count = Math.min(organ.contents.length, organ.maxDigest);

@@ -399,42 +403,7 @@ let macro =
if (container.count == 0)
return;

if (organ.moves != undefined) {
organ.moves.feed(container);
let sound = getSound("insert",container.sum_property("mass"));
let line = organ.describeMove(container);
let summary = summarize(container.sum(),false);
update([line, summary, newline]);
return;
}

let digested = container.sum();
for (let key in victims[organ.name]) {
if (victims[organ.name].hasOwnProperty(key) && digested.hasOwnProperty(key) ) {
victims["digested"][key] += digested[key];
victims[organ.name][key] -= digested[key];
}
}

let sound = getSound("digest",container.sum_property("mass"));

let vol = organ.fill(this,container);
let line = organ.describeDigestion(container, vol);
let lethal = macro.brutality != 0 && (!macro.soulVoreEnabled || organ.name === "souls");
let summary = summarize(container.sum(),lethal);

if (macro.soulVoreEnabled && organ.name != "souls") {
owner.souls.feed(container);
let soulCount = container.sum()["Person"];
let soulLine = "";
if (soulCount > 0)
soulLine = "Their " + (soulCount == 1 ? "soul is" : "souls are") + " trapped in your depths!";
else
soulLine = "No souls, though...";
update([sound,line,summary,soulLine,newline]);
} else {
update([sound,line,summary,newline]);
}
do_digestion(owner, organ, container);

},

@@ -1676,6 +1645,93 @@ function getPrey(region, area, sameSize = false)
return prey;
}

function digest_all(organ) {
let prey = new Container();

for (let i = 0; i < organ.stages; i++) {
prey = prey.merge(organ.contents[i]);
organ.contents[i] = new Container();
}

if (prey.count == 0) {
return;
}
do_digestion(organ.owner, organ, prey);
}

function do_digestion(owner, organ, container) {
if (organ.moves != undefined) {
organ.moves.feed(container);
let sound = getSound("insert",container.sum_property("mass"));
let line = organ.describeMove(container);
let summary = summarize(container.sum(),false);
update([line, summary, newline]);
return;
}

let digested = container.sum();
for (let key in victims[organ.name]) {
if (victims[organ.name].hasOwnProperty(key) && digested.hasOwnProperty(key) ) {
victims["digested"][key] += digested[key];
victims[organ.name][key] -= digested[key];
}
}

let sound = getSound("digest",container.sum_property("mass"));

let vol = organ.fill(owner, container);
let line = organ.describeDigestion(container, vol);
let lethal = macro.brutality != 0 && (!macro.soulVoreEnabled || organ.name === "souls");
let summary = summarize(container.sum(),lethal);

if (macro.soulVoreEnabled && organ.name != "souls") {
owner.souls.feed(container);
let soulCount = container.sum()["Person"];
let soulLine = "";
if (soulCount > 0)
soulLine = "Their " + (soulCount == 1 ? "soul is" : "souls are") + " trapped in your depths!";
else
soulLine = "No souls, though...";
update([sound,line,summary,soulLine,newline]);
} else {
update([sound,line,summary,newline]);
}
}

function digest_stomach() {
digest_all(macro.stomach);
}

function digest_anal() {
digest_all(macro.bowels);
}

function digest_cock() {
digest_all(macro.balls);
}

function digest_breast() {
digest_all(macro.breasts);
}

function digest_unbirth() {
digest_all(macro.womb);
}

function digest_soul() {
digest_all(macro.souls);
}

function digest_bladder() {
digest_all(macro.bladder);
}

function digest_goo() {
digest_all(macro.goo);
}


function feed()
{
let area = macro.handArea;
@@ -3538,6 +3594,11 @@ function startGame(e) {

enable_panel("body");
enable_button("feed");

if (macro.oralDigestTime == 0) {
enable_button("digest_stomach");
}

enable_button("stomp");

if (macro.vomitEnabled) {
@@ -3569,6 +3630,10 @@ function startGame(e) {
if (macro.analVore) {
enable_button("anal_vore");
enable_victim("anal-vore","Anal vore");

if (macro.analDigestTime == 0) {
enable_button("digest_anal");
}
}

if (macro.tailCount > 0) {
@@ -3605,6 +3670,10 @@ function startGame(e) {
enable_growth_part("dick");
enable_growth_part("balls");

if (macro.cockDigestTime == 0) {
enable_button("digest_cock");
}

if (macro.hasSheath) {
enable_victim("sheath-crush","Crushed in sheath");
enable_victim("sheath-absorb","Absorbed by sheath");
@@ -3635,6 +3704,10 @@ function startGame(e) {
if (macro.arousalEnabled) {
enable_victim("femcum-flood","Flooded by femcum");
}

if (macro.unbirthDigestTime == 0) {
enable_button("digest_unbirth");
}
}

if (macro.hasBreasts) {
@@ -3666,6 +3739,10 @@ function startGame(e) {
enable_victim("breast-vore","Stuffed into breasts");

enable_button("breast_vore");

if (macro.breastDigestTime == 0) {
enable_button("digest_breast");
}
}
}

@@ -3691,6 +3768,10 @@ function startGame(e) {
enable_button("soul_vore");
enable_button("soul_absorb_paw");

if (macro.soulDigestTime == 0) {
enable_button("digest_soul");
}

}

if (macro.stenchEnabled) {
@@ -3737,6 +3818,10 @@ function startGame(e) {
enable_button("bladder_vore");

enable_victim("bladder_vore","Dissolved into piss");

if (macro.bladderDigestTime == 0) {
enable_button("digest_bladder");
}
}
}

@@ -3758,6 +3843,10 @@ function startGame(e) {

if (macro.gooDigestion) {
enable_victim("goo","Absorbed into the goo");

if (macro.gooDigestTime == 0) {
enable_button("digest_goo");
}
}
}



+ 8
- 0
stroll.html 查看文件

@@ -212,12 +212,14 @@

<div class="action-tab" id="actions-body">
<button class="action-button" id="button-action-feed">Eat</button>
<button class="action-button" id="button-action-digest_stomach">Digest</button>
<button class="action-button" id="button-action-chew">Chew</button>
<button class="action-button" id="button-action-vomit">Vomit</button>
<button class="action-button" id="button-action-stomp">Stomp</button>
<button class="action-button" id="button-action-flex_toes">Flex Toes</button>
<button class="action-button" id="button-action-sit">Sit</button>
<button class="action-button" id="button-action-anal_vore">Anal Vore</button>
<button class="action-button" id="button-action-digest_anal">Digest Bowels</button>
<button class="action-button" id="button-action-grind">Grind</button>
</div>

@@ -237,11 +239,13 @@
<button class="action-button" id="button-action-cleavage_absorb">Absorb Cleavage</button>
<button class="action-button" id="button-action-breast_crush">Breast Crush</button>
<button class="action-button" id="button-action-breast_vore">Breast Vore</button>
<button class="action-button" id="button-action-digest_breast">Digest</button>
<button class="action-button" id="button-action-breast_milk">Milk Breasts</button>
</div>

<div class="action-tab" id="actions-vagina">
<button class="action-button" id="button-action-unbirth">Unbirth</button>
<button class="action-button" id="button-action-digest_unbirth">Digest</button>
<button class="action-button" id="button-action-slit_toy">Finger Slit</button>
</div>

@@ -252,11 +256,13 @@
<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-cock_vore">Cock Vore</button>
<button class="action-button" id="button-action-digest_cock">Digest</button>
<button class="action-button" id="button-action-ball_smother">Ball Smother</button>
</div>

<div class="action-tab" id="actions-souls">
<button class="action-button" id="button-action-soul_vore">Soul Vore</button>
<button class="action-button" id="button-action-digest_soul">Digest</button>
<button class="action-button" id="button-action-soul_absorb_paw">Paws</button>
</div>

@@ -276,6 +282,7 @@
<button class="action-button" id="button-action-fart">Fart</button>
<button class="action-button" id="button-action-piss">Piss</button>
<button class="action-button" id="button-action-bladder_vore">Bladder Vore</button>
<button class="action-button" id="button-action-digest_bladder">Digest</button>
<button class="action-button" id="button-action-scat">Scat</button>
</div>

@@ -290,6 +297,7 @@
<button class="action-button" id="button-action-goo_womb_pull">Pull from Womb</button>
<button class="action-button" id="button-action-goo_balls_push">Push to Balls</button>
<button class="action-button" id="button-action-goo_balls_pull">Pull from Balls</button>
<button class="action-button" id="button-action-digest_goo">Digest</button>
</div>

<div class="action-tab" id="actions-misc">


Loading…
取消
儲存