|
|
|
@@ -19,6 +19,7 @@ var things = |
|
|
|
clusters: 5, |
|
|
|
cluster_chances: .8, |
|
|
|
contents: [], |
|
|
|
descriptor: ["a person", "people"] |
|
|
|
}, |
|
|
|
"Human": { |
|
|
|
"Human": Human, |
|
|
|
@@ -27,6 +28,7 @@ var things = |
|
|
|
clusters: 5, |
|
|
|
cluster_chances: .8, |
|
|
|
contents: [], |
|
|
|
descriptor: ["a person", "people"] |
|
|
|
}, |
|
|
|
"Cow": { |
|
|
|
"Cow": Cow, |
|
|
|
@@ -35,6 +37,7 @@ var things = |
|
|
|
clusters: 15, |
|
|
|
cluster_chances: .5, |
|
|
|
contents: [], |
|
|
|
descriptor: ["a cow", "cattle"] |
|
|
|
}, |
|
|
|
"Micro": { |
|
|
|
"Micro": Micro, |
|
|
|
@@ -43,6 +46,7 @@ var things = |
|
|
|
clusters: 50, |
|
|
|
cluster_chances: 1, |
|
|
|
contents: [[]], |
|
|
|
descriptor: ["a micro", "micros"] |
|
|
|
}, |
|
|
|
"Macro": { |
|
|
|
"Macro": Macro, |
|
|
|
@@ -51,6 +55,7 @@ var things = |
|
|
|
clusters: 0, |
|
|
|
cluster_chances: 0, |
|
|
|
contents: [[]], |
|
|
|
descriptor: ["a smaller macro", "smaller macros"] |
|
|
|
}, |
|
|
|
//Vehicles |
|
|
|
"Empty Car": { |
|
|
|
@@ -60,6 +65,7 @@ var things = |
|
|
|
clusters: 2, |
|
|
|
cluster_chances: .3, |
|
|
|
contents: [[]], |
|
|
|
descriptor: ["a parked car", "parked cars"] |
|
|
|
}, |
|
|
|
"Car": { |
|
|
|
"Car": Car, |
|
|
|
@@ -68,6 +74,7 @@ var things = |
|
|
|
clusters: 4, |
|
|
|
cluster_chances: .5, |
|
|
|
contents: [["Person",1,4]], |
|
|
|
descriptor: ["a car", "cars"] |
|
|
|
}, |
|
|
|
"Bus": { |
|
|
|
"Bus": Bus, |
|
|
|
@@ -76,6 +83,7 @@ var things = |
|
|
|
clusters: 1, |
|
|
|
cluster_chances: .25, |
|
|
|
contents: [["Person",2,30]], |
|
|
|
descriptor: ["a bus", "busses"] |
|
|
|
}, |
|
|
|
"Tram": { |
|
|
|
"Tram": Tram, |
|
|
|
@@ -84,6 +92,7 @@ var things = |
|
|
|
clusters: 1, |
|
|
|
cluster_chances: .2, |
|
|
|
contents: [["Person",10,50]], |
|
|
|
descriptor: ["a tram", "trams"] |
|
|
|
}, |
|
|
|
"Train": { |
|
|
|
"Train": Train, |
|
|
|
@@ -109,6 +118,7 @@ var things = |
|
|
|
clusters: 5, |
|
|
|
cluster_chances: .5, |
|
|
|
contents: [["Person",0,8],["Empty Car",0,2]], |
|
|
|
descriptor: ["house", "houses"] |
|
|
|
}, |
|
|
|
"Business": { |
|
|
|
"Business": Business, |
|
|
|
@@ -117,6 +127,7 @@ var things = |
|
|
|
clusters: 5, |
|
|
|
cluster_chances: .25, |
|
|
|
contents: [["Person",0,30],["Car",0,5],["Empty Car",0,20]], |
|
|
|
descriptor: ["a local business", "buildings"] |
|
|
|
}, |
|
|
|
"Barn": { |
|
|
|
"Barn": Barn, |
|
|
|
@@ -125,6 +136,7 @@ var things = |
|
|
|
clusters: 1, |
|
|
|
cluster_chances: .1, |
|
|
|
contents: [["Person",0,2],["Cow",30,70]], |
|
|
|
descriptor: ["a barn", "barns"] |
|
|
|
}, |
|
|
|
"Small Skyscraper": { |
|
|
|
"Small Skyscraper": SmallSkyscraper, |
|
|
|
@@ -133,6 +145,7 @@ var things = |
|
|
|
clusters: 2, |
|
|
|
cluster_chances: .25, |
|
|
|
contents: [["Person",150,750],["Empty Car",10,50]], |
|
|
|
descriptor: ["a small skyscraper", "small skyscrapers"] |
|
|
|
}, |
|
|
|
"Large Skyscraper": { |
|
|
|
"Large Skyscraper": LargeSkyscraper, |
|
|
|
@@ -141,6 +154,7 @@ var things = |
|
|
|
clusters: 1, |
|
|
|
cluster_chances: .25, |
|
|
|
contents: [["Person",500,1500],["Empty Car",20,100]], |
|
|
|
descriptor: ["a large skyscraper", "large skyscrapers"] |
|
|
|
}, |
|
|
|
"Parking Garage": { |
|
|
|
"Parking Garage": ParkingGarage, |
|
|
|
@@ -745,6 +759,31 @@ function copy_defaults(self,proto) { //loads the values defined in things into t |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
function defaultDescribe(verbose=true, parent){ |
|
|
|
if (verbose) { |
|
|
|
if (parent.count <= 3) { |
|
|
|
var list = []; |
|
|
|
for (var i = 0; i < parent.count; i++) { |
|
|
|
list.push(parent.describeOne(parent.count <= 2)); |
|
|
|
} |
|
|
|
if (parent.contents == []){ |
|
|
|
return merge_things(list); |
|
|
|
} else { |
|
|
|
return merge_things(list) + " with " + describe_all(parent.contents,verbose) + " inside"; |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (parent.contents == []){ |
|
|
|
return parent.count + " " + things[parent.name].descriptor[1]; |
|
|
|
} else { |
|
|
|
return parent.count + " homes with " + describe_all(parent.contents,verbose) + " inside"; |
|
|
|
} |
|
|
|
} |
|
|
|
} else {//not verbose |
|
|
|
return (parent.count > 1 ? parent.count + " " + things[parent.name].descriptor[1] : things[parent.name].descriptor[0]); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
function Container(contents = []) { |
|
|
|
this.name = "Container"; |
|
|
|
|
|
|
|
@@ -792,26 +831,14 @@ function Person(count = 1) { |
|
|
|
}; |
|
|
|
|
|
|
|
this.describe = function(verbose=true) { |
|
|
|
if (verbose) { |
|
|
|
if (count <= 3) { |
|
|
|
var list = []; |
|
|
|
for (var i = 0; i < count; i++) { |
|
|
|
list.push(this.describeOne(this.count <= 2)); |
|
|
|
} |
|
|
|
return merge_things(list); |
|
|
|
} else { |
|
|
|
return this.count + " people"; |
|
|
|
} |
|
|
|
} else { |
|
|
|
return (this.count > 1 ? this.count + " people" : "a person"); |
|
|
|
} |
|
|
|
}; |
|
|
|
return defaultDescribe(verbose, this); |
|
|
|
} |
|
|
|
|
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
function Human(count = 1) { |
|
|
|
this.name = "Person"; |
|
|
|
this.name = "Human"; |
|
|
|
|
|
|
|
copy_defaults(this,new DefaultEntity()); |
|
|
|
|
|
|
|
@@ -826,20 +853,8 @@ function Human(count = 1) { |
|
|
|
}; |
|
|
|
|
|
|
|
this.describe = function(verbose=true) { |
|
|
|
if (verbose) { |
|
|
|
if (count <= 3) { |
|
|
|
var list = []; |
|
|
|
for (var i = 0; i < count; i++) { |
|
|
|
list.push(this.describeOne(this.count <= 2)); |
|
|
|
} |
|
|
|
return merge_things(list); |
|
|
|
} else { |
|
|
|
return this.count + " people"; |
|
|
|
} |
|
|
|
} else { |
|
|
|
return (this.count > 1 ? this.count + " people" : "a person"); |
|
|
|
} |
|
|
|
}; |
|
|
|
return defaultDescribe(verbose, this); |
|
|
|
} |
|
|
|
|
|
|
|
return this; |
|
|
|
} |
|
|
|
@@ -1077,7 +1092,7 @@ function House(count = 1) { |
|
|
|
this.describeOne = function(verbose=true) { |
|
|
|
var size = random_desc(["little","two-story","large","well-built","run-down","cheap",], (verbose ? 0.5 : 0)); |
|
|
|
var color = random_desc(["blue","white","gray","tan","green","wooden","brick"], (verbose ? 0.5 : 0)); |
|
|
|
var name = random_desc(["house","home","house","house","house","trailer"], 1); |
|
|
|
var name = random_desc(["house","home","duplex","house","house","trailer"], 1); |
|
|
|
return merge_desc([size,color,name]); |
|
|
|
}; |
|
|
|
|
|
|
|
|