Parcourir la source

Adjusted how victims are picked to make it more variable. Added new stomp line.

tags/v0.7.3
Fen Dweller il y a 7 ans
Parent
révision
02386163f5
2 fichiers modifiés avec 68 ajouts et 17 suppressions
  1. +32
    -15
      recursive-desc.js
  2. +36
    -2
      recursive-macro.js

+ 32
- 15
recursive-desc.js Voir le fichier

@@ -1203,21 +1203,6 @@ rules["chew"].push({
caught between two fingers and popped back in to be crunched between molars and swallowed.";
}
});

rules["chew"].push({
"test": function(container, macro) {
return hasOnly(container, ["Person"]) &&
hasExactly(container, "Person", 2) &&
isGory(macro);
}, "desc": function(container, macro, verbose) {
var prey1 = macro.victimsHuman ? new Human(1).describe(verbose) : new Person(1).describe(verbose);
var prey2 = macro.victimsHuman ? new Human(1).describe(verbose) : new Person(1).describe(verbose);
return "Powerful " + macro.jawDesc(true) + " obliterate " + prey1 +"'s body. You toss your head back and swallow their gory remains, your free hand slowly crushing " + prey2 + " like a nut \
in a vice. A heartbeat later, their face is jammed into your bloody throat. A squeeze of your " + macro.jawDesc(true) + " snaps their spine with ease, and their limp body plunges down into \
your churning depths to be destroyed.";
}
});

// STOMPING

rules["stomp"].push({
@@ -1260,6 +1245,38 @@ rules["stomp"].push({
}
});

rules["stomp"].push({
"test": function(container, macro) {
return hasOnly(container, ["Person"]) &&
hasExactly(container, "Person", 1) &&
isFatal(macro);
}, "desc": function(container, macro, verbose) {
return "Your heavy " + macro.footDesc() + " slams down on " + container.describe(verbose) + ", smashing the poor thing like an insect.";
}
});

rules["stomp"].push({
"test": function(container, macro) {
return hasOnly(container, ["Bus"]) &&
hasExactly(container, "Bus", 1) &&
isFatal(macro);
}, "desc": function(container, macro, verbose) {
return "Your heavy " + macro.footDesc() + " slams down on " + container.describe(verbose) + ", smashing the poor thing like an insect.";
}
});


rules["stomp"].push({
"test": function(container, macro) {
return hasOnly(container, ["Person","Car", "Bus"]) &&
hasExactly(container, "Bus", 1) &&
hasLessThan(container, "Car", 10);
}, "desc": function(container, macro, verbose) {
return "You punt a " + container.contents["Bus"].describe(verbose) + ", sending it tumbling down the road into a " + describe_all(container.contents, verbose, ["Bus"]);
}
});


// ANAL VORE

rules["anal-vore"].push({


+ 36
- 2
recursive-macro.js Voir le fichier

@@ -137,6 +137,40 @@ var clusters =
"Macro": 0,
};

var cluster_chances =
{
"Container": 0,
"Person": 0.8,
"Human": 0.8,
"Cow": 0.5,
"Car": 0.5,
"Bus": 0.25,
"Tram": 0.2,
"House": 0.5,
"Barn": 0.1,
"Small Skyscraper": 0.25,
"Large Skyscraper": 0.25,
"Train": 0.1,
"Train Car": 0.05,
"Parking Garage": 0.1,
"Town": 0.1,
"City": 0.2,
"Continent": 0.5,
"Planet": 1,
"Star": 1,
"Solar System": 1,
"Galaxy": 1,
"Cluster": 1,
"Universe": 1,
"Multiverse": 1,
"Soldier": 0,
"Tank": 0,
"Artillery": 0,
"Helicopter": 0,
"Micro": 10,
"Macro": 0,
};

var contents =
{
"Container": [],
@@ -273,10 +307,10 @@ function fill_area(area, weights, variance=0.15)

// the first few ones get a much better shot
while (loopvar > 0) {
if (loopvar <= clusters[candidate.name] && loopvar == 1)
if (loopvar <= clusters[candidate.name] && loopvar == 1 && Math.random() < cluster_chances[candidate.name])
count += 1;
else if (loopvar <= clusters[candidate.name]) {
if (Math.random() < candidate.weight ? 1 : 0 || Math.random() < 0.75) {
if (Math.random() < candidate.weight ? 1 : 0 || Math.random() < 0.75 * cluster_chances[candidate.name]) {
count += 1;
}
}


Chargement…
Annuler
Enregistrer