|  |  | @@ -2,8 +2,41 @@ var baseHeight = 3.65; | 
		
	
		
			
			|  |  |  | var baseMass = 1360; | 
		
	
		
			
			|  |  |  | var scale = 1; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var people = 0; | 
		
	
		
			
			|  |  |  | var cars = 0; | 
		
	
		
			
			|  |  |  | var victims = | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | "Person": 0, | 
		
	
		
			
			|  |  |  | "Car": 0, | 
		
	
		
			
			|  |  |  | "Bus": 0, | 
		
	
		
			
			|  |  |  | "Motorcycle": 0, | 
		
	
		
			
			|  |  |  | "House": 0, | 
		
	
		
			
			|  |  |  | "Train": 0, | 
		
	
		
			
			|  |  |  | "Parking Garage": 0, | 
		
	
		
			
			|  |  |  | "Overpass": 0 | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function getPrey(region, area) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | switch(region) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | case "suburb": return suburbPrey(area); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function suburbPrey(area) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | return fill_area(area, {"Person": 0.5, "House": 0.5, "Car": 0.2}); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function updateVictims(prey) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | var sums = prey.sum(); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | for (var key in sums) { | 
		
	
		
			
			|  |  |  | if (sums.hasOwnProperty(key)) { | 
		
	
		
			
			|  |  |  | victims[key] += sums[key]; | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function scaleAddMass(scale, baseMass, mass) | 
		
	
		
			
			|  |  |  | { | 
		
	
	
		
			
				|  |  | @@ -17,20 +50,19 @@ function feed() | 
		
	
		
			
			|  |  |  | var log = document.getElementById("log"); | 
		
	
		
			
			|  |  |  | var line = document.createElement('div'); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var prey = new Person(Math.round(scale * scale * (Math.random() / 5 + 1))); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | people += prey.count; | 
		
	
		
			
			|  |  |  | var prey = getPrey("suburb", 2*scale*scale); | 
		
	
		
			
			|  |  |  | updateVictims(prey); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | line.innerHTML = prey.eat(); | 
		
	
		
			
			|  |  |  | log.appendChild(line); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var preyMass = prey.sum_property("mass"); | 
		
	
		
			
			|  |  |  | var preyMass = prey.sum_property("mass") * 3; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | scale = scaleAddMass(scale, baseMass, preyMass); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | update(); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | setTimeout(feed, 2500); | 
		
	
		
			
			|  |  |  | setTimeout(feed, 2000); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function stomp() | 
		
	
	
		
			
				|  |  | @@ -38,20 +70,19 @@ function stomp() | 
		
	
		
			
			|  |  |  | var log = document.getElementById("log"); | 
		
	
		
			
			|  |  |  | var line = document.createElement('div'); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var prey = new Person(Math.round(scale * scale * (Math.random() / 4 + 1))); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | people += prey.count; | 
		
	
		
			
			|  |  |  | var prey = getPrey("suburb", 2*scale*scale); | 
		
	
		
			
			|  |  |  | updateVictims(prey); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | line.innerHTML = prey.stomp(); | 
		
	
		
			
			|  |  |  | log.appendChild(line); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var preyMass = prey.sum_property("mass")/3; | 
		
	
		
			
			|  |  |  | var preyMass = prey.sum_property("mass"); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | scale = scaleAddMass(scale, baseMass, preyMass); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | update(); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | setTimeout(stomp, 1500); | 
		
	
		
			
			|  |  |  | setTimeout(stomp, 1250); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function anal_vore() | 
		
	
	
		
			
				|  |  | @@ -59,14 +90,15 @@ function anal_vore() | 
		
	
		
			
			|  |  |  | var log = document.getElementById("log"); | 
		
	
		
			
			|  |  |  | var line = document.createElement('div'); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var prey = new Person(Math.round(scale * scale * 3 * (Math.random() / 3 + 1))); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | people += prey.count; | 
		
	
		
			
			|  |  |  | var prey = getPrey("suburb", 4*scale*scale); | 
		
	
		
			
			|  |  |  | if (prey.name == "Person" && prey.count == 1 && scale*scale > 4) | 
		
	
		
			
			|  |  |  | prey = new Car(1); | 
		
	
		
			
			|  |  |  | updateVictims(prey); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | line.innerHTML = prey.anal_vore(); | 
		
	
		
			
			|  |  |  | log.appendChild(line); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | var preyMass = prey.sum_property("mass"); | 
		
	
		
			
			|  |  |  | var preyMass = prey.sum_property("mass") * 5; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | scale = scaleAddMass(scale, baseMass, preyMass); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
	
		
			
				|  |  | @@ -86,13 +118,17 @@ function update() | 
		
	
		
			
			|  |  |  | document.getElementById("height").innerHTML = "Height: " + Math.round(height * 3) + " feet"; | 
		
	
		
			
			|  |  |  | document.getElementById("mass").innerHTML = "Mass: " + Math.round(mass * 2.2) + " pounds"; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | document.getElementById("people").innerHTML = "People: " + people; | 
		
	
		
			
			|  |  |  | document.getElementById("cars").innerHTML = "Cars: " + cars; | 
		
	
		
			
			|  |  |  | for (var key in victims){ | 
		
	
		
			
			|  |  |  | if (victims.hasOwnProperty(key)) { | 
		
	
		
			
			|  |  |  | if (victims[key] > 0) | 
		
	
		
			
			|  |  |  | document.getElementById(key).innerHTML = key + ": " + victims[key]; | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | window.addEventListener('load', function(event) { | 
		
	
		
			
			|  |  |  | setTimeout(feed, 2500); | 
		
	
		
			
			|  |  |  | setTimeout(stomp, 1500); | 
		
	
		
			
			|  |  |  | setTimeout(feed, 2000); | 
		
	
		
			
			|  |  |  | setTimeout(stomp, 1250); | 
		
	
		
			
			|  |  |  | setTimeout(anal_vore, 4500); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | update(); | 
		
	
	
		
			
				|  |  | 
 |