求编程高手给个JS迷宫的代码。

JavaScript018

求编程高手给个JS迷宫的代码。,第1张

以下是我作的迷宫:

我作的只有九格的,不过你可以自己改制成任意多格的迷宫.前提是一定要是用我的6个css样式来布局迷宫.否则会出错.核心的javascript我已经测试过了.没有问题

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312">

<title>无标题文档</title>

<style>

.rb{

border-style:double

border-width:0px

border-color:#000000

border-left-width:1px

border-top-width:1px

}

.rt{

border-style:double

border-width:0px

border-color:#000000

border-left-width:1px

border-bottom-width:1px

}

.lb{

border-style:double

border-width:0px

border-color:#000000

border-right-width:1px

border-top-width:1px

}

.lt

{

border-style:double

border-width:0px

border-color:#000000

border-right-width:1px

border-bottom-width:1px

}

.lr{

border-style:double

border-width:0px

border-color:#000000

border-top-width:1px

border-bottom-width:1px

}

.tb

{

border-style:double

border-width:0px

border-color:#000000

border-left-width:1px

border-right-width:1px

}

</style>

</head>

<body>

<div id="layer1" style="position:absoluteleft:15pxtop:21pxwidth:27pxheight:29pxz-index:1background-color: #FF0000layer-background-color: #FF0000border: 1px none #000000"></div>

<table width="120" height="120" border="0" cellpadding="0" cellspacing="0" style="border-color:#000000border-width:1pxborder-style:solid">

<tr>

<td class="rb"> </td>

<td class="rb"> </td>

<td class="lb"> </td>

</tr>

<tr>

<td class="tb"> </td>

<td class="rt"> </td>

<td class="lb"> </td>

</tr>

<tr>

<td class="rt"> </td>

<td class="lr"> </td>

<td class="lt"> </td>

</tr>

</table>

<script language="javascript">

//得用css来布局迷宫,迷宫的多少行多少列,只要改下面的数据就可以了.不过表格的单元格一定要是40*40

var col=3//列数

var row=3//行数

var i=0//位置数

var player=document.getElementById("layer1")

var td=document.getElementsByTagName("table")[0].getElementsByTagName("td")

document.onkeydown=function (e)

{

e=window.event||e

if(e.keyCode==37)//向下运动

{

if(i%col!=0)//不在最左边

{

if((td[i].className=="lb"||td[i].className=="lt"||td[i].className=="lr")&&(td[i-1].className=="rb"||td[i-1].className=="rt"||td[i-1].className=="lr"))//可以通过

{

player.style.left=parseInt(player.style.left)-40+"px"

i=i-1

}

}

}//向左运动

else if(e.keyCode==38)//向上运动

{

if(i>=col)//不在最上边

{

if((td[i].className=="lt"||td[i].className=="rt"||td[i].className=="tb")&&(td[i-col].className=="tb"||td[i-col].className=="rb"||td[i-col].className=="lb"))//可以通过

{

player.style.top=parseInt(player.style.top)-40+"px"

i=i-col

}

}

}//向上运动

else if(e.keyCode==39)//向右运动

{

if((i%col)!=(col-1))//不在最右边

{

if((td[i].className=="lr"||td[i].className=="rt"||td[i].className=="rb")&&(td[i+1].className=="lb"||td[i+1].className=="lt"||td[i+1].className=="lr"))//可以通过

{

player.style.left=parseInt(player.style.left)+40+"px"

i=i+1

}

}

}//向右运动

else if(e.keyCode==40)//向下运动

{

if(i<=col*(row-1))//不在最下边

{

if((td[i].className=="lb"||td[i].className=="rb"||td[i].className=="tb")&&(td[i+col].className=="tb"||td[i+col].className=="rt"||td[i+col].className=="lt"))//可以通过

{

player.style.top=parseInt(player.style.top)+40+"px"

i=i+col

}

}

}//向下运动

}

</script>

</body></html>

跟你简要说一下我的自学路,以免你走弯路

背景:

有工作,而且很忙;在不影响工作基础上用业余时间鼓捣(经常会因为工作耽搁学习进度);基本没技术背景(初中qbasic、高中pascal半吊子),大学文科,工作也不是搞代码。因此我感觉我的自学路跟你还是挺契合的。

1

两年前的一天,决定要做独立游戏制作人。选定引擎cocos2d,开始学习objective-c语言;(如果你打算只在iOS平台开发可以学obj-c配合cocos2d或者sprite kit;如果打算跨平台就要用cocos2d-x和c++了;当然unity什么的也不错但是我还没尝试过,一直很向往)

2

我跳过了iOS程序开发(似懂非懂看完了斯坦福那一系列的教学视频),结合当时情况直接选择了cocos2d引擎,这时开始接触 @吴一刀 推荐的博客;我主要看的是子龙山人<子龙山人 - 博客园>、Ray Wenderlich<Ray Wenderlich>、Himi<黑米GameDev街区>这些博客里最基本的例子,知易那个以我当时的水平还看不懂。

3

尝试开始设计自己的简单游戏,我做打地鼠!当然比教学例子里的打地鼠复杂多了

4

这个过程中发现自己懂的实在是不够,所以又开啃这本书:Learn cocos2d 2 by Steffen Itterheim &Andreas Low

5

慢慢的发现需要一些趁手的工具和编辑器,并发展出一套自己构建于cocos2d之上的游戏设计架构。我目前的情况是这样:

关卡编辑我使用plist文件配合自己写的类;

sprite sheet使用TexturePacker<TexturePacker>;

动画/UI编辑最初自己手写太累,后来选择了cocosbuilder,请注意现在这个软件已经停止维护,转而引导用户使用SpriteBuilder<SpriteBuilder>(域名都做了自动跳转;SpriteBuilder我木有研究过,建议你研究一下)。

粒子编辑我自己还没实际用到,如果真正需要我感觉cocosbuilder的够我用的。//更新:后来用到了ParticleDesigner和cocosbuilder两个软件的粒子编辑混搭

我当时遇到的一个大麻烦是如何让cocosbuilder、cocos2d版本互相兼容且cocosbuilder无问题。大概情况是这样:cocosbuilder2.1和cocos2d-iphone2.0及2.1版本都不协调怎么办?;What version of Cocosbuilder and Cocos2d-iphone should I choose?

目前我使用的cocosbuilder 2.1版本(渐变层有bug、并且很可惜动画播放完没有触发消息的机制,我只好把每个动画时长都手动记录一下自己处理)

======3月12日更新======

在 @GarfieldKwong 指点下发现这个版本动画播放完是可以触发消息机制的,更高级版本3.x支持的效果应该是在动画中就加入callback的关键帧

新技能get√

具体代码可见下面学习案例的第一个例子里Explosion部分

=====================

cocosbuider的学习可以看两个例子Creating a Game with CocosBuilder;Introduction to CocosBuilder;然后就是多用多尝试。

6

整个学习过程要学会查资料、学会寻求帮助,我主要用的stackoverflow(话说刚刚发现stackoverflow的reputation喜过15,终于可以投票了:)

在学习过程中得到了子龙山人(我认为本尊是这位 @屈光辉 )、LearnCocos2d作者Steffen、 @kubisoft 以及众多网上朋友的帮助,再次表示感谢。

7

硬件及开发者资格:看完c++开始看obj-c,这个过程一直是使用的vmware虚拟机安装的mac系统写程序;然后入手一个最便宜的mac pro、以及iPhone,尝试玩各种游戏;从看c++开始大约过了1年半(已经有非常简陋的游戏demo)才真正购入iOS开发者资格并开始真机测试。

8

尝试过的一些其他工具、各种弯路和坑、以及发散内容:

可以拖拽方式写代码的stencyl <Stencyl: Make iPhone, iPad, Android &Flash Games without code>;

最初学的不是ojc-c而是谭浩强老师的c++程序设计(虽然有人不喜谭老师,但那书是中文的让我对面对对象程序设计有一些初步的概念,再看英文的obj-c不至于太摸不着头脑,反正手头正好有这么一本买了6年没看的c++。。。);

尝试过<Tiled Map Editor>但自己目前的坑没有用到;

尝试过一点物理引擎和粒子,但自己目前的坑没有用到;现在粒子用到了,做了火焰等效果,也挺美的;但是一定要注意CPU占用优化,内存方面我最低支持4S没遇到大问题

学习音乐制作,这个我小时候学琴一直也喜欢音乐所以有一点点底子,如果没有基础可能上手有门槛;开始用的软件LMMS,但是音源插件在64位系统的问题我一直没解决掉时间精力也不多,所以是暂时停滞了;最近发现Garage Band可能也可以写歌;另外还试过一个很有历史的微软的音乐自动编辑器,很好玩,用来做背景音乐也不错。

入手手绘板学画画(这中间纠结了好久才决定用位图不用矢量图),如果你能找到热爱游戏的美术同学一起搞那最好不过。但是我一直对画画心痒难搔。。。所以入了这个深坑,晒一晒:

转载

z

问题一:怎样制作一款游戏? 开发大型游戏需要下列工具:1.需要语言编译器:用于程序的编写与代码的翻译。

2.地图编辑器:用于地图的设置和关卡的设置。

3.脚本编辑器:用于游戏脚本的编写。

4.游戏开发引擎:好的引擎可以开发出好的游戏(包括图象引擎、物理引擎等)。

5.美工的图片动画处理工具:用于游戏图片CG处理。

6.音乐编辑器:用于游戏的音乐编辑。

2、3、4、5都是可以用1来编写的,但一般软件公司都会有自己的一套现成的(或购买或自行开发的)。

开发大型游戏1个人是很难完成任务的。

问题二:怎么制作一款游戏或软件?能用手机制作吗?求详细过程与图解! 完全可以

问题三:怎样能自己制作一个游戏 flash游戏制作软件[email protected] @.exe

制作入门wenku.baidu/...e=view

或wenku.baidu/...e=view

比较简单的示例:小游戏中的:只有这一关、捕捉红按钮、走迷宫、接水管一类的,一些小游戏网站都有,可以下载来用制作软件打开照着编出来的样子去模仿。

慢慢学吧,相信您能制作的不错,如果可以大家可以分享下哦

问题四:怎么制作一款手机游戏 楼主你好:

从题目看,你是想制作一款 游戏,但是我要告诉你的是,一个人完成一款游戏的概率是0.0000001%(哈哈,夸张了一点),游戏不是一个人能完成的。任何一款游戏制作软件要想很好的应用它,都是需要专业的指导和不断的针对练习的。

好了,让我来介绍下游戏制作里会用到哪些制作软件吧。

游戏制作至少要有,游戏建模和游戏程序编写。

3D游戏建模:要会3d *** ax或maya

游戏编程的话你要会一门编程语言,一般是C++,C++大学有学,但不教怎么做游戏。培训学校有教游戏编程的专业。当然有兴趣,可以看看这几本书:《C++Primer》,《windows游戏编程大师技巧》,《3D游戏编程大师技巧》,还有数据结构,算法,DirectX 和OpenGL。

最后说一句,游戏不是一个人做的。

如果你对游戏制作有兴趣,又不知道怎么涉足的话,可以点阅博思游戏教育的官方网站,也可以关注我们的新浪微博,微博ID:博思游戏教育基地”,相信你会有更多的收获。

问题五:游戏是怎么做出来的,一个人能做吗? 游戏的开发是一个团队来研发的,不是一个人能完成的,他需要前期的策划师,原画师和游戏美工师,程序员整个一个团队研发的。

问题六:怎么样才能做一个单机的游戏? 你一个人的话 不要学编程了,也不要学美术了。都来不及了。如果你没有基础的话。最简单的就是从游戏引擎开始,unty3d去下一个,然后去官网上找一个小游戏,跟着教程一步丹步走。比如下雨的程序不会做,就不要让你的游戏下雨,不会爆炸特效就不要让你的游戏爆炸。关键是要有一个好的想法。美术的话 ,画不出来就找别人画好的直接用。实在不行 画成火柴人那种可以把,最好避开动作类 角色扮演类 这类游戏,因为还需要动画,一开始给自己一个简单的目标,比较一个坦克 键盘控制左右移动 去攻击另外一个,等你能熟练完成再去考虑 坦克票不漂亮等问题。 有毅力的话你一定会成功3年连学带做 自己是可以做一款 非常不错的游戏的。如果没毅力 一辈子也做不出来。

