Showing posts with label Video game. Show all posts
Showing posts with label Video game. Show all posts
Tuesday, March 1, 2022
Friday, November 18, 2016
HTML5 & JavaScript: Snake (Alpha Version)
Command:
$ cat html5game_snake.html
Result:
<canvas id="gc" width="640" height="480"></canvas>
<script>
rh=rv=0; //Resolution horizontal and vertical
sx=sy=1; //Snake position x and y
gx=gy=1; //Grid x and y
fps=60; //Frames per second
a=0.1; //Acceleration
v=1 //Velocity
vx=0; //Velocity x
vy=0; //Velocity y
dx=0; //Distance x
dy=0; //Distance y
gd=10; //Grid dimension
kc=39; //Key code
s=0; //Score
window.onload=function() {
c=document.getElementById('gc');
cc=c.getContext('2d');
setInterval(update,1000/fps); //reflesh screen fps times a second
window.addEventListener("keydown", function(e){
console.log(e.keyCode);
kc=e.keyCode;
});
rh=c.width/gd;
rv=c.height/gd;
}
function update(){
v+=a/fps; //Accelerate
if(kc==37){ //left
vx=-v;
vy=0;
} else if (kc==38) { //up
vx=0;
vy=-v;
} else if (kc==39) { //right
vx=v;
vy=0;
} else if (kc==40) { //down
vx=0;
vy=v;
}
dx=vx/fps;
dy=vy/fps;
s+=Math.abs(dx);
s+=Math.abs(dy);
sx+=dx;
sy+=dy;
//Snake boundary condition for x
while(sx<0 || sx>rh){
if(sx<0){
sx+=rh;
} else if(sx>rh){
sx-=rh;
}
}
//Snake boundary condition for y
while(sy<0 || sy>rv){
if(sy<0){
sy+=rv;
} else if(sy>rv){
sy-=rv;
}
}
gx=Math.round(sx);
gy=Math.round(sy);
if (gx < 1){
gx=rh;
} else if (gx>rh) {
gx=1;
}
if (gy < 1){
gy=rv;
} else if (gy>rv) {
gy=1;
}
//Finally Display
cc.fillStyle='black';
cc.fillRect(0,0,c.width,c.height);
//Food
cc.fillStyle='white';
cc.fillRect(gd*Math.round(rh/2),gd*Math.round(rv/2),gd,gd);
//Snake
cc.fillStyle='white';
cc.fillRect(gd*(gx-1),gd*(gy-1),gd,gd);
cc.fillText(v,100,100);
cc.fillText("score:" + Math.round(s),c.width-100,100);
}
</script>
Command:
$ open html5game_snake.html
Result:
$ cat html5game_snake.html
Result:
<canvas id="gc" width="640" height="480"></canvas>
<script>
rh=rv=0; //Resolution horizontal and vertical
sx=sy=1; //Snake position x and y
gx=gy=1; //Grid x and y
fps=60; //Frames per second
a=0.1; //Acceleration
v=1 //Velocity
vx=0; //Velocity x
vy=0; //Velocity y
dx=0; //Distance x
dy=0; //Distance y
gd=10; //Grid dimension
kc=39; //Key code
s=0; //Score
window.onload=function() {
c=document.getElementById('gc');
cc=c.getContext('2d');
setInterval(update,1000/fps); //reflesh screen fps times a second
window.addEventListener("keydown", function(e){
console.log(e.keyCode);
kc=e.keyCode;
});
rh=c.width/gd;
rv=c.height/gd;
}
function update(){
v+=a/fps; //Accelerate
if(kc==37){ //left
vx=-v;
vy=0;
} else if (kc==38) { //up
vx=0;
vy=-v;
} else if (kc==39) { //right
vx=v;
vy=0;
} else if (kc==40) { //down
vx=0;
vy=v;
}
dx=vx/fps;
dy=vy/fps;
s+=Math.abs(dx);
s+=Math.abs(dy);
sx+=dx;
sy+=dy;
//Snake boundary condition for x
while(sx<0 || sx>rh){
if(sx<0){
sx+=rh;
} else if(sx>rh){
sx-=rh;
}
}
//Snake boundary condition for y
while(sy<0 || sy>rv){
if(sy<0){
sy+=rv;
} else if(sy>rv){
sy-=rv;
}
}
gx=Math.round(sx);
gy=Math.round(sy);
if (gx < 1){
gx=rh;
} else if (gx>rh) {
gx=1;
}
if (gy < 1){
gy=rv;
} else if (gy>rv) {
gy=1;
}
//Finally Display
cc.fillStyle='black';
cc.fillRect(0,0,c.width,c.height);
//Food
cc.fillStyle='white';
cc.fillRect(gd*Math.round(rh/2),gd*Math.round(rv/2),gd,gd);
//Snake
cc.fillStyle='white';
cc.fillRect(gd*(gx-1),gd*(gy-1),gd,gd);
cc.fillText(v,100,100);
cc.fillText("score:" + Math.round(s),c.width-100,100);
}
</script>
Command:
$ open html5game_snake.html
Result:
HTML5 Snake Alpha |
Wednesday, November 16, 2016
Saturday, October 29, 2016
Anne The Happie Cat: How to Start Making Games (with No Experience)
Tuesday, June 21, 2016
Tuesday, June 7, 2016
Tuesday, October 27, 2015
Tuesday, October 20, 2015
Wednesday, September 9, 2015
Wednesday, September 2, 2015
Mother 4: Soundtrack
Mother 4 Soundtrack |
Shane Mesa
Hometown Strut
Chattering World
Distant High Life
Boom Town Lounge
Battle Against a Familiar Foe
The Green Run
Super Fresh Sheets
Mom and Cooking and Stuff
Older Sheets by Now
Dog Humor
Useful Vacation
Happy Days
Hometown Laze
Dani Person
Battle Against an Intense Opponent
Battle Against A Slow Foe
The Future's Breath
Battle Against a Dancing Foe
ラベル:
Soundtrack,
Video game,
サウンドトラック
Tuesday, July 28, 2015
Subscribe to:
Posts (Atom)