VisualFreeBasic游戏趣味编程_10.7_多关卡与增加游戏难度

2026-1-22 / 0 评论 / 59 阅读

首先,定义level表示当前为第几关:

Dim Shared level As Long = 1  ' 当前关卡序号

在start()函数中,随着level的增加,当前关的游戏总时长越来越短:

maxTime = 200 - level*10

show()函数中显示当前为第几关、已得分数、得到多少分可以进入下一关:

   gg.DrawTextS 0, 242, 窗口宽度, 20, "当前第" & level & "关,已得" & score & "分,达到" & Int(0.9 *noZeroBlockNum) & "分进入下一关", DT_CENTER Or DT_VCENTER Or DT_SINGLELINE

updateWithoutInput()函数中,如果得分达到要求,则将level加1,重新计时,并调用startup()函数进入下一关;如果得分没有达到要求且时间到了,则继续重新开始这一关的游戏:

Sub updateWithoutInput() '与输入无关的更新
   If score >= 0.9 *noZeroBlockNum Then ' 得分达到要求
      level += 1  '如果得分达到要求,进入下一关
      startup() '调用初始化函数,重新开始游戏
   ElseIf maxTime - (GetTickCount - remainTime) / 1000 < 0 Then  '得分没有达到要求且时间到了
      startup() '调用初始化函数,重新开始游戏
   End If
   Sleep 10 '暂停若干毫秒
End Sub

评论一下?

OωO
取消