魔塔之拯救白娘子 完整工程下載地址:
《魔塔之拯救白娘子》~11地圖編輯器-地圖編輯界面鼠標(biāo)點(diǎn)擊判斷:
鼠標(biāo)點(diǎn)擊判斷:
①點(diǎn)擊的對象是卡通圖片切換:完成對3種類型的卡通切換并顯示
②點(diǎn)擊的對象是某個(gè)卡通圖片:獲得該開通的編號,顯示相應(yīng)的信息,比如怪物屬性
③點(diǎn)擊的是地圖界面:根據(jù)②的在地圖界面繪制②的卡通并顯示
④其他選擇,比如退出編輯,清空地圖等等。
Sub 地圖編輯界面鼠標(biāo)點(diǎn)擊判斷
()
If Running
<> 8 Then Exit Sub
If Xi.MouseKey
(xgL_BUTTON
) Then鼠標(biāo)X坐標(biāo)
= Xi.MouseX鼠標(biāo)Y坐標(biāo)
= Xi.MouseY
If 鼠標(biāo)X坐標(biāo)
= 497 Or 鼠標(biāo)X坐標(biāo)
> 497 And 鼠標(biāo)X坐標(biāo)
< 573 ThenIf 鼠標(biāo)Y坐標(biāo)
= 44 Or 鼠標(biāo)Y坐標(biāo)
> 44 And 鼠標(biāo)Y坐標(biāo)
< 67 Then地圖編輯器界面按鈕按下標(biāo)志
1 = True地圖編輯器界面按鈕按下標(biāo)志
2 = False地圖編輯器界面按鈕按下標(biāo)志
3 = False
地圖編輯器界面_選擇圖形編號
= 1
End IfEnd IfIf 鼠標(biāo)X坐標(biāo)
= 582 Or 鼠標(biāo)X坐標(biāo)
> 582 And 鼠標(biāo)X坐標(biāo)
< 656 ThenIf 鼠標(biāo)Y坐標(biāo)
= 44 Or 鼠標(biāo)Y坐標(biāo)
> 44 And 鼠標(biāo)Y坐標(biāo)
< 67 Then地圖編輯器界面按鈕按下標(biāo)志
1 = False地圖編輯器界面按鈕按下標(biāo)志
2 = True地圖編輯器界面按鈕按下標(biāo)志
3 = False
地圖編輯器界面_選擇圖形編號
= 1
End IfEnd IfIf 鼠標(biāo)X坐標(biāo)
= 666 Or 鼠標(biāo)X坐標(biāo)
> 666 And 鼠標(biāo)X坐標(biāo)
< 742 ThenIf 鼠標(biāo)Y坐標(biāo)
= 44 Or 鼠標(biāo)Y坐標(biāo)
> 44 And 鼠標(biāo)Y坐標(biāo)
< 67 Then地圖編輯器界面按鈕按下標(biāo)志
1 = False地圖編輯器界面按鈕按下標(biāo)志
2 = False地圖編輯器界面按鈕按下標(biāo)志
3 = True
地圖編輯器界面_選擇圖形編號
= 1
End IfEnd IfIf 鼠標(biāo)X坐標(biāo)
= 174 Or 鼠標(biāo)X坐標(biāo)
> 174 And 鼠標(biāo)X坐標(biāo)
< 252 ThenIf 鼠標(biāo)Y坐標(biāo)
= 455 Or 鼠標(biāo)Y坐標(biāo)
> 455 And 鼠標(biāo)Y坐標(biāo)
< 478 Then地圖編輯器界面按鈕按下標(biāo)志_保存地圖
= TrueEnd IfEnd IfIf 鼠標(biāo)X坐標(biāo)
= 318 Or 鼠標(biāo)X坐標(biāo)
> 318 And 鼠標(biāo)X坐標(biāo)
< 395 ThenIf 鼠標(biāo)Y坐標(biāo)
= 455 Or 鼠標(biāo)Y坐標(biāo)
> 455 And 鼠標(biāo)Y坐標(biāo)
< 478 Then地圖編輯器界面按鈕按下標(biāo)志_清空地圖
= TrueEnd IfEnd IfIf 鼠標(biāo)X坐標(biāo)
= 34 Or 鼠標(biāo)X坐標(biāo)
> 34 And 鼠標(biāo)X坐標(biāo)
< 115 ThenIf 鼠標(biāo)Y坐標(biāo)
= 455 Or 鼠標(biāo)Y坐標(biāo)
> 455 And 鼠標(biāo)Y坐標(biāo)
< 480 ThenIf 地圖編輯器界面按鈕按下標(biāo)志_載入地圖
= False Then地圖編輯器界面按鈕按下標(biāo)志_載入地圖
= TrueElse地圖編輯器界面按鈕按下標(biāo)志_載入地圖
= False
End IfEnd IfEnd IfIf 鼠標(biāo)X坐標(biāo)
= 543 Or 鼠標(biāo)X坐標(biāo)
> 543 And 鼠標(biāo)X坐標(biāo)
< 613 ThenIf 鼠標(biāo)Y坐標(biāo)
= 462 Or 鼠標(biāo)Y坐標(biāo)
> 462 And 鼠標(biāo)Y坐標(biāo)
< 484 ThenIf MsgBox
("你是否放棄地圖編輯,返回主菜單?如果沒有保存地圖,請點(diǎn)否!"
, vbQuestion
Or vbYesNo
, Me.Caption
) = vbYes
ThenRunning
= 9: 讀檔標(biāo)志
= False: 判斷running狀態(tài)_初始化
: BackPic.LoadGraph "
image\魔塔背景\魔塔背景
1.jpg"
, xgBLACK
End If
End IfEnd IfDim 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
As SingleDim 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
As SingleDim j
As Integer地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
= 474地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
= 102For j
= 0 To 8If 鼠標(biāo)X坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 Or 鼠標(biāo)X坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 And 鼠標(biāo)X坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 + 26 ThenIf 鼠標(biāo)Y坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
Or 鼠標(biāo)Y坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
And 鼠標(biāo)Y坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
+ 32 Then地圖編輯器界面_選擇圖形編號
= j
+ 1End If
End IfNext
地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
= 474地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
= 146
For j
= 0 To 8If 鼠標(biāo)X坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 Or 鼠標(biāo)X坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 And 鼠標(biāo)X坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 + 26 ThenIf 鼠標(biāo)Y坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
Or 鼠標(biāo)Y坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
And 鼠標(biāo)Y坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
+ 32 Then地圖編輯器界面_選擇圖形編號
= j
+ 1 + 9End If
End IfNext地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
= 474地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
= 185
For j
= 0 To 8If 鼠標(biāo)X坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 Or 鼠標(biāo)X坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 And 鼠標(biāo)X坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 + 26 ThenIf 鼠標(biāo)Y坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
Or 鼠標(biāo)Y坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
And 鼠標(biāo)Y坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
+ 32 Then地圖編輯器界面_選擇圖形編號
= j
+ 1 + 18If 地圖編輯器界面按鈕按下標(biāo)志
1 = True And 地圖編輯器界面_選擇圖形編號
> 25 Then 地圖編輯器界面_選擇圖形編號
= 25: Exit ForEnd If
End IfNext
地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
= 474地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
= 225
For j
= 0 To 6If 鼠標(biāo)X坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 Or 鼠標(biāo)X坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 And 鼠標(biāo)X坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 + 26 ThenIf 鼠標(biāo)Y坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
Or 鼠標(biāo)Y坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
And 鼠標(biāo)Y坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
+ 32 Then地圖編輯器界面_選擇圖形編號
= j
+ 1 + 27If 地圖編輯器界面按鈕按下標(biāo)志
2 = True And 地圖編輯器界面_選擇圖形編號
> 28 Then 地圖編輯器界面_選擇圖形編號
= 28: Exit ForEnd If
End IfNext
Dim tempX
As Integer Dim m
() As StringDim k
As IntegerFor k
= 1 To 11地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
= 32地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
= 32 * k
For j
= 0 To 10If 鼠標(biāo)X坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 Or 鼠標(biāo)X坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 And 鼠標(biāo)X坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍X坐標(biāo)
+ j
* 32 + 32 ThenIf 鼠標(biāo)Y坐標(biāo)
= 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
Or 鼠標(biāo)Y坐標(biāo)
> 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
And 鼠標(biāo)Y坐標(biāo)
< 地圖編輯器界面_鼠標(biāo)選擇范圍y坐標(biāo)
+ 32 Thenm
= Split
(地圖數(shù)據(jù)
(k
), ",")tempX
= 鼠標(biāo)X坐標(biāo)
/ 32If tempX
> 11 Then tempX
= 11m
(tempX
) = 地圖編輯器界面_選擇圖形編號
If 地圖編輯器界面按鈕按下標(biāo)志
2 = True Thenm
(tempX
) = m
(tempX
) + 29
End IfIf 地圖編輯器界面按鈕按下標(biāo)志
3 = True Thenm
(tempX
) = m
(tempX
) + 79
End If地圖數(shù)據(jù)
(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)寫臨時(shí)地圖數(shù)據(jù)
(0)地圖編輯器界面_臨時(shí)地圖標(biāo)志
= TrueEnd If
End IfNext j
Next k
Dim 偏移量X
As Integer Dim 偏移量Y
As Integer
For j
= 1 To 地圖最大層號
If j
< 30 Then偏移量X
= 10 + 20 * j
: 偏移量Y
= 503
Else
偏移量X
= 10 + 20 * (j
- 29): 偏移量Y
= 530End IfIf 鼠標(biāo)X坐標(biāo)
= 偏移量X
Or 鼠標(biāo)X坐標(biāo)
> 偏移量X
And 鼠標(biāo)X坐標(biāo)
< 偏移量X
+ 15 ThenIf 鼠標(biāo)Y坐標(biāo)
= 偏移量Y
Or 鼠標(biāo)Y坐標(biāo)
> 偏移量Y
And 鼠標(biāo)Y坐標(biāo)
< 偏移量Y
+ 15 Then當(dāng)前正在編輯的地圖編號
= j
: 地圖編輯器界面_修正地圖
= TrueIf 地圖編輯器界面_修正地圖
= True And 當(dāng)前正在編輯的地圖編號
> 0 And 地圖編輯器界面按鈕按下標(biāo)志_載入地圖
= True Then讀取地圖數(shù)據(jù)
(當(dāng)前正在編輯的地圖編號
)寫臨時(shí)地圖數(shù)據(jù)
(0)End IfExit ForEnd If
End IfNext j
End If
End Sub
本段代碼雖然長,但結(jié)構(gòu)非常清晰,當(dāng)然寫 也很隨意,但還是很好懂的,在此不多說。
總結(jié)
以上是生活随笔為你收集整理的魔塔之拯救白娘子~我的第一个VB6+DX8做的小游戏源码~11地图编辑器-鼠标点击的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。