📄 form1.frm
字号:
VERSION 5.00
Object = "{C1A8AF28-1257-101B-8FB0-0020AF039CA3}#1.1#0"; "MCI32.OCX"
Begin VB.Form Form1
BackColor = &H00000000&
BorderStyle = 1 'Fixed Single
Caption = "BATTLE TANK"
ClientHeight = 6600
ClientLeft = 150
ClientTop = 435
ClientWidth = 7725
ControlBox = 0 'False
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 440
ScaleMode = 3 'Pixel
ScaleWidth = 515
StartUpPosition = 2 'CenterScreen
Begin VB.Timer Timer1
Interval = 1
Left = 1680
Top = 6000
End
Begin VB.PictureBox MapPic
AutoRedraw = -1 'True
BackColor = &H00FF0000&
BorderStyle = 0 'None
Height = 240
Left = 7440
Picture = "Form1.frx":0000
ScaleHeight = 16
ScaleMode = 3 'Pixel
ScaleWidth = 20
TabIndex = 2
Top = 0
Width = 300
End
Begin VB.PictureBox PicA
AutoRedraw = -1 'True
AutoSize = -1 'True
BorderStyle = 0 'None
Height = 750
Left = 2400
Picture = "Form1.frx":0404
ScaleHeight = 50
ScaleMode = 3 'Pixel
ScaleWidth = 350
TabIndex = 1
Top = 5640
Visible = 0 'False
Width = 5250
End
Begin VB.PictureBox Stage
AutoRedraw = -1 'True
BackColor = &H00000000&
BorderStyle = 0 'None
Height = 6000
Left = 120
ScaleHeight = 400
ScaleMode = 3 'Pixel
ScaleWidth = 500
TabIndex = 0
Top = 480
Width = 7500
Begin MCI.MMControl MMControl2
Height = 330
Left = 720
TabIndex = 6
Top = 0
Visible = 0 'False
Width = 420
_ExtentX = 741
_ExtentY = 582
_Version = 327680
StepEnabled = -1 'True
PrevVisible = 0 'False
NextVisible = 0 'False
PauseVisible = 0 'False
BackVisible = 0 'False
StepVisible = 0 'False
StopVisible = 0 'False
RecordVisible = 0 'False
EjectVisible = 0 'False
DeviceType = "Sequencer"
FileName = "M:\CD-R 4\MyProgram\Program\Sound\music.mid"
End
Begin MCI.MMControl MMControl1
Height = 330
Left = 240
TabIndex = 5
Top = 0
Visible = 0 'False
Width = 420
_ExtentX = 741
_ExtentY = 582
_Version = 327680
PrevVisible = 0 'False
NextVisible = 0 'False
PauseVisible = 0 'False
BackVisible = 0 'False
StepVisible = 0 'False
StopVisible = 0 'False
RecordVisible = 0 'False
EjectVisible = 0 'False
DeviceType = "waveaudio"
FileName = "M:\CD-R 4\MyProgram\Program\Sound\fire.wav"
End
End
Begin VB.Label Label2
AutoSize = -1 'True
BackColor = &H00000000&
Caption = "TankB Score-0"
BeginProperty Font
Name = "System"
Size = 9
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00E0E0E0&
Height = 180
Left = 4680
TabIndex = 4
Top = 120
Width = 1290
End
Begin VB.Label Label1
AutoSize = -1 'True
BackColor = &H00000000&
Caption = "TankA Score-0"
BeginProperty Font
Name = "System"
Size = 9
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00E0E0E0&
Height = 180
Left = 120
TabIndex = 3
Top = 120
Width = 1275
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Form_Load()
LoadMap '读地图
TankA.Speed = 5 '坦克速度只能是一或五的倍数,建议仅使用一或五。(原因是图片宽和高均是奇数25Pixel,所以以后一定要将图片制做成偶数比较合适)
TankA.StopDirection = 3 '停止时的坦克方向1=left 2=right 3=top 4=down,设坦克方向朝上。
TankA.BombX = 20 * 25 '将炮弹隐藏到场景外面右下角处。
TankA.BombY = 16 * 25 '将炮弹隐藏到场景外面右下角处。
TankA.Life = 3 '生命数量
TankB.Speed = 5 '坦克速度只能是一或五的倍数,建议仅使用一或五。(原因是图片宽和高均是奇数25Pixel,所以以后一定要将图片制做成偶数比较合适)
TankB.StopDirection = 3 '停止时的坦克方向1=left 2=right 3=top 4=down,设坦克方向朝上。
TankB.BombX = 20 * 25 '将炮弹隐藏到场景外面右下角处。
TankB.BombY = 16 * 25 '将炮弹隐藏到场景外面右下角处。
TankB.Life = 3 '生命数量
End Sub
Private Sub MapPic_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Debug.Print GetPixel(MapPic.hdc, X, Y)
End Sub
Private Sub Stage_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case 83 'LeftkeyTankA
TankA.Direction = 1
TankA.StopDirection = 1
Case 70 'RightkeyTankA
TankA.Direction = 2
TankA.StopDirection = 2
Case 69 'TopkeyTankA
TankA.Direction = 3
TankA.StopDirection = 3
Case 68 'DownkeyTankA
TankA.Direction = 4
TankA.StopDirection = 4
Case 32 'SpacekeyTankA
If TankA.Fire = 0 Then TankA.Fire = 1
Case 37 'LeftkeyTankB
TankB.Direction = 1
TankB.StopDirection = 1
Case 39 'RightkeyTankB
TankB.Direction = 2
TankB.StopDirection = 2
Case 38 'TopkeyTankB
TankB.Direction = 3
TankB.StopDirection = 3
Case 40 'DownkeyTankB
TankB.Direction = 4
TankB.StopDirection = 4
Case 107 'RightKeyboard'+'TankB
If TankB.Fire = 0 Then TankB.Fire = 1
Case 27 'EscapeKey
If MsgBox("Are you sure to exit?", vbYesNo, "BATTLE TANK") = vbYes Then
End
Else
Exit Sub
End If
End Select
End Sub
Private Sub Stage_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case 83
TankA.Direction = 0
Case 70
TankA.Direction = 0
Case 69
TankA.Direction = 0
Case 68
TankA.Direction = 0
Case 37
TankB.Direction = 0
Case 39
TankB.Direction = 0
Case 38
TankB.Direction = 0
Case 40
TankB.Direction = 0
End Select
End Sub
Private Sub Timer1_Timer()
BackgroundMusic True
ControlTankAActive 'TankA
ControlTankAFire 'TankA
ControlTankBActive 'TankB
ControlTankBFire 'TankB
DisplayResult True
MapGrid False, 0, 60, 0
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -