Advertisement
Audiation

Bouncing Marbles

Aug 2nd, 2013
290
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ' Bouncing Marbles by TheBaykun.
  2. ' Yet another physics demonstration.
  3.  
  4. ' Tilt to move the marbles.
  5. ' Tap to move Marble A.
  6.  
  7. BallGrinder = 1   '0: Off, 1: On.
  8.  
  9. ax=25
  10. ay=50
  11. aa=0
  12. ab=0
  13.  
  14. bx=75
  15. by=35
  16. ba=0
  17. bb=0
  18.  
  19. cx=125
  20. cy=75
  21. ca=0
  22. cb=0
  23.  
  24. ACCELCALIBRATE
  25. LOCKORIENTATION
  26.  
  27. IF ballgrinder=1 THEN
  28.     PRINT "Ball Grinder: Not as painful as it sounds. ------>"
  29. ENDIF
  30.  
  31. g=1
  32. WHILE g=1
  33.     BEGINDRAW
  34.     COLOR 0,0,0
  35.     CIRCLE ax,ay,26
  36.     CIRCLE bx,by,26
  37.     CIRCLE cx,cy,26
  38.     IF Touch>=1 THEN
  39.         ax=TouchX
  40.         ay=TouchY
  41.         ab=0
  42.         aa=0
  43.     ENDIF
  44.    
  45.     IF ab>0 THEN
  46.         ab=ab-0.2
  47.     ENDIF
  48.     IF ab<0 THEN
  49.         ab=ab+0.2
  50.     ENDIF
  51.     IF bb>0 THEN
  52.         bb=bb-0.2
  53.     ENDIF
  54.     IF bb<0 THEN
  55.         bb=bb+0.2
  56.     ENDIF
  57.     IF cb>0 THEN
  58.         cb=cb-0.2
  59.     ENDIF
  60.     IF cb<0 THEN
  61.         cb=cb+0.2
  62.     ENDIF
  63.     ab=ab+(AccelX)
  64.     IF ab>20 THEN
  65.         ab=20
  66.     ENDIF
  67.     IF ab<-20 THEN
  68.         ab=-20
  69.     ENDIF
  70.     ax=ax+ab
  71.     IF ax<=25 THEN
  72.         ab=2-ab
  73.     ENDIF
  74.     IF ax>=ScreenWidth-25 THEN
  75.         ab=-2+(ballgrinder*4)-ab
  76.     ENDIF
  77.     IF ax>=ScreenWidth+25 THEN
  78.         ax=25
  79.     ENDIF
  80.     IF ax<=-25 THEN
  81.         ax=ScreenWidth-25
  82.     ENDIF
  83.     bb=bb+(AccelX)
  84.     IF bb>20 THEN
  85.         bb=20
  86.     ENDIF
  87.     IF bb<-20 THEN
  88.         bb=-20
  89.     ENDIF
  90.     bx=bx+bb
  91.     IF bx<=25 THEN
  92.         bb=2-bb
  93.     ENDIF
  94.     IF bx>=ScreenWidth-25 THEN
  95.         bb=-2+(ballgrinder*4)-bb
  96.     ENDIF
  97.     IF bx>=ScreenWidth+25 THEN
  98.         bx=25
  99.     ENDIF
  100.     IF bx<=-25 THEN
  101.         bx=ScreenWidth-25
  102.     ENDIF
  103.     cb=cb+(AccelX)
  104.     IF cb>20 THEN
  105.         cb=20
  106.     ENDIF
  107.     IF cb<-20 THEN
  108.         cb=-20
  109.     ENDIF
  110.     cx=cx+cb
  111.     IF cx<=25 THEN
  112.         cb=2-cb
  113.     ENDIF
  114.     IF cx>=ScreenWidth-25 THEN
  115.         cb=-2+(ballgrinder*4)-cb
  116.     ENDIF
  117.     IF cx>=ScreenWidth+25 THEN
  118.         cx=25
  119.     ENDIF
  120.     IF cx<=-25 THEN
  121.         cx=ScreenWidth-25
  122.     ENDIF
  123.    
  124.     IF ay<ScreenHeight-25 THEN
  125.         aa=aa+1
  126.     ENDIF
  127.     IF ay>=ScreenHeight-25 AND aa>0 THEN
  128.         aa=2-aa
  129.     ENDIF
  130.     IF aa<>0 THEN
  131.         ay=ay+aa
  132.     ENDIF
  133.     IF ay>ScreenHeight-25 THEN
  134.         ay=ScreenHeight-25
  135.     ENDIF
  136.     IF ScreenHeight=ay+25 THEN
  137.         IF aa=0 OR aa=1 THEN
  138.             aa=-15
  139.         ENDIF
  140.     ENDIF
  141.    
  142.     IF by<ScreenHeight-25 THEN
  143.         ba=ba+1
  144.     ENDIF
  145.     IF by>=ScreenHeight-25 AND ba>0 THEN
  146.         ba=2-ba
  147.     ENDIF
  148.     IF ba<>0 THEN
  149.         by=by+ba
  150.     ENDIF
  151.     IF by>ScreenHeight-25 THEN
  152.         by=ScreenHeight-25
  153.     ENDIF
  154.     IF ScreenHeight=by+25 THEN
  155.         IF ba=0 OR ba=1 THEN
  156.             ba=-20
  157.         ENDIF
  158.     ENDIF        
  159.    
  160.     IF cy<ScreenHeight-25 THEN
  161.         ca=ca+1
  162.     ENDIF
  163.     IF cy>=ScreenHeight-25 AND ca>0 THEN
  164.         ca=2-ca
  165.     ENDIF
  166.     IF ca<>0 THEN
  167.         cy=cy+ca
  168.     ENDIF
  169.     IF cy>ScreenHeight-25 THEN
  170.         cy=ScreenHeight-25
  171.     ENDIF
  172.     IF ScreenHeight=cy+25 THEN
  173.         IF ca=0 OR ca=1 THEN
  174.             ca=-15
  175.         ENDIF
  176.     ENDIF
  177.    
  178.     'CLS gfx
  179.     IF ballgrinder=1 THEN
  180.         COLOR 200,200,200
  181.         LINE ScreenWidth,0,ScreenWidth,ScreenHeight,5
  182.         COLOR 100,100,100
  183.         LINE ScreenWidth-5,0,ScreenWidth-5,ScreenHeight,5
  184.     ENDIF
  185.     COLOR 255,0,0
  186.     CIRCLE ax,ay,25
  187.     COLOR 0,255,0
  188.     CIRCLE bx,by,25
  189.     COLOR 0,0,255
  190.     CIRCLE cx,cy,25
  191.     COLOR 0,0,0
  192.     DRAWTEXT "A",ax,ay
  193.     DRAWTEXT "B",bx,by
  194.     DRAWTEXT "C",cx,cy
  195.     ENDDRAW
  196.     SLEEP 0.01
  197. WEND
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement