Hallo,
ich habe mir ein kleines spiel mit canvas programmiert, wo ein Ball immer auf eine Platte und wieder hoch springt, und wenn er halt daneben geht, hat man verloren und muss neu laden. Jetzt meine Frage: was muss ich machen, damit jedes mal, wenn der Ball auf die Platte springt, ein Zähler einen Punkt dazu zählt?
Gerne eine Anleitung oder schon die Lösung
falls ihr das in einer Antwort nicht alles schreiben könnt, ist meine „e-mail [email protected]“
Danke!
PS: das ist wirklich wichtig für mich also bitte keine doofen Kommentare
HTML5 Spiel
var rightdown=false
var leftdown=false
var canvas;
var ctx;
var r=10;
var x=20;
var y=100;
var dx=5;
var dy=8;
var dr=5;
var paddlex;
var paddleh;
var paddlew;
var intervalId;
function dokeydown(evt){
if(evt.keyCode==39) rightdown=true;
else if(evt.keyCode==37) leftdown=true;
}
function dokeyup(evt){
if(evt.keyCode==39) rightdown=false;
else if(evt.keyCode==37) leftdown=false;
}
function initpaddle(){
paddlex=50;
paddleh=10;
paddlew=100;
}
function init(){
canvas=document.getElementById(„mycanvas“);
ctx=canvas.getContext(„2d“);
initpaddle();
intervalId=setInterval(draw,10);
return intervalId;
}
function rect(x,y,w,h){
ctx.beginPath();
ctx.rect(x,y,w,h);
ctx.closePath();
ctx.fill();
}
function clear(){
ctx.clearRect(0,0,1500,1500);
}
function circle(x,y,r){
ctx.beginPath();
ctx.arc(x,y,r,0,Math.PI*2,true);
ctx.fill();
}
function draw(){
clear();
ctx.fillStyle =„midnightblue“;
circle(x,y,r);
if(rightdown&&paddlex<1400)paddlex+=13;
if(leftdown&&paddlex>0)paddlex+=-13;
rect(paddlex,513,paddlew,paddleh)
if(x+dx>1500 || x+dx<5)
dx=-dx;
x+=dx
if(y+dy<0)
dy=-dy;
else if(y>500){
if(x>paddlex && x<paddlex+paddlew)
dy=-dy;
else
clearInterval(intervalId);
if(r>50 || r<6)
dr=-dr
r+=dr;
}
y+=dy
}
document.onkeydown=dokeydown;
document.onkeyup=dokeyup;
Blaball