Advertisement
JackHoughton00

Broken Second Window

Jun 13th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.89 KB | None | 0 0
  1. public void openMainWindow(Stage firstWindow) {
  2. firstWindow.setTitle("Block Dodger Game!");
  3.  
  4. Group root = new Group();
  5. Scene theScene = new Scene(root);
  6. firstWindow.setScene(theScene);
  7.  
  8. Canvas canvas = new Canvas(550,700);
  9. root.getChildren().add(canvas);
  10.  
  11. ArrayList<String> input = new ArrayList<String>();
  12.  
  13. theScene.setOnKeyPressed(
  14. new EventHandler<KeyEvent>()
  15. {
  16. public void handle(KeyEvent e)
  17. {
  18. String code = e.getCode().toString();
  19. if ( !input.contains(code) )
  20. input.add( code );
  21. }
  22. });
  23. theScene.setOnKeyReleased(
  24. new EventHandler<KeyEvent>()
  25. {
  26. public void handle(KeyEvent e)
  27. {
  28. String code = e.getCode().toString();
  29. input.remove( code );
  30. }
  31. });
  32.  
  33. GraphicsContext gc = canvas.getGraphicsContext2D();
  34.  
  35. Font theFont = Font.font( "Comic Sans MS", FontWeight.BOLD, 24 );
  36. gc.setFont( theFont );
  37. gc.setFill( Color.GREEN );
  38. gc.setStroke( Color.BLACK );
  39. gc.setLineWidth(1);
  40.  
  41. Sprite briefcase = new Sprite();
  42. briefcase.setImage("cursor.png");
  43. briefcase.setPosition(200, 0);
  44.  
  45. ArrayList<Sprite> moneybagList = new ArrayList<Sprite>();
  46.  
  47. for (int i = 0; i < 15; i++)
  48. {
  49. Sprite moneybag = new Sprite();
  50. moneybag.setImage("triangle1.png");
  51. double px = 350 * Math.random() + 50;
  52. double py = 350 * Math.random() + 50;
  53. moneybag.setPosition(px,py);
  54. moneybagList.add( moneybag );
  55. }
  56.  
  57. LongValue lastNanoTime = new LongValue( System.nanoTime() );
  58.  
  59. IntValue score = new IntValue(0);
  60.  
  61. new AnimationTimer()
  62. {
  63. public void handle(long currentNanoTime)
  64. {
  65. // calculate time since last update.
  66. double elapsedTime = (currentNanoTime - lastNanoTime.value) / 1000000000.0;
  67. lastNanoTime.value = currentNanoTime;
  68.  
  69. // game logic
  70.  
  71. briefcase.setVelocity(0,0);
  72. if (input.contains("LEFT"))
  73. briefcase.addVelocity(-50,0);
  74. if (input.contains("RIGHT"))
  75. briefcase.addVelocity(50,0);
  76. if (input.contains("UP"))
  77. briefcase.addVelocity(0,-50);
  78. if (input.contains("DOWN"))
  79. briefcase.addVelocity(0,50);
  80.  
  81. briefcase.update(elapsedTime);
  82.  
  83. // collision detection
  84.  
  85. Iterator<Sprite> moneybagIter = moneybagList.iterator();
  86. while ( moneybagIter.hasNext() )
  87. {
  88. Sprite moneybag = moneybagIter.next();
  89. if ( briefcase.intersects(moneybag) )
  90. {
  91. moneybagIter.remove();
  92. score.value++;
  93. }
  94. }
  95.  
  96. // render
  97.  
  98. gc.clearRect(0, 0, 512,512);
  99. briefcase.render( gc );
  100.  
  101. for (Sprite moneybag : moneybagList )
  102. moneybag.render( gc );
  103.  
  104. String pointsText = "Cash: $" + (100 * score.value);
  105. gc.fillText( pointsText, 360, 36 );
  106. gc.strokeText( pointsText, 360, 36 );
  107. }
  108. }.start();
  109.  
  110. firstWindow.show(); */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement