html5 游戏

10款超炫HTML5游戏游戏源码 棋类游戏在桌面游戏中已经非常成熟,中国象棋的版本也非常多。今天这款基于HTML5技术的中国象棋游戏非常有特色,我们不仅可以选择中国象棋的游戏难度,而且可以切换棋盘的样式。程序写累了,喝上一杯咖啡,和电脑对弈几把吧,相信这HTML5中国象棋游戏的实现算法你比较清楚,可以打开源码来研究一下这款HTML5中国象棋游戏。在线演示源码下载。 阅读详情


html页面源码

<!DOCTYPE html>
<html>
<head>
    <title>坦克大战</title>
    <meta charset="UTF-8">
    <script type="text/javascript" src="../js/tankJS.js"></script>
</head>
<body onkeydown="move()">
    <!--...map...-->
    <h1>HTML经典游戏-坦克</h1>
    <canvas id="map" width="700px" height="500px" style="background-color: black"></canvas>
    <span id="data"></span>
</body>
<script type="text/javascript">
    var canvas = document.getElementById("map");
    var context = canvas.getContext("2d");
    var ico_Color = new Array("#BA9658","#FEF26E");
    var enemy_Color = new Array("#00A2B5","#FEF26E");
    //创建一个子弹数组
    var bullets = new Array();
    //创建一个tank对象
    var ico = new ico(50,250,0,10,ico_Color);
    //创建敌人坦克
    var enemyTanks = new Array();
    for(var i=0;i<3;i++){
       var enemyTank = new EnemyTank((i+1)*50,10,2,5,enemy_Color);
        enemyTanks[i] = enemyTank;
    }
    //刷新map
    function flashMap(){
        //清屏
        context.clearRect(0,0,700,500);
        //绘制用户的坦克
        drawTank(ico);
        //绘制子弹
        drawBullet(bullets);
        //绘制敌人的坦克
        for(var i=0;i<3;i++){
            drawTank(enemyTanks[i]);
        }
    }
     //首次调用
    flashMap();
    function move(){
       var code = event.keyCode;
        switch(code){
            case 87:
                ico.moveUp();
                break;
            case 68:
                ico.moveRight();
                break;
            case 83:
                ico.moveDown();
                break;
            case 65:
                ico.moveLeft();
                break;
            case 74:
                ico.short();
                break;
        }
        flashMap();
    }
    window.setInterval("flashMap()",100);
</script>
</html>

js页面

/**
 * Created with IntelliJ IDEA.
 * User: Administrator
 * Date: 13-7-16
 * Time: 下午3:40
 * To change this template use File | Settings | File Templates.
 */
//创建一个tank类
function Tank(x,y,direct,speed,color){
    this.x=x;
    this.y=y;
    this.color = color;
    this.speed = speed;  //速度
    this.direct = direct;

    this.moveUp = function(){
        this.direct=0;
        this.y-=this.speed;
    }
    this.moveRight = function(){
        this.direct=1;
        this.x+=this.speed;
    }
    this.moveDown = function(){
        this.direct=2;
        this.y+=this.speed;
    }
    this.moveLeft = function(){
        this.direct=3;
        this.x-=this.speed;
    }
}
//定义一个子弹的类
function Bullet(x,y,direct,speed){
    this.x = x;
    this.y = y;
    this.direct = direct;
    this.speed = speed;
    this.timer = null;
    this.isLive = true;
    this.run = function (){
        if(this.x<=0||this.y<=0||this.x>700||this.y>500){
           window.clearInterval(this.timer);
           this.isLive = false;
        } else{
            switch(this.direct){
                case 0:
                    this.y-=this.speed;
                    break;
                case 1:
                    this.x+=this.speed;
                    break;
                case 2:
                    this.y+=this.speed;
                    break;
                case 3:
                    this.x-=this.speed;
                    break;
            }
        }
        var data = document.getElementById("data");
    }
}
//定义玩家坦克
function ico(x,y,direct,speed,color){
    //通过对象冒充达到继承
    this.tank_Tank = Tank;
    this.tank_Tank(x,y,direct,speed,color);
    this.short = function (){
        var bullet = new Bullet(this.x,this.y,this.direct,10);
        bullets.push(bullet);
        bullets[bullets.length-1].timer = window.setInterval("bullets["+(bullets.length-1)+"].run()",50);
    }
}
//定义一个敌人坦克
function EnemyTank(x,y,direct,speed,color){
    this.enemy_Tank = Tank;
    this.enemy_Tank(x,y,direct,speed,color);
}
 //绘制子弹的函数
