亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? blt.frm

?? 推箱子的游戲VB源代碼.適合于有一定VB經驗的人閱讀參考
?? FRM
?? 第 1 頁 / 共 2 頁
字號:
                    Else
                        'hit ground so add to map
                        map((blockx%(a%) - 300) \ 60, (blocky%(a%) - 5) \ 60) = blockcell%(a%)
                        blockmode%(a%) = 0 'stop falling
                        checkforgroup
                    End If
            End Select
        End If
    Next
    
    
    'place the character
    Select Case mode%
        Case 1, 2
        Case 3, 4 'fall
            anim% = anim% + 1
            If anim% > bcells%(mode%) Then anim% = 1
            If map((mapl% + 300) \ 60, (mapv% + 10) \ 60) = 0 And map((mapl% + 355) \ 60, (mapv% + 10) \ 60) = 0 Then
                mapv% = mapv% + 10
            Else
                If mode% = 3 Then mode% = 6 Else mode% = 8 'land
            End If
            If mapv% > 350 Then
                mapv% = 350
                If mode% = 3 Then mode% = 6 Else mode% = 8 'land
            End If
        Case 5, 7 'jump left or right
            anim% = anim% + 1
            If anim% > bcells%(mode%) Then
                If mode% = 5 Then mode% = 3 Else mode% = 4
                anim% = 1
            Else
                If anim% <= 15 Then 'on the way up
                    If mode% = 5 Then 'left
                        If map((mapl% + 300) \ 60, (mapv% - 60) \ 60) = 0 And map((mapl% + 355) \ 60, (mapv% - 60) \ 60) = 0 Then
                            mapv% = mapv% + byo%(mode%, anim%)
                            If mapv% < 1 Then mapv% = 1
                        Else
                            anim% = 15
                        End If
                        If map((mapl% + 300 + bxo%(mode%, anim%)) \ 60, mapv% \ 60) = 0 And map((mapl% + 300 + bxo%(mode%, anim%)) \ 60, (mapv% - 50) \ 60) = 0 Then
                            mapl% = mapl% + bxo%(mode%, anim%)
                        Else
                            mode% = 3: anim% = 1
                            If animshift% Then startmove 1
                        End If
                    Else 'right
                        If map((mapl% + 355) \ 60, (mapv% - 60) \ 60) = 0 And map((mapl% + 300) \ 60, (mapv% - 60) \ 60) = 0 Then
                            mapv% = mapv% + byo%(mode%, anim%)
                            If mapv% < 1 Then mapv% = 1
                        Else
                            anim% = 15
                        End If
                        If map((mapl% + 355 + bxo%(mode%, anim%)) \ 60, mapv% \ 60) = 0 And map((mapl% + 355 + bxo%(mode%, anim%)) \ 60, (mapv% - 50) \ 60) = 0 Then
                            mapl% = mapl% + bxo%(mode%, anim%)
                            If mapv% < 1 Then mapv% = 1
                        Else
                            mode% = 4: anim% = 1
                            If animshift% Then startmove 2
                        End If
                    End If
                    
                Else 'on the way down
                    If mode% = 5 Then 'left
                        If map((mapl% + 300) \ 60, (mapv% + 15) \ 60) = 0 And map((mapl% + 355) \ 60, (mapv% + 15) \ 60) = 0 Then
                            mapv% = mapv% + byo%(mode%, anim%)
                            If mapv% < 1 Then mapv% = 1
                        Else
                            mode% = 6: anim% = 1 'land
                        End If
                        If map((mapl% + 300 + bxo%(mode%, anim%)) \ 60, mapv% \ 60) = 0 And map((mapl% + 300 + bxo%(mode%, anim%)) \ 60, (mapv% - 50) \ 60) = 0 Then
                            mapl% = mapl% + bxo%(mode%, anim%)
                        Else
                            mode% = 3: anim% = 1 'fall
                            If animshift% Then startmove 1
                        End If
                    Else 'right
                        If map((mapl% + 355) \ 60, (mapv% + 15) \ 60) = 0 And map((mapl% + 300) \ 60, (mapv% + 15) \ 60) = 0 Then
                            mapv% = mapv% + byo%(mode%, anim%)
                            If mapv% < 1 Then mapv% = 1
                        Else
                            mode% = 4: anim% = 1 'fall
                        End If
                        If map((mapl% + 355 + bxo%(mode%, anim%)) \ 60, mapv% \ 60) = 0 And map((mapl% + 355 + bxo%(mode%, anim%)) \ 60, (mapv% - 50) \ 60) = 0 Then
                            mapl% = mapl% + bxo%(mode%, anim%)
                        Else
                            mode% = 4: anim% = 1 'fall
                            If animshift% Then startmove 2
                        End If
                    End If
                End If
            End If
        Case 9, 10 'shift blocks
            If anim% = 1 Then 'start pushing
                'make blocks moveable
                If mode% = 9 Then startmove 1 Else startmove 2
            End If
            anim% = anim% + 1
            If anim% > bcells%(mode%) Then
                anim% = 1
                If mode% = 9 Then mode% = 1 Else mode% = 2
            End If
        Case Else
            anim% = anim% + 1
            If anim% > bcells%(mode%) Then
                Select Case mode%
                    Case 6: mode% = 1 'land now walk left
                    Case 8: mode% = 2 'land now walk right
                    Case Else: mode% = 1
                End Select
                anim% = 1
            End If
    End Select
    
        
    sp% = bchar%(mode%, anim%)
    If sp% = 0 Then sp% = 1
    
    t.top = spny%(sp%)
    t.left = spnx%(sp%)
    t.bottom = spny%(sp%) + spnh%(sp%)
    t.Right = spnx%(sp%) + spnw%(sp%)
       
   ddsBack.BltFast 295 + spnox%(sp%), mapv% + spnoy%(sp%) + 10, aDDS, t, DDBLTFAST_SRCCOLORKEY Or DDBLTFAST_WAIT
    
    'If Err.Number <> 0 Then
        ' Just in case
    '    Stop
    'End If
    ' Flip the buffers
    Do
        ddsFront.Flip Nothing, 0
        If Err.Number = DDERR_SURFACELOST Then ddsFront.Restore
    Loop Until Err.Number = 0
        
