浏览代码

Added unbirth/cock vore prefs. Pass/submit only when at negative health now

tags/v0.2.8
Fen Dweller 7 年前
父节点
当前提交
813fcf7266
共有 3 个文件被更改,包括 37 次插入10 次删除
  1. +10
    -3
      customs.js
  2. +11
    -2
      feast.html
  3. +16
    -5
      feast.js

+ 10
- 3
customs.js 查看文件

@@ -568,7 +568,8 @@ function taluthusGrabCockVore(attacker) {
function(attacker, defender) { return isNormal(attacker) && isGrappled(defender) && defender.flags.shrunk != true; },
function(attacker, defender) { return attacker.flags.grappleType == "hands"; }
], conditions: [
function(attacker, defender) { return defender.prefs.prey; }
function(attacker, defender) { return defender.prefs.prey; },
function(attacker, defender) { return defender.prefs.vore.cock; }
],
priority: 1,
weight: function(attacker, defender) { return 1; }
@@ -1013,6 +1014,10 @@ function seliciaTailUnbirth(attacker) {
return ["Selicia grinds your face against her slit, but you stay free of her greedy confines."];
}
},
conditions: [
function(attacker, defender) { return defender.prefs.prey; },
function(attacker, defender) { return defender.prefs.vore.cock; }
],
requirements: [
function(attacker, defender) { return isNormal(attacker) && isGrappled(defender); },
function(attacker, defender) { return attacker.flags.voreType == "tail"; }
@@ -1084,7 +1089,8 @@ function seliciaGrabUnbirth(attacker) {
function(attacker, defender) { return isNormal(attacker) && isGrappled(defender); },
function(attacker, defender) { return attacker.flags.voreType == "stomach"; }
], conditions: [
function(attacker, defender) { return defender.prefs.prey; }
function(attacker, defender) { return defender.prefs.prey; },
function(attacker, defender) { return defender.prefs.vore.cock; }
],
priority: 1,
weight: function(attacker, defender) { return 2; }
@@ -1134,7 +1140,8 @@ function seliciaPinUnbirth(attacker) {
function(attacker, defender) { return isNormal(attacker) && isGrappled(defender); },
function(attacker, defender) { return attacker.flags.voreType == "unbirth"; }
], conditions: [
function(attacker, defender) { return defender.prefs.prey; }
function(attacker, defender) { return defender.prefs.prey; },
function(attacker, defender) { return defender.prefs.vore.cock; }
],
priority: 1,
weight: function(attacker, defender) { return 1; }


+ 11
- 2
feast.html 查看文件

@@ -183,15 +183,24 @@
</li>
<li>
<label for="character-prefs-prey">Player can be eaten</label>
<input type="checkbox" id="character-prefs-prey" name="prefs-prey" checked=true />
<input type="checkbox" id="character-prefs-prey" name="prefs-prey" checked="true" />
</li>
<li>
<label for="character-prefs-vore-cock">Cock vore</label>
<input type="checkbox" id="character-prefs-vore-cock" name="prefs-vore-cock" checked="true" />
</li>
<li>
<label for="character-prefs-vore-unbirth">Unbirth</label>
<input type="checkbox" id="character-prefs-vore-unbirth" name="prefs-vore-unbirth" checked="true" />
</li>
<li>
<label for="character-prefs-scat">Disposal/scat</label>
<input type="checkbox" id="character-prefs-scat" name="prefs-scat"/>
<li>
</li>
<li>
<label for="character-prefs-gore">Gore</label>
<input type="checkbox" id="character-prefs-gore" name="prefs-gore"/>
</li>
<li>
<button type="button" id="start-button">Start</button>
</li>


+ 16
- 5
feast.js 查看文件

@@ -126,7 +126,11 @@ function updateEaten() {
list.removeChild(list.firstChild);
}

struggles = filterValid(currentFoe.struggles, currentFoe, player);
if (player.health > 0)
struggles = filterValid(currentFoe.struggles, currentFoe, player);
else
struggles = [submit(currentFoe)];
for (let i = 0; i < struggles.length; i++) {
let li = document.createElement("li");
let button = document.createElement("button");
@@ -147,7 +151,10 @@ function updateCombat() {
list.removeChild(list.firstChild);
}

playerAttacks = filterValid(player.attacks, player, currentFoe);
if (player.health > 0)
playerAttacks = filterValid(player.attacks, player, currentFoe);
else
playerAttacks = [pass(player)];

if (playerAttacks.length == 0)
playerAttacks = [player.backupAttack];
@@ -343,7 +350,11 @@ function applySettings(settings) {
if (key.match(/prefs/)) {
let tokens = key.split("-");
let pref = player.prefs;
pref = tokens.slice(1,-1).reduce((pref, key) => pref[key], pref);
pref = tokens.slice(1,-1).reduce(function(pref, key) {
if (pref[key] == undefined)
pref[key] = {};
return pref[key];
}, pref);
pref[tokens.slice(-1)[0]] = settings[key];
}
}
@@ -452,9 +463,9 @@ function attackClicked(index) {
update(["You die..."]);
respawn(respawnRoom);
} else if (player.health <= 0) {
update(["You fall to the ground..."]);
update(["You're too weak to do anything..."]);
if (player.prefs.prey) {
changeMode("eaten");
// nada
} else {
killingBlow = attack;
update(["You die..."]);


正在加载...
取消
保存