📄 form1.frm
字号:
.Top = SpriteTileSize
.Bottom = SpriteTileSize * 2 - 1
If MousePos.X >= DisplayWidth / 2 Then
If Ma_Date.GunTowerCurSin >= -1 And Ma_Date.GunTowerCurSin < -0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.981 And Ma_Date.GunTowerCurSin < -0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.831 And Ma_Date.GunTowerCurSin < -0.556 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.556 And Ma_Date.GunTowerCurSin < -0.195 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.195 And Ma_Date.GunTowerCurSin < 0.195 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.195 And Ma_Date.GunTowerCurSin < 0.556 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.556 And Ma_Date.GunTowerCurSin < 0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.831 And Ma_Date.GunTowerCurSin < 0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.981 And Ma_Date.GunTowerCurSin <= 1 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
Else
i = 8
If Ma_Date.GunTowerCurSin >= 0.981 And Ma_Date.GunTowerCurSin < 1 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.831 And Ma_Date.GunTowerCurSin < 0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.556 And Ma_Date.GunTowerCurSin < 0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= 0.195 And Ma_Date.GunTowerCurSin < 0.556 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.195 And Ma_Date.GunTowerCurSin < 0.195 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.556 And Ma_Date.GunTowerCurSin < -0.195 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.831 And Ma_Date.GunTowerCurSin < -0.556 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Ma_Date.GunTowerCurSin >= -0.981 And Ma_Date.GunTowerCurSin < -0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = 0
If Ma_Date.GunTowerCurSin > -1 And Ma_Date.GunTowerCurSin < -0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
End If
Call BackbufferSurface.Blt(destRect, Ma, srcRect, DDBLT_WAIT Or DDBLT_KEYSRC)
End With
End If
End Sub
Sub PaintEnemy1()
Dim destRect As RECT
Dim srcRect As RECT
Dim i As Integer
Dim j As Integer
For j = 0 To 49
i = 0
DoEvents
If Enemy1_Date(j).Hp > 0 Then
If Abs(Enemy1_Date(j).CurPosX - Ma_Date.CurPosX) <= (DisplayWidth / 2 + BackgroundTile_Width / 2) And Abs(Enemy1_Date(j).CurPosY - Ma_Date.CurPosY) <= (DisplayHeight / 2 + BackgroundTile_Height / 2) Then
With destRect
.Left = Enemy1_Date(j).CurPosX - Ma_Date.CurPosX + DisplayWidth / 2 + BackgroundTile_Width - SpriteTileSize / 2
.Right = Enemy1_Date(j).CurPosX - Ma_Date.CurPosX + DisplayWidth / 2 + BackgroundTile_Width + SpriteTileSize / 2
.Top = -(Enemy1_Date(j).CurPosY - Ma_Date.CurPosY) + DisplayHeight / 2 + BackgroundTile_Height - SpriteTileSize / 2
.Bottom = -(Enemy1_Date(j).CurPosY - Ma_Date.CurPosY) + DisplayHeight / 2 + BackgroundTile_Height + SpriteTileSize / 2
End With
With srcRect '根据角度计算该调用哪个图形
.Top = 0
.Bottom = SpriteTileSize - 1
If Enemy1_Date(j).FangXiang >= 270 And Enemy1_Date(j).FangXiang < 281.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 281.25 And Enemy1_Date(j).FangXiang < 303.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 303.75 And Enemy1_Date(j).FangXiang < 326.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 326.25 And Enemy1_Date(j).FangXiang < 348.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 348.75 And Enemy1_Date(j).FangXiang < 360 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
If Enemy1_Date(j).FangXiang >= 0 And Enemy1_Date(j).FangXiang < 11.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 11.25 And Enemy1_Date(j).FangXiang < 33.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 33.75 And Enemy1_Date(j).FangXiang < 56.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 56.25 And Enemy1_Date(j).FangXiang < 78.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 78.75 And Enemy1_Date(j).FangXiang < 101.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 101.25 And Enemy1_Date(j).FangXiang < 123.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 123.75 And Enemy1_Date(j).FangXiang < 146.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 146.25 And Enemy1_Date(j).FangXiang < 168.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 168.75 And Enemy1_Date(j).FangXiang < 191.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 191.25 And Enemy1_Date(j).FangXiang < 213.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 213.75 And Enemy1_Date(j).FangXiang < 236.25 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).FangXiang >= 236.25 And Enemy1_Date(j).FangXiang < 258.75 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = 0
If Enemy1_Date(j).FangXiang >= 258.75 And Enemy1_Date(j).FangXiang < 270 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
End With
Call BackbufferSurface.Blt(destRect, Ma, srcRect, DDBLT_WAIT Or DDBLT_KEYSRC)
With srcRect
.Top = SpriteTileSize
.Bottom = SpriteTileSize * 2 - 1
If Ma_Date.CurPosX >= Enemy1_Date(j).CurPosX Then
If Enemy1_Date(j).GunTowerCurSin >= -1 And Enemy1_Date(j).GunTowerCurSin < -0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= -0.981 And Enemy1_Date(j).GunTowerCurSin < -0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= -0.831 And Enemy1_Date(j).GunTowerCurSin < -0.556 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= -0.556 And Enemy1_Date(j).GunTowerCurSin < -0.195 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= -0.195 And Enemy1_Date(j).GunTowerCurSin < 0.195 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= 0.195 And Enemy1_Date(j).GunTowerCurSin < 0.556 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= 0.556 And Enemy1_Date(j).GunTowerCurSin < 0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= 0.831 And Enemy1_Date(j).GunTowerCurSin < 0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= 0.981 And Enemy1_Date(j).GunTowerCurSin <= 1 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
Else
i = 8
If Enemy1_Date(j).GunTowerCurSin >= 0.981 And Enemy1_Date(j).GunTowerCurSin < 1 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= 0.831 And Enemy1_Date(j).GunTowerCurSin < 0.981 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
If Enemy1_Date(j).GunTowerCurSin >= 0.556 And Enemy1_Date(j).GunTowerCurSin < 0.831 Then
.Left = SpriteTileSize * i
.Right = SpriteTileSize * (i + 1)
End If
i = i + 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -