bAN*_*bAN 9 delphi data-structures
我为学校做了一些功课,我必须在德尔福做一个像诺基亚一样的蛇游戏.我想知道哪种解决方案是最好的.我希望我的蛇是一个类,主体是一个点数组(父类)或点链接列表.什么是最好的?数组或链表?
一个简单的解决方案是创建一个类型的数组[水平] [垂直],这样屏幕上的每个坐标都有一个项目.每种类型都可以是蛇方向,食物,毒药,墙壁或空洞.这意味着你只需要记住蛇的头部和尾部位置,以及食物和毒药的数量,并且阵列描述了屏幕的样子.
这消除了处理蛇元素的麻烦,并且可以轻松地将新食物或毒物放置在屏幕上,确保您不会将其放入已占用的地方.
当你需要移除蛇的尾部元素时,使用方向获得尾部的方向:= array [tailx,taily]; 然后设置数组[tailx,taily]:= empty.然后,根据方向更新tailx和taily.而已.