function drawBullet(bullets){

    for(var i=0;i<bullets.length;i++){
        var bullet = bullets[i];
        data.innerText="n"+bullets.length;
        if(bullet!=null&&bullet.isLive){
            context.fillStyle="#FEF26E";
            switch(bullet.direct){
                case 0:
                    context.fillRect(bullet.x-1,bullet.y-15,2,2);
                    break;
                case 1:
                    context.fillRect(bullet.x+15,bullet.y-1,2,2);
                    break;
                case 2:
                    context.fillRect(bullet.x-1,bullet.y+15,2,2);
                    break;
                case 3:
                    context.fillRect(bullet.x-15,bullet.y-1,2,2);
                    break;
            }
        }
    }
}

//tank绘制函数
function drawTank(tank){
    switch(tank.direct){
        case 0:
        case 2:
            // DED284
            context.fillStyle=tank.color[0];
            //画坦克左边轮子
            context.fillRect(tank.x-10,tank.y-15,5,30);
            //画坦克右边轮子
            context.fillRect(tank.x+5,tank.y-15,5,30);
            //画坦克中间的躯体
            context.fillRect(tank.x-4,tank.y-10,8,20);
            //设置context的颜色
            context.fillStyle=tank.color[1];
            //画坦克中间的圆盖子
            context.beginPath();
            context.arc(tank.x,tank.y,4,0,360,true);
            context.closePath();
            context.fill();
            //画坦克中间的大炮
            context.beginPath();
            context.strokeStyle=tank.color[1];
            context.lineWidth=2;
            context.moveTo(tank.x,tank.y);
            if(tank.direct == 0){
                context.lineTo(tank.x,tank.y-15);
            } else if(tank.direct == 2){
                context.lineTo(tank.x,tank.y+15);
            }
            context.closePath();
            context.stroke();
            break;
        case 1:
        case 3:
            // DED284
            context.fillStyle=tank.color[0];
            //画坦克左边轮子
            context.fillRect(tank.x-15,tank.y-10,30,5);
            //画坦克右边轮子
            context.fillRect(tank.x-15,tank.y+5,30,5);
            //画坦克中间的躯体
            context.fillRect(tank.x-10,tank.y-4,20,8);
            //设置context的颜色
            context.fillStyle=tank.color[1];
            //画坦克中间的圆盖子
            context.beginPath();
            context.arc(tank.x,tank.y,4,0,360,true);
            context.closePath();
            context.fill();
            //画坦克中间的大炮
            context.beginPath();
            context.strokeStyle=tank.color[1];
            context.lineWidth=2;
            context.moveTo(tank.x,tank.y);
            if(tank.direct == 1){
                context.lineTo(tank.x+15,tank.y);
            } else if(tank.direct == 3){
                context.lineTo(tank.x-15,tank.y);
            }
            context.closePath();
            context.stroke();
            break;
    }
}




HTML5-打字游戏 在网上找了一个HTML5的代码,照着敲了一下。发现收获还是蛮大的。而这个代码大多数是使用jq来写的。对于刚学js不久的自己也算是学习jq的一个不错的项目。游戏效果图如下: 这个图是只写好html和css的图: 这两个是写好的代码效果: HTML代码: HTML5金山打字游戏源码 阅读详情

相关推荐

html塔防游戏,HTML5 版塔防游戏

