Bueno, creo que ahora si me dedicare a hacer un juego completo, espero terminar en unos dias y estare por aqui de vuelta con el codigo, no sin antes quiero dejar una modificacion a la bola controlable con el teclado, ahora le puse un personaje, la imagen esta en imageshack, ahi dejo el código por si a alguien le es útil.
Saludos y sigan colaborando con sus proyectos.
<!--
# ------------------------------------------------
# ------------------------------------------------
# CODIGO POR
# ARTURO BERMEJO GUARDALES
# LIMA-PERU
# a.bermejo@hotmail.com
# ------------------------------------------------
# ------------------------------------------------
-->
<html>
<head>
<title>Control</title>
<style type="text/css">
</style>
<script type="text/javascript">
var x=100;
var y=420;
var dy=0;
var dx=0;
var ddy;
var m;
//Funcion de inicio, carga del canvas, del contexto y de las funcines a dibujar
function inicio() {
myCanvas = document.getElementById("miCanvas");
ctx= myCanvas.getContext('2d');
setInterval(image,10);
}
//Funcion imagen buda
function image() {
ctx.clearRect (0,0, 600,500); //refresco de pantalla
//condiciones de recorte
if (dx==0) m=50;
if (dx==-10) m=0;
if (dx==10) m=100;
//mostrar imagen
var imagebudas = new Image();
imagebudas.src = 'http://img440.imageshack.us/img440/7135/budasimage.png';
ctx.drawImage(imagebudas, m, 0, 50, 80, x, y, 50, 80);
//eventos a ejecutarse cada 10ms
x+=dx;
y+=dy;
dy+=ddy;
if (y>=420) dy=0;//limite piso
}
//FUNCIONES PARA CAPTURAR TECLAS Y PRODUCIR EVENTOS
//Para teclas presionadas
document.onkeydown = function (event)
{
var keycode = (window.event||event).keyCode;
tecla=event.keyCode;
if (tecla==39) {dx=10} //derecha
if (tecla==37) {dx=-10} //izquierda
if (tecla==38) {if (y>=420) {dy=-20; ddy=2;}} //arriba
}
//Para teclas soltadas
document.onkeyup = function (event)
{
var keycode = (window.event||event).keyCode;
tecla=event.keyCode;
if (tecla==39) {dx=0} //derecha
if (tecla==37) {dx=0} //izquierda
}
</script>
</head>
<body onload="inicio()">
<h1>Personaje Control</h1>
<p>Por Arturo Bermejo G.</p>
<canvas style="border: 1px solid black" id="miCanvas" width="600px" height="500px">
</canvas>
</body>
</html>