The Fourth Dimension Space

枯叶北风寒,忽然年以残,念往昔,语默心酸。二十光阴无一物,韶光贱,寐难安; 不畏形影单,道途阻且慢,哪曲折,如渡飞湍。斩浪劈波酬壮志,同把酒,共言欢! -如梦令

坦克究竟该怎么写嘛?

这学期学了MFC,期末老师布置我们写个游戏。我选了坦克大战,上课的时候觉得老师讲的挺简单的,都能听懂,但是真正写起来却发现自己无从下手了,我个人的设计思路是这样的:
首先写个坦克类,里面有坦克的坐标,速度,还有装载的位图。再写个子弹类,每个坦克里面包含一颗子弹。
写消息映射,上下左右,分别控制坦克移动,空格键发射子弹;任何一个消息事件,均触发重绘,将屏幕刷新;

可是,之后该怎么办,我就无从下手了,因为,还有敌方的坦克,我的子弹打出去,地方坦克难道就不动了吗?这显然不可能啊~更何况,敌方坦克的AI要怎么写呢?我想,可能是由于上课的时候很多消息都没有学到造成的吧,不知道有没有牛人可以指点我一下呢。
感激不尽~

posted on 2009-06-01 12:59 abilitytao 阅读(405) 评论(2)  编辑 收藏 引用

评论

# re: 坦克究竟该怎么写嘛?[未登录] 2009-06-02 10:20 megax

我给你点点:
所有的物件,甚至背景的tile(如果你用tile), 都可以继承自一个Object, Object可以返回该Object的类型(背景,墙壁,能动的,不能动的,子弹,坦克啥的),画面固定下刷新帧率,30帧/s,就差不多很快了吧,对于这个游戏。
然后,每次刷新都是一个运算过程,遍历所有的Object, 决定它下一步该怎么做,怎么绘制。比如坦克:你应该决定它下一步该往哪拐,这个要判断地图前后的坐标,或者你自己的理论也可以,敌方坦克没有AI,往哪拐是随机的。坦克移动没问题了吧。那么子弹也是一个Object,如果一个子弹发出去了,不断绘制,不断更新坐标,和其它的Object碰撞了(碰撞检测),那么久爆炸,或者被墙壁挡住了。就差不多这样了。  回复  更多评论   

# re: 坦克究竟该怎么写嘛?[未登录] 2009-06-02 11:22 abilitytao

@megax
固定画面的刷新帧率要怎样做到呢 用settime吗?
我的qq是64076241 能否当面请教一下呢 ?感激不尽啊  回复  更多评论   


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理