End Sub

Private Sub Form_Unload(Cancel As Integer)

End Sub

Private Sub Timer1_Timer()
    Timer1.Enabled = 0

    'Render loop
    While Not blnend
        DrawNextFrame
        u = DoEvents
    Wend
    
    'clean up
    Set aDDS = Nothing
    Set tDDS = Nothing
    dd.FlipToGDISurface
    dd.RestoreDisplayMode
    dd.SetCooperativeLevel 0, DDSCL_NORMAL
    Set ddsBack = Nothing
    Set ddsFront = Nothing
    Set dd = Nothing
    ShowCursor 1
    
    Unload frmBlt

End Sub
Sub loadlevel(mapnum%)
Dim a%, b%, nfile%
mapv% = 0
mapl% = 0
mode% = 3
Open App.Path & "\map.dat" For Random As #1 Len = 2
nfile% = LOF(1) / 2
blockcount% = 0
For a% = 0 To 39
    For b% = 0 To 5
        Get #1, 1 + (a% + (b% * 40)) + (mapnum% - 1) * 2500, map(a%, b%)
        If map(a%, b%) > 3 Then blockcount% = blockcount% + 1
    Next
Next

Close #1
For a% = 1 To 30
    blockmode%(a%) = 0
Next
End Sub

Sub drawblock(cl%, ByVal xx%, ByVal yy%)
Dim a%, b%
Dim t As RECT
    
Select Case cl%
    Case 0
        t.top = -99
    Case 1:
        t.top = 0
        t.left = 0
        t.bottom = 75
        t.Right = 80
    Case 2:
        t.top = 0
        t.left = 80
        t.bottom = 75
        t.Right = 160
    Case 3:
        t.top = 0
        t.left = 160
        t.bottom = 75
        t.Right = 240
    Case 4:
        t.top = 75
        t.left = 0
        t.bottom = 150
        t.Right = 80
    Case 5:
        t.top = 75
        t.left = 80
        t.bottom = 150
        t.Right = 160
    Case 6:
        t.top = 75
        t.left = 160
        t.bottom = 150
        t.Right = 240
End Select
If t.top >= 0 Then
    If xx% < 0 Then
        t.left = t.left + Abs(xx%)
        xx% = 0
    End If
    If xx% > 560 Then
        t.Right = t.Right - (xx% - 560)
    End If
    If t.Right > t.left Then ddsBack.BltFast xx%, yy%, tDDS, t, DDBLTFAST_SRCCOLORKEY Or DDBLTFAST_WAIT
End If
End Sub
Sub startmove(initdir%)
Dim cbx%, cby%, a%
If initdir% = 1 Then cbx% = (mapl% + 290) \ 60 Else cbx% = (mapl% + 369) \ 60
cby% = (mapv% - 30) \ 60
If map(cbx%, cby%) > 3 Then 'moveable block
    If (initdir% = 1 And map%(cbx% - 1, cby%) = 0) Or (initdir% = 2 And map%(cbx% + 1, cby%) = 0) Then
        For a% = 1 To 30
            If blockmode%(a%) = 0 Then 'spare block
                blockx%(a%) = cbx% * 60 + 300
                blocky%(a%) = cby% * 60 + 60
                blockcell%(a%) = map(cbx%, cby%)
                If initdir% = 1 Then blockmode%(a%) = 1 Else blockmode%(a%) = 2
                Exit For
            End If
        Next
        map(cbx%, cby%) = 0 'remove block of map, as now is in motion
        'when the block stops, it will be readded to the map
    End If
End If

End Sub

Sub checkforgroup()
Dim a%, b%, cc%, ct%, flag%
For a% = 0 To 39
    ct% = 0: cc% = 0
    For b% = 0 To 5
        If map(a%, b%) > 3 Then
            If map(a%, b%) <> cc% Then ct% = 0
            cc% = map(a%, b%)
            ct% = ct% + 1
            If ct% = 3 Then
                map(a%, b%) = 0
                map(a%, b% - 1) = 0
                map(a%, b% - 2) = 0
                
                checkabove a%, b%
                checkabove a%, b% - 1
                checkabove a%, b% - 2
                
                flag% = True
                blockcount% = blockcount% - 3
                If blockcount% < 3 Then
                    level% = level% + 1
                    loadlevel level%
                End If
                Exit For
            End If
        Else
            ct% = 0
        End If
    Next
Next
If Not flag% Then
    For b% = 0 To 5
        ct% = 0: cc% = 0
        For a% = 0 To 39
            If map(a%, b%) > 3 Then
                If map(a%, b%) <> cc% Then ct% = 0
                cc% = map(a%, b%)
                ct% = ct% + 1
                If ct% = 3 Then
                    map(a%, b%) = 0
                    map(a% - 1, b%) = 0
                    map(a% - 2, b%) = 0
                
                    checkabove a%, b%
                    checkabove a% - 1, b%
                    checkabove a% - 2, b%
                    
                    flag% = True
                    blockcount% = blockcount% - 3
                    If blockcount% < 3 Then
                        level% = level% + 1
                        loadlevel level%
                    End If
                    Exit For
                End If
            Else
                ct% = 0
            End If
        Next
    Next
End If
End Sub
Sub checkabove(cbx%, ByVal cby%)
Dim b%
Do While cby% > 0
    cby% = cby% - 1
    If map%(cbx%, cby%) > 3 Then
        For b% = 1 To 30
            If blockmode%(b%) = 0 Then 'spare block
                blockx%(b%) = cbx% * 60 + 300
                blocky%(b%) = cby% * 60 + 60
                blockcell%(b%) = map(cbx%, cby%)
                map(cbx%, cby%) = 0
                blockmode%(b%) = 3 'fall
                Exit For
            End If
        Next
    Else
        Exit Do
    End If
