社交媒体 如何在您的HTML5游戏中创建月球着陆器 - 傻瓜

如何在您的HTML5游戏中创建月球着陆器 - 傻瓜

目录:

Anonim

这是最古老的游戏类型之一。基本的想法是在没有任何气氛的情况下复制你的HTML5游戏的星球着陆。阿波罗号宇航员的燃料数量有限,可以减缓飞行的航天器的速度,并将其安全地带到地面。这个游戏是这个主题的变化。

月球着陆器游戏的本质是推力和重力之间的相互作用。游戏很大程度上依赖于addVector()方法。重力会使每个框架产生一个小的向下的推力,这可以通过箭头键的推力来抵消。

<! --1 - >

游戏提供四个不同的着陆器图像(提供用户正在使用推力的反馈),只需根据需要将其与setImage()方法交换即可。

游戏冲突

这个游戏最有趣的部分是着陆程序。普通的碰撞程序不足以处理这种类型的碰撞,因为只有在许多条件成立的情况下着陆才被认为是安全着陆。检查多个条件的最简单的方法是深度嵌套的if结构,如下所示:

tLander。 checkLanding = function(){if(this。falling){if(this。y> 525){if(this。x platform。x - 10){if(this。dx - 。2){if(this。dy < 2){this。 (0)setSpeed;这个。下降=错误;消息=“很好的着陆!”;}其他{消息=“太多的垂直速度”;} //结束如果}其他{消息=“太快到左”;} //结束如果}其他{消息=“太快如果} //结束'x太大'如果} //结束'x太小'如果} //结束'y不够大'如果} //结束'我们在下降吗? 'if} // check checkLanding

当你同时检查几个条件时,最好为每个条件创建一个单独的if语句。将每个if语句放在下一个内部,因此代码中嵌套最深的部分表示成功。

  1. 确定你是否下降。

    创建了一个名为“下降”的布尔变量,用于描述航天器是坠落还是降落。如果下落是真的,则重力被关闭。如果你目前正在下降,检查登陆状态才有意义。

  2. 检查Y值。

    由于平台放置在550的Y值,因此当Y值大于525时,着陆器将显示为着陆。您只关心着陆器底部接触平台的顶部。请注意,此检查发生在下降检查内。如果任何条件失败,则不需要检查其他条件。

  3. 检查X值。

    您需要着陆器的中心位于平台中心的十个像素之内,因此请使用一对嵌套的if语句来检查X位置。检查水平速度。

  4. 为了安全着陆,飞行器的dx值必须在-0之间。 2和0. 2.(这有些武断,但在测试时,感觉是正确的。)这最好用一对嵌套if语句来检查。检查垂直速度。

    如果其他所有部件运行良好,请检查一下是否飞行速度不太快。使用dy属性来确定飞船坠落的速度。用别的条款提供反馈。

  5. 像这样的深层嵌套结构向您展示了合适的缩进和评论的真正价值。在其他各个条款中提供反馈,解释为什么着陆被认为是失败。

    游戏文本控制台

  6. 代码的另一个有趣的部分是向用户显示文本数据的机制。最简单的方法是通过一个简单的HTML div。使用CSS将div正好放在你想要的位置。在正常的网页开发中,你绝对不应该使用绝对定位,这在为游戏创建标签的情况下是有意义的。

    请注意,您可能需要将z-index属性设置为较高的值以确保其显示在画布上方,否则用户可能看不到该属性。下面是使标签看起来像输出在屏幕上的CSS:

#stats {position:absolute; font-family:monospace; left:50px;顶部:50px; z-index:999;颜色:白色;}

提升游戏的方法

这只是游戏的起点。可以添加许多其他有趣的功能:

燃料:

添加每次用户施加推力时减少的燃料变量。垂直推力应该比水平调整使用更多的燃料。如果油位低于零,则忽略进一步的推力输入。这个机制把一个现实的复杂化进入游戏。

通电:

  • 添加一些其他功能,用户可以获得

  • 奖励燃油,重力减轻,平台更宽。 多次着陆: 可能在着陆成功后移动着陆垫,或者让使用者将物体载入第二个平台。 障碍物:

  • 将太空垃圾或建筑物放置在会触碰玩家的地方。 改变主题:

  • 同样的机制可以很容易地用于直升机或热气球游戏。

如何在您的HTML5游戏中创建月球着陆器 - 傻瓜

编辑的选择

HIV医生助理考试的基本知识 - 假设

HIV医生助理考试的基本知识 - 假设

为医师助理考试(PANCE)熟悉一些关于艾滋病,与艾滋病相关的特定感染以及某些药物副作用的一般性东西。 HIV代表人类免疫缺陷病毒。获得艾滋病毒的风险因素包括高风险的性行为和滥用药物,特别是使用脏针的静脉注射。接触...

如何处理助产士助产士的妊娠出血问题 -

如何处理助产士助产士的妊娠出血问题 -

你将需要知道与医生助理考试妊娠出血问题。怀孕期间可能出现的三种与出血有关的并发症包括前置胎盘,胎盘早剥和产后出血。胎盘前置胎盘前置胎盘是一种罕见的出血原因,对妈妈和宝宝都有潜在的生命威胁。在这种情况下,胎盘是...

编辑的选择

避免C ++中的错误的10种方法 - 傻瓜

避免C ++中的错误的10种方法 - 傻瓜

这是一个不幸的事实,您将花费更多时间搜索并删除错误,而不是花在实际编写C ++程序的时候。这里的建议可能会帮助您最大限度地减少引入到程序中的错误数量,从而使编程更加愉快。启用所有的警告和...

附加到正在运行的进程使用代码::块 - 虚拟变量

附加到正在运行的进程使用代码::块 - 虚拟变量

每次启动新应用程序,您创建一个或多个进程。一个进程就是加载到内存中的简单可执行代码。 CPU读取并执行指令以执行您要求应用程序执行的任务。当CPU将您的应用程序加载到内存中时,它将为每个进程分配应用程序...

数组和指针C ++中 - 虚拟变量

数组和指针C ++中 - 虚拟变量

数组的名称是指向数组本身的指针。该数组是存储在内存中的一系列变量。数组名称指向第一个项目。这是关于指针的一个有趣的问题:你可以有一个函数头,比如下面的一行,并且用Sizeof来决定如何...

编辑的选择

Spotify设备 - iPod,iPhone和Android - 虚拟设备

Spotify设备 - iPod,iPhone和Android - 虚拟设备

您可以将设备连接到计算机并使用Spotify同步本地轨道。在Spotify中,如果您选择左边栏中的设备,则会出现两个提示:iPod:您可以将iPod插入计算机,并使用Spotify将本地存储的音乐文件同步到该计算机上。您可以将音乐同步到您的...

Spotify应用程序:ShareMyPlaylists和TuneWiki - 傻瓜

Spotify应用程序:ShareMyPlaylists和TuneWiki - 傻瓜

Spotify应用程序提供了几个流行的应用程序,包括ShareMyPlaylists(SMP)现在可在Spotify中作为一个集成应用程序使用,而TuneWiki则是实时同步Spotify音乐的歌词数据库。如何在Spotify中使用ShareMyPlaylists在将Spotify应用程序集成到Spotify中之前,您可以使用ShareMyPlaylists ...

Spotify功能 - 傻瓜

Spotify功能 - 傻瓜

Spotify有助于实现所有音乐的普遍即时访问,无论您使用的是手机设备或台式电脑。 Facebook帮助人们重新与老朋友联系,创造新的人生,Spotify帮助人们重新发现年轻人的歌曲,并通过朋友和搜索发现新鲜的音乐。使用Spotify您的即时音乐...