diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.java index d04ad84..44509c6 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.java @@ -152,4 +152,13 @@ class GameObjectManager { public GameOverlay getGameOverlay(){ return gameOverlay; } + + /** + * Get the background object. + * + * @return the background object + */ + public Background getBackground() { + return background; + } } diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.java index a205b9d..5aec58f 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.java @@ -41,6 +41,9 @@ public class GamePlayManager { /** Flag, if the bubble movement is froze */ public boolean movementFroze; + private int backgroundMusic; + private int harpoonSound; + /** * Create the manager handling the gameplay. * @@ -63,6 +66,7 @@ public class GamePlayManager { * @param easyDifficulty the game difficulty */ private void initializeGame(boolean easyDifficulty){ + //backgroundMusic = gameView.playSound("backgroundMusic.wav", true); gameObjectManager.clearAll(); levelManager = new LevelManager(easyDifficulty); try { @@ -86,6 +90,8 @@ public class GamePlayManager { movementFroze = false; // Update HUD updateHUD(); + // Update background + gameObjectManager.getBackground().setBackgroundImage(level.backgroundImage); } /** @@ -108,6 +114,7 @@ public class GamePlayManager { level = levelManager.getNextLevel(); initializeLevel(); } catch (LevelManager.NoMoreLevelsAvailableException e) { + gameView.stopAllSounds(); gameView.showEndScreen("You won!"); boolean easyDifficulty = gameView.showSimpleStartScreen("Super Pang World","Start the game"); initializeGame(easyDifficulty); @@ -171,6 +178,7 @@ public class GamePlayManager { */ public void freezeMovement(int freezeTime){ movementFroze = true; + gameView.playSound("freeze.wav",false); gameView.setTimer("MovementFroze","GamePlayManager",freezeTime); } @@ -180,6 +188,7 @@ public class GamePlayManager { * @param harpoon the harpoon to remove */ public void destroy(Harpoon harpoon){ + harpoon.stopSound(); gameObjectManager.getHarpoons().remove(harpoon); } diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/LevelManager.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/LevelManager.java index c791b79..36d9167 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/LevelManager.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/game/managers/LevelManager.java @@ -2,7 +2,10 @@ package de.thdeg.greiner.superpangworld.game.managers; import de.thdeg.greiner.superpangworld.graphics.helper.Level; +import java.sql.Array; import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.List; import java.util.Queue; /** @@ -10,9 +13,13 @@ import java.util.Queue; */ public class LevelManager { + private static final int BACKGROUND_IMAGE_COUNT = 9; + /** The queue to store the generated levels */ private final Queue levels; + private List backgroundImages; + /** * Create a level manager. * @@ -20,6 +27,7 @@ public class LevelManager { */ public LevelManager(boolean easyDifficulty){ levels = new ArrayDeque<>(); + backgroundImages = loadBackgroundImages(); generateLevels(easyDifficulty); } @@ -44,13 +52,28 @@ public class LevelManager { */ private void generateLevels(boolean easyDifficulty){ int overallScoreNeeded = 0; - for(int i=0;i<3;i++){ + int imageIndex = 0; + for(int i=0;i<99;i++){ int scoreNeeded = easyDifficulty ? 1000 + (100*i) : 10000 + (1000*i); overallScoreNeeded += scoreNeeded; - levels.add(new Level(i+1, scoreNeeded,overallScoreNeeded)); + levels.add(new Level(i+1, scoreNeeded,overallScoreNeeded,backgroundImages.get(imageIndex))); + if((i+1)%4==0){ + imageIndex++; + if(imageIndex==BACKGROUND_IMAGE_COUNT){ + imageIndex = 0; + } + } } } + private List loadBackgroundImages(){ + List images = new ArrayList<>(); + for(int i=1;i<=BACKGROUND_IMAGE_COUNT;i++){ + images.add("backgrounds/background_"+i+".png"); + } + return images; + } + /** * The exception in case no next level is remaining. */ diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/base/Bubble.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/base/Bubble.java index f774360..488a233 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/base/Bubble.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/base/Bubble.java @@ -111,20 +111,27 @@ public abstract class Bubble extends CollidingGameObject implements MovingGameOb if((newLocation.getX() >= GameView.WIDTH - width - HelperValues.FRAME_BORDER_WIDTH) || newLocation.getX() <= HelperValues.FRAME_BORDER_WIDTH){ velocity = new Point2D.Double(velocity.getX() * -1.0, velocity.getY()); if(this instanceof SpecialBubble){ - SpecialBubble specialBubble = (SpecialBubble) this; - specialBubble.freezeState = !specialBubble.freezeState; + switchSpecialBubbleState((SpecialBubble) this); } } // Floor bounce if(newLocation.getY() >= HelperValues.FRAME_WINDOW_HEIGHT + HelperValues.FRAME_BORDER_WIDTH - width){ velocity = new Point2D.Double(velocity.getX(), velocity.getY() * -0.95); newLocation = new Point2D.Double(newLocation.getX(), HelperValues.FRAME_WINDOW_HEIGHT + HelperValues.FRAME_BORDER_WIDTH - width); + if(this instanceof SpecialBubble){ + switchSpecialBubbleState((SpecialBubble) this); + } } position.setTo(newLocation.getX(), newLocation.getY()); } } + private void switchSpecialBubbleState(SpecialBubble specialBubble){ + specialBubble.freezeState = !specialBubble.freezeState; + gameView.playSound("specialBounce.wav",false); + } + /** * Get the score to add when bursting the bubble. * diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/helper/Level.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/helper/Level.java index 967b63c..e99d578 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/helper/Level.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/helper/Level.java @@ -12,6 +12,8 @@ public class Level { /** The overall needed score to surpass this level */ public int neededOverallScore; + public String backgroundImage; + /** * Create a level with a number, a needed score to surpass the level and a needed overall score to surpass the level. * @@ -19,9 +21,10 @@ public class Level { * @param neededLevelScore the needed score to surpass this level * @param neededOverallScore the overall needed score to surpass this level */ - public Level(int number, int neededLevelScore, int neededOverallScore){ + public Level(int number, int neededLevelScore, int neededOverallScore, String backgroundImage){ this.number = number; this.neededLevelScore = neededLevelScore; this.neededOverallScore = neededOverallScore; + this.backgroundImage = backgroundImage; } } diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/immovable/Background.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/immovable/Background.java index 4921be5..afab1aa 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/immovable/Background.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/immovable/Background.java @@ -8,6 +8,8 @@ import de.thdeg.greiner.superpangworld.graphics.base.GameObject; */ public class Background extends GameObject { + private String backgroundImage; + /** * Create a background object. * @@ -18,11 +20,24 @@ public class Background extends GameObject { this.position.setTo(0,0); size = 1; rotation = 0; + backgroundImage = "backgrounds/background_1.png"; } @Override public void addToCanvas() { - gameView.addImageToCanvas("background.png",position.x,position.y,size,rotation); + gameView.addImageToCanvas(backgroundImage,position.x,position.y,size,rotation); + } + + /** + * Set the background image. If it differs from the previous one a sound is played. + * + * @param backgroundImage the background image + */ + public void setBackgroundImage(String backgroundImage){ + if(!this.backgroundImage.equals(backgroundImage)){ + this.backgroundImage = backgroundImage; + gameView.playSound("levelSwitch.wav",false); + } } @Override diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.java index 600f2cc..03e6f3c 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.java @@ -19,6 +19,8 @@ public class Harpoon extends CollidingGameObject implements MovingGameObject { "k kkk k\n"+ "k kkk k\n"; + private int sound; + /** * Create a harpoon with default values. * @@ -35,6 +37,7 @@ public class Harpoon extends CollidingGameObject implements MovingGameObject { getPosition().setTo(300,300); this.hitBox.width = width; this.hitBox.height = (int) (440 - position.y); + sound = gameView.playSound("harpoon.wav",true); } @Override @@ -76,4 +79,8 @@ public class Harpoon extends CollidingGameObject implements MovingGameObject { @Override public void updateStatus() { } + + public void stopSound(){ + gameView.stopSound(sound); + } } diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.java index b8975d7..7298065 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.java @@ -68,6 +68,7 @@ public class HexagonalBubble extends Bubble { @Override public void destroy() { + gameView.playSound("burst.wav",false); if (size > 0.125) { Position positionLeft = new Position(position.x - (width/2.0/2.0), position.y); Position positionRight = new Position(position.x + width - (width/2.0/2.0), position.y); diff --git a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.java b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.java index 98f1e85..452990a 100644 --- a/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.java +++ b/SuperPangWorld/src/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.java @@ -87,6 +87,7 @@ public class RoundBubble extends Bubble { @Override public void destroy() { + gameView.playSound("burst.wav",false); if (size > 1.25) { Position positionLeft = new Position(position.x - (width/2.0/2.0), position.y); Position positionRight = new Position(position.x + width - (width/2.0/2.0), position.y); diff --git a/SuperPangWorld/src/resources/backgroundMusic.wav b/SuperPangWorld/src/resources/backgroundMusic.wav new file mode 100644 index 0000000..00b5296 Binary files /dev/null and b/SuperPangWorld/src/resources/backgroundMusic.wav differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_1.png b/SuperPangWorld/src/resources/backgrounds/background_1.png new file mode 100644 index 0000000..6c27513 Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_1.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_2.png b/SuperPangWorld/src/resources/backgrounds/background_2.png new file mode 100644 index 0000000..d2add4e Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_2.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_3.png b/SuperPangWorld/src/resources/backgrounds/background_3.png new file mode 100644 index 0000000..17d4381 Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_3.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_4.png b/SuperPangWorld/src/resources/backgrounds/background_4.png new file mode 100644 index 0000000..06bb70b Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_4.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_5.png b/SuperPangWorld/src/resources/backgrounds/background_5.png new file mode 100644 index 0000000..edbbd16 Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_5.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_6.png b/SuperPangWorld/src/resources/backgrounds/background_6.png new file mode 100644 index 0000000..94edea1 Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_6.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_7.png b/SuperPangWorld/src/resources/backgrounds/background_7.png new file mode 100644 index 0000000..5bd3ebe Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_7.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_8.png b/SuperPangWorld/src/resources/backgrounds/background_8.png new file mode 100644 index 0000000..7dc6dda Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_8.png differ diff --git a/SuperPangWorld/src/resources/backgrounds/background_9.png b/SuperPangWorld/src/resources/backgrounds/background_9.png new file mode 100644 index 0000000..6cf6771 Binary files /dev/null and b/SuperPangWorld/src/resources/backgrounds/background_9.png differ diff --git a/SuperPangWorld/src/resources/burst.wav b/SuperPangWorld/src/resources/burst.wav new file mode 100644 index 0000000..b508b67 Binary files /dev/null and b/SuperPangWorld/src/resources/burst.wav differ diff --git a/SuperPangWorld/src/resources/freeze.wav b/SuperPangWorld/src/resources/freeze.wav new file mode 100644 index 0000000..8d7e7e7 Binary files /dev/null and b/SuperPangWorld/src/resources/freeze.wav differ diff --git a/SuperPangWorld/src/resources/harpoon.wav b/SuperPangWorld/src/resources/harpoon.wav new file mode 100644 index 0000000..85d035e Binary files /dev/null and b/SuperPangWorld/src/resources/harpoon.wav differ diff --git a/SuperPangWorld/src/resources/levelSwitch.wav b/SuperPangWorld/src/resources/levelSwitch.wav new file mode 100644 index 0000000..dc87689 Binary files /dev/null and b/SuperPangWorld/src/resources/levelSwitch.wav differ diff --git a/SuperPangWorld/src/resources/specialBounce.wav b/SuperPangWorld/src/resources/specialBounce.wav new file mode 100644 index 0000000..cfa7ff3 Binary files /dev/null and b/SuperPangWorld/src/resources/specialBounce.wav differ diff --git a/out/artifacts/Programmieren_2_jar/Programmieren 2.jar b/out/artifacts/Programmieren_2_jar/Programmieren 2.jar index af34727..828b8c6 100644 Binary files a/out/artifacts/Programmieren_2_jar/Programmieren 2.jar and b/out/artifacts/Programmieren_2_jar/Programmieren 2.jar differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.class index 1ef8a2f..d00b9b9 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GameObjectManager.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.class index 5c5b401..018fbad 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/GamePlayManager.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager$NoMoreLevelsAvailableException.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager$NoMoreLevelsAvailableException.class index 087f157..fab1ae2 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager$NoMoreLevelsAvailableException.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager$NoMoreLevelsAvailableException.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager.class index ecfc27c..77a46c7 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/game/managers/LevelManager.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/base/Bubble.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/base/Bubble.class index 9169f7c..70a22e1 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/base/Bubble.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/base/Bubble.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/helper/Level.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/helper/Level.class index b2ea548..e9cf728 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/helper/Level.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/helper/Level.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/immovable/Background.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/immovable/Background.class index 375e032..9f14749 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/immovable/Background.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/immovable/Background.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.class index 55140f3..f35b543 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/Harpoon.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.class index 009ee62..cab73e9 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/HexagonalBubble.class differ diff --git a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.class b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.class index 68de193..8d96ca8 100644 Binary files a/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.class and b/out/production/SuperPangWorld/de/thdeg/greiner/superpangworld/graphics/moveable/RoundBubble.class differ diff --git a/out/production/SuperPangWorld/resources/backgroundMusic.wav b/out/production/SuperPangWorld/resources/backgroundMusic.wav new file mode 100644 index 0000000..00b5296 Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgroundMusic.wav differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_1.png b/out/production/SuperPangWorld/resources/backgrounds/background_1.png new file mode 100644 index 0000000..6c27513 Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_1.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_2.png b/out/production/SuperPangWorld/resources/backgrounds/background_2.png new file mode 100644 index 0000000..d2add4e Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_2.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_3.png b/out/production/SuperPangWorld/resources/backgrounds/background_3.png new file mode 100644 index 0000000..17d4381 Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_3.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_4.png b/out/production/SuperPangWorld/resources/backgrounds/background_4.png new file mode 100644 index 0000000..06bb70b Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_4.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_5.png b/out/production/SuperPangWorld/resources/backgrounds/background_5.png new file mode 100644 index 0000000..edbbd16 Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_5.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_6.png b/out/production/SuperPangWorld/resources/backgrounds/background_6.png new file mode 100644 index 0000000..94edea1 Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_6.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_7.png b/out/production/SuperPangWorld/resources/backgrounds/background_7.png new file mode 100644 index 0000000..5bd3ebe Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_7.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_8.png b/out/production/SuperPangWorld/resources/backgrounds/background_8.png new file mode 100644 index 0000000..7dc6dda Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_8.png differ diff --git a/out/production/SuperPangWorld/resources/backgrounds/background_9.png b/out/production/SuperPangWorld/resources/backgrounds/background_9.png new file mode 100644 index 0000000..6cf6771 Binary files /dev/null and b/out/production/SuperPangWorld/resources/backgrounds/background_9.png differ diff --git a/out/production/SuperPangWorld/resources/burst.wav b/out/production/SuperPangWorld/resources/burst.wav new file mode 100644 index 0000000..b508b67 Binary files /dev/null and b/out/production/SuperPangWorld/resources/burst.wav differ diff --git a/out/production/SuperPangWorld/resources/freeze.wav b/out/production/SuperPangWorld/resources/freeze.wav new file mode 100644 index 0000000..8d7e7e7 Binary files /dev/null and b/out/production/SuperPangWorld/resources/freeze.wav differ diff --git a/out/production/SuperPangWorld/resources/harpoon.wav b/out/production/SuperPangWorld/resources/harpoon.wav new file mode 100644 index 0000000..85d035e Binary files /dev/null and b/out/production/SuperPangWorld/resources/harpoon.wav differ diff --git a/out/production/SuperPangWorld/resources/levelSwitch.wav b/out/production/SuperPangWorld/resources/levelSwitch.wav new file mode 100644 index 0000000..dc87689 Binary files /dev/null and b/out/production/SuperPangWorld/resources/levelSwitch.wav differ diff --git a/out/production/SuperPangWorld/resources/specialBounce.wav b/out/production/SuperPangWorld/resources/specialBounce.wav new file mode 100644 index 0000000..cfa7ff3 Binary files /dev/null and b/out/production/SuperPangWorld/resources/specialBounce.wav differ