1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
$(function(){
// 1. Délimitation de la zone
$("body").css({width: '1200px', backgroundColor: '#F9BBBB', margin: '10px auto'});
// 2. Elément zoneGame (zone totale du jeux et délimitation de la taille de la zone
$("body").append('<div id="zoneGame"></div>');
$("#zoneGame").css({width: '892px', height: '768px', position: 'relative', margin: '5px auto', backgroundColor: '#000', borderBox: "2px solid #555", opacity: '0.9'});
// 3. Elément Mobile (le canon ami)
$("#zoneGame").append('<div id="canon"></div>');
$("#canon").css({position: "absolute", top: 660, left: 426, width: "40px", height: "24px", backgroundImage: "url('img/ami/40x24/canon.png')"});
// 4. Événements clavier
$(document).keydown(function(e){ // on place un écouteur sur le document
if(e.which == 37){ // touche de déplacement vers la gauche
canonX = parseInt($('#canon').css('left'));
if(canonX > 4){ // extrémité gauche de canon à > que 4
$('#canon').css('left',canonX -= 8); // step de déplacement du canon
}
}
if(e.which == 39){ // touche de déplacement vers la droite
canonX = parseInt($('#canon').css('left'));
if(canonX < 848){ // extrémité gauche de canon à < que 626
$('#canon').css('left',canonX += 8); // step de déplacement du canon
}
}
if(e.which == 17){ // si touche CTRL pressée
tireCanonAmi(); // appel la fonction tireAmi
}
});
//5. Fonction tireLaser (le missile)
function tireCanonAmi(){
$("#zoneGame").append('<div class="tireLaser"></div>'); // on ajoute l'élément
// on écoute la position du canon et on met les coordonnées dans des variables pour ensuite faire partir le missile au bout du canon
var posiCanonLeft = parseInt($('#canon').position().left) + 18; // origine 316 (40-4)/2=18 missile fait 4px en width
// propriétés de l'élément tireLaser
$("#zoneGame .tireLaser").css({width: "4px", height: "16px", position: "absolute", top: 630, left: posiCanonLeft, backgroundImage: "url('img/ami/40x24/missile-ami.png')"});
// animation de l'élément tireLaser
$("#zoneGame .tireLaser").animate({top: '-35px', left: posiCanonLeft}, "slow", 'linear');
}
}); |
Partager