小时候经典游戏用vb编的编写实例教程大全全!

上传人:F****n 文档编号:99119993 上传时间:2019-09-17 格式:DOC 页数:34 大小:124KB
返回 下载 相关 举报
小时候经典游戏用vb编的编写实例教程大全全!_第1页
第1页 / 共34页
小时候经典游戏用vb编的编写实例教程大全全!_第2页
第2页 / 共34页
小时候经典游戏用vb编的编写实例教程大全全!_第3页
第3页 / 共34页
小时候经典游戏用vb编的编写实例教程大全全!_第4页
第4页 / 共34页
小时候经典游戏用vb编的编写实例教程大全全!_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《小时候经典游戏用vb编的编写实例教程大全全!》由会员分享,可在线阅读,更多相关《小时候经典游戏用vb编的编写实例教程大全全!(34页珍藏版)》请在金锄头文库上搜索。

1、这些游戏以前玩过吧,快下载看它们是怎么编写的!目录:编写趣味撞球小游戏用VB6.0设计简易赛车游戏 Visual Basic小游戏:猜英雄 VB游戏写作技巧(1)秀图篇 VB游戏写作技巧(2)网络篇 VB 贪吃蛇 单人版游戏(一) VB 贪吃蛇 单人版游戏(二) VB 贪吃蛇 单人版游戏(三) VB 贪吃蛇 单人版游戏(四) 用VB开发即时战略游戏 正文:编写趣味撞球小游戏文章来源: 沐风经典 文章作者: 佚名 Visual Basic是一个功能强大的工具,它有一大特点就是易学易用,下面我们就通过写一个“趣味撞球” 的程序来初步体会一下。首先启动VB5,新建一个标准的EXE工程。此时可以看到,

2、工程包括一个Form1框体。在Form1边框的右下角按住鼠标左键不放,拖动鼠标把Form1的面积改为适当大小,比如69304320。再在属性框中把Form1的ScaleMode 属性改为3Pixel,表明我们将以像素为我们的坐标计算单位,把Form1的StartUpPosition 属性设为2CenterScreen,使运行时窗体出现在屏幕正中。现在,在控件面板上选取CommandButton(命令按钮)控件,为Form1添加Command1和Command2两个按钮控件,把它们的大小设为12125,再在属性框中把Command1的Caption填为“GO”,把Command2的Caption

3、填为“QUIT”,并把Command1放到框体的右上角,把Command2放到框体的右下角。然后,在控件面板上选取Timer(时钟)控件,为Form1添加一个Timer1时钟控件。再在属性框中把它的Enabled属性改为False,Interval属性改为50,前一个值表示该时钟控件是否激活,后一个值决定该时钟控件产生Timer事件的间隔时间,我们将用它来控制小球的移动频率。到此为止,我们已经完成了全部的界面设计工作。接下来要做的全部工作就是填入程序代码了。 Dim BallX As IntegerDim BallY As IntegerDim AddX As IntegerDim AddY

4、As IntegerDim HitX As IntegerDim W As IntegerDim H As IntegerPrivate Sub Command1_Click()BallX=Int(Rnd(1)Form1.ScaleWidth/10)525BallY=Int(Form1.ScaleHeight)/10)5AddX=5AddY=5Form_PaintTimer1.Enabled=TrueEnd SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Form_MouseMove(Button As Integer,Shift As

5、 Integer,X As Single,Y As Single)X=X50If XW105 Then X=W105HitX=XIf Timer1.Enabled=True ThenLine(16,H5)(W6,H),HC0C0C0,BFLine(HitX,H)(HitX100,H5),0,BFEnd IfEnd SubPrivate Sub Form_Paint()ClsW=Int(ScaleWidth140)/5)5H=Int(ScaleHeight10)/5)5BackColor=HC0C0C0Line(10,10)(15,H),0,BFLine(W5,10)(W,H),0,BFLine

