bomb.java
上传用户:jhzhutan
上传日期:2021-03-28
资源大小:374k
文件大小:2k
源码类别:

射击游戏

开发平台:

Java

  1. import java.awt.*;
  2. //Download:http://www.codefans.net
  3. public class bomb implements Actor{
  4. private int xPos, yPos;
  5. private int animationTime;
  6. public final Rectangle border = new Rectangle(0,0,0,0);
  7. public String size;
  8. public int inner, middle, outer, jumpDistance;
  9. public ServerModel gameModel;
  10. public bomb(int a, int b, String size, ServerModel gameModel){
  11. this.size = size;
  12. this.gameModel = gameModel;
  13. if(size.equals("big") ){
  14. inner = 6;  middle = 9; outer = 14;
  15. jumpDistance = 8;
  16. animationTime = 6;
  17. }else if(size.equals("small")){
  18. inner = 2;  middle = 4; outer = 7;
  19. jumpDistance = 4;
  20. animationTime = 4;
  21. }
  22. xPos = a;
  23. yPos = b;
  24. }
  25. public void draw(Graphics g){
  26. g.setColor(Color.red);
  27. g.fillOval(xPos-outer, yPos-outer, 2*outer, 2*outer);
  28. g.setColor(Color.orange);
  29. g.fillOval(xPos-middle, yPos-middle, 2*middle, 2*middle);
  30. g.setColor(Color.yellow);
  31. g.fillOval(xPos-inner, yPos-inner, 2*inner, 2*inner);
  32. }
  33. public void move(){
  34. if(gameModel.gamePaused){
  35. gameModel.outputLine+="o"+ xPos + "," + yPos + "," + size + ";" ;
  36. return;
  37. }
  38. animationTime--;
  39. if(animationTime < 0){
  40. gameModel.removeActor(this);
  41. return;
  42. }
  43. xPos = xPos + (int)(Math.random()*jumpDistance) - (int)(Math.random()*jumpDistance);
  44. yPos = yPos + (int)(Math.random()*jumpDistance) - (int)(Math.random()*jumpDistance);
  45. //write changes to outputLine
  46. gameModel.outputLine+="o"+ xPos + "," + yPos + "," + size + ";" ;
  47. }
  48. public Rectangle getBorder(){
  49. return border;
  50. }
  51. public String getType(){
  52. return "bomb";
  53. }
  54. //unused method
  55. public Rectangle[] getDetailedBorder(){return null;}
  56. public boolean walldestoried(){return false;}
  57. }