From fd72019909b295ce9eabc086a1770071948e2ca6 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Wed, 25 Apr 2018 15:41:39 -0400 Subject: [PATCH] Player oral/anal prefs better respected now --- alley.js | 37 +++++++++++++++++-------------------- world.js | 3 ++- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/alley.js b/alley.js index 14b0154..d555f52 100644 --- a/alley.js +++ b/alley.js @@ -13,7 +13,6 @@ function KuroLuxray() { this.attacks.push(kuroLick(this)); this.attacks.push(kuroKnead(this)); - //this.attacks.push(kuroSlideSit(this)); this.attacks.push(kuroOralVore(this)); this.attacks.push(kuroAnalSmother(this)); @@ -107,6 +106,9 @@ function kuroPounce(attacker) { requirements: [ function(attacker, defender) { return attacker.flags.state == "chase"; + }, + function(attacker, defender) { + return defender.prefs.prey && defender.prefs.vore.oral > 0; } ], priority: 1, @@ -130,6 +132,9 @@ function kuroSit(attacker) { requirements: [ function(attacker, defender) { return attacker.flags.state == "chase"; + }, + function(attacker, defender) { + return defender.prefs.prey && defender.prefs.vore.anal > 0; } ], priority: 1, @@ -187,7 +192,7 @@ function kuroOralVore(attacker) { } ], priority: 1, - weight: function(attacker, defender) { return 2 - 1.5 * defender.staminaPercentage(); } + weight: function(attacker, defender) { return 2 - 1 * defender.staminaPercentage(); } }; } @@ -207,11 +212,10 @@ function kuroOralSuckle(attacker) { } ], priority: 1, - weight: function(attacker, defender) { return 1; } + weight: function(attacker, defender) { return defender.staminaPercentage() * 1.25; } }; } - function kuroOralSwallow(attacker) { return { attackPlayer: function(defender) { @@ -268,7 +272,7 @@ function kuroAnalVore(attacker) { } ], priority: 1, - weight: function(attacker, defender) { return 1; } + weight: function(attacker, defender) { return 2 - defender.staminaPercentage(); } }; } @@ -581,8 +585,12 @@ function kuroPlayerStomachStruggleUp(attacker) { requirements: [ function(attacker, defender) { return defender.flags.state == "stomach"; - }, function(attacker, defender) { + }, + function(attacker, defender) { return attacker.health > 0 && attacker.stamina > 0; + }, + function(attacker, defender) { + return attacker.prefs.vore.oral > 0; } ], priority: 1, @@ -615,23 +623,12 @@ function kuroPlayerStomachStruggleDown(attacker) { return defender.flags.state == "stomach"; }, function(attacker, defender) { return attacker.health > 0 && attacker.stamina > 0; + }, + function(attacker, defender) { + return attacker.prefs.vore.anal > 0; } ], priority: 1, weight: function(attacker, defender) { return 1; } }; } - - -function template(attacker) { - return { - attackPlayer: function(defender) { - - }, - requirements: [ - - ], - priority: 1, - weight: function(attacker, defender) { return 1; } - }; -} diff --git a/world.js b/world.js index e4e6985..d70740d 100644 --- a/world.js +++ b/world.js @@ -150,7 +150,8 @@ let locationsSrc = [ ], "hooks": [ function() { - startCombat(new KuroLuxray()); + if (player.prefs.prey && (player.prefs.vore.oral > 0 || player.prefs.vore.anal > 0)) + startCombat(new KuroLuxray()); } ] },