109 lines
1.8 KiB
Java
109 lines
1.8 KiB
Java
import java.awt.event.KeyEvent;
|
|
import java.awt.event.KeyListener;
|
|
|
|
public class Player extends Picture implements KeyListener {
|
|
|
|
private static final long serialVersionUID = -4062796732924767091L;
|
|
|
|
private int upCode;
|
|
private int downCode;
|
|
private float posiX = 570;
|
|
private float posiY = 300;
|
|
private int sizeX = 10;
|
|
private int sizeY = 100;
|
|
private boolean up = false;
|
|
private boolean down = false;
|
|
private float speed = 0.0000002f;
|
|
|
|
public Player(int newUpCode, int newDownCode) {
|
|
super("player");
|
|
|
|
upCode = newUpCode;
|
|
downCode = newDownCode;
|
|
|
|
|
|
|
|
}
|
|
|
|
public void keyPressed(KeyEvent e) {
|
|
//System.out.println(e.getKeyCode());
|
|
if (e.getKeyCode() == upCode) {
|
|
|
|
up = true;
|
|
down = false;
|
|
|
|
} else if (e.getKeyCode() == downCode) {
|
|
|
|
up = false;
|
|
down = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
public void keyReleased(KeyEvent e) {
|
|
|
|
if (e.getKeyCode() == upCode && up) {
|
|
up = false;
|
|
down = false;
|
|
} else if (e.getKeyCode() == downCode && down) {
|
|
down = false;
|
|
up = false;
|
|
}
|
|
|
|
}
|
|
|
|
public void keyTyped(KeyEvent e) {
|
|
|
|
}
|
|
|
|
public int getPosi(char coordinate, long dt) {
|
|
|
|
if (up && posiY > 10) {
|
|
posiY -= speed * dt;
|
|
} else if (down && posiY < 555) {
|
|
posiY += speed * dt;
|
|
}
|
|
if (posiY < 10) {
|
|
posiY = 10;
|
|
}
|
|
if (posiY > 659) {
|
|
posiY = 659;
|
|
}
|
|
if (posiX < 10) {
|
|
posiX = 10;
|
|
}
|
|
if (posiX > 665) {
|
|
posiX = 665;
|
|
}
|
|
if (coordinate == 'x') {
|
|
return (int) posiX;
|
|
} else if (coordinate == 'y') {
|
|
return (int) posiY;
|
|
} else
|
|
return 0;
|
|
}
|
|
|
|
public void setPosi(char coordinate, int posi) {
|
|
if (coordinate == 'x') {
|
|
posiX = posi;
|
|
} else if (coordinate == 'y') {
|
|
posiY = posi;
|
|
}
|
|
}
|
|
|
|
public int getSize(char coordinate) {
|
|
if (coordinate == 'x') {
|
|
return sizeX;
|
|
} else if (coordinate == 'y') {
|
|
return sizeY;
|
|
} else
|
|
return 0;
|
|
}
|
|
|
|
public void sonic() {
|
|
speed += 0.000000000004f;
|
|
}
|
|
|
|
}
|