- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个 java 多米诺骨牌游戏。
这就是游戏板的外观:
SEEEEEEE
DDDDEEEE
EEEDEEEE
EEEDEEEE
EEEDEEEE
EEECEEEE
每个字母都是一个对象。S是一个开关,它是唯一可以触摸的值。D 是一个多米诺骨牌,它的状态要么是 down,要么是 up。C 是如果多米诺骨牌击中 C,则游戏获胜。
每个Object都有坐标,并且会用坐标进行初始化。例如)S 在 (0,0) 中, S 初始化为 Switch S = new Switch(0,0);
我的问题是:
1.) 当按下 S 时,我将如何检查每一侧,看看是否有 骨牌?如果有多个边(N,S,E,W)怎么办。
一旦在交换机旁边发现多米诺骨牌,它们的状态必须更改为“Down”,然后我们必须检查处于“Down”状态的多米诺骨牌旁边是否有更多多米诺骨牌,直到所有连接的多米诺骨牌都已关闭。
2.) 如何有效地创建包含不同订单的不同级别 这些物体。 我将使用双数组,因为关卡大小是静态的,8 x 6。
3.) 将来我想制作一个带有图像的游戏板,而不是文本。 我该怎么做呢? 我的事情是给某种类型的对象一个图片属性,然后在板上显示图片。每个对象的大小相同。
谢谢你,
费尔南多·迪亚兹
最佳答案
让Hit Queue
成为刚刚被击中的多米诺骨牌列表(想象它们正在下落,正要与其他多米诺骨牌相撞)。
如果 Switch 可以被视为多米诺骨牌,则将其添加到命中队列中,然后启动以下多米诺骨牌折叠算法。
如果Switch不能被视为Domino,则先在算法中间执行检查,然后再开始算法。
While (Domino C is not Down) AND (Hit Queue is not empty):
Let New Hits be an empty queue of dominoes
For each Domino in Hit Queue:
mark Domino as Down
Check each adjacent position (NSEW) for a domino:
If one is found, add a reference to it to New Hits
Replace Hit Queue with New Hits
Update GUI (make Down dominoes red or something)
Let Victory be a Boolean equal to whether Domino C is Down
这本质上是一波又一波地向外移动,每波之后都会更新 GUI。当 C 被击中或没有更多的多米诺骨牌可供任何现有多米诺骨牌击中时,它结束。
关于java - 创建 Java 翻转多米诺骨牌游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4077784/
我是一名优秀的程序员,十分优秀!