From 8cf5bf8404bb8e1091a988d7fcd62237d2c757e4 Mon Sep 17 00:00:00 2001 From: kamissokho Date: Wed, 19 Dec 2018 12:10:16 +0100 Subject: [PATCH 1/2] Le premier sprint --- Project.html | 14 +++++++++ Project.js | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 Project.html create mode 100644 Project.js diff --git a/Project.html b/Project.html new file mode 100644 index 0000000..17dfc27 --- /dev/null +++ b/Project.html @@ -0,0 +1,14 @@ + + + + + Project jeu + + + + + + + + + \ No newline at end of file diff --git a/Project.js b/Project.js new file mode 100644 index 0000000..cbd2a6c --- /dev/null +++ b/Project.js @@ -0,0 +1,89 @@ +var canvas = document.getElementById("myCanvas"); +var ctx = canvas.getContext("2d"); +var texture = new Image(); +var santaClause=new Image(); +var dxSanta=0; +var dySanta=0; +var rightPressed = false; +var leftPressed = false; +var downPressed=false; +var upPressed=false; +var intervalBetweenSantaX=0; // la distance entre les Santas 72 +var intervalBetweenSantaY=0; +texture.src = "../Js/texture.jpg"; +santaClause.src="../Js/santa.png"; + + +document.addEventListener("keydown", keyDownHandler, false); +document.addEventListener("keyup", keyUpHandler, false); + +function keyDownHandler(e) { + if(e.keyCode == 39) { + rightPressed = true; + } + else if(e.keyCode == 37) { + leftPressed = true; + } + else if(e.keyCode==38) + { + + upPressed=true; + } + else if(e.keyCode==40) + { + downPressed=true; + } +} + +function keyUpHandler(e) { + if(e.keyCode == 39) { + rightPressed = false; + } + else if(e.keyCode == 37) { + leftPressed = false; + } + else if(e.keyCode==38) + { + upPressed=false; + } + else if(e.keyCode==40) + { + downPressed=false; + } + +} + + +function drawTexture() { + ctx.drawImage(texture, 0,0,800, 600); + +} +function drawSantaClaus() { + ctx.drawImage(santaClause,intervalBetweenSantaX,intervalBetweenSantaY, 80, 100, dxSanta, dySanta, 54, 64); + +} +function draw() { + ctx.clearRect(0, 0, canvas.width, canvas.height); + drawTexture(); + drawSantaClaus() ; + if(rightPressed) { + dxSanta += 2; + } + else if(leftPressed) { + dxSanta -= 2; + } + else if(downPressed) + { + dySanta+=2; + } + else if(upPressed) + { + if(intervalBetweenSantaX==144) + intervalBetweenSantaX=0; + intervalBetweenSantaX=intervalBetweenSantaX+72; + dySanta-=2; + } + + +} +setInterval(draw, 10); \ No newline at end of file From 15c02772ec3507b8055b61e5c7d0929183e09b89 Mon Sep 17 00:00:00 2001 From: kamissokho Date: Sun, 13 Jan 2019 21:33:33 +0100 Subject: [PATCH 2/2] sprint2 --- Project.js | 331 +++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 260 insertions(+), 71 deletions(-) diff --git a/Project.js b/Project.js index cbd2a6c..876f9c4 100644 --- a/Project.js +++ b/Project.js @@ -1,89 +1,278 @@ -var canvas = document.getElementById("myCanvas"); -var ctx = canvas.getContext("2d"); -var texture = new Image(); -var santaClause=new Image(); -var dxSanta=0; -var dySanta=0; -var rightPressed = false; -var leftPressed = false; -var downPressed=false; -var upPressed=false; -var intervalBetweenSantaX=0; // la distance entre les Santas 72 -var intervalBetweenSantaY=0; -texture.src = "../Js/texture.jpg"; -santaClause.src="../Js/santa.png"; - - -document.addEventListener("keydown", keyDownHandler, false); -document.addEventListener("keyup", keyUpHandler, false); - -function keyDownHandler(e) { - if(e.keyCode == 39) { - rightPressed = true; - } - else if(e.keyCode == 37) { - leftPressed = true; - } - else if(e.keyCode==38) - { +window.onload=function () { + var canvas = document.getElementById("myCanvas"); + var ctx = canvas.getContext("2d"); + const texture = new Image(); + const santaClause=new Image(); + const tree=new Image(); + var rightPressed = false; + var leftPressed = false; + var downPressed=false; + var upPressed=false; + texture.src = "../Js/texture.jpg"; + santaClause.src="../Js/santa.png"; + tree.src="../Js/tree.png"; - upPressed=true; - } - else if(e.keyCode==40) - { - downPressed=true; + const debutPositionLeftPressedY=300; + const debutPositionRightPressedY=100; + const debutPositionDownPressed=200; + const debutPositionUpPressed=0; + const bornSupSantaX=144; + + const width=800; + const height=600; + var sapinPosition = [ + [290, 211], + [354, 211], + [475, 204] + ]; // nous allons travallier avec 3 sapin decoré + + function getRandomInt(max) { + return Math.floor(Math.random() * Math.floor(max)); } -} + class Sapin{ + constructor() + { + let indicePosition = getRandomInt(3); + this.sx=sapinPosition[indicePosition][0]; + this.sy=sapinPosition[indicePosition][1]; + this.dx=getRandomInt(width-50); + this.dy=getRandomInt(height-70); + } + + changeSapin() + { + // console.log('in change sapin'); + let indicePosition = getRandomInt(3); + this.sx=sapinPosition[indicePosition][0]; + this.sy=sapinPosition[indicePosition][1]; + this.dx=getRandomInt(width-50); + this.dy=getRandomInt(height-70); + } + draw() { + + ctx.drawImage(tree,this.sx,this.sy, 62,85 ,this.dx, this.dy, 54, 54); + } -function keyUpHandler(e) { - if(e.keyCode == 39) { - rightPressed = false; } - else if(e.keyCode == 37) { - leftPressed = false; + + + class Santa{ + constructor(){ + this.dxSanta=0; + this.dySanta=0; + this.intervalBetweenSantaX=0; // la distance entre les Santas 72 + this.intervalBetweenSantaY=0; + this.widthSanta =70; + this.heightSanta=100; + } + draw() { + ctx.drawImage(santaClause,this.intervalBetweenSantaX,this.intervalBetweenSantaY, this.widthSanta, this.heightSanta, this.dxSanta, this.dySanta, 54, 64); + + } + move(direction) + { + switch (direction) { + case('right'): + { + if(this.intervalBetweenSantaY!=debutPositionRightPressedY) + { + this.intervalBetweenSantaY=debutPositionRightPressedY; + this.intervalBetweenSantaX=0; + }else + { + this.intervalBetweenSantaX=this.intervalBetweenSantaX+72; + } + + if(this.intervalBetweenSantaX==bornSupSantaX) + this.intervalBetweenSantaX=0; + if(this.dxSanta2) // nous allons l'aisser deux pixel pour que Santa apparesse complettement + this.dxSanta -= 2; + break; + } + case('down'): + { + if(this.intervalBetweenSantaY!=debutPositionDownPressed) + { + this.intervalBetweenSantaY=debutPositionDownPressed; + this.intervalBetweenSantaX=0; + }else + { + this.intervalBetweenSantaX=this.intervalBetweenSantaX+72; + } + + if(this.intervalBetweenSantaX==bornSupSantaX) + this.intervalBetweenSantaX=0; + if(this.dySanta-15) + this.dySanta-=2; + break; + } + default: + { + console.log('bla bla bla'); + break; + } + } + + } + + } - else if(e.keyCode==38) - { - upPressed=false; + + + var santa=new Santa(); // create a new santa + var sapin=new Sapin(); + + + + document.addEventListener("keydown", keyDownHandler, false); + document.addEventListener("keyup", keyUpHandler, false); + + function keyDownHandler(e) { + switch(e.keyCode) + { + case(39): + { + rightPressed=true; + break; + } + case(37): + { + leftPressed=true; + break; + } + case(38): + { + upPressed=true; + break; + } + case(40): + { + downPressed=true; + } + default: + { + // console.log('Sorry, Bla bla bla'); + } + } + } - else if(e.keyCode==40) - { - downPressed=false; + + function keyUpHandler(e) { + switch(e.keyCode) + { + case(39): + { + rightPressed=false; + break; + } + case(37): + { + leftPressed=false; + break; + } + case(38): + { + upPressed=false; + break; + } + case(40): + { + downPressed=false; + } + default: + { + // console.log('Sorry, Bla bla bla'); + } + } + } -} + function drawTexture() { + ctx.drawImage(texture, 0,0,800, 600); + } -function drawTexture() { - ctx.drawImage(texture, 0,0,800, 600); + function draw() { + ctx.clearRect(0, 0, canvas.width, canvas.height); // je commence par effacer l'ecran + drawTexture(); + sapin.draw(); -} -function drawSantaClaus() { - ctx.drawImage(santaClause,intervalBetweenSantaX,intervalBetweenSantaY, 80, 100, dxSanta, dySanta, 54, 64); -} -function draw() { - ctx.clearRect(0, 0, canvas.width, canvas.height); - drawTexture(); - drawSantaClaus() ; - if(rightPressed) { - dxSanta += 2; + santa.draw(); + + moveSanta(); } - else if(leftPressed) { - dxSanta -= 2; + function drawChangeObject() { + ctx.clearRect(0, 0, canvas.width, canvas.height); // je commence par effacer l'ecran + drawTexture(); + sapin.changeSapin(); + santa.draw(); + sapin.draw(); + moveSanta(); } - else if(downPressed) - { - dySanta+=2; - } - else if(upPressed) + + + function moveSanta() { - if(intervalBetweenSantaX==144) - intervalBetweenSantaX=0; - intervalBetweenSantaX=intervalBetweenSantaX+72; - dySanta-=2; + if(rightPressed) { + santa.move('right'); + } + else if(leftPressed) { + + santa.move('left'); + + + } + else if(downPressed) + { + santa.move('down'); + } + else if(upPressed) + { + santa.move('up'); + + } + } + setInterval(draw, 10) + setInterval(drawChangeObject,10000); + // setTimeout(drawChangeObject, 10000); + + -} -setInterval(draw, 10); \ No newline at end of file +} \ No newline at end of file