Advertisement
Guest User

Untitled

a guest
Feb 11th, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.30 KB | None | 0 0
  1. package com.example.mygame;
  2.  
  3. import sheep.graphics.Color;
  4. import sheep.game.Sprite;
  5. import sheep.game.State;
  6. import sheep.graphics.Image;
  7. import sheep.graphics.SpriteView;
  8.  
  9. import android.view.MotionEvent;
  10. import java.util.Random;
  11. import java.util.ArrayList;
  12.  
  13.  
  14. public class TitleScreen extends State {
  15. private Image paddle = new Image(R.drawable.paddle);
  16. private Image bal = new Image(R.drawable.apple1);
  17. private Image backgroundImage = new Image(R.drawable.background);
  18. private Image wall = new Image(R.drawable.wall_vertical);
  19. private Image lin = new Image(R.drawable.line);
  20. private Sprite paddle1;
  21. private Sprite paddle2;
  22. private Sprite ball;
  23. private Sprite line;
  24. private Sprite w_e;
  25. private Sprite w_w;
  26. private Sprite backSprite;
  27. private int frame_ms = 100;
  28. private ArrayList<Image> balls;
  29. private long ZeroTime;
  30. private int counter;
  31. private int r;
  32. private int p1_points;
  33. private int p2_points;
  34.  
  35. public TitleScreen() {
  36. backSprite = new Sprite(backgroundImage);
  37. paddle1 = new Sprite(paddle);
  38. paddle2 = new Sprite(paddle);
  39. ball = new Sprite(bal);
  40. line = new Sprite(lin);
  41. balls = new ArrayList<Image>();
  42.  
  43. balls.add(new Image(R.drawable.apple1));
  44. balls.add(new Image(R.drawable.apple2));
  45.  
  46. w_e = new Sprite(wall);
  47. w_w = new Sprite(wall);
  48.  
  49. w_w.setPosition(5,215);
  50. w_e.setPosition(315, 215);
  51. line.setPosition(155, 215);
  52. paddle1.setPosition(15,215);
  53. paddle2.setPosition(302, 215);
  54. ball.setPosition(155,200);
  55. ball.setSpeed(60, 15);
  56. ZeroTime = System.currentTimeMillis();
  57. counter = 0;
  58. p1_points = 0;
  59. p2_points = 0;
  60. }
  61.  
  62. public boolean onTouchDown(MotionEvent event){
  63.  
  64. if(event.getX() < 155) {
  65. if(event.getY() > 400)
  66. paddle1.setPosition(paddle1.getPosition().getX(), 400);
  67. else if(event.getY() < 30 )
  68. paddle1.setPosition(paddle1.getPosition().getX(), 30);
  69. else
  70. paddle1.setPosition(paddle1.getPosition().getX(), event.getY());
  71. }
  72. else {
  73. if(event.getY() > 400)
  74. paddle2.setPosition(paddle2.getPosition().getX(), 400);
  75. else if(event.getY() < 30 )
  76. paddle2.setPosition(paddle2.getPosition().getX(), 30);
  77. else
  78. paddle2.setPosition(paddle2.getPosition().getX(), event.getY());
  79. }
  80. return true;
  81. }
  82.  
  83. public void draw(android.graphics.Canvas canvas){
  84. backSprite.draw(canvas);
  85. paddle1.draw(canvas);
  86. paddle2.draw(canvas);
  87. ball.draw(canvas);
  88. line.draw(canvas);
  89. w_e.draw(canvas);
  90. w_w.draw(canvas);
  91.  
  92. canvas.drawText("Player 1 = " + p1_points + " Player 2 = " + p2_points, 30, 30, Color.GREEN);
  93. }
  94.  
  95. public void update(float dt) {
  96.  
  97. if(p1_points == 21 || p2_points == 21){
  98.  
  99. }
  100. else {
  101. if (ball.collides(w_e)) {
  102. ball.setSpeed(-ball.getSpeed().getX(), ball.getSpeed().getY());
  103. ball.setScale(-1, 1);
  104. p2_points = 0;
  105. ball.setPosition(155,200);
  106. } else if (ball.collides(paddle1)) {
  107. Random rand = new Random();
  108. r = rand.nextInt(3-1)+1;
  109. if(r == 1)
  110. ball.setSpeed(-ball.getSpeed().getX(), ball.getSpeed().getY());
  111. else
  112. ball.setSpeed(-ball.getSpeed().getX(), -ball.getSpeed().getY());
  113. ball.setScale(1, 1);
  114. p1_points++;
  115.  
  116. } else if (ball.collides(paddle2)) {
  117. Random rand = new Random();
  118. r = rand.nextInt(3-1)+1;
  119. if(r == 1)
  120. ball.setSpeed(-ball.getSpeed().getX(), ball.getSpeed().getY());
  121. else
  122. ball.setSpeed(-ball.getSpeed().getX(), -ball.getSpeed().getY());
  123. ball.setScale(-1, 1);
  124. p2_points++;
  125.  
  126. } else if (ball.getY() <= 30) {
  127. ball.setPosition(ball.getX(), 30);
  128. ball.setSpeed(ball.getSpeed().getX(), -ball.getSpeed().getY());
  129. } else if (ball.getY() >= 400) {
  130. ball.setPosition(ball.getX(), 380);
  131. ball.setSpeed(ball.getSpeed().getX(), -ball.getSpeed().getY());
  132. } else if (ball.collides(w_w)) {
  133. ball.setSpeed(-ball.getSpeed().getX(), ball.getSpeed().getY());
  134. ball.setScale(1, 1);
  135. p1_points = 0;
  136. ball.setPosition(155,200);
  137. }
  138.  
  139. if (System.currentTimeMillis() - ZeroTime >= 100) {
  140. ball.setView((SpriteView) balls.get(counter));
  141. ZeroTime = System.currentTimeMillis();
  142. if (counter >= 1) {
  143. counter = 0;
  144. } else {
  145. counter++;
  146. }
  147. }
  148.  
  149. ball.update(dt);
  150. line.update(dt);
  151. paddle1.update(dt);
  152. paddle2.update(dt);
  153. w_e.update(dt);
  154. w_w.update(dt);
  155. }
  156. }
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement