Catbug, Engine, Pickup: use null instead of empty object, cleaner initialization for non-function properties
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmAgFOQACgkQO3+8IhRO Y5hp3A//RkouJWd+FjS7bGr7E2fqVCSBa/v13zOMijoPhMrpZOi6oaTW5CSK4Kl2 WeOfD4dG/6CLFRZ4lLBWsxB9pKdaqVEvUqwi7FQUHqdayE2yPASNRJf3hh6cc7sS kJkyJkwwuWiIRk/yE5CZDUDJC+Hrioe3sIfowwRBk7xWpp1wbLSQ6wJJVjVM9i0N MTQdItnyAOQ4NMIydKc0KDBfRCvTejTsvgr81I+aQY5uPq432v3clGWL/pMia++b QMOOV495dBeHqRKmnrov5t+tFnOaREcApz55pPl/AFkbv5QA1P9ev7DTJPVG5GvQ ABfQxUiyUSdrVlt/7JPNpgt7VA7vKNNfs4dM9y4h4JGgrNfchMhcM7qQ1it1mNnJ YoiXnEofArIos21KW/Q0JPG7D5JZsHn1vIe9YW3LJYxAIBwANrW5t2pKW/+w+Wid oaq55Qz6Gvmtri2E6GPdttbWY1jfaTtetx8M6IIqnEcgEsHHLtuiiMM4RlfgWi/T o9ec5PkmHjQ5XZoZQu6oM8RTeggLAU5oAO9HSaozH8599mD0EWLaddhzd3r4L31e 5KQajSZ4foeTkuZ7p1WeJp0WKRL0n+gkfeuAvm0sVrIaL7UaCdQITpQ23cmzzqcm N7uZUwCoA8Y4vVsVUV2eVG40lja7+b96jCwtllhAPqDW5IXSxsA= =CXuh -----END PGP SIGNATURE-----
M
Catbug.js
→
Catbug.js
@@ -1,11 +1,13 @@
-var catbug = {}; -catbug.x = 45; -catbug.y = 90; -catbug.vX = 0; -catbug.vY = 0; -catbug.frame = 0; -catbug.HP = 3; -catbug.maxHP = 3; +var catbug = { + x: 45, + y: 90, + vX: 0, + vY: 0, + frame: 0, + HP: 3, + maxHP: 3 +}; + catbug.move = function() { this.x += this.vX;
M
Engine.js
→
Engine.js
@@ -100,7 +100,7 @@ {
var i; for (i = 0; i < 10; i++) { - if (!isEmptyObject(stuff[i])){ + if (stuff[i] != null){ screen.drawImage(stuff[i].sprite, stuff[i].x, stuff[i].y);} } }@@ -136,20 +136,6 @@ controller.left = false;
controller.space = false; controller.q = false; -function isEmptyObject(obj) -{ - var name; - for (name in obj) - { - if (obj.hasOwnProperty(name)) - { - return false; - } - } - return true; -} - - function scoreSummary() { gameState.frame = thisFrame;@@ -191,7 +177,7 @@ catbug.vX = 0;
catbug.vY = 0; gameState.points = 0; gameState.threshold = 10; - stuff = [{}, {}, {}, {}, {}, {}, {}, {}, {}, {}]; + stuff = new Array(10); } function loop()@@ -346,4 +332,4 @@ break;
default: break; } -}+}
M
Pickup.js
→
Pickup.js
@@ -43,25 +43,27 @@ }
else genSpeed = Math.floor(Math.random()*10); for (i = 0; i < 10; i++) { - if (!isEmptyObject(stuff[i])) + if (stuff[i] != null) { movePickup(stuff[i]); if (stuff[i].x < -32) { - stuff[i] = {}; + stuff[i] = null; catbug.HP--; } else { - var box = {}; - box.x = stuff[i].x; - box.y = stuff[i].y; - box.w = 36; - box.h = 36; + box = { + x: stuff[i].x, + y: stuff[i].y, + w: 36, + h: 36 + } + if (catbug.isInRect(box)) { getPickup(stuff[i]); - stuff[i] = {}; + stuff[i] = null; } } }@@ -96,4 +98,4 @@ catbug.maxHP++;
catbug.HP = catbug.maxHP; } -}+}