【发布时间】:2009-07-05 02:10:15
【问题描述】:
我制作了一款与 Popcap 的 Atomica 几乎相同的游戏。 (http://www.popcap.com/gamepopup.php?theGame=atomica)
差不多完成了,除了一个重要的功能;阻止用户在任何地方移动球体。比如,如果在用户试图移动的球体和试图将其移动到的场之间有一堵墙,用户应该无法移动它。
我已将所有字段和球体存储在一个多维数组 [x-loc, y-loc] 中,其中“e”等于空,“s”球体等。我尝试通过它运行一个循环以找出如果两个领域之间有一条清晰的道路,但没有任何效果。
谁能告诉我如何解决这个问题?
【问题讨论】:
-
请参阅有关路径查找的这些问题:stackoverflow.com/search?q=path+finding 以及有关碰撞检测的这些问题:stackoverflow.com/search?q=collision+detection 然后再尝试更具体的问题。或者发布您的代码,我们会告诉您它在哪里不起作用。
-
不要将数据存储为字符串/字符。将其存储为枚举。
-
查理:为什么?这种方式更容易,因为球体可以是不同的颜色。就像红色球体的“sr”,蓝色球体的“sb”等等。
标签: c# arrays multidimensional-array