| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1267 人关注过本帖
标题:vb坦克游戏
只看楼主 加入收藏
shirley__007
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-6-3
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
vb坦克游戏
1.问题描述:
坦克由两个控件构成label1作为坦克的主体部分,label2作为炮管。在一个矩形区域内可以通过键盘控制坦克向上下左右移动,当移动到边界后就不再移动。通过键盘控制发炮,每次只能发一炮,当炮弹(可以使用label控件表示)击中边界后才能发另外一炮弹。
2.问题的解决方案:
坦克的移动通过窗体的keypress事件接受键盘按键,w键控制坦克向上,s键控制坦克向下,a键控制坦克向左,d键控制坦克向右。
炮弹的发射由键盘事件控制,单击j键发射炮弹。利用timer控件控制炮弹延直线移动(改变炮弹的top和left属性),当炮弹击中边缘后消失。
四、主要技术问题的描述:
1、    坦克的移动
每当触发keypress事件后改变坦克的组成部分label1和label2的top和left属性,注意当坦克改变方向时,label1控件和label2控件的相对位置会改变。
2、    炮弹的移动
每当利用keypress事件触发坦克的发炮,首先判断是否炮弹在运行当中,如果运行当中则不进行响应。炮弹的运动是由timer控件控制,发炮时启动timer事件。
创新要求 :增加障碍物等
搜索更多相关主题的帖子: 坦克 游戏 
2010-06-03 09:46
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:6 
只提建议,不动手.

1\窗体上画出一个区域,这个区域可以用 图片框圈出来,也可以用 框架圈出来,也可以不圈出来,内部用坐标来设定
2\把这个区域,分别若干格,每个格大小都要求是一样的. 最好是 正方形的格子. 内部用数据表示,不需要显示出来的.只需计算出来.
3\坦克有三个属性,  坐标X,坐标Y,方向( 1-4 或 0-3 表示),
4\炮弹存在 四个属性 ,坐标X,坐标Y,方向,是否存活 ,0 ,非存活, 1 存活 2 爆炸.
5\区域每个格子,存在一个属性, 是否可通行 ,如  0 表示 可通行, 1 表示可破坏障碍, 2 表示不可破坏障碍. 图形表示,可以使用 label 数组 里填一个字符来表示.
如果会用 绘图命令,则可以到 指定的格子里 绘图来表示
6\开始函数 , 绘制地图,  设置坦克属性, 设置炮弹为非存活, 显示 坦克 ,炮管 .坦克显示坐标根据坦克的 坐标X,坐标Y 及 方格大小等来计算出.炮弹出是如此
7\根据按键,设置坦克坐标X,坐标Y,并同时设置 方向 .如果地图放置了障碍物,此处需要判断地图来决定坦克是否移动
8\如果按下开炮,判断炮弹存活,如果 否, 设置为存活,坐标为坦克炮口前一格,根据坦克方向来判断 .
9\定时器,判断炮弹存活,如果 0 ,则退出处理.  
  如果 1 根据炮弹方向,向对应方向移动 N 格 ( N=0.1~1 ,如果需要判断是否击中障碍的话,N 建议 = 1 )
         如果需要障碍 , 每次移动后 均要判断地图的当前坐标的属性, 如前面所列, 0 ,不处理, 1 ,地图设为0 ,清除此格,炮弹设为 2 .
         如果坐标出界,  炮弹设为 2 .  显示爆炸
  如果 2 ,设置炮弹 存活 为 0  ,

授人于鱼,不如授人于渔
早已停用QQ了
2010-06-03 11:21
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
我学VB 时,第一个写的程序 ,就是坦克大战. 我当时是用 图片框堆的 地图 和 坦克 \炮弹 ,AI 坦克 等信息.
后面重写,才是用 图片拼的地图 ,精细多了. .

我当时地图属性 代码 ,就分了 31 种 ...


[ 本帖最后由 风吹过b 于 2010-6-3 11:28 编辑 ]

授人于鱼,不如授人于渔
早已停用QQ了
2010-06-03 11:27
向钱看
Rank: 2
等 级:论坛游民
帖 子:46
专家分:65
注 册:2010-3-18
收藏
得分:6 
以前玩坦克大战的时候,总是关注炮弹中不中对方的坦克。从来没想过几个字母能控制坦克的炮筒子
2010-06-05 19:04
nbaqqqq
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:202
专家分:137
注 册:2009-11-6
收藏
得分:6 
写这个大概要多久?
2010-06-06 12:45
快速回复:vb坦克游戏
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025726 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved