Parcourir la source

Fixed wolves not struggling. Alpha wolf can fail to charge at you. Fixed player prey not resetting on death. Fixed failed respawn. Fixed Poojawa encounter not appearing

tags/v0.2.8
Fen Dweller il y a 7 ans
Parent
révision
3cb352e546
3 fichiers modifiés avec 29 ajouts et 9 suppressions
  1. +5
    -5
      customs.js
  2. +11
    -1
      feast.js
  3. +13
    -3
      forest.js

+ 5
- 5
customs.js Voir le fichier

@@ -469,7 +469,7 @@ function tranceDigestCrush(predator, damage=75) {
}
],
priority: 1,
weight: function() { return defender.prefs.vore.hard / 0.5; }
weight: function(attacker, defender) { return defender.prefs.vore.hard / 0.5; }
};
}

@@ -1689,11 +1689,11 @@ function PoojawaEncounter() {
startCombat(new Poojawa());
},
conditions: [
function(prefs) {
return prefs.prey;
function(player) {
return player.prefs.prey;
},
function(prefs) {
return prefs.vore.oral > 0 || prefs.vore.tail > 0 || prefs.vore.unbirth > 0;
function(player) {
return player.prefs.vore.oral > 0 || player.prefs.vore.tail > 0 || player.prefs.vore.unbirth > 0;
}
]
});


+ 11
- 1
feast.js Voir le fichier

@@ -523,8 +523,18 @@ function respawn(respawnRoom) {
player.clear();
player.stomach.contents = [];
player.bowels.contents = [];
player.bowels.waste = 0;
player.bowels.digested = [];
player.bowels.fullness = 0;
player.womb.contents = [];
player.womb.waste = 0;
player.womb.digested = [];
player.balls.contents = [];
player.balls.waste = 0;
player.balls.digested = [];
player.breasts.contents = [];
player.breasts.waste = 0;
player.breasts.digested = [];

advanceTime(Math.floor(86400 / 2 * (Math.random() * 0.5 - 0.25 + 1)));
changeMode("explore");
player.health = 100;


+ 13
- 3
forest.js Voir le fichier

@@ -49,6 +49,8 @@ function Wolf() {
this.attacks.push(wolfTackleBite(this));
this.attacks.push(wolfTackleSwallow(this));

this.attacks.push(grappledStruggle(this));

this.backupAttack = pass(this);

this.struggles = [];
@@ -97,6 +99,9 @@ function AlphaWolf() {

this.attacks.push(wolfSwallow(this));

this.attacks.push(grappledStruggle(this));
this.attacks.push(grappledReverse(this));

this.backupAttack = pass(this);

this.struggles = [];
@@ -236,9 +241,14 @@ function wolfTackleSwallow(attacker) {
function wolfSwallow(attacker) {
return {
attackPlayer: function(defender){
attacker.flags.stage = "oral";
changeMode("eaten");
return [attacker.description("The") + " charges, closing the gap in the blink of an eye and jamming your upper body into its massive, drool-slathered maw. <i>Glrp, glllpkh, gulp</i> - and you're in its throat, thrashing and struggling as you plunge into the greedy beast's sloppy stomach."];
let success = statCheck(attacker, defender, "dex") || defender.stamina == 0;
if (success) {
attacker.flags.stage = "oral";
changeMode("eaten");
return [attacker.description("The") + " charges, closing the gap in the blink of an eye and jamming your upper body into its massive, drool-slathered maw. <i>Glrp, glllpkh, gulp</i> - and you're in its throat, thrashing and struggling as you plunge into the greedy beast's sloppy stomach."];
} else {
return [attacker.description("The") + " lunges at you, racing up with jaws splayed wide open. You leap to the side, barely avoiding the greedy beast's maw as it barrels past, growling and snapping in frustration."];
}
},
conditions: [
function(attacker, defender) {


Chargement…
Annuler
Enregistrer