任何人都可以告诉我如何在C ++中为PacMan创建地图。 任何有关获得开始的建议。提前感谢。
答案 0 :(得分:2)
这是一个非常广泛的问题,取决于其他要求。基本上我会选择一个只代表细胞的二维数组。每个单元格都包含:
怪物和pacman本身不会在地图上显示出来。相反,每个人都应该在地图中占据一席之地。
这不需要C ++,它只需要C,但是如果你故意想要一个C ++解决方案,你可以用向量替换数组,或者在这种情况下,用矢量向量。
怪物将如何移动
如果您想从地图中的B点到达A点,您可以使用各种算法中的任何一种,这些算法将为您找到地图中的最短路径 - 例如A*算法。但是,在这种情况下,您需要考虑以下几点:
我建议当怪物到达“十字路口”时使用一些随机决定,以及对pacman本身的一般偏见。因此,如果怪物位于有东方,西方和北方三个方向的地方,并且pacman位于北方,我会做出一个随机决定,有40%的机会向北,30%到东方,30西边%。
答案 1 :(得分:0)
这是一个提示:
// 1 = wall
// 0 = no wall
int map[6][6] = {{ 1, 1, 1, 1, 1, 1 },
{ 1, 0, 0, 0, 0, 1 },
{ 1, 0, 0, 0, 0, 1 },
{ 1, 0, 0, 0, 0, 1 },
{ 1, 0, 0, 0, 0, 1 },
{ 1, 1, 1, 1, 1, 1 }};