level 3 + fixed amendment counter
This commit is contained in:
@@ -16,7 +16,7 @@ public class Platformer extends JPanel implements KeyListener, ActionListener {
|
||||
static final int MAXYVELO = 15;
|
||||
static final int MAXXVELO = 5;
|
||||
static final int totalLevels = 10;
|
||||
static int[] numAm = {4, 5, 0, 0, 0, 0, 0, 0, 0, 0};
|
||||
static int[] numAm = {4, 5, 10, 0, 0, 0, 0, 0, 0, 0};
|
||||
|
||||
// game objects
|
||||
Player player;
|
||||
@@ -84,19 +84,21 @@ public class Platformer extends JPanel implements KeyListener, ActionListener {
|
||||
gameTimer.start();
|
||||
|
||||
// if i wanna add a button
|
||||
/*JButton gameStart = new JButton("Start Game");
|
||||
gameStart.addActionListener(e -> {
|
||||
loadLevel(currentLevel);
|
||||
gameTimer.start();
|
||||
this.remove(gameStart);
|
||||
this.revalidate();
|
||||
this.repaint();
|
||||
});
|
||||
gameStart.setBorderPainted(false);
|
||||
gameStart.setFocusPainted(false);
|
||||
gameStart.setBounds(193,200,114,15);
|
||||
gameStart.setForeground(new Color(52, 152, 219));
|
||||
this.add(gameStart);*/
|
||||
/*
|
||||
* JButton gameStart = new JButton("Start Game");
|
||||
* gameStart.addActionListener(e -> {
|
||||
* loadLevel(currentLevel);
|
||||
* gameTimer.start();
|
||||
* this.remove(gameStart);
|
||||
* this.revalidate();
|
||||
* this.repaint();
|
||||
* });
|
||||
* gameStart.setBorderPainted(false);
|
||||
* gameStart.setFocusPainted(false);
|
||||
* gameStart.setBounds(193,200,114,15);
|
||||
* gameStart.setForeground(new Color(52, 152, 219));
|
||||
* this.add(gameStart);
|
||||
*/
|
||||
}
|
||||
|
||||
// gameloop
|
||||
@@ -166,7 +168,7 @@ public class Platformer extends JPanel implements KeyListener, ActionListener {
|
||||
}
|
||||
|
||||
// fall out of world
|
||||
if (player.y > 1400) {
|
||||
if (player.y > 1400) { // 1400/20 = 70 rows to work with per level
|
||||
loadLevel(currentLevel);
|
||||
player.health--;
|
||||
}
|
||||
@@ -338,11 +340,20 @@ public class Platformer extends JPanel implements KeyListener, ActionListener {
|
||||
int amTens = player.numAmendments / 10;
|
||||
|
||||
if (currentLevel > 0 && player.numAmendments < numAm[currentLevel - 1]) {
|
||||
int lvlAmOnes = numAm[currentLevel - 1] % 10;
|
||||
int lvlAmTens = numAm[currentLevel - 1] / 10;
|
||||
if (amTens > 0) g.drawImage(numbers.get(amTens), flag.x - 20, flag.y - 30, null);
|
||||
g.drawImage(numbers.get(amOnes), flag.x + 5, flag.y - 30, null);
|
||||
g.drawImage(slash, flag.x + 28, flag.y - 32, null);
|
||||
g.drawImage(numbers.get(numAm[currentLevel - 1]), flag.x + 55, flag.y - 30, null);
|
||||
g.drawImage(amendmentImg, flag.x + 85, flag.y - 30, null);
|
||||
if (lvlAmTens > 0) {
|
||||
g.drawImage(numbers.get(lvlAmTens), flag.x + 55, flag.y - 30, null);
|
||||
g.drawImage(numbers.get(lvlAmOnes), flag.x + 80, flag.y - 30, null);
|
||||
g.drawImage(amendmentImg, flag.x + 110, flag.y - 30, null);
|
||||
|
||||
} else {
|
||||
g.drawImage(numbers.get(lvlAmOnes), flag.x + 55, flag.y - 30, null);
|
||||
g.drawImage(amendmentImg, flag.x + 85, flag.y - 30, null);
|
||||
}
|
||||
}
|
||||
|
||||
g.translate(cameraX, cameraY);
|
||||
@@ -373,7 +384,8 @@ public class Platformer extends JPanel implements KeyListener, ActionListener {
|
||||
int x = xBase + (i * spacing);
|
||||
|
||||
// y uses a sine wave
|
||||
// Math.sin takes radians. We use (startTime + i) to give each letter a different phase.
|
||||
// Math.sin takes radians. We use (startTime + i) to give each letter a
|
||||
// different phase.
|
||||
double waveOffset = Math.sin(startTime + i * 0.5) * 10;
|
||||
int y = yBase + (int) waveOffset;
|
||||
|
||||
@@ -398,22 +410,31 @@ public class Platformer extends JPanel implements KeyListener, ActionListener {
|
||||
|
||||
if (amTens > 0) g.drawImage(numbers.get(amTens), 315, 10, null);
|
||||
g.drawImage(numbers.get(amOnes), 340, 10, null);
|
||||
int lvlAmOnes = numAm[currentLevel - 1] % 10;
|
||||
int lvlAmTens = numAm[currentLevel - 1] / 10;
|
||||
g.drawImage(slash, 363, 12, null);
|
||||
g.drawImage(numbers.get(numAm[currentLevel - 1]), 390, 10, null);
|
||||
g.drawImage(amendmentImg, 420, 10, null);
|
||||
if (lvlAmTens > 0) {
|
||||
g.drawImage(numbers.get(lvlAmTens), 390, 10, null);
|
||||
g.drawImage(numbers.get(lvlAmOnes), 415, 10, null);
|
||||
|
||||
// draw powerup timer
|
||||
if (player.curPower == 1) {
|
||||
int secs = player.powerTimer / 66;
|
||||
int tens = secs / 10;
|
||||
int ones = secs % 10;
|
||||
if (tens > 0) {
|
||||
g.drawImage(numbers.get(tens), 184, 10, null);
|
||||
}
|
||||
g.drawImage(numbers.get(ones), 205, 10, null);
|
||||
g.drawImage(powerImg, 220, 10, null);
|
||||
g.drawImage(amendmentImg, 445, 10, null);
|
||||
} else {
|
||||
g.drawImage(numbers.get(lvlAmOnes), 390, 10, null);
|
||||
g.drawImage(amendmentImg, 420, 10, null);
|
||||
}
|
||||
}
|
||||
|
||||
// draw powerup timer
|
||||
if (player.curPower == 1) {
|
||||
int secs = player.powerTimer / 66;
|
||||
int tens = secs / 10;
|
||||
int ones = secs % 10;
|
||||
if (tens > 0) {
|
||||
g.drawImage(numbers.get(tens), 184, 10, null);
|
||||
}
|
||||
g.drawImage(numbers.get(ones), 205, 10, null);
|
||||
g.drawImage(powerImg, 220, 10, null);
|
||||
}
|
||||
}
|
||||
|
||||
// is key pressed
|
||||
|
||||
Reference in New Issue
Block a user