From a34c32375f935f1c4101f96cff3775a6941a39a7 Mon Sep 17 00:00:00 2001 From: Guillaume DE LA RUE Date: Sat, 12 Feb 2011 23:03:47 +0100 Subject: [PATCH] Optimized version --- guiltouf/css/style.css | 36 ++++++++++++++--------- guiltouf/images/sprites/weapon_foray.png | Bin 1880 -> 2443 bytes guiltouf/index.html | 2 ++ guiltouf/js/GameClass.js | 7 +++-- guiltouf/js/LayoutClass.js | 2 ++ guiltouf/js/layouts/PlayerLayer.js | 3 +- 6 files changed, 32 insertions(+), 18 deletions(-) diff --git a/guiltouf/css/style.css b/guiltouf/css/style.css index 7720f89..cff6a7c 100644 --- a/guiltouf/css/style.css +++ b/guiltouf/css/style.css @@ -18,19 +18,14 @@ z-index: 0; } -#ground { - z-index: 30; -} - -#game { - z-index: 60; -} +#ground { z-index: 30; } +#game { z-index: 60; } /* The Ship */ #game #ship { position: absolute; - display: block; + display: none; top:0; left:0; background: transparent; @@ -67,6 +62,21 @@ background: transparent url(/images/sprites/weapon_pilot.png) no-repeat 0 0; } +#ship .ship-foray { + position: absolute; + display: block; + top:30px; + left: 117px; + width: 19px; + height: 33px; + background: transparent url(/images/sprites/weapon_foray.png) no-repeat 0 0; +} + +#ship .ship-foray.right { + background-position: right 0; + left: 24px; +} + #ship .ship-reactor { position: absolute; display: block; @@ -88,17 +98,15 @@ } /* Ennemies */ -#game .ennemy { border: 1px solid blue; } +/*#game .ennemy { border: 1px solid blue; } */ + + +/* The HUD */ #hud { z-index: 90; display: none; } -#ship { - top: 50%; - left: 50%; - background: white; -} /* Debug Panel */ #debug { diff --git a/guiltouf/images/sprites/weapon_foray.png b/guiltouf/images/sprites/weapon_foray.png index 689569fbed4e136c3c1d3ae85c48cf01127829bf..61649c596632667a832039ea9eb3544292387e1c 100644 GIT binary patch literal 2443 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 CMR$+@ diff --git a/guiltouf/index.html b/guiltouf/index.html index 8e7645a..07124fb 100644 --- a/guiltouf/index.html +++ b/guiltouf/index.html @@ -15,6 +15,8 @@
+
+
diff --git a/guiltouf/js/GameClass.js b/guiltouf/js/GameClass.js index 02e6954..7189e58 100644 --- a/guiltouf/js/GameClass.js +++ b/guiltouf/js/GameClass.js @@ -1,5 +1,5 @@ // Init Global vars -var FPS = 30; +var FPS = 40; var Stages = {} ; var Level = 1 ; var Layouts = {} ; @@ -77,6 +77,9 @@ app.prototype.loopAnimation = function() { // -- Build an active elements list this.activeEls = [] ; + // -- Detect collisions + + // -- Search for elements that have to be updated for ( var i in Layouts ) { var _layout = Layouts[i] ; @@ -91,10 +94,10 @@ app.prototype.loopAnimation = function() { var _el = Layouts.Ennemies.els[i] ; if ( ! _el.deleteAfter ) numEnnemies++ ; } - $('#debug').html(numEnnemies) ; for ( var i = numEnnemies-1 ; i < Level + 3 ; i++ ) { Layouts.Ennemies.createRandom() ; } + } // -- Bind Inputs diff --git a/guiltouf/js/LayoutClass.js b/guiltouf/js/LayoutClass.js index af9bcf8..c94389c 100644 --- a/guiltouf/js/LayoutClass.js +++ b/guiltouf/js/LayoutClass.js @@ -132,6 +132,8 @@ Layout.prototype.createObj = function(opts) { backgroundImage: settingsObj.imageSrc ? 'url('+settingsObj.imageSrc+')' : '' } }).appendTo(self.dom) ; + } else { + this.box.show(0) ; } // -- Apply CSS diff --git a/guiltouf/js/layouts/PlayerLayer.js b/guiltouf/js/layouts/PlayerLayer.js index a7a1bb3..50c3f12 100644 --- a/guiltouf/js/layouts/PlayerLayer.js +++ b/guiltouf/js/layouts/PlayerLayer.js @@ -18,7 +18,6 @@ Layouts.Player = new Layout({ // -- KEY up /down if ( Wyrian.input.keyboard.up ) { if ( obj.y > 0 ) obj.y -= obj.parent.settings.speed ; - } if ( Wyrian.input.keyboard.down && (obj.y < (Wyrian.height-obj.height) ) ) { obj.y += obj.parent.settings.speed; @@ -94,7 +93,7 @@ Layouts.Player.bulletLib = function(obj, bulletType) { bulletConf.height = 60 ; bulletConf.speed = 20 ; bulletConf.name = 'bullet' ; - bulletConf.origin.x = obj.x+20+obj.width/2 ; + bulletConf.origin.x = obj.x+18+obj.width/2 ; bulletConf.origin.y = obj.y + 50 - bulletConf.height ; }