home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / sourcecode / various / bounce.amos / bounce.amosSourceCode
AMOS Source Code  |  1993-01-08  |  3KB  |  78 lines

  1. '                         Simple Bouncing Ball Routine 
  2. '                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
  3. '
  4. ' by Robert Iwancz                                             December 1991 
  5. '           ^^^^^^Weird surname isn't it? -�ROB�-
  6. '
  7. '          A MESSAGE FROM THE IDIOT AUTHOR OF THIS STUPID PROGRAM
  8. '          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  9. ' This is a simple routine to make a ball `bounce' around on the screen. 
  10. ' It's all done with an AMAL string and even I was surprised at how simple 
  11. ' it was to write.  This routine is part of a game I was planning to write 
  12. ' but changed my mind.  So I thought I'd share this routine with you instead.  
  13. ' But looking at the PD listing in the AMOS Club newletter I find there are
  14. ' quite a few disks with assorted AMOS programs and routines so there is 
  15. ' probably a better routine for `bouncing balls' than mine on one of them! 
  16. '                       --->>>��� ROB ï¿½ï¿½ï¿½<<<---  
  17. '                                 ~~~
  18. '
  19. Curs Off : Flash Off : Hide 
  20. '
  21. ' Let's make us a sprite (bob) to start of with. 
  22. Cls 0
  23. Ink 2 : Circle 50,50,7 : Paint 50,50
  24. Get Sprite 1,42,42 To 58,58
  25. Hot Spot 1,$11
  26. Cls 0 : Ink 6 : Box 0,0 To 319,199
  27. ' It's an extremely boring ball isn't it?  
  28. ' Well I guess I'm a pretty (sorry, ugly) boring person.   
  29. ' If I'm boring then I don't deserve an Amiga do I?  
  30. ' In case anyone wants to know, I'm a very boring 15 year old guy.  As you 
  31. ' have probably realised by now, one of my hobbies is going blind in front 
  32. ' of my Commodore 1084 monitor which is hooked up to my Amiga 500...   
  33. ' Did you know I don't like Football?...   
  34. ' Nice weather we're having lately, don't you think?...  
  35. ' Because I certainly DON'T! 
  36. ' ...........
  37. ' What?  Oh yes the STUPID bouncing ball thingy.     
  38. ' For anyone who's interested, here it is... 
  39. '                                             -�ROB�-
  40. '= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   
  41. '
  42. ' >>> The AMAL string does it all! <<< 
  43. '
  44. A$="Let R0=-5 ; Let R1=-5 ;" : Rem -----> The speed.  Change it if you want.    
  45. A$=A$+"Loop: Move R0,R1,1 ;" : Rem -----> R0 and R1 don't have to be the same.  
  46. A$=A$+"      Let R2=X<10 ; Let R3=X>310 ;"
  47. A$=A$+"      Let R4=Y<10 ; Let R5=Y>190 ;"
  48. A$=A$+"         If R2 & R4 then Jump C ; in case the"
  49. A$=A$+"         If R3 & R5 then Jump C ; ball bounces"
  50. A$=A$+"         If R2 & R5 then Jump C ; into a "
  51. A$=A$+"         If R4 & R3 then Jump C ; corner"
  52. A$=A$+"      If R2 | R3 then Jump A ;"
  53. A$=A$+"      If R4 | R5 then Jump B ;"
  54. A$=A$+"Jump Loop ;"
  55. A$=A$+"A:  Let R0=R0*-1 ; Jump Loop ;"
  56. A$=A$+"B:  Let R1=R1*-1 ; Jump Loop ;"
  57. A$=A$+"C:  Let R0=R0*-1 ; Let R1=R1*-1 ; Jump Loop ;"
  58. '
  59. ' >>> Simple isn't it?  And to think that I hate algebra! <<<
  60. ' Did I mention that I also don't like football? -�ROB�- 
  61. Screen 0 : Paper 0
  62. Locate ,10 : Centre "CLICK MOUSE TO STOP THIS THING!"
  63. Double Buffer 
  64. Bob 1,150,150,1
  65. Channel 1 To Bob 1
  66. Amal 1,A$
  67. Amal On 1
  68. '
  69. ' And finally the main loop. 
  70. Repeat 
  71. Until Mouse Key
  72. '
  73. Locate ,10 : Cline : Centre "STUPID ISN'T IT?"
  74. '
  75. '
  76. ' I TOLD YOU IT WAS STUPID!!!
  77. '                              --->>>��� ROB ï¿½ï¿½ï¿½<<<--- 
  78. '                                        ~~~