HTML5 版塔防游戏来自老杰的博客,本人很喜欢这款游戏。就转载到苏岳宁博客里,希望更多的朋友看到试玩这款TD游戏吧!下面是游戏进行时的截图:下文来自老杰的博客:———————————————-请用 IE9 / Chrome / Opera 等支持 HTML5 并且有较快的 JavaScript 引擎的浏览器来访问上面的页面。游戏很简单:怪物从地图左上角出现,前往右下角,你的任务是建造炮台或围墙,...

weixin_33315608的博客 1107

30 个纯 HTML5 实现的游戏

作者:Danny Markov 来源:tutorialzin 译者:前端小智 浏览器和 JavaScript 的功能逐年不断的变强变大。曾几何时,任何类型的游戏都需要Flash。但随着 HTML5 发展,HTML5 + WebGL 游戏式就慢慢占领着这个舞台。以下是30款流行的游戏,它们可以在所有现代浏览器中运行,并且只使用web技术构建。 1. HexGL 地址:http://hexgl.bkcore.com/ 类型:街机,赛车 HexGL 是一款基于HTML5,JavaScript和WebGL的快.

粉丝们务必加入微信粉丝群 1万+

自制HTML5游戏《开心消消乐》

自制HTML5游戏《开心消消乐》

yaosichengalpha的博客 1532

html5 游戏营销,HTML5游戏的崛起及营销未来

原标题:HTML5游戏的崛起及营销未来社交媒体游戏通常具有上瘾、吸引人、有趣的一些特点。企业正在使用社交媒体游戏作为一种工具来构建品牌。目前无论是传统500强企业还是互联网小微电商等都在尝试通过社交媒体游戏来吸引目标受众,并且收效可观。在本篇文章里,笔者将带大家了解近年来技术如何发展,社交游戏如何变得更容易与web浏览器集成,以及HTML5游戏对提升社交媒体活动的意义,并且还将向大家介绍几个来自智...

weixin_42507981的博客 170

HTML5塔防游戏

HTML5塔防游戏 html5-tower-defenseHTML5 tower defense项目地址:https://gitcode.com/gh_mirrors/ht/html5-tower-defense 项目简介 HTML5塔防游戏是一个基于HTML5、CSS3和JavaScript开发的塔防游戏。这个游戏的目标是在敌人通过路径到达终点之前建造并升级防御塔,以消灭尽可能多的敌人。 这个...

gitblog_00007的博客 684

html5游戏

话不多说html5 图画板写的一个小游戏 原形为是男人成果30秒 下载地址:http://download.csdn.net/detail/li277680701/3821169 代码 html5 游戏 //定义键盘值 var KEY = { D: 68, W: 87, A: 65, S:83, RIGHT:39, UP:38, LEFT:37, DOWN:40, QUIC

it's a good man 3527

怎样用HTML5 Canvas制作一个简单的游戏

