diff --git a/game.js b/game.js
index 045cbd7..e037c42 100644
--- a/game.js
+++ b/game.js
@@ -442,6 +442,7 @@ function initVictims()
"House": 0,
"Barn": 0,
"Small Skyscraper": 0,
+ "Large Skyscraper": 0,
"Train": 0,
"Train Car": 0,
"Parking Garage": 0,
@@ -475,7 +476,7 @@ function getOnePrey(biome,area)
switch(biome) {
case "suburb": potential = ["Person", "Car", "Bus", "Train", "House"]; break;
case "city": potential = ["Person", "Car", "Bus", "Train", "Tram", "House", "Parking Garage"]; break;
- case "downtown": potential = ["Person", "Car", "Bus", "Tram", "Small Skyscraper", "Parking Garage"]; break;
+ case "downtown": potential = ["Person", "Car", "Bus", "Tram", "Small Skyscraper", "Large Skyscraper", "Parking Garage"]; break;
case "rural": potential = ["Person", "Barn", "House", "Cow"]; break;
}
@@ -549,7 +550,8 @@ function getPrey(region, area)
"Bus": 0.15,
"Tram": 0.1,
"Parking Garage": 0.02,
- "Small Skyscraper": 0.4
+ "Small Skyscraper": 0.4,
+ "Large Skyscraper": 0.1
}; break;
}
}
diff --git a/recursive-macro.js b/recursive-macro.js
index f3ca6d4..bc9f041 100644
--- a/recursive-macro.js
+++ b/recursive-macro.js
@@ -11,6 +11,7 @@ var things =
"House": House,
"Barn": Barn,
"Small Skyscraper": SmallSkyscraper,
+ "Large Skyscraper": LargeSkyscraper,
"Train": Train,
"Train Car": TrainCar,
"Parking Garage": ParkingGarage,
@@ -36,9 +37,10 @@ var areas =
"House": 1000,
"Barn": 750,
"Small Skyscraper": 2500,
+ "Large Skyscraper": 5000,
"Train": 500,
"TrainCar": 500,
- "Parking Garage": 5000,
+ "Parking Garage": 10000,
"Overpass": 10000,
"Town": 1e7,
"City": 1e9,
@@ -61,13 +63,14 @@ var masses =
"House": 10000,
"Barn": 5000,
"Small Skyscraper": 10000000,
- "Train": 5000,
- "Train Car": 5000,
- "Parking Garage": 100000,
- "Overpass": 100000,
+ "Large Skyscraper": 80000000,
+ "Train": 50000,
+ "Train Car": 7500,
+ "Parking Garage": 10000000,
+ "Overpass": 1000000,
"Town": 1,
"City": 1,
- "Continent": 1e12,
+ "Continent": 1e21,
"Planet": 5.972e24,
"Star": 1e40,
"Solar System": 1,
@@ -83,12 +86,13 @@ var clusters =
"Bus": 1,
"Tram": 1,
"Motorcycle": 1,
- "House": 20,
+ "House": 5,
"Barn": 1,
- "Small Skyscraper": 5,
+ "Small Skyscraper": 2,
+ "Large Skyscraper": 1,
"Train": 2,
"Train Car": 1,
- "Parking Garage": 0,
+ "Parking Garage": 1,
"Overpass": 1,
"Town": 1,
"City": 1,
@@ -369,14 +373,6 @@ function Container(contents = []) {
return describe_all(this.contents,verbose)
}
- this.eat = function(verbose=true) {
- var line = containerEat(this,verbose);
- if (line == "")
- return defaultEat(this)(verbose);
- else
- return line;
- };
-
return this;
}
@@ -412,21 +408,6 @@ function Person(count = 1) {
}
}
- this.stomp = function(verbose=true) {
- var line = personStomp(this);
- if (line == "")
- return defaultStomp(this)(verbose);
- else
- return line;
- };
-
- this.eat = function(verbose=true) {
- var line = personEat(this);
- if (line == "")
- return defaultEat(this)(verbose);
- else
- return line;
- };
return this;
}
@@ -784,7 +765,7 @@ function SmallSkyscraper(count = 1) {
return this.count + " small skyscrapers with " + describe_all(this.contents,verbose) + " inside";
}
} else {
- return (this.count > 1 ? this.count + " skyscrapers" : "a skyscraper");
+ return (this.count > 1 ? this.count + " small skyscrapers" : "a small skyscraper");
}
}
@@ -798,6 +779,39 @@ function SmallSkyscraper(count = 1) {
};
}
+function LargeSkyscraper(count = 1) {
+ this.name = "Large Skyscraper";
+ copy_defaults(this,new DefaultEntity());
+ this.count = count;
+ this.contents = {};
+
+ this.addContent("Person",150,1500,count);
+
+ this.addContent("Empty Car",20,100,count);
+
+ this.describeOne = function(verbose=true) {
+ color = random_desc(["blue","white","gray","tan","green"], (verbose ? 0.5 : 0));
+ name = random_desc(["skyscraper","office tower","office building"], 1);
+ return "a " + merge_desc(["towering",color,name]);
+ }
+
+ this.describe = function(verbose = true) {
+ if (verbose) {
+ if (this.count <= 3) {
+ list = [];
+ for (var i = 0; i < this.count; i++) {
+ list.push(this.describeOne(this.count < 2));
+ }
+ return merge_things(list) + " with " + describe_all(this.contents,verbose) + " inside";
+ } else {
+ return this.count + " large skyscrapers with " + describe_all(this.contents,verbose) + " inside";
+ }
+ } else {
+ return (this.count > 1 ? this.count + " large skyscrapers" : "a large skyscraper");
+ }
+ }
+}
+
function ParkingGarage(count = 1) {
this.name = "Parking Garage";
copy_defaults(this,new DefaultEntity());
@@ -886,6 +900,8 @@ function City(count = 1) {
this.addContent("Small Skyscraper",20,100,count);
+ this.addContent("Large Skyscraper",10,50,count);
+
this.addContent("Parking Garage",10,50,count);
this.describe = function(verbose = true) {
diff --git a/stroll.html b/stroll.html
index c16fcc8..8a457bf 100644
--- a/stroll.html
+++ b/stroll.html
@@ -66,7 +66,7 @@
Changelog
Build your Character
+Build your Character (leave blank for defaults)