VB编写小游戏的全过程谁告诉我?

来自:    更新日期:早些时候
VB编写小游戏~

窗体放两个Label控件,一个Timer控件:
Dim n As Integer
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyUp
If Label1.Top > 0 Then Label1.Top = Label1.Top - 50
Case vbKeyDown
If Label1.Top < ScaleHeight - Label1.Height Then Label1.Top = Label1.Top + 50
Case vbKeyLeft
If Label1.Left > 0 Then Label1.Left = Label1.Left - 50
Case vbKeyRight
If Label1.Left < ScaleWidth - Label1.Width Then Label1.Left = Label1.Left + 50
End Select
Call check
End Sub
Private Sub check()
If Abs(Label1.Top - Label2.Top) <= 50 And Abs(Label1.Left - Label2.Left) <= 50 Then
n = n + 1
Label2.Move Rnd * ScaleWidth, Rnd * ScaleHeight
End If
End Sub
Private Sub Form_Load()
KeyPreview = True
Randomize
With Label1
.Caption = ""
.BackColor = vbWhite
.Move (ScaleWidth - .Width) / 2, (ScaleHeight - .Height) / 2, 500, 500
End With
With Label2
.Caption = ""
.BackColor = vbYellow
.Move Rnd * ScaleWidth, Rnd * ScaleHeight, 500, 500
End With
Timer1.Interval = 60000
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
MsgBox "这局对准了" & n & "次黄方块"
Unload Me
End Sub

楼上的朋友所说个人认为一些纰漏.
第一,不要在设计时经常改动设计方案,否则工期会延误. 难道在编码和设计的时候经常改动? 在设计的时候改动与后期的改动谁会带来比较大的损失呢?况且软件危机是怎样产生的? 这是软件工程出现的原因吧,所以首先分析好你的游戏框架,多花时间分析上!.
第二,网络版则必须写 软件设计概要书 和 用户使用说明书...任何上规模的软件项目可以不写说明书? 具体点吧,保留下最本质的数据流图,更多的文档资料所带来的结果就是让你的软件更容易维护,即可测性,可修改性,可理解性都必须具备..
如果只是几百或者1千行并且不是太复杂的小游戏的话,并且不希望非常大的扩展下去,那就随便画画草图脑子有个大概思路就差不多可以开始了.
如果楼主想用vb做,那可能不太合适,本人也只是用过它做过一些俄罗斯方块,贪食蛇之类的小游戏还有类似斗地主那样的牌类游戏.
简单的说吧,首先你要知道你想做什么,并且可以用VB实现吗?如果可以继续分析,怎样做? 用什么样的技术?等确定了之后,大概的将编码写在纸上,如果自己觉得逻辑合适就将其输入电脑运行之,并在输入电脑运行之后不段调试尽量多找一些难发现的错误..

开始学vb时,并不知道vb可以做出动画,后来知道通过自编的子函数delay(c的库函数中的该函数)和cls可以做出许多动画,但有一个缺点就是太耗内存,就我个人认为构思应该比编程重要,因为一旦有了一个很好的构思剩下的问题都是技术问题,而我就是喜欢发现新的问题然后再想方设法解决它,通过发现问题和解决问题我可以学到许多很有用的知识和技巧。好了,现在有了一个好的构思就开始进入程序的编制。

  第一步,要做成这个游戏的话必须能使小球有一个判断性的运动,然而如何处理小球的运动呢,很显然delay&cls的方法不再适用,因为整个程序运行时不停的清屏效果将很差,所以我想到了用shape控件来替代用circle命令画的小球,接着要使小球运动起来,这个问题很简单,因为 shape控件有left和top的属性,可以通过对这两个属性的控制可以很轻松的解决小球运动问题。

  第二步,将对小球进行角度控制,角度可以通过shape的属性left和top来反映,通过timer控件使小球的left和top值不断加上一个值或减去一个值,小球的left和top同时改变之后就可以对小球的角度进行控制。到这里已经可以使小球运动起来,接下来的问题就是使小球能进行判断性运动。

  第三步,可以这样对小球进行判断性控制,当小球的left大于窗体的scaleleft时小球的left改变成减去一个值,以此类推,小球的高度也可以进行类似的控制,现在已经很方便的对小球进行判断性运动,到这一步程序已经算是完成了一半。

  第四步,既然小球可以自由的运动了,那就可以产生这样一个想法,当小球的top和left的砖块的top和left值接近到一定的范围的条件成立时使砖块的visible为false,然后小球的top和left加上接触前相应相反的值,就可以使砖块消失同时小球改变运动轨迹,这一步的实现需要解决很多技术性问题,可以在form的load事件里定义两个变量Dwd和Dhd以及两个Boolean量为Dw和Dh,通过Dwd和Dhd来控制小球向左和向上运动,当小球和窗体的边界或和砖块的的边界接触时使Dw和Dh的值进行相应的变化,通过对该两个值的控制可以使小球进行合乎反弹角度的运动,现在程序已经初步成型。

  第五步,要做成这样的一个游戏,必须有一个良好的用户界面,为了使小球能接受用户的控制,我在窗体的下边界放置了一个命令按钮,该命令按钮可以通过方向键来控制,然后再加上一些判断语句使得小球command接触时产生相应的运动,这样一个用户界面就解决了。

  第六步,现在只剩下程序的最后一步,就是生成砖块的排列,砖块可以用命令按钮来替代,然后用循环语句将设置好的command控件数组在程序运行时加载进来,好了,现在已经一切完成.


