问题标签 [2d-games]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8891 浏览

javascript - 在 HTML 游戏的一个函数中运行多个 if 语句

到目前为止,在这个游戏中,我已经可以检查墙壁和桨的碰撞,然后通过运行动画来重定向球来做出响应。但是,在检查是否没有碰撞时,我总是摔倒。nor语句都不起作用,次要的 if 语句elseelse if不起作用 - 无论是在主函数中还是作为单独的事件。我在这里介绍了几乎所有的可能性,但我希望你们中的一个人(像你一样超级可靠)可以帮助解决这个问题。

碰撞代码示例(单独的函数):

主功能

jsfiddle:http: //jsfiddle.net/zbMCC/

0 投票
1 回答
421 浏览

actionscript-3 - 命中测试反弹

我正在尝试为 Flash 制作一种气球格斗游戏。我在屏幕顶部有一个天花板,所以当玩家击中它时,它应该会从上面反弹。问题是,我不知道该怎么做。这是代码。

我在乱搞数字。在问题所在的 upBumping 变量中,我想让角色在击中后反弹,但它只执行一次。之后,它只是穿过天花板。也许我正在以错误的方式解决这个问题?

0 投票
1 回答
255 浏览

box2d - 在 box2d 中,如何在保持所有动量、角度、位置等的同时扩展/收缩与末端相连的身体的关节?

请看示意图:

摆动图

在 box2D 中,我试图想出一种方法可以将旋转臂连接到蓝色盒子并让旋转臂伸展或收缩。

蓝色框设置为使用棱柱接头向左和向右移动以充当轨道/轨道。当蓝色框左右移动时,动量将导致摆臂摆动。我有这个工作正常。

我的问题是我无法可靠地想出一种方法来将底部的绿色盒子上下摆动臂。如果玩家向上按压,我希望底部的绿色框会向上移动摆臂。如果玩家停止向上按压,则底部的绿色框将停止并保持在摇臂上的任何位置。我想这样做,但要保持摆臂的动力。

我只会在蓝色框和底部绿色框之间绘制一条线,因此看起来它正在扩展或收缩。

我尝试过棱柱关节和距离关节,但是当我为关节设置新的限制或距离时,它没有流体运动。关节的动作不够刚性。例如,当缩短棱柱关节时,我不知道如何在新关节长度的末端重新定位底部绿色框,但仍保持其先前的动量和旋转。

有任何想法吗?

0 投票
2 回答
1259 浏览

android - Android pre onPause 通知

我正在使用 cocos2dx 将现有游戏从 ios 移植到 android。当应用程序暂停时,例如通过单击设备上的“锁定”按钮,应用程序正在暂停/休眠。但是当设备被重新激活并且我的应用程序再次出现时,它会冻结几秒钟。我想做的是显示一条游戏模式消息,告诉用户他/她应该等待一秒钟,直到游戏从冻结模式返回。但我可以简单地完成这项工作。

我试图在“onPause”和“onResume”上显示消息,但在冻结模式结束之前不会显示消息,我希望在应用程序重新出现时显示它。

我怎样才能使这项工作?

在 Ios 上,可以在应用程序进入后台之前收到通知。“applicationWillResignActive”我在 android 上找不到类似的东西。Android上是否存在诸如“pre-onPause”之类的通知/委托功能?

任何想法表示赞赏。

最好的

0 投票
1 回答
2123 浏览

artificial-intelligence - Alpha beta剪枝的评价函数设计

我正在设计一个国际象棋游戏,它背后的人工智能实现了一个带有 alpha-beta 修剪的搜索树。我在设计游戏的评估函数时遇到了困难。

如何为任何类型的游戏设计评估函数?

0 投票
2 回答
431 浏览

algorithm - 2D 渲染 - 识别岛屿和应用“海滩”的算法?

我正在玩 2D 游戏编程。我的玩具项目是一个包含可探索岛屿和更多岛屿的航海游戏,但目前我正试图找到将“海滩”(即软末端)应用于其他相当粗糙的岛屿的最佳方式。瓷砖尺寸为 64x48。

在此处输入图像描述

我目前的解决方案是遍历每个图块并寻找周围的图块,并根据它们的周围环境,将水图块替换为正确的纹理。

我意识到这是一种非常有缺陷的方法,因为它是:

  • 令人难以置信的低效,因为每个图块都调用了环绕方法,即使是那些受更改影响的图块
  • 执行顺序可能意味着某些图块更改被覆盖

你们知道我可以如何绕过并以更好的方式解决这个问题吗?

谢谢!

编辑

此算法在加载地图时执行。

0 投票
1 回答
719 浏览

c# - 敌人在 XNA 中跟随玩家并在 20 像素内停止

我试图让我的敌人跟随玩家并在 20 像素内停止,我尝试了多种算法,包括 Vector2.Lerp(); 尝试解决此问题的方法,但它不断破坏构建。任何帮助将不胜感激。代码如下。

0 投票
2 回答
825 浏览

ios - 无尽的跑步游戏使用什么公式来设置玩家的速度?

我正在制作一个没完没了的跑步游戏(例如 canabalt、temple run、Jetpack Joyride),并且我正在努力让它的“感觉”正确。到目前为止,我使用以下等式来设置速度:

除了反复试验之外,还有什么技巧可以让你感觉增加恰到好处?

0 投票
1 回答
827 浏览

python - NPC AI构建无网格障碍物地图

出于某些研究目的,我构建了一个小型坦克游戏,其中你有一个由玩家控制的坦克和一个或多个 NPC 坦克。

现在我想让这些 NPC 坦克在他们不知道的领域中导航。如果它们在一定范围内,它们可以检测到障碍物。如果他们检测到这些障碍,他们应该将它们保存在某个易于查询的数据结构中。以便他们在搬家时将其考虑在内。

现在这是我卡住的地方:如果我的领域是一个网格,那对我来说很容易,我只需保存障碍物所在的瓷砖/节点。

但是我并没有真正使用网格,我的坦克只是根据它们的速度向前移动几个像素,所以坦克可以定位在任何像素组合以及障碍物上。

现在我将如何处理这个?碰撞检测超出范围。我是否被迫使用某种网格或航路点?

0 投票
1 回答
297 浏览

java - Java - 屏幕上的矩形随播放器移动

我制作了一个 2D Java 游戏,其中我在 2D 地图上有一个有障碍物的矩形,我一直在设置与矩形的碰撞,但它们没有工作,经过更多的实验后,我很快意识到我为障碍物制作的矩形与我的播放器一起移动,我的意思是如果我在坐标 0、0 上设置一个矩形,它将停留在我的 GUI 的左上角并且当我移动我的播放器时会移动,它会一直停留在那里而不是固定在地图上。

我设置了以下变量:

在我的渲染方法下,我有以下内容:

如果我放入我的渲染方法:

一个矩形将留在我的屏幕的左上角,我假设当我用我的变量设置我的矩形并尝试创建碰撞时会发生这种情况,这就是我的碰撞不起作用的原因。总的问题是,我如何编辑我的代码以使我的矩形保持在地图上并且不与我的播放器一起移动。