- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VB 贪吃蛇 单人版游戏(二)
文章来源: CSDN 文章作者: Bugs1984
《主窗体 FrmPlay 代码》——
Private blnStartGame As Boolean 标记是否已经开始 新游戏(T=游戏已经开始)
Private blnPause As Boolean 标记当前是否处于暂停状态(T=暂停)
Private blnThroughWall As Boolean 标记是否为穿墙模式(T=可以穿墙)
Private blnOnKeyEvents As Boolean 标记是否能够 接收键盘事件(T=可以接收),此变量可防止 Form_KeyDown()事件重复执行
Private Map_Width As Integer 地图宽度(象素)
Private Map_Height As Integer 地图高度(象素)
Private Map_Empty_Color 地图-空白地颜色
Private Map_Bomb_Color 地图-炸弹颜色
Private Map_Food_Color 地图-食物颜色
Private MapProperty() As Integer 记录地图各个网格的属性
Private curEatCount As Integer 记录 每次出现奖品之前,一共吃进多少物品(包括食物和炸弹,奖品不计),当奖品出现后,此变量值变为 零0,然后进入下一次统计
Private curLevel As Integer 当前级别
Private P1 As thePlayerInfo 记录Player1 的信息
Private Snake_P1() As thePosition 记录蛇身坐标
Private PrizePos As thePosition 记录奖品的坐标
Private Record(9) As theRecord 存放前十名的 得分记录信息
Option Explicit
Private Sub cmdHelp_Click()
If blnPause = False Then Call Form_KeyDown(KEY_PAUSE, 0) 如果游戏正在进行,则发送“暂停”按键事件,暂停游戏
frmHelp.Show
End Sub
开始新游戏
Private Sub cmdNewGame_Click()
Dim i As Integer
Randomize 重新生成随机数列
blnStartGame = Not blnStartGame
If blnStartGame Then
cmdNewGame.Caption = 停止
Else
cmdNewGame.Caption = 新游戏
End If
中止游戏
If blnStartGame = False Then
如果上一次的奖品还没有消失(以 PrizeRemain 0 为标志),就先清除旧的奖品,然后才显示新的奖品
If PrizeRemain 0 Then Call ShowPrize(False)
picDisplay.Cls
P1.Score = 0 玩家的初始分数
P1.Food = 0
P1.Bomb = 0
curEatCount = 0
PrizeRemain = 0
blnPause = False
lblPause.Visible = False
lblScore.Caption = P1.Score
lblFoodCount.Caption = P1.Food
lblBombCount.Caption = P1.Bomb
P1.blnGameOver = True
HscrLevel.Enabled = True
tmrMove.Enabled = False
Exit Sub
End If
blnThroughWall = True 穿墙模式
blnOnKeyEvents = True
暂时使用默认填充色
Map_Bomb_Color = BOMB_COLOR
Map_Empty_Color = EMPTY_COLOR
Map
文档评论(0)