GAME1.TXT
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:3k
源码类别:

Windows编程

开发平台:

Visual C++

  1. $OBJECT=ShipClass
  2. $OBJECT=BubbleClass
  3. $OBJECT=AmmoClass
  4. Option Explicit
  5. '----------------------------------------------------------------------------
  6. ' Game1.txt
  7. '----------------------------------------------------------------------------
  8. ' Use path to this file as parameter to Sprite.exe.  E.g.:
  9. '    Sprite C:TmpGame2.txt
  10. ' See "Game.Pix" for list of images available, numbered 0-n.
  11. '----------------------------------------------------------------------------
  12. Dim sShip               'Player's ship
  13. '----------------------------------------------------------------------------
  14. ' GAME events
  15. '
  16. Sub Game_NewGame()
  17. '   ------------
  18.     'Bullets and ammo can collide (note: bit 1 is reserved)
  19.     BubbleClass.Collide = 2
  20.     AmmoClass.Collide   = 2
  21.     ShipClass.Image   = 32 'Ship
  22.     BubbleClass.Image = 60 'Small bubble
  23.     AmmoClass.Image   = 34 'Bullet
  24.     'Create player's ship centered on screen:
  25.     Set sShip = ShipClass.CreateSprite(Game.Width / 2, Game.Height / 2, 0)
  26.     'Create a bubble for player to fire at
  27.     BubbleClass.CreateSprite 0, 0, 0
  28. End Sub
  29. Sub Game_KeyPress(ByVal ch)
  30. '   ------------
  31.     Dim sT
  32.     'Fire if Space hit
  33.     If ch = 32 Then
  34.         Set sT = AmmoClass.CreateSprite(sShip.Left, sShip.Top, 0)
  35.         sT.Vx = 0 : sT.Vy = -5
  36.         Set sT = AmmoClass.CreateSprite(sShip.Left, sShip.Top, 0)
  37.         sT.Vx = 0 : sT.Vy = 5
  38.         Set sT = AmmoClass.CreateSprite(sShip.Left, sShip.Top, 0)
  39.         sT.Vx = -5 : sT.Vy = 0
  40.         Set sT = AmmoClass.CreateSprite(sShip.Left, sShip.Top, 0)
  41.         sT.Vx = 5 : sT.Vy = 0
  42.     End If
  43. End Sub
  44. Sub Game_Collide(ByVal sLowId, ByVal sHighId, ByVal coll)
  45. '   ------------
  46.     Dim bubble
  47.     Dim ammo
  48.     If coll = 2 Then
  49.         Set bubble = sLowId
  50.         Set ammo   = sHighId
  51.         ammo.Remove
  52.         If bubble.Image <= 57 Then
  53.             Game.AddScore 50
  54.             bubble.Remove
  55.             BubbleClass.CreateSprite bubble.Left, bubble.Top, 0
  56.         Else
  57.             bubble.Image = bubble.Image - 1
  58.             Game.AddScore 5
  59.         End If
  60.     End If
  61. End Sub
  62. '----------------------------------------------------------------------------
  63. ' BubbleClass events
  64. '
  65. Sub BubbleClass_Init(ByVal s, ByVal u)
  66.     Game.StdInitEdge s, u
  67.     s.Vx = 6 : s.Vy = 6
  68. End Sub
  69. Sub BubbleClass_Border(ByVal s, ByVal brd)
  70.     Game.StdBorderBounce s, brd             'Bubbles bounce on edge of screen
  71. End Sub
  72. '----------------------------------------------------------------------------
  73. ' AmmoClass events
  74. '
  75. Sub AmmoClass_Border(ByVal s, ByVal brd)
  76.     s.Remove                                'Ammo destroys itself on edge of screen
  77. End Sub
  78. '--- EOF ---