6、(10,10)(W,15),0,BFEnd SubPrivate Sub Timer1_Timer()Form1.Circle(BallX,BallY),4,HC0C0C0BallX=BallXAddXBallY=BallYAddYForm1.Circle(BallX,BallY),4,0If BallX=20 Then AddX=AddXIf BallY=W10 Then AddX=AddXIf BallY=H10 ThenIf BallXHitX100 ThenTimer1.Enabled=FalseForm_PaintEnd IfAddY=AddYEnd IfEnd Sub 一旦程序代码

7、输入完毕,你就可以按F5开始执行它,或是在File菜单里选取Make来生成EXE执行文件了,瞧,小球已经在你的屏幕上蹦来蹦去了。本文来自编程入门网():http:/ programfan 文章作者: yaozheng 简单的游戏往往更耐玩,就比如伴我度过高考的赛车游戏:一切都是方块,所谓的赛车也只是四个方块。第一步,绘制对象:用函数drawcar()画赛车,drawway(n)画跑道的第n层。第二步,接受控制:Form的KeyPreview属性要设为true,在Form_KeyPress函数中通过改变全局变量cx来控制赛车的位置。第三步,游戏循环:作为即时游戏,必须要有一个Timer,并在其事

8、件Timer1_Timer()中绘制所有对象和进行碰撞检测。本例中,绘图部分写在了Timer1_Timer()中,碰撞测试放在了test()中。这也是所有即时游戏所共通的框架。当然,我们往往还是根据具体的设计作一些变通,发挥一些技巧比如这里设计的跑道是随机产生的的,这就要通过一点技巧以便既让玩家感到挑战,又不至于出现不可逾越的难关下面是全部源代码,窗体上只需放个按钮Command1就行了!Const D = 100 方格的宽度Const BT = 3000 跑道底部的y坐标Dim l1(22) As Integer 每层跑道左边有几个方块Dim l2(22) As Integer 每层跑道右边

9、有几个方块Dim cx As Single 赛车的在x轴的位置Private Sub Command1_Click()cx = Width / 2 - 3 * D / 2cy = Height - DdrawcarFor i = 1 To 20l1(i) = 0l2(i) = 0drawway (i)Next iTimer1.Enabled = TrueEnd SubPrivate Sub drawcar()Line (cx, BT - 100)-Step(3 * D, D), BackColor, BFLine (cx + D, BT - 200)-Step(D, D), BackColor

10、, BF 先擦Line (cx, BT - 100)-Step(3 * D, D), RGB(225, 0, 0), BFLine (cx + D, BT - 200)-Step(D, D), RGB(225, 0, 0), BFEnd SubPrivate Sub drawway(n)Line (Width/2-3*D/2-2*D,BT-n*D)-Step(7*D,D),BackColor, BF先擦后画Line (Width/2-3*D/2-2*D,BT-n*D)-Step(l1(n)*D, D), ,BFLine (Width/2-3*D/2+5*D,BT-n*D)-Step(-l2(n

11、)*D,D), ,BFEnd SubPrivate Sub Form_KeyPress(KeyAscii As Integer)Select Case KeyAsciiCase Asc(a), Asc(A)cx = cx - DCase Asc(s), Asc(S)cx = cx + DEnd SelectEnd SubPrivate Sub Timer1_Timer()RandomizeFor i = 1 To 19l1(i) = l1(i + 1)l2(i) = l2(i + 1)drawway (i)Next iDol1(20) = Int(Rnd * 5)l2(20) = Int(Rn

12、d * 5)Loop Until (l1(20) + l2(20) = 4) And (l1(20) - l1(19) = 1) And _(l2(20) - l2(19) = 1) And (l1(19) + l2(20) = 4) And _(l1(20) + l2(19) = 4) 这里生成新一层跑道,注意要筛去玩家不可能通过的情况!drawway (20)以上画出跑道drawcartestEnd SubPrivate Sub test()If 3.5*D-Width/2+cxl1(1)*D Then Timer1.Enabled=FalseIf 3.5*D-Width/2+cx+Dl1(2)*D Then Timer1.Enabled=FalseIf 3.5*D-(cx+3*D-Width/2)l2(1)*D Then Timer1.Enabled=FalseIf 3.5*D-(cx+2*D-Width/2)l2(2)*D Then Timer1.Enabled=FalseEnd Sub本文来自编程入门网():http:/

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号