home *** CD-ROM | disk | FTP | other *** search
/ 3D Game Programming for Teens (2nd Edition) / 3DGPFT2E.iso / Source / Chapter11 / demo11-07.bb < prev    next >
Text File  |  2009-01-20  |  2KB  |  95 lines

  1. ;demo11-07.bb - Explosssssionnnnnns
  2. ;_______________
  3.  
  4.  
  5. Graphics3D 640,480
  6. SetBuffer BackBuffer()
  7.  
  8. ;Global particle variables
  9. Global particle=CreateSphere()
  10. Global particle1=CreateSphere()
  11. Global particle2=CreateSphere()
  12.  
  13. ;Handle particles
  14. ScaleEntity particle, 0.2,0.2,0.2
  15. EntityColor particle, 235,125,23
  16.  
  17. ScaleEntity particle1, 0.2,0.2,0.2
  18. EntityColor particle1, 125,125,125
  19.  
  20. ScaleEntity particle2, 0.2,0.2,0.2
  21. EntityColor particle2, 235,1,234
  22.  
  23.  
  24. Const ESC_KEY = 1
  25. Const LEFT_KEY = 203
  26. Const RIGHT_KEY = 205
  27. Const UP_KEY = 200
  28. Const DOWN_KEY = 208
  29.  
  30. ; Create camera
  31. camera=CreateCamera()
  32.  
  33. ; Creating a light
  34.  
  35. light=CreateLight()
  36.  
  37. ; Creating the types
  38.  
  39. type_player=1
  40. type_obstacle=2
  41.  
  42. ; Creating a sphere
  43.  
  44. sphere=CreateSphere()
  45. ScaleEntity sphere, 0.3,0.3,0.3
  46. PositionEntity sphere, -3,0,5
  47. EntityType sphere,type_player
  48. EntityRadius sphere, 0.2
  49.  
  50.  
  51. ; Creating a cone
  52. cone=CreateCone()
  53. PositionEntity cone, 3,0,5
  54. ScaleEntity cone, .8,.8,.8
  55. EntityType cone,type_obstacle
  56.  
  57. Collisions type_player,type_obstacle,2,2
  58.  
  59. ; This following code makes our program run
  60.  
  61. While Not KeyDown(ESC_KEY)
  62.  
  63.     x#=0
  64.     y#=0
  65.     z#=0
  66.     
  67.     If KeyDown(LEFT_KEY)=True Then x#=-0.1
  68.     If KeyDown(RIGHT_KEY)=True Then x#=0.1
  69.     If KeyDown(DOWN_KEY)=True Then y#=-0.1
  70.     If KeyDown(UP_KEY)=True Then y#=0.1
  71.     
  72.     If CountCollisions (sphere)
  73.         PositionEntity particle, EntityX(cone),EntityY(cone), EntityZ(cone)
  74.         PositionEntity particle1, EntityX(cone),EntityY(cone), EntityZ(cone)
  75.         PositionEntity particle2, EntityX(cone),EntityY(cone), EntityZ(cone)
  76.         explosion=ready
  77.         HideEntity cone
  78.     End If
  79.     If explosion=ready
  80.         MoveEntity particle, -.3,.5,0
  81.         MoveEntity particle1, +.5,.5,0
  82.         MoveEntity particle2, .5,-.5,0
  83.     End If
  84.  
  85.  
  86.     
  87.     MoveEntity sphere,x#,y#,z#
  88.     
  89.     UpdateWorld
  90.     RenderWorld
  91.     
  92.     Flip    
  93. Wend
  94.  
  95. End