Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.01 KB | None | 0 0
  1. package paxdevgame;
  2.  
  3. import paxdevgame.Robot;
  4.  
  5. import javax.imageio.ImageIO;
  6. import java.applet.Applet;
  7. import java.awt.Color;
  8. import java.awt.Frame;
  9. import java.awt.Graphics;
  10. import java.awt.Image;
  11. import java.awt.event.KeyEvent;
  12. import java.awt.event.KeyListener;
  13. import java.io.File;
  14. import java.io.IOException;
  15. import java.net.MalformedURLException;
  16. import java.net.URL;
  17.  
  18. public class StartingClass extends Applet implements Runnable, KeyListener {
  19.  
  20.     private Robot robot;
  21.     private Heliboy hb, hb2;
  22.     private Image image, character, currentSprite, background, characterDown, characterJumped, heliboy;
  23.     private Graphics second;
  24.     private URL base;
  25.     private static Background bg1, bg2;
  26.  
  27.     public static Background getBg1() {
  28.         return bg1;
  29.     }
  30.  
  31.     public static void setBg1(Background bg1) {
  32.         StartingClass.bg1 = bg1;
  33.     }
  34.  
  35.     public static Background getBg2() {
  36.         return bg2;
  37.     }
  38.  
  39.     public static void setBg2(Background bg2) {
  40.         StartingClass.bg2 = bg2;
  41.     }
  42.  
  43.     @Override
  44.     public void init() {
  45.  
  46.         setSize(800, 480);
  47.         setBackground(Color.BLACK);
  48.         setFocusable(true);
  49.         addKeyListener(this);
  50.         Frame frame = (Frame) this.getParent().getParent();
  51.         frame.setTitle("Pixel Shooter");
  52.  
  53.         base = getCodeBase();
  54.         System.out.println(base);
  55.         // Image Setups
  56.        
  57.         character = getImage(base, "../character.png");
  58.         characterDown = getImage(base, "../down.png");
  59.         characterJumped = getImage(base, "../jumped.png");
  60.         currentSprite = character;
  61.         heliboy = getImage(base, "../heliboy.png");
  62.         background = getImage(base, "../background.png");
  63.  
  64.     }
  65.  
  66.     @Override
  67.     public void start() {
  68.        
  69.         bg1 = new Background(0, 0);
  70.         bg2 = new Background(2160, 0);
  71.         robot = new Robot();
  72.         hb = new Heliboy(340, 360);
  73.         hb2 = new Heliboy(700, 360);
  74.         Thread thread = new Thread(this);
  75.         thread.start();
  76.     }
  77.  
  78.     @Override
  79.     public void stop() {
  80.         // TODO Auto-generated method stub
  81.     }
  82.  
  83.     @Override
  84.     public void destroy() {
  85.         // TODO Auto-generated method stub
  86.     }
  87.  
  88.     @Override
  89.     public void run() {
  90.         while (true) {
  91.  
  92.             robot.update();
  93.             if (robot.isJumped()){
  94.                 currentSprite = characterJumped;
  95.             }else if (robot.isJumped() == false && robot.isDucked() == false){
  96.                 currentSprite = character;
  97.             }
  98.             hb.update();
  99.             hb2.update();
  100.             bg1.update();
  101.             bg2.update();
  102.             repaint();
  103.             try {
  104.                 Thread.sleep(17);
  105.             } catch (InterruptedException e) {
  106.                 e.printStackTrace();
  107.             }
  108.         }
  109.     }
  110.  
  111.     @Override
  112.     public void update(Graphics g) {
  113.         if (image == null) {
  114.             image = createImage(this.getWidth(), this.getHeight());
  115.             second = image.getGraphics();
  116.         }
  117.  
  118.         second.setColor(getBackground());
  119.         second.fillRect(0, 0, getWidth(), getHeight());
  120.         second.setColor(getForeground());
  121.         paint(second);
  122.  
  123.         g.drawImage(image, 0, 0, this);
  124.  
  125.     }
  126.  
  127.     @Override
  128.     public void paint(Graphics g) {
  129.         g.drawImage(background, bg1.getBgX(), bg1.getBgY(), this);
  130.         g.drawImage(background, bg2.getBgX(), bg2.getBgY(), this);
  131.         g.drawImage(currentSprite, robot.getCenterX() - 61, robot.getCenterY() - 63, this);
  132.         g.drawImage(heliboy, hb.getCenterX() - 48, hb.getCenterY() - 48, this);
  133.         g.drawImage(heliboy, hb2.getCenterX() - 48, hb2.getCenterY() - 48, this);
  134.  
  135.     }
  136.  
  137.     @Override
  138.     public void keyPressed(KeyEvent e) {
  139.  
  140.         switch (e.getKeyCode()) {
  141.         case KeyEvent.VK_UP:
  142.             System.out.println("Move up");
  143.             break;
  144.  
  145.         case KeyEvent.VK_DOWN:
  146.             currentSprite = characterDown;
  147.             if (robot.isJumped() == false){
  148.                 robot.setDucked(true);
  149.                 robot.setSpeedX(0);
  150.             }
  151.             break;
  152.  
  153.         case KeyEvent.VK_LEFT:
  154.             robot.moveLeft();
  155.             robot.setMovingLeft(true);
  156.             break;
  157.  
  158.         case KeyEvent.VK_RIGHT:
  159.             robot.moveRight();
  160.             robot.setMovingRight(true);
  161.             break;
  162.  
  163.         case KeyEvent.VK_SPACE:
  164.             robot.jump();
  165.             break;
  166.  
  167.         }
  168.  
  169.     }
  170.  
  171.     @Override
  172.     public void keyReleased(KeyEvent e) {
  173.         switch (e.getKeyCode()) {
  174.         case KeyEvent.VK_UP:
  175.             System.out.println("Stop moving up");
  176.             break;
  177.  
  178.         case KeyEvent.VK_DOWN:
  179.             currentSprite = character;
  180.             robot.setDucked(false);
  181.             break;
  182.  
  183.         case KeyEvent.VK_LEFT:
  184.             robot.stopLeft();
  185.             break;
  186.  
  187.         case KeyEvent.VK_RIGHT:
  188.             robot.stopRight();
  189.             break;
  190.  
  191.         case KeyEvent.VK_SPACE:
  192.             break;
  193.  
  194.         }
  195.  
  196.     }
  197.     @Override
  198.     public void keyTyped(KeyEvent e) {
  199.         // TODO Auto-generated method stub
  200.  
  201.     }
  202.  
  203. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement