【发布时间】:2020-08-14 03:23:06
【问题描述】:
我正在尝试使用 PyGame 在 Python 中制作纸牌游戏。这就像一个52-card-pickup-game。您可以想象,大多数纸牌游戏并不涉及完全或部分位于其他纸牌之上的纸牌。要么是按某种顺序排列的卡片,要么是将卡片(不是位于另一张卡片上方或下方的卡片)拖放到另一个位置。如果我想移除一张或多张其他卡片下面的卡片,那么我应该先移除这些卡片。这让我大吃一惊。
目前我能看到的只有:
- 两张或多张卡片可以共享坐标。
- 当卡片更直接地相互重叠时,每张卡片的中心点更近,而当卡片相互覆盖较少时,相同点距离更远
- 如果我可以将一组坐标 (x1, x2, y1, y2) 映射到 id,那么我可能能够更唯一地识别列表或其他内容中的每张卡片
提前致谢!
【问题讨论】:
-
您可以为每张卡片分配一个“z-order”编号(第三维)。然后,当点击匹配多张卡片时,找到具有最低 z 顺序的卡片,并将其标识为上方卡片。当然,您需要在卡片移动时保持 z 顺序。将你的“一堆”卡片存储在一个列表中并用它来保持 z-order 可能就足够了。
-
这是我想去的方向,谢谢:)
标签: python object pygame coordinates overlap