自从我制作了一些HTML5游戏(例如Crypt Run)后,我收到了很多建议,要求我写一篇关于怎样利用HTML5 Canvas制作游戏的入门教程。花了一点时间考虑怎么着手写这篇文章后,我决定先实现一个我觉得最最简单的游戏,然后一行代码一行代码地进行讲解。 让我们开始吧,首先看看game.js,当然你也可以先玩玩这个游戏(译注:附件是游戏源码,用浏览器打开其中的index.html就可以玩了,

Antineutrino的专栏 4万+

python html5游戏_分享八款经典HTML5游戏源码

码农那点事儿关注我们,一起学习进步HTML5因其跨平台性的特质已逐渐成为网络游戏开发的热门新技术。过去,flash多媒体应用可以用来构建线上游戏,也是小游戏的主流形态,但是随着HTML5的到来,改变了线上游戏的构建方法,用HTML5制作游戏相比flash更加灵活方便。你还记得水果忍者吗?尤其在iphone流畅的ios系统下运行起来非常能缓解压力,几乎每个上班族和手机控都装过这个游戏,现在已经将其...

weixin_35212962的博客 2115

html5 游戏制作教程,【整理】一步一步学做HTML5游戏教程

本帖最后由 蓝色力量1221 于 2012-11-29 01:26 编辑游戏源码下载地址:http://l13.yunpan.cn/lk/QMQFfWQjvWGvg该游戏教程主要参考了老外Jason Croucher的博客http://jacebook.co.uk/blog/2010/09/11/html5-writing-a-game/游戏代码也下载自他的博客。本教程主要是分析这个游戏的代码,用...

weixin_29688227的博客 3507

html游戏怎么做,HTML5 制做“游戏”的一个基本流程

怎样用HTML5 Canvas制作一个简单的游戏为了让大家清楚HTML5制作游戏的简单流程,所以先了制作一个非常简单的游戏,来看一看这个过程。游戏非常简单,无非就是英雄抓住怪物就得分,然后游戏重新开始,怪物出现在地图的随机位置,英雄初始化在地图的中间。点击这里,我们可以直接先玩玩这个游戏1. 创建一个Canvas对象这里相信大家都知道,当然代码里面是通过JS动态创建的画布,大家也可以直接在HTML...

weixin_29623481的博客 6267

推荐10个HTML5游戏网站

原文作者Julio Rivera是一名来自纽约市的创意总监和网页设计师,他是Underworld Magazines的创始人。以下是全文。到现在为止,我玩了好几年的在线游戏。我已经看过用Flash和其他软件制作游戏,目前是在用HTML5游戏,只看到一个完整用CSS3做的游戏HTML5正在慢慢成为新的Flash,以前在Flash上很酷的东东,如拖放和下载条等,现在已可以...

824

HTML5编写的小游戏集锦

HTML5 是什么东西?而 HTML5 的优势又在哪里?大家可以回顾之前一篇相关文章了解下 HTML5 知识:《深入分析:Flash VS HTML5到底谁统江山》。现在介绍多款 HTML5游戏,看看 HTML5 到底有什么优势可以吸引我们。下面介绍的所有小游戏都是使用 HTML5+JavaScript 代码编写,大家可以使用 WebKit 浏览器进行游戏。目前,IE 系列中只有 IE 9

刘秋荣-育人之行,静以修身,淡泊明志,宁静致远 1425

html5 游戏 demo 源码,html5游戏 demo

html5 挺火,写个html5游戏玩玩吧,想起cocos2d 貌似各个平台都有,网上找了找,下载了个Cocos2d-html5引擎包。貌似另一个开源引擎lufylegend.js也很好,下次用用lufylegend.js试试。开发环境 chrome Cocos2d-html5(adsw回车) 实现方法如下1.创建好 LayerGradient的子类 (里面放坦克子弹)2.重写 onEnter...

weixin_36227085的博客 416

HTML5翻牌游戏制作实战指南

随着网络技术的发展,HTML5因其跨平台特性和丰富的多媒体支持,在游戏开发领域日渐受到重视。尤其是对于轻量级游戏,如翻牌游戏HTML5提供了一种简洁且高效的方法来进行开发。开发者可以利用HTML5、CSS3以及JavaScript这些前端技术制作出生动的在线互动游戏

weixin_33608403的博客 938

html5游戏发行,UC游戏成国内最大HTML5游戏发行平台

6月26日,国内移动互联网行业的领军企业UC优视在北京召开了UC游戏开放平台战略发布会,正式向媒体掀开了其运营三年的游戏开放平台的面纱。在发布会上,UC优视董事长兼CEO俞永福向媒体透露,依托于UC浏览器U3内核卓越的性能以及UC浏览器对HTML5标准优秀的支持能力,UC游戏已经成为了国内最大的HTML5游戏发行平台。据了解,目前UC游戏旗下拥有目前国内第二大的移动互联网游戏发行平台,其中包括UC...

weixin_28886359的博客 499
上一篇: android学习笔记のAppWidget
android_he
博客等级 码龄15年 3粉丝 10原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值