问题标签 [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.
algorithm - Pong:桨怎么知道球会打到哪里?
在实现 Pacman 和 Snake 之后,我正在实现下一个非常经典的游戏:Pong。
实现非常简单,但我只剩下一个小问题。当其中一个桨(我不确定它是否称为桨)由计算机控制时,我很难将它定位在正确的位置。
球有一个当前位置、一个速度(现在是恒定的)和一个方向角。所以我可以计算出它会碰到电脑控制的桨的位置。所以我可以把桨放在那里。但是在真正的比赛中,电脑的球拍有可能会错过球。我怎样才能实现这个概率?
如果我只使用计算机的球拍击球的概率假设为 0.5,那么问题就解决了,但我认为并不是那么简单。
从最初的游戏来看,我认为概率取决于当前桨位置与球击中边界的位置之间的距离。
有人知道这是如何计算的吗?
ios - Objective-C 随机数
我正在制作一个简单的乒乓球游戏。为了让球在新一轮开始时移动,我正在使用
然而,重要的部分是这样的:
但是,这样做有一些问题:首先,它并没有真正生成随机数。只有在我退出模拟器后,然后重新打开它才会生成新的数字。其次,我只希望它生成介于 -4 和 -2 或 2 和 4 之间的数字。
math - 如何推断乒乓球的位置?
好的,我还有另一个与乒乓球相关的问题。现在我正在努力改进“AI”。我在互联网上读到我应该预测球的 x 和 y 并在那里移动桨。
这是我的方程式。
然后我使用 pos 0 0 和屏幕高度、宽度等常量计算了桨移动线的坐标。
为了计算交叉点,我做了等式:a1x4+b1=a2x4+b2
。a1 b1 b2 a2
是我之前计算过的东西。它不起作用:P 怎么了?
pong - 打乒乓球怎么让电脑输?
所以我和我的搭档正在尝试制作一个玩家对电脑的乒乓游戏,但我们就是不知道如何让电脑输。
我们已经完成了基本的工作,它工作正常,但计算机永远不会丢失。我们还尝试使用睡眠来减慢计算机的速度,但是当桨移动缓慢时,球也移动缓慢。
任何建议都会有所帮助!谢谢
c++ - 构建乒乓球
我正在使用 C++ 和 OpenGL 使用 Visual Express 2010 制作 Pong。这是我制作的第一款游戏之一,我想知道如何最好地构建它。难倒我的主要部分是游戏菜单。我应该把不同的游戏模式放在不同的功能中,并在我的主要功能中进行切换吗?例如,在 Main.cpp 中,我将包含该行
在另一个文件中,我将 maincode 定义为类似的东西(再次,伪代码):
然后,我会在每个文件中检查单人游戏、多人游戏和菜单的值,以确定我处于哪种模式,然后相应地显示代码。
但是,我觉得随着游戏变得越来越复杂,这种方法会变得越来越复杂,所以我认为这不是正确的方法。
我应该如何构建游戏和菜单?
PS我是一个以C++为生的程序员,但我只是没有编程游戏的经验。
javascript - 上下文存在于 OOP Javascript Pong 游戏中的什么位置?
为了练习我的 OOP 知识,我正在用 javascript 制作 Pong 游戏(我知道,我知道,这就像在吉他店玩 Stairway to Heaven)。通过实现几种不同的技术,包括基于原型的 OOP 和函数式风格,我已经拥有了游戏的多个功能版本。但是,我这样做并不是为了获得功能性游戏,而是为了学习。
我正在使用 html5 画布和纯 ol' javascript,没有框架(好的,用于键盘捕获的一点 jQuery)。我有代表我的游戏的 Pong 对象。Pong 有一个ctx
包含对canvas.getContext("2d")
上下文的引用的属性。它还有一个player1
,player2
和ball
属性,用于保存你知道什么。当球和两名球员被实例化时,上下文被传递给他们的构造函数,以便他们也可以持有对上下文的引用以在他们的draw(ctx)
方法中使用。Pong 有一个draw()
方法可以使用setInterval(this.draw, 10)
. Pong 的 draw 方法会调用两个玩家和球的 draw 方法。
两名球员和球都具有上下文作为属性,这对我来说并不合适。他们不拥有上下文,因此它不应该是一个属性。然而,使用 javascript 和画布的本质似乎是这是最好的方法。在这种情况下,谁或什么应该拥有上下文?理想情况下,我根本不希望球员和球对象有平局对象。我觉得它们应该具有描述其几何形状和位置的属性,并且应该指定一个专门的对象将它们渲染到屏幕上。这样,如果将来我决定使用 <div> 而不是画布,我可以只更改渲染对象,而其他一切都将被遗忘。
我知道我正在制作一个比它需要的更复杂的 javascript Pong 游戏,但我想练习这些技术并真正了解 OOP 的概念,但每次我认为我已经破解了一个由我的“解决方案”创建的全新问题'呈现自己。
编辑:如果你对我的代码有一个八卦会有帮助,这里是一个(几乎)完全工作的版本:
library.js - http://mikemccabe.me/tests/pong.archive.14.06.11/library.js
pong.js - http://mikemccabe.me/tests/pong.archive.14.06.11/pong.js
python - 用 Python 调试乒乓球游戏
我累了,我试着跑了一整天。这是一种乒乓球游戏,球从墙上弹回并与用户的“板”或桨接触。我已经调试了一段时间,结果发现我的 iCollide 和 iGet_Velocity 部件引起了很多问题。
c++ - C++ 中的乒乓球游戏
现在我正在用 C++ 制作一个乒乓球游戏,现在我已经制作了一个paddle
和ball
它都继承自entity
它的实体的coordinates
和bounding box
(可以是圆形或多边形),我还实现了一个entity.isColliding(entity)
很容易告诉的函数如果实体对任何两个实体发生碰撞。
现在我想让 Ball 移动,当它与实体碰撞时,它会反转正确的速度坐标(x 或 y)。我想制作一个函数canMove()
来移动并检查碰撞以及是否有向后移动,但我不知道如何检查是否需要反转 x 或 y 速度坐标,我所知道的是存在或将会存在碰撞。
有什么建议吗?
java - Android - 暂停几秒钟
为了让游戏暂停几秒钟,我一直在尝试理解 Handlers 的东西。到目前为止还没有运气。
我希望有人可以指导我或向我展示一种可以适应我需要的完整方法。分别是:我有一个类似乒乓球的游戏,当球击中屏幕两侧时,我想暂停几秒钟以显示比分,然后重新开始比赛。
谢谢!