问题标签 [pong]

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 投票
2 回答
550 浏览

jquery - jQuery:限制对象的keydown移动

我正在尝试在 jQuery 中开发一种乒乓球游戏,我想知道如何限制容器内的滑块位置。

我还需要有关如何生成球/盒子以及如何使其在容器的侧面和顶壁上弹跳的帮助。

我已经设法解决了这个问题,但我仍然在努力将滑块保持在容器内,并在弹跳的球上挣扎。

任何帮助将不胜感激。 MyCodeSoFar

0 投票
1 回答
3135 浏览

c# - 在 XNA/C# 中移动矩形的最佳方法#

我是 XNA 的初学者,我正在尝试制作乒乓球游戏。
我已经能够制作乒乓球游戏,但所有代码都在一个类中。所以我想尝试添加一点 OOP,我已经为球和一个垫子做了一个类。

球运动完美,但我似乎无法让球从垫子上反弹。

这些是我使用的代码:
移动垫
Game1.cs

pad.cs

检查球是否反弹
ball.cs

pad.cs

游戏1.cs

我似乎让垫子恢复工作
问题似乎通过使用 originel recPad 而不是构造函数 RecPad 来解决
现在我只需要让我的边界工作,因为 MathHelper.Clamp 似乎不起作用
查看我的代码更多信息

这段代码现在解决了我的边界问题

0 投票
1 回答
2499 浏览

javascript - document.getElementById 在外部 JS 中失败

那是我的外部 JS 文件,这是我的 html

出于某种原因,我一直得到一个空对象,canvas 因为我只在加载文档后才调用它,我会没事的。这是我的第一个真正的 JS 项目,所以我可能做错了一些简单的事情。很抱歉格式不好,编辑遇到了一些麻烦。

0 投票
3 回答
1173 浏览

java - 乒乓球游戏 - 为球动画添加计时器

我现在正在做一个乒乓球游戏,我的球动画太快了。我想在我的动画中添加一个计时器,但我真的不知道该怎么做。我用我在互联网上找到的一些代码进行了尝试,但它不起作用。请帮我 :(

这是我的代码:

}

0 投票
1 回答
245 浏览

linux - GLUT 键盘反应迟钝

我正在测试在这里找到的简单乒乓球游戏:https ://github.com/shangaslammi/frp-pong

问题是键盘控制工作非常糟糕 - 按键非常无响应并且通常有几秒钟的延迟。我假设作者为 Windows 编写了代码,因为他包含了一个 .bat 文件,所以这是一个特定于 Linux 的问题。

为什么会这样?

我不确定问题出在哪里,但这里是文件 Keyboard.hs:

并设置回调:

0 投票
1 回答
2790 浏览

processing - 乒乓运动不顺畅

我想在处理中制作一个乒乓球游戏。但是球的运动不是很顺畅。我尝试改变帧速率并降低球的速度,但移动速度似乎不是恒定的。这可能是性能问题吗?我做错了什么,或者处理可能不是正确的事情,即使对于简单的游戏也是如此?(我的目标是尝试 processing.js 并制作一个无需插件即可运行的游戏)。这是我的代码:

0 投票
1 回答
276 浏览

java - OpenGL 和 LWJGL 的问题:令牌“glMatrixMode”上的语法错误

我想用 lwjgl 制作一个“乒乓”游戏。目前,我做了 2 个类:GameLoop 和 Inizializza。我有下面标记的那 4 行代码,它们给了我编译错误。我从 LJWGL wiki 复制了那部分。

游戏循环-

初始化-

0 投票
2 回答
19014 浏览

python - 左右移动对象

我对 Python 和 pygame 有一个问题:我不知道如何让一个简单的桨左右移动。基本上,我正在为我的第一个项目开发乒乓球类游戏。

在网上阅读了几篇文章后,我想到了一种方法。我到目前为止的代码是:

输入此代码后,游戏运行,但我仍然无法左右移动桨。我怎样才能做到这一点?

0 投票
2 回答
4309 浏览

python - 为乒乓球创造AI+对速度算法的基本了解

我正在为我的软件开发课程制作一个乒乓球游戏,我可能应该说这是家庭作业,因此我的理解有限。我在为我的 NPC 桨创建 AI 时遇到了一些问题。我正在使用 Kivy 和 Python。

目前我可以通过这样做来创造不可能击败人工智能:

NPC 的 y 坐标在哪里self.player2.center_y(它只在 y 轴上移动)并且self.ball.y是球的 y 坐标。我按照 Kivy 网站上的教程来创建游戏的基础。

现在我不知道如何创建可以击败的人工智能。我知道我需要限制 AI 的速度,所以当球变得如此之快时,它就无法抓住它。但问题是,我实际上没有速度功能。

我遵循的教程的问题是它没有解释一切。我相信我可以通过说 "Every x seconds, the paddle will move x pixels in the y axis."

这是根据 kivy 教程提供球的方式:

好吧,现在我将尝试理解这一点...vel=(10,0)):可能意味着,移动 10 个像素 X 和 0 个像素 Y,将其分配给ball.velocity,并且显然控制速度...

Clock.schedule_interval(game.update, 1.0/300.0)关于这一点,是否可以假设……这就是球的移动速度?即 10 像素 x 和 0 y,每 1/300 秒?如果我将其更改为 1/20 之类的东西,它的移动速度会慢得多……所以我会这么认为。

现在我需要创建一个函数来保存 AI……也许

self.player1.指我的桨。

是的..现在我被困住了。我不知道如何使用这个速度来控制桨的移动。有人有想法么?而且由于我的问题很可能非常模棱两可,因此我将提供游戏的来源,以防您需要更好的理解。谢谢你。

http://pastebin.com/8wTLbH21

ps 我意识到这是一个很大的问题,有很多问题要问,但我希望有人能回答。谢谢。

0 投票
3 回答
487 浏览

python - 快速增加精灵位置而没有延迟 - Python

我正在使用 Python 中的 Kivy 为学校项目制作 PONG 游戏。到目前为止,感谢这个论坛,我已经为 NPC 桨制作了一些 AI。这是代码:

这是在 PongGame() 类的一个方法中,称为ArtificialIntelligence()。

我用这个来称呼它:

这允许我每 1/300 秒调用一次。但是,任何超过1/300的东西,我似乎都没有区别。即 1/9001 不会每 1/9001 秒调用一次。

它的工作方式是相对于球的位置将 y 坐标增加 4 个像素,并且每 1/300 秒执行一次,因此它不会以这种速度“滞后”。这对玩家来说基本上是一个“简单”的模式。如果我想做一个“硬”模式,我需要让NPC更准确。我可以这样做

像这样的东西。这将是非常准确的。但是,它看起来并不“流畅”,它看起来“滞后”。我假设我可以通过更频繁地调用该方法来获得相同的移动量,而不是通过改变像素移动来改变它的移动量。但是,我不知道如何做到这一点,因为正如我所说,从 1/300 以上的任何位置更改它似乎没有任何区别。

这就是我使用桨的方式:

我可以随心所欲地移动它,因为它会随着我移动鼠标而更新。它看起来很流畅,因为它会根据需要更新。我不知道如何用我的 AI 做到这一点。

有谁知道我怎样才能基本上使 NPC 桨更准确,让我做 Easy-Normal-Hard 等,同时保持流动性和没有滞后?我只看到一种方法可以做到:增加调用方法的数量。

但是我打赌有更好的方法,我不知道该怎么做。有谁知道我怎么能做到这一点?谢谢。

编辑:看起来我可以这样做:

但这看起来真的很丑陋而且效率很低......我更喜欢更清洁的方式。