|
|
@@ -10,6 +10,7 @@ var things = |
|
|
"Motorcycle": Motorcycle, |
|
|
"Motorcycle": Motorcycle, |
|
|
"House": House, |
|
|
"House": House, |
|
|
"Train": Train, |
|
|
"Train": Train, |
|
|
|
|
|
"Train Car": TrainCar, |
|
|
"Parking Garage": ParkingGarage, |
|
|
"Parking Garage": ParkingGarage, |
|
|
"Overpass": Overpass, |
|
|
"Overpass": Overpass, |
|
|
}; |
|
|
}; |
|
|
@@ -23,7 +24,8 @@ var areas = |
|
|
"Tram": 20, |
|
|
"Tram": 20, |
|
|
"Motorcycle": 2, |
|
|
"Motorcycle": 2, |
|
|
"House": 1000, |
|
|
"House": 1000, |
|
|
"Train": 10000, |
|
|
|
|
|
|
|
|
"Train": 500, |
|
|
|
|
|
"TrainCar": 500, |
|
|
"Parking Garage": 20000, |
|
|
"Parking Garage": 20000, |
|
|
"Overpass": 10000, |
|
|
"Overpass": 10000, |
|
|
}; |
|
|
}; |
|
|
@@ -76,7 +78,8 @@ var masses = |
|
|
"Tram": 10000, |
|
|
"Tram": 10000, |
|
|
"Motorcycle": 200, |
|
|
"Motorcycle": 200, |
|
|
"House": 10000, |
|
|
"House": 10000, |
|
|
"Train": 50000, |
|
|
|
|
|
|
|
|
"Train": 5000, |
|
|
|
|
|
"Train Car": 5000, |
|
|
"Parking Garage": 100000, |
|
|
"Parking Garage": 100000, |
|
|
"Overpass": 100000, |
|
|
"Overpass": 100000, |
|
|
}; |
|
|
}; |
|
|
@@ -476,11 +479,11 @@ function Train(count = 1) { |
|
|
this.count = count; |
|
|
this.count = count; |
|
|
this.contents = {}; |
|
|
this.contents = {}; |
|
|
|
|
|
|
|
|
var amount = distribution(50,250,count); |
|
|
|
|
|
|
|
|
var amount = distribution(1,4,count); |
|
|
this.contents.person = new Person(amount); |
|
|
this.contents.person = new Person(amount); |
|
|
|
|
|
|
|
|
amount = distribution(10,50,count); |
|
|
|
|
|
this.contents.emptycar = new EmptyCar(amount); |
|
|
|
|
|
|
|
|
amount = distribution(1,10,count); |
|
|
|
|
|
this.contents.traincar = new TrainCar(amount); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.describeOne = function(verbose=true) { |
|
|
this.describeOne = function(verbose=true) { |
|
|
@@ -490,6 +493,41 @@ function Train(count = 1) { |
|
|
return "a " + merge_desc([adjective,color,type]); |
|
|
return "a " + merge_desc([adjective,color,type]); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.describe = function() { |
|
|
|
|
|
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 " + this.contents.person.describe() + " in the engine and " + this.contents.traincar.describe() + " attached"; |
|
|
|
|
|
} else { |
|
|
|
|
|
return this.count + " trains with " + this.contents.person.describe() + " in the engine and " + this.contents.traincar.describe() + " attached"; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
this.anal_vore = function() { |
|
|
|
|
|
var cars = (this.contents.traincar.count == 1 ? this.contents.traincar.describe() + " follows it inside" : this.contents.traincar.describe() + " are pulled slowly inside"); |
|
|
|
|
|
return "You snatch up " + this.describeOne() + " and stuff it into your pucker, moaning as " + cars; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
function TrainCar(count = 1) { |
|
|
|
|
|
this.name = "Train Car"; |
|
|
|
|
|
copy_defaults(this,new DefaultEntity()); |
|
|
|
|
|
|
|
|
|
|
|
this.count = count; |
|
|
|
|
|
this.contents = {}; |
|
|
|
|
|
|
|
|
|
|
|
var amount = distribution(10,40,count); |
|
|
|
|
|
this.contents.person = new Person(amount); |
|
|
|
|
|
|
|
|
|
|
|
this.describeOne = function(verbose=true) { |
|
|
|
|
|
adjective = random_desc(["rusty","brand-new"], (verbose ? 0.3 : 0)); |
|
|
|
|
|
color = random_desc(["black","tan","gray"], (verbose ? 1 : 0)); |
|
|
|
|
|
type = random_desc(["train car","passenger train car","freight train car"]); |
|
|
|
|
|
return "a " + merge_desc([adjective,color,type]); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
this.describe = function() { |
|
|
this.describe = function() { |
|
|
if (this.count <= 3) { |
|
|
if (this.count <= 3) { |
|
|
list = []; |
|
|
list = []; |
|
|
@@ -498,10 +536,11 @@ function Train(count = 1) { |
|
|
} |
|
|
} |
|
|
return merge_things(list) + " with " + describe_all(this.contents) + " inside"; |
|
|
return merge_things(list) + " with " + describe_all(this.contents) + " inside"; |
|
|
} else { |
|
|
} else { |
|
|
return this.count + " trains with " + describe_all(this.contents) + " inside"; |
|
|
|
|
|
|
|
|
return this.count + " train cars with " + describe_all(this.contents) + " inside"; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
function House(count = 1) { |
|
|
function House(count = 1) { |
|
|
this.name = "House"; |
|
|
this.name = "House"; |
|
|
copy_defaults(this,new DefaultEntity()); |
|
|
copy_defaults(this,new DefaultEntity()); |
|
|
|