【问题标题】:Logic For Puzzle Game - How do I do it? [closed]益智游戏的逻辑 - 我该怎么做? [关闭]
【发布时间】:2013-06-07 04:55:46
【问题描述】:

游戏是关于什么的?

这是一个益智游戏。我正在使用 AndEngine 在 Android 平台上构建它(目前)。我把游戏分成了不同的世界,每个世界都包含不同的关卡。

问题是什么?

请参阅下面的游戏设计。游戏的目的是将碎片拖放到“放置”区域(又名持有者)并形成圆圈。我已经开发了游戏的基本 2 个级别。这是第三个层次。其中有 3 件作为不同的对象命名为 1,2,3。我必须将所有 3 件都放入水滴中。问题是我怎么知道所有的碎片都装满了支架?我第一次使用 AndEngine 并且对如何做到这一点知之甚少。 轻敲任何破损的物体都会将其旋转 90 度。因此,每个可能有 4 种可能的解决方案)。

此外,逻辑应该适用于任何形状、任何数量的碎片、任何数量的支架。

我的想法

我们曾考虑使用以下方法解决此问题:

  1. 支架区域已填充 -> 但是我们如何以编程方式做到这一点?
  2. 获取每个碎片的中心坐标并找到与圆心的距离。在所有 4 个条件下验证这一点(所有 4 个旋转,每个旋转 90 度)。 -> 我们正在努力解决这个问题。
  3. 查看是否所有的碎片都用在了支架区->如果有多个支架怎么办?

任何技术帮助或任何参考资料都会非常棒。

【问题讨论】:

  • 小心你的设计是你自己的!!!!在这里发帖可能会被复制。
  • 你应该指定,碎片是如何生成的?
  • 根据完成的拼图在每一块上固定一个点,然后当所有点之间的距离等于拼图完成时的距离时,它就完成了
  • 有不同的精灵碎片。它们一起形成一个圆圈。
  • 既然你也发布了这个here,我将把它作为题外话来结束。

标签: java android andengine


【解决方案1】:

鉴于 3 个拼图“碎片”可以旋转 90 度,因此可以有四种解决方案。 让这四种配置称为精灵可以拥有的四个“阶段”。所以我们为每个精灵有四个阶段。

试试这个:

1) 获取每个精灵的中间坐标(使用 converToLocalCoordinates() )。

2) 制作一个表格,其中行为 Sprite 1 、 2 、 3 ,列具有阶段 1 、 2 、 3 、 4 。

3) 这将为您提供 12 个坐标。

4) 填写表格,在找到每个精灵在不同阶段的解决方案中的中心坐标后。

5)你可以做一个“捕捉”功能,当精灵在特定阶段进入“持有人”时,然后根据上面的表格设置到适当的坐标。

6) 为了更好地实现捕捉,请在实现捕捉的答案坐标周围取一个范围。

7) 此外,如果一个精灵已经在支架内并且另一个被插入,如果它们发生碰撞或者如果精灵不在“捕捉范围”内,那么精灵可以放回原来的位置。

8) 注意只有当棋子进入正确的状态时才会发生捕捉,该状态由第一个精灵的阶段确定,该状态由捕捉到支架中的第一个精灵的阶段决定。

【讨论】:

    【解决方案2】:

    您可以为此使用 mysql 和空间索引。然后你可以检查用户输入是否所有碎片一起组成一个圆圈?这是检查多边形内多边形的链接:Check if polygon is inside a polygon?

    【讨论】:

    • 但是可以有多种解决方案。所有的部分都可以旋转90度。
    • 是的,但这个谜题只有 2 个解决方案?我的想法是减少维度并使问题变得更容易一些?希望对你有帮助?
    • 就像我可以将piece3旋转4次。所以会有4种可能的解决方案。
    • 当你把所有部分放在一起时,你可以使用多边形查询来检查所有 4 个部分是否都在圆圈内?
    【解决方案3】:

    如果所有的碎片都旋转了 90 度,那么每个谜题都有四种“不同”的解决方案,对吧?

    我不确定技术实现,但也许可以按像素计算面积?您必须计算不透明像素,而不是使用边界框(假设为 .png 精灵)。

    不过,您根据与圆心的接近程度进行计算的想法实施起来并不难。根据精灵边界框的大小获得一种解决方案的 (x,y) 后,您可以根据需要添加和减去圆的半径(以像素为单位)。您只需要知道棋子的锚点位于圆的哪个象限即可。

    我希望这些想法有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-17
      • 2021-11-13
      • 2012-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多