原生js实现多关卡小人推箱子游戏代码

代码语言:html

所属分类:游戏

代码描述:原生js实现多关卡小人推箱子游戏代码

代码标签: 原生 js 多关卡 小人 箱子 游戏 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!doctype html><!--声明当前文档为html文档-->
<html lang="en"><!--语言为英语-->
	<head><!--头部-->
		<meta charset="UTF-8"><!--字符编码:utf-8国际编码  gb2312中文编码-->
		<meta name="Keywords" content="关键词">
		<meta name="Description" content="描述">
		<title>HTML5 canvas小人推箱子小游戏代码</title>
		<style>/*css样式表的衣柜*/
		*{
			margin:0px;
			padding:0px;
		}
		body{
			overflow:hidden;
		}
		.game{
			width:560px;
			margin:50px auto;
		}
		</style>
	</head>
	<body onkeydown="doKeyDown(event)"><!--身体-->
		<div class="game">
			<canvas id="canvas" width="560" height="560"></canvas>
			<div id="msg"></div>
			<input type="button" value="上一关" onClick="NextLevel(-1)">
			<input type="button" value="下一关" onClick="NextLevel(1)">
			<input type="button" value="重玩本关" onClick="NextLevel(0)">
			<input type="button" value="游戏说明" onClick="showHelp()">
		</div>
	
	<script src="//repo.bfw.wiki/bfwrepo/images/tuigame/mapdata100.js"></script>
	<script>
		var can = document.getElementById("canvas");
		var msg = document.getElementById("msg");
		var cxt = can.getContext("2d");
		var w = 35,h = 35;
		var curMap;//当前的地图
		var curLevel;//当前等级的地图
		var curMan;//初始化小人
		var iCurlevel = 0;//关卡数
		var moveTimes = 0;//移动了多少次
		//预加载所有图片
		var oImgs = {
			"block" : "//repo.bfw.wiki/bfwrepo/images/tuigame/block.gif",
			"wall" : "//repo.bfw.wiki/bfwrepo/images/tuigame/wall.png",
			"box" : "//repo.bfw.wiki/bfwrepo/images/tuigame/box.png",
			"ball" : "//repo.bfw.wiki/bfwrepo/images/tuigame/ball.png",
			"up" : "//repo.bfw.wiki/bfwrepo/images/tuigame/up.png",
			"down" : "//repo.bfw.wiki/bfwrepo/images/tuigame/down.png",
			"left" : "//repo.bfw.wiki/bfwrepo/images/tuigame/left.png",
			"right" : "//repo.bfw.wiki/bfwrepo/images/tuigame/right.png",
		}
		function imgPreload(srcs,callback){
			var count = 0,imgNum = 0,images = {};

			for(src in srcs){
				imgNum++;
			}
			for(src in srcs ){
				images[src] = new Image();
				images[src].onload = function(){
					//判断是否所有的图片都预加载完成
					if (++count >= imgNum)
					{
						callback(images);
					}
				}
				images[src].src = srcs[src];
			}
		}
		var block,wall,box,ball,up,down,left,right;
		imgPreload(oImgs,function(images){
			//console.log(images.block);
			block = images.block;
			wall = images.wall;
			box = images.box;
			ball = images.ball;
			up = images.up;
			down = images.down;
			left = images.left;
			right = images.right;
			init();
		});
		//初始化游戏
		function init(){
			//InitMap();
			//DrawMap(levels[0]);
			initLevel();//初始化对应等级的游戏
			showMoveInfo();//初始化对应等级的游戏数据
		}
		//绘制地板
		function InitMap(){
			for (var i=0;i<16 ;i++ )
			{
				for (var j=0;j<16 ;j++ )
				{
					cxt.drawImage(block,w*j.........完整代码请登录后点击上方下载按钮下载查看

网友评论0