问题七:怎样才能做一个简单的小游戏? 可以用Flash

即可以制作动画,也可以制作游戏。从网上下载软件就行

问题八:怎么制作一个网页游戏 一、简单的程序框架。

webgame程序构成:

三大部分。

第一是数据流程。第二是程序。第三是美术。

其中,数据流程包括了功能。也只有在功能中才能体现数据流程。

数据流程相当的麻烦,后面再讨论。

比如最简单的卖买产品。

要实现这个功能。

那么需要有产品基础表、产品详细表、商店表、背包表。如果扩展性更强,相应的双表是少不不了的。

表的问题都简单了。关键是这个物品有什么用。这样物品的来源,一大堆数据,物品的走向,又是一大堆数据。

最后,这些数据得绕成一个圈。

绕圈是一件困难的事情。特别是功能和道具多了起来的时候。难度是2的n次方。

美术:

UI。简洁漂亮的界面总会有好处。

小图标。道具,地图,装备。一类至少10个吧?大体上百把个是需要的。

程序分5个部分:

服务器定时器。(C语言或自己设定服务器)定时循环执行某一段代码。而这段代码主要是根据数据库的数据进行更新。这个可以找个C语言程序员来做。对于C语言程序员来讲,这个功能是相当的简单。当然,具体的处理数据的判断和操作数据库,需要你自己写。让C语言程序员给你段标准代码就行了。完全支持sql语句的。

功能页面、功能函数。主要就是数据存取,判断,数据走向。

ajax函数。(可选)某些需要伪即时的功能要用到。

javascript函数。(可选)模拟客户端的数据计算。也就是webgame的与时间相关的数据。分为两部分。一部分是真实数据,是由服务器端的定时器计算的。另一部分是只有初始值,客户端显示用的。不需要即时同步,仅仅需要模拟同步就行。

数据库。一大堆基础数据表和详细数据表。基础数据表:比如等级1到等级100的用户的属性初始值。详细数据表:每个用户的具体属性。

二、一个详细的例子。

单纯的讨论数据流程是件痛苦的事情。

讨论程序而不给代码也是比较痛苦。

这里用的是php+mysql的。

那就按一个超简单的webgame的方式来讨论。配上适当的代码。应该有所帮助。不足的地方也请大家指出,对我个人也是帮助。

我们不去考虑游戏的可玩性,数值平衡等等问题。我们先只考虑一个简单例子的实现。

那么一个webgame的基本内容需要些什么呢?

数据库:玩家、地图、城市、建筑、武器、士兵。

功能:登陆、升级、个人战斗、士兵之间的战斗、与城市的战斗、修建建筑、打造武器、买卖道具。

(注意:每一个功能,必然对应1个或多个数据表。上面数据库中所列的只是基础中的基础。)

首先是地图、城市、建筑。

这里认为,地图可以有多张,城市在地图上,建筑在城市内。

地图表

Map :Map_ID ,X坐标, Y坐标,City_ID(城市ID),描述。

其中Map_ID是指地图的id。不是自动编号。一张地图就是一个Map_ID,可以重复。

城市表

City:City_ID,城市名字,城市所有人,城市等级,城市资源,描述。

建筑表

Build:ID,City_ID,建筑名称,建筑等级,建筑功能。

其中,地图表确定城市的位置,城市表确定城市的相关数据以及所有人,建筑表内的多条信息属于某一个城市。

建表后,显示出来。

一个for循环。把地图表整个取出来就ok。

跟普通网站的新闻列表没太大区别。不同的是,你需要取得X坐标和Y坐标定位。可以用tabel也可以用div。

class Map地图类

{

var $Map_ID

function Map_bg_css($Map_ID) {

$this->Map_ID = $Map_ID

mysql_select_db($db_name,$link)

$sql=”select *......>>

问题九:游戏如何制作 我想制作一个属于自己的传奇游戏 用什么软件可以制作 dream maker 试一下这个软件吧

问题十:怎样可以看到一个游戏的设计程序 你可以花钱买通游戏的开发人员,呵呵,开个玩笑,一般游戏或其他如软件编译过后都是要经过混淆和加密的,即使你用了反射工具查看页不一定看的到它的源代码。如果真想看,就成为那个公司的员工,你就可以看了。