日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

魔塔之拯救白娘子~我的第一个VB6+DX8做的小游戏源码~11地图编辑器-鼠标点击

發布時間:2023/12/29 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 魔塔之拯救白娘子~我的第一个VB6+DX8做的小游戏源码~11地图编辑器-鼠标点击 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

魔塔之拯救白娘子 完整工程下載地址:
《魔塔之拯救白娘子》~11地圖編輯器-地圖編輯界面鼠標點擊判斷:
鼠標點擊判斷:
①點擊的對象是卡通圖片切換:完成對3種類型的卡通切換并顯示
②點擊的對象是某個卡通圖片:獲得該開通的編號,顯示相應的信息,比如怪物屬性
③點擊的是地圖界面:根據②的在地圖界面繪制②的卡通并顯示
④其他選擇,比如退出編輯,清空地圖等等。

Sub 地圖編輯界面鼠標點擊判斷() If Running <> 8 Then Exit Sub If Xi.MouseKey(xgL_BUTTON) Then鼠標X坐標 = Xi.MouseX鼠標Y坐標 = Xi.MouseYIf 鼠標X坐標 = 497 Or 鼠標X坐標 > 497 And 鼠標X坐標 < 573 ThenIf 鼠標Y坐標 = 44 Or 鼠標Y坐標 > 44 And 鼠標Y坐標 < 67 Then地圖編輯器界面按鈕按下標志1 = True地圖編輯器界面按鈕按下標志2 = False地圖編輯器界面按鈕按下標志3 = False 地圖編輯器界面_選擇圖形編號 = 1 End IfEnd IfIf 鼠標X坐標 = 582 Or 鼠標X坐標 > 582 And 鼠標X坐標 < 656 ThenIf 鼠標Y坐標 = 44 Or 鼠標Y坐標 > 44 And 鼠標Y坐標 < 67 Then地圖編輯器界面按鈕按下標志1 = False地圖編輯器界面按鈕按下標志2 = True地圖編輯器界面按鈕按下標志3 = False 地圖編輯器界面_選擇圖形編號 = 1 End IfEnd IfIf 鼠標X坐標 = 666 Or 鼠標X坐標 > 666 And 鼠標X坐標 < 742 ThenIf 鼠標Y坐標 = 44 Or 鼠標Y坐標 > 44 And 鼠標Y坐標 < 67 Then地圖編輯器界面按鈕按下標志1 = False地圖編輯器界面按鈕按下標志2 = False地圖編輯器界面按鈕按下標志3 = True 地圖編輯器界面_選擇圖形編號 = 1 End IfEnd If'以上判斷是否按下編輯器界面的3個選項按鈕'以下判斷是否按下清空地圖,保存地圖和載入地圖If 鼠標X坐標 = 174 Or 鼠標X坐標 > 174 And 鼠標X坐標 < 252 ThenIf 鼠標Y坐標 = 455 Or 鼠標Y坐標 > 455 And 鼠標Y坐標 < 478 Then地圖編輯器界面按鈕按下標志_保存地圖 = TrueEnd IfEnd IfIf 鼠標X坐標 = 318 Or 鼠標X坐標 > 318 And 鼠標X坐標 < 395 ThenIf 鼠標Y坐標 = 455 Or 鼠標Y坐標 > 455 And 鼠標Y坐標 < 478 Then地圖編輯器界面按鈕按下標志_清空地圖 = TrueEnd IfEnd IfIf 鼠標X坐標 = 34 Or 鼠標X坐標 > 34 And 鼠標X坐標 < 115 ThenIf 鼠標Y坐標 = 455 Or 鼠標Y坐標 > 455 And 鼠標Y坐標 < 480 ThenIf 地圖編輯器界面按鈕按下標志_載入地圖 = False Then地圖編輯器界面按鈕按下標志_載入地圖 = TrueElse地圖編輯器界面按鈕按下標志_載入地圖 = False 'End IfEnd IfEnd If'退出地圖編輯器,返回游戲第一頁If 鼠標X坐標 = 543 Or 鼠標X坐標 > 543 And 鼠標X坐標 < 613 ThenIf 鼠標Y坐標 = 462 Or 鼠標Y坐標 > 462 And 鼠標Y坐標 < 484 ThenIf MsgBox("你是否放棄地圖編輯,返回主菜單?如果沒有保存地圖,請點否!", vbQuestion Or vbYesNo, Me.Caption) = vbYes ThenRunning = 9: 讀檔標志 = False: 判斷running狀態_初始化: BackPic.LoadGraph "image\魔塔背景\魔塔背景1.jpg", xgBLACKEnd If End IfEnd If'以下判斷是否選擇了某個土塊'檢測第1行1-9Dim 地圖編輯器界面_鼠標選擇范圍X坐標 As SingleDim 地圖編輯器界面_鼠標選擇范圍y坐標 As SingleDim j As Integer地圖編輯器界面_鼠標選擇范圍X坐標 = 474地圖編輯器界面_鼠標選擇范圍y坐標 = 102For j = 0 To 8If 鼠標X坐標 = 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 Or 鼠標X坐標 > 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 And 鼠標X坐標 < 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 + 26 ThenIf 鼠標Y坐標 = 地圖編輯器界面_鼠標選擇范圍y坐標 Or 鼠標Y坐標 > 地圖編輯器界面_鼠標選擇范圍y坐標 And 鼠標Y坐標 < 地圖編輯器界面_鼠標選擇范圍y坐標 + 32 Then地圖編輯器界面_選擇圖形編號 = j + 1End If End IfNext '檢測第2行10-19地圖編輯器界面_鼠標選擇范圍X坐標 = 474地圖編輯器界面_鼠標選擇范圍y坐標 = 146 'For j = 0 To 8If 鼠標X坐標 = 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 Or 鼠標X坐標 > 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 And 鼠標X坐標 < 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 + 26 ThenIf 鼠標Y坐標 = 地圖編輯器界面_鼠標選擇范圍y坐標 Or 鼠標Y坐標 > 地圖編輯器界面_鼠標選擇范圍y坐標 And 鼠標Y坐標 < 地圖編輯器界面_鼠標選擇范圍y坐標 + 32 Then地圖編輯器界面_選擇圖形編號 = j + 1 + 9End If End IfNext'檢測第3行20-29地圖編輯器界面_鼠標選擇范圍X坐標 = 474地圖編輯器界面_鼠標選擇范圍y坐標 = 185 'For j = 0 To 8If 鼠標X坐標 = 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 Or 鼠標X坐標 > 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 And 鼠標X坐標 < 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 + 26 ThenIf 鼠標Y坐標 = 地圖編輯器界面_鼠標選擇范圍y坐標 Or 鼠標Y坐標 > 地圖編輯器界面_鼠標選擇范圍y坐標 And 鼠標Y坐標 < 地圖編輯器界面_鼠標選擇范圍y坐標 + 32 Then地圖編輯器界面_選擇圖形編號 = j + 1 + 18If 地圖編輯器界面按鈕按下標志1 = True And 地圖編輯器界面_選擇圖形編號 > 25 Then 地圖編輯器界面_選擇圖形編號 = 25: Exit ForEnd If End IfNext'檢測第4行30-39 地圖編輯器界面_鼠標選擇范圍X坐標 = 474地圖編輯器界面_鼠標選擇范圍y坐標 = 225 'For j = 0 To 6If 鼠標X坐標 = 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 Or 鼠標X坐標 > 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 And 鼠標X坐標 < 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 + 26 ThenIf 鼠標Y坐標 = 地圖編輯器界面_鼠標選擇范圍y坐標 Or 鼠標Y坐標 > 地圖編輯器界面_鼠標選擇范圍y坐標 And 鼠標Y坐標 < 地圖編輯器界面_鼠標選擇范圍y坐標 + 32 Then地圖編輯器界面_選擇圖形編號 = j + 1 + 27If 地圖編輯器界面按鈕按下標志2 = True And 地圖編輯器界面_選擇圖形編號 > 28 Then 地圖編輯器界面_選擇圖形編號 = 28: Exit ForEnd If End IfNext''檢測第5行40-49 '地圖編輯器界面_鼠標選擇范圍X坐標 = 474 ' 地圖編輯器界面_鼠標選擇范圍y坐標 = 225 '' ' For j = 0 To 6 ' ' If 鼠標X坐標 = 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 Or 鼠標X坐標 > 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 And 鼠標X坐標 < 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 + 26 Then ' ' If 鼠標Y坐標 = 地圖編輯器界面_鼠標選擇范圍y坐標 Or 鼠標Y坐標 > 地圖編輯器界面_鼠標選擇范圍y坐標 And 鼠標Y坐標 < 地圖編輯器界面_鼠標選擇范圍y坐標 + 32 Then ' ' 地圖編輯器界面_選擇圖形編號 = j + 1 + 27 ' ' 'End If 'End If ' ' Next'以上判斷是否選擇繪圖圖形快'以下判斷選擇了圖形快以后進行繪圖工作 ' 當前K=1當前J=0當前圖片編號:0圖片 X坐標:0圖片Y坐標:32 '當前K=1當前J=1當前圖片編號:1圖片 X坐標:32圖片Y坐標:32 '當前K=1當前J=2當前圖片編號:1圖片 X坐標:64圖片Y坐標:32 '當前K=1當前J=3當前圖片編號:1圖片 X坐標:96圖片Y坐標:32 '當前K=1當前J=4當前圖片編號:1圖片 X坐標:128圖片Y坐標:32 '當前K=1當前J=5當前圖片編號:1圖片 X坐標:160圖片Y坐標:32 '當前K=1當前J=6當前圖片編號:1圖片 X坐標:192圖片Y坐標:32 '當前K=1當前J=7當前圖片編號:1圖片 X坐標:224圖片Y坐標:32 '當前K=1當前J=8當前圖片編號:1圖片 X坐標:256圖片Y坐標:32 '當前K=1當前J=9當前圖片編號:1圖片 X坐標:288圖片Y坐標:32 '當前K=1當前J=10當前圖片編號:1圖片 X坐標:320圖片Y坐標:32 '當前K=1當前J=11當前圖片編號:1圖片 X坐標:352圖片Y坐標:32 '當前K=1當前J=12當前圖片編號:0圖片 X坐標:384圖片Y坐標:32''1-29為基本道具;'30-79為道具 ;'80-99為怪物Dim tempX As Integer '地圖X邊界判斷'Dim tempY As Integer '地圖y邊界判斷Dim m() As StringDim k As IntegerFor k = 1 To 11'判斷第一行地圖編輯器界面_鼠標選擇范圍X坐標 = 32地圖編輯器界面_鼠標選擇范圍y坐標 = 32 * kFor j = 0 To 10If 鼠標X坐標 = 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 Or 鼠標X坐標 > 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 And 鼠標X坐標 < 地圖編輯器界面_鼠標選擇范圍X坐標 + j * 32 + 32 ThenIf 鼠標Y坐標 = 地圖編輯器界面_鼠標選擇范圍y坐標 Or 鼠標Y坐標 > 地圖編輯器界面_鼠標選擇范圍y坐標 And 鼠標Y坐標 < 地圖編輯器界面_鼠標選擇范圍y坐標 + 32 Then'地圖編輯器界面_選擇圖形編號 = j + 1 + 27' 地圖編輯器界面_圖形說明'地圖數據(1) = "0,1,1,1,1,1,1,1,1,1,1,1,0"m = Split(地圖數據(k), ",")tempX = 鼠標X坐標 / 32If tempX > 11 Then tempX = 11m(tempX) = 地圖編輯器界面_選擇圖形編號If 地圖編輯器界面按鈕按下標志2 = True Thenm(tempX) = m(tempX) + 29 ' 地圖編輯器界面_選擇圖形編號 = 地圖編輯器界面_選擇圖形編號 + 29End IfIf 地圖編輯器界面按鈕按下標志3 = True Thenm(tempX) = m(tempX) + 79 ' 地圖編輯器界面_選擇圖形編號 = 地圖編輯器界面_選擇圖形編號 + 79End If地圖數據(k) = m(0) & "," & m(1) & "," & m(2) & "," & m(3) & "," & m(4) & "," & m(5) & "," & m(6) & "," & m(7) & "," & m(8) & "," & m(9) & "," & m(10) & "," & m(11) & "," & m(12)寫臨時地圖數據 (0)地圖編輯器界面_臨時地圖標志 = TrueEnd If End IfNext jNext k'以下處理載入地圖操作 Dim 偏移量X As Integer '地圖X邊界判斷Dim 偏移量Y As Integer '地圖y邊界判斷'判斷第一行32-43,503-511 ' 地圖編輯器界面_鼠標選擇范圍X坐標 = 32 ' 地圖編輯器界面_鼠標選擇范圍y坐標 = 503For j = 1 To 地圖最大層號If j < 30 Then偏移量X = 10 + 20 * j: 偏移量Y = 503 Else 偏移量X = 10 + 20 * (j - 29): 偏移量Y = 530End IfIf 鼠標X坐標 = 偏移量X Or 鼠標X坐標 > 偏移量X And 鼠標X坐標 < 偏移量X + 15 ThenIf 鼠標Y坐標 = 偏移量Y Or 鼠標Y坐標 > 偏移量Y And 鼠標Y坐標 < 偏移量Y + 15 Then'處理點擊加載地圖事件當前正在編輯的地圖編號 = j: 地圖編輯器界面_修正地圖 = TrueIf 地圖編輯器界面_修正地圖 = True And 當前正在編輯的地圖編號 > 0 And 地圖編輯器界面按鈕按下標志_載入地圖 = True Then讀取地圖數據 (當前正在編輯的地圖編號)寫臨時地圖數據 (0)End IfExit ForEnd If End IfNext j'Next k End If End Sub

本段代碼雖然長,但結構非常清晰,當然寫 也很隨意,但還是很好懂的,在此不多說。

總結

以上是生活随笔為你收集整理的魔塔之拯救白娘子~我的第一个VB6+DX8做的小游戏源码~11地图编辑器-鼠标点击的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。