魔塔之拯救白娘子~我的第一個VB6+DX8做的小遊戲原始碼~17開始遊戲-移動方向處理
阿新 • • 發佈:2021-01-21
魔塔之拯救白娘子 完整工程下載地址:
《魔塔之拯救白娘子》流程控制分析3:
男主角移動及方向處理:
Sub 男主角移動及方向處理()
If Running <> 1 Then Exit Sub
'男主角移動.移動速度 = 0
If 自動尋路開啟標誌 = True Then Exit Sub
If 戰鬥開始標誌 = True Then Exit Sub
If 對話視窗顯示標誌 = True Then Exit Sub
If 商店對話視窗顯示標誌 = True Then Exit Sub
If 跳樓對話視窗顯示標誌 = True Then Exit Sub
'移動方向
' 2 上
' 1左 0 右3
' 下4
'
'男主角移動.X座標 = 地圖XY座標.mapX座標(10)
'男主角移動.Y座標 = 地圖XY座標.mapY座標(6)
If Xi.KeyInput(DIK_J) Then '按下J鍵顯示跳樓視窗
If 勇者包裹.風之羅盤數量 = True Then
'Debug.Print "地圖層號" & 地圖層號 & "已走過的地圖層號" & 已走過的地圖層號 & "地圖當前層號 " & 遊戲進度.地圖當前層號
If 已走過的地圖層號 < 地圖層號 Then
已走過的地圖層號 = 地圖層號
End If
跳樓對話視窗顯示標誌 = True
Form_跳樓.Show
End If
End If
If Xi.KeyInput(DIK_K) Then '按下k鍵顯示怪物資訊
If 勇者包裹.怪物手冊數量 = True Then
開啟關閉顯示怪物資訊 = 開啟關閉顯示怪物資訊 + 1
If 開啟關閉顯示怪物資訊 > 1 Then 開啟關閉顯示怪物資訊 = 0
End If
End If
If Xi.KeyInput( DIK_LEFT) Or Xi.KeyInput(DIK_A) Then '向左移動,那麼移動方向=1
男主角移動.移動方向 = 1
男主角移動.移動速度 = 男主角移動.移動速度 + 1
End If
'右
If Xi.KeyInput(DIK_RIGHT) Or Xi.KeyInput(DIK_D) Then
男主角移動.移動方向 = 3
男主角移動.移動速度 = 男主角移動.移動速度 + 1
End If
'上
If Xi.KeyInput(DIK_UP) Or Xi.KeyInput(DIK_W) Then
男主角移動.移動方向 = 2
男主角移動.移動速度 = 男主角移動.移動速度 + 1
End If
'下
If Xi.KeyInput(DIK_DOWN) Or Xi.KeyInput(DIK_S) Then
男主角移動.移動方向 = 4
男主角移動.移動速度 = 男主角移動.移動速度 + 1
End If
男主角移動.移動步數 = 1 '通過鍵盤按動的方式,男主角移動步驟都是1,如果是滑鼠移動的話,需要進行A尋路檢測
End Sub