Browse Source

Merge branch 'master' of https://github.com/chemicalcrux/stroll

tags/v0.7.0
Fen Dweller 7 years ago
parent
commit
4902b0cdbc
3 changed files with 40 additions and 2 deletions
  1. +1
    -1
      game.js
  2. +14
    -1
      recursive-desc.js
  3. +25
    -0
      units.js

+ 1
- 1
game.js View File

@@ -141,7 +141,7 @@ let macro =
result = plural ? "toes" : "toe";
break;
case "hoof":
result = plural ? "toes" : "toe";
result = plural ? "hooves" : "hoof";
break;
case "foot":
result = plural ? "toes" : "toe";


+ 14
- 1
recursive-desc.js View File

@@ -681,18 +681,24 @@ function defaultPiss(container, macro, verbose) {
if (macro.maleParts) {
if (container.count == 0) {
return "You sigh with relief as $VOLUME of piss erupts from your " + macro.describeDick + " cock.";
} else if (isSadistic(macro)) {
return "You sigh with relief as $VOLUME of hot, rancid piss erupts from your " + macro.describeDick + " cock, inundating " + container.describe(verbose) + " in a disgusting tide of yellow death."
} else {
return "You sigh with relief as $VOLUME of piss erupts from your " + macro.describeDick + " cock, spraying down " + container.describe(verbose) + " in a shower of golden, musky fluid.";
}
} else if (macro.femaleParts) {
if (container.count == 0) {
return "You sigh with relief as $VOLUME of piss erupts from your " + macro.describeVagina + " slit.";
} else if (isSadistic(macro)) {
return "You sigh with relief as $VOLUME of hot, rancid piss erupts from your " + macro.describeVagina + " slit, inundating " + container.describe(verbose) + " in a disgusting tide of yellow death."
} else {
return "You sigh with relief as $VOLUME of piss erupts from your " + macro.describeVagina + " slit, spraying down " + container.describe(verbose) + " in a shower of golden, musky fluid.";
}
} else {
if (container.count == 0) {
return "You sigh with relief as $VOLUME of piss erupts from between your legs.";
} else if (isSadistic(macro)) {
return "You sigh with relief as $VOLUME of hot, rancid piss erupts from between your legs, inundating " + container.describe(verbose) + " in a disgusting tide of yellow death."
} else {
return "You sigh with relief as $VOLUME of piss erupts from between your legs, spraying down " + container.describe(verbose) + " in a shower of golden, musky fluid.";
}
@@ -715,9 +721,16 @@ function defaultBladderVore(container, macro, verbose) {
}

function defaultScat(container, macro, verbose) {
let sum = get_living_prey(container.sum());
if (macro.scatStorage.amount == 0) {
return "Your bowels are empty.";
} else if (macro.brutality > 0 && macro.scatStorage.victims.amount > 0) {
} else if (isSadistic(macro)) {
let line = "You squat down, letting out a grunt as your rancid bowels force out a $MASS, $LENGTH-long heap of shit. The fatally-pungent scat buries " + container.describe(verbose) + ", ending " + numberRough(sum,"of") + " lives and entombing them in your shit.";
if (macro.scatStorage.victims.count > 0) {
line += " Embedded in the vomit-inducing heap are the mangled, crushed remains of " + listSum(macro.scatStorage.victims.sum()) + ", " + numberRough(get_living_prey(macro.scatStorage.victims.sum()), "of") + " living creatures converted to noxious scat by your disgusting depths.";
}
return line;
} else if (macro.brutality > 0 && macro.scatStorage.victims.count > 0) {
return "You squat down, grunting as your lower guts squeeze out a $MASS, $LENGTH-long log of scat that smothers " + container.describe(verbose) + ". Embedded in the thick, chunky waste are the remains of " + listSum(macro.scatStorage.victims.sum()) + ", now little more than bones and wreckage in your shit.";
} else {
return "You squat down, grunting as your lower guts squeeze out a $MASS, $LENGTH-long log of scat that smothers " + container.describe(verbose);


+ 25
- 0
units.js View File

@@ -4,6 +4,31 @@ function round(number,precision=3) {
return Math.round(number*Math.pow(10,precision)) / Math.pow(10,precision);
}

function numberRough(value,suffix="") {
var scale = Math.floor(Math.log10(value));
switch(scale) {
case 0: return "a single";
case 1: return "dozens " + suffix;
case 2: return "hundreds " + suffix;
default:
let prefix = "";

if (scale % 3 == 1)
prefix = "tens of ";
else if (scale % 3 == 2)
prefix = "hundreds of ";

let order = Math.floor(scale/3);

switch(order) {
case 1: return prefix + "thousands " + suffix;
case 2: return prefix + "millions " + suffix;
case 3: return prefix + "billions " + suffix;
case 4: return prefix + "trillions " + suffix;
case 5: return "uncountably many";
}
}
}
function number(value, type="full", precision=3) {
var val = parseFloat(value);
switch(type) {


Loading…
Cancel
Save