VB编写小游戏的全过程谁告诉我?视频

相关评论:
  • 19436004742用vb做网络小游戏
    於康该VB做游戏可以是可以。可视化强。主要要学习一下网络操作。呵呵。如果不用控件。你可多看一些网络操作的API。还有,如果是大游戏,你要专用的服务器。其它的问题就太BT了。思路可以这样。用winsock控件联接。可以多联接和单连。然后通过发送数据包。比如。发送一个“jiafen 800”的数据。那么接收端就用 if...

  • 19436004742用VB 制作一娱乐小游戏,请高人帮忙!!
    於康该随机抽取就用随机数函数…至于那个“作弊”很简单,添买号时的输入框用val(选号输入框1.text)与随机生成出来的中奖号码进行对比,if (val(选号输入框1.text) = 中奖号码1) and 中奖号码1<>0 then 中奖号码1 = 中奖号码1 - 1 elseif (val(选号输入框1.text) = 中奖号码1) and 中奖号码1...

  • 19436004742VB编写小游戏
    於康该窗体放两个Label控件,一个Timer控件:Dim n As Integer Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)Select Case KeyCode Case vbKeyUp If Label1.Top > 0 Then Label1.Top = Label1.Top - 50 Case vbKeyDown If Label1.Top < ScaleHeight - Label1.Height Then Label...

  • 19436004742用Vb做一个小游戏
    於康该g_lngGameTime = 0 '清空游戏耗费的秒数g_intDirection = D_DOWN '设定蛇的初始运动方向为下g_intSnakeLength = 4 '设定蛇的初始长度ReDim g_udtSnake(1 To g_intSnakeLength) '重新定义蛇的长度'定义蛇头部的数据With g_udtSnake(SNAKEONE).Snake_OldX = 530.Snake_OldY = 530.Snake_Color = vb...

  • 19436004742用VB制作个小游戏。急急急急急~!!!马上就要交了,随便什么都行,简单的小...
    於康该我是个初学者,期末要交个用VB制作简单的小游戏,拜托先将完整代码写出来,下面再补充说明代码中的步骤注意事项,例如要设置的窗口,按键等,请不要将属性设置也写进代码中!(最好我... 我是个初学者,期末要交个用VB制作简单的小游戏,拜托先将完整代码写出来,下面再补充说明代码中的步骤注意事项,例如要设置的窗口,...

  • 19436004742怎样用VB编写打字小游戏?
    於康该我2年前写的,有点幼稚。别见笑 VERSION 5.00 Begin VB.Form Form1 AutoRedraw = -1 'True Caption = "打字游戏 小游戏而已"ClientHeight = 4800 ClientLeft = 60 ClientTop = 750 ClientWidth = 5610 LinkTopic = "Form1"ScaleHeight = 48...

  • 19436004742用VB语言编写一个猜数字的游戏
    於康该'开始一个新游戏时 View.Enabled = True '可以看答案 List1.Clear '清空列表框 Degree = 0 ' 对随机数生成器做初始化 Randomize Num = 1 Label1.Caption = 0 & “A" & 0 & “B"'电脑给出的每一位数 PcA = Int(9 * Rnd)Do PcB = Int(9 * Rnd)Loop While PcB = PcA Do P...

  • 19436004742VB硬币小游戏,高手帮忙
    於康该VB硬币游戏很简单,核心只要用Rnd函数即可 以下假设有A和B两个角色玩儿硬币游戏,我给你用最简单的代码实现 Dim a As Integer '角色A赢的次数 Dim b As Integer '角色B赢的次数 Dim c As Integer 'c作为硬币正反面 For i=1 To 10 '游戏玩儿10次,算谁赢 c = Rnd * 2 '产生0或1之间的...

  • 19436004742如何用VB做九宫格小游戏
    於康该数独初盘最少可以有17个数,最多32个,9*9的格子 随机取,然后行和列上遍历不能出现重复数字,就ok了 首先,请楼主确认您说的九宫格是 各项之和15呢 还是各行各列0-9各出现一次的数独游戏,这是2种不同的算法,关系到后面设计过程,一定要说清楚。其次,因为不确定算法,我只给出搭建界面的过...

  • 19436004742如何编写一套完整的VB小游戏程序
    於康该如果只是几百或者1千行并且不是太复杂的小游戏的话,并且不希望非常大的扩展下去,那就随便画画草图脑子有个大概思路就差不多可以开始了.如果楼主想用vb做,那可能不太合适,本人也只是用过它做过一些俄罗斯方块,贪食蛇之类的小游戏还有类似斗地主那样的牌类游戏.简单的说吧,首先你要知道你想做什么,并且...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网