Loop
End Sub

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人一区二区三区视频在线观看 | 亚洲成人黄色小说| 26uuu久久综合| 欧美一级精品在线| 日韩午夜激情电影| 日韩欧美视频一区| 欧美不卡激情三级在线观看| 欧美电影免费观看高清完整版在 | 亚洲欧美综合在线精品| 中文字幕va一区二区三区| 国产精品免费久久久久| 国产精品美女久久久久久久| 国产精品人成在线观看免费| 国产精品美女久久久久久2018| 日本一区二区成人在线| 中文字幕日韩一区| 一区二区在线观看免费视频播放| 亚洲精品国产a| 日韩电影在线免费看| 热久久久久久久| 久久av中文字幕片| 国产 日韩 欧美大片| 99国产精品久久| 欧美日韩在线综合| 欧美一区二区三区人| 国产亚洲精品中文字幕| 亚洲视频在线一区二区| 亚洲制服欧美中文字幕中文字幕| 五月婷婷久久综合| 国产美女精品在线| 99久久免费视频.com| 在线观看91精品国产入口| 欧美丰满美乳xxx高潮www| 欧美变态tickling挠脚心| 国产精品视频第一区| 亚洲国产中文字幕| 久久97超碰色| 99精品视频在线观看| 欧美精品一卡二卡| 国产亚洲一区二区三区在线观看| 亚洲蜜臀av乱码久久精品蜜桃| 亚洲va欧美va国产va天堂影院| 久久99久久精品| 91丝袜高跟美女视频| 日韩欧美色综合网站| 国产精品福利一区| 热久久久久久久| 91看片淫黄大片一级在线观看| 日韩一级免费观看| 国产精品女同互慰在线看| 午夜av一区二区| thepron国产精品| 欧美一区二区三区四区视频| 国产精品国产自产拍高清av | 成人性视频免费网站| 欧美精品在线一区二区| 国产精品网站在线| 蜜臀va亚洲va欧美va天堂| 波多野结衣在线一区| 欧美成人r级一区二区三区| 综合色中文字幕| 久久99日本精品| 91精品91久久久中77777| 2023国产一二三区日本精品2022| 亚洲资源在线观看| 成人免费视频一区二区| 日韩欧美不卡在线观看视频| 亚洲天堂久久久久久久| 国产露脸91国语对白| 88在线观看91蜜桃国自产| 综合久久久久久久| 国产精品一区三区| 日韩欧美在线123| 一区二区激情小说| 波多野洁衣一区| 久久久久久一级片| 日韩精品亚洲一区二区三区免费| 波多野结衣的一区二区三区| 久久夜色精品国产噜噜av| 首页亚洲欧美制服丝腿| 在线观看日韩电影| 亚洲欧美福利一区二区| 北岛玲一区二区三区四区| 久久亚洲二区三区| 麻豆成人综合网| 777久久久精品| 丝袜美腿成人在线| 欧美日韩一级视频| 一级日本不卡的影视| 北条麻妃国产九九精品视频| 国产精品人妖ts系列视频| 国产很黄免费观看久久| 精品国产91久久久久久久妲己 | 91国产免费看| 亚洲色图在线播放| 91亚洲国产成人精品一区二区三| 国产精品水嫩水嫩| 成人sese在线| 日韩久久一区二区| 91在线视频免费观看| 亚洲欧洲99久久| 91在线丨porny丨国产| 亚洲美女淫视频| 欧美亚洲综合久久| 亚洲线精品一区二区三区| 成人黄色国产精品网站大全在线免费观看| 亚洲精品在线免费观看视频| 极品少妇一区二区三区精品视频| 日韩一区二区三区三四区视频在线观看| 亚洲国产视频直播| 91精品国产欧美日韩| 蜜桃91丨九色丨蝌蚪91桃色| 欧美一区二区三区四区高清| 麻豆91在线播放| 久久九九久久九九| 国产盗摄视频一区二区三区| 国产精品色哟哟网站| 91免费看片在线观看| 亚洲韩国精品一区| 欧美一个色资源| 韩国成人在线视频| 国产精品全国免费观看高清 | 中文字幕高清不卡| 99精品一区二区三区| 亚洲一区二区三区自拍| 5858s免费视频成人| 国内成人精品2018免费看| 国产丝袜美腿一区二区三区| 91网站黄www| 午夜婷婷国产麻豆精品| 精品区一区二区| 国产99久久久国产精品| 亚洲日本在线视频观看| 欧美日韩成人综合在线一区二区| 久久草av在线| 综合分类小说区另类春色亚洲小说欧美 | 久久精品国产99久久6| 国产欧美精品一区二区三区四区| 91色porny蝌蚪| 秋霞成人午夜伦在线观看| 国产日韩精品一区二区浪潮av| 色综合久久久久久久久久久| 日本欧美加勒比视频| 国产精品理伦片| 91精品国产综合久久久久久漫画| 国产精品一区二区久激情瑜伽| 一区二区激情视频| 久久免费视频一区| 欧美日韩亚洲综合在线| 国产福利91精品| 亚洲国产日产av| 国产欧美日韩视频一区二区| 欧美午夜一区二区| 国产精品1区二区.| 天天操天天干天天综合网| 中文在线一区二区| 91麻豆精品国产91久久久久久久久| 成人美女在线观看| 免费的国产精品| 亚洲另类在线制服丝袜| 久久综合成人精品亚洲另类欧美 | 69堂成人精品免费视频| 成人app网站| 国内精品自线一区二区三区视频| 亚洲一区二区三区四区五区中文 | 亚洲人成影院在线观看| 久久蜜桃一区二区| 欧美日韩性生活| 国产精品99久| 美腿丝袜一区二区三区| 一区二区三区久久久| 久久精品这里都是精品| 91 com成人网| 色婷婷亚洲综合| 成人免费三级在线| 久久99国产精品久久99| 欧美成人a∨高清免费观看| 国产麻豆精品95视频| 久久精品人人做| 日韩福利视频网| 日韩欧美在线1卡| 亚洲在线免费播放| 久久精品噜噜噜成人88aⅴ| 成人爽a毛片一区二区免费| 久久精品亚洲麻豆av一区二区| 成人一二三区视频| 国产欧美精品一区二区色综合朱莉| 免费在线观看视频一区| 色老综合老女人久久久| 国产精品素人一区二区| 日韩精品久久理论片| 色噜噜狠狠成人网p站| 亚洲码国产岛国毛片在线| 国产精品996| 欧美国产禁国产网站cc| 91在线国内视频| 亚洲一区在线观看网站| 91免费看`日韩一区二区| 一区二区免费看| 欧美精品亚洲一区二区在线播放|