|
- function configure(dict) {
- foot = dict.foot;
-
- }
-
- function subset(list1,list2) {
- for (var i = 0; i < list1.length; i++) {
- if (!list2.includes(list1[i])){
- return false;
- }
- }
- return true;
- }
-
- function seteq(list1,list2) {
- return list1.length == list2.length && subset(list1,list2);
- }
-
- function getPreyNames(contents) {
- prey = [];
-
- for (var key in contents) {
- if (contents.hasOwnProperty(key)) {
- prey.push(contents[key].name);
- }
- }
- return prey;
- }
-
- function getPreyCounts(contents) {
- prey = {};
-
- for (var key in contents) {
- if (contents.hasOwnProperty(key)) {
- prey[contents[key].name] = contents[key].count;
- }
- }
-
- return prey;
- }
-
- function containerEat(container,verbose=true) {
- var preyNames = getPreyNames(container.contents);
- var preyCounts = getPreyCounts(container.contents);
- return "";
- }
-
- function personEat(person) {
- if (person.count == 1) {
- if (Math.random() > 0.5)
- return "You hoist " + person.describe() + " into the air and stuff them down your gullet. Delicious!";
- }
- else if (person.count <= 3) {
- if (Math.random() > 0.5)
- return "You reach down with both hands, snagging " + (person.count == 2 ? "two" : "three") + " meals. You savor their taste, " + person.describe() + " slipping past your lips and down your throat, one-by-one.";
- }
- else if (person.count < 5) {
- if (Math.random() > 0.5)
- return "You reach down and snatch up a fistful of snacks, stuffing " + person.count + " people into your maw and swallowing deeply.";
- }
-
- return "";
- }
-
- function personStomp(person) {
- if (person.count == 1) {
- var choice = Math.random();
- if (choice < 0.2)
- return "Your heavy paw smashes a " + person.describe() + " like a bug. Splat.";
- else if (choice < 0.4)
- return "A wayward step obliterates a " + person.describe();
- else if (choice < 0.6)
- return "You lunge at a " + person.describe() + " with your toes outstretched, squashing them flat.";
- }
- else if (person.count <= 3) {
- if (Math.random() > 0.5)
- return "Your paw comes down on " + person.describe() + ". " + (person.count == 2 ? "Both" : "All three") + " crunch beneath your heavy toes.";
- }
-
- return "";
- }
-
- function skyscraperAnalVore(skyscraper,verbose=true,height = 10) {
- if (height < 5000) {
- if (verbose)
- return "You ease yourself down over the skyscraper, spreading your ass wide as you take it to the ground - then, with a powerful clench, snap it from its base. " + describe_all(skyscraper.contents) + " are sealed away in your ass.";
- else
- return "You ease yourself down over the skyscraper, spreading your ass wide as you take it to the ground - then, with a powerful clench, snap it from its base. ";
- } else {
- if (verbose)
- return "You stuff the skyscraper up your ass with ease. Bad luck for " + describe_all(skyscraper.contents) + " inside.";
- else
- return "You stuff the skyscraper up your ass with ease.";
- }
-
- return "";
- }
|