mirror of
https://inf.pirckheimer-gymnasium.de/kebab/kebab
synced 2026-08-26 16:31:23 +00:00
Add sound, rename game scene, add first customer
This commit is contained in:
@@ -1,17 +1,120 @@
|
|||||||
package project.scenes;
|
package project.scenes;
|
||||||
|
|
||||||
|
import pi.Controller;
|
||||||
|
import pi.Rectangle;
|
||||||
import pi.Scene;
|
import pi.Scene;
|
||||||
import project.utils.StatsCollection;
|
|
||||||
import pi.Text;
|
import pi.Text;
|
||||||
|
import pi.actor.Actor;
|
||||||
|
import pi.actor.Animation;
|
||||||
|
import pi.actor.Image;
|
||||||
|
import pi.graphics.geom.Vector;
|
||||||
|
|
||||||
|
import static pi.Controller.fonts;
|
||||||
|
import java.awt.Font;
|
||||||
|
|
||||||
|
|
||||||
public class GameScene extends Scene
|
public class GameScene extends Scene
|
||||||
{
|
{
|
||||||
|
|
||||||
public GameScene() {
|
public GameScene() {
|
||||||
StatsCollection.addStatsCollectionOutline(this);
|
// the background music, color, stats (some meta information)
|
||||||
Text[] texts = StatsCollection.createTexts(this);
|
Controller.jukebox.playSound("sounds/Mozart_Turkish_March_-_Orchestral_Melodic_Techno_-_TVV_music_320k.mp3");
|
||||||
|
Rectangle bg = new Rectangle(2000, 2000);
|
||||||
|
bg.color("#ffffff");
|
||||||
|
bg.center(0,0);
|
||||||
|
bg.layerPosition(-100);
|
||||||
|
addStatsCollectionOutline(this);
|
||||||
|
Text[] texts = createTexts(this);
|
||||||
camera().meter(10);
|
camera().meter(10);
|
||||||
|
|
||||||
|
// create customers
|
||||||
|
Actor[] customers = new Actor[1];
|
||||||
|
customers[0] = Animation.createFromAnimatedGif("images/kebab-pack/customer-mr-eggman.gif", 1.48*25, 1.25*25);
|
||||||
|
customers[0].center(-60,0);
|
||||||
|
customers[0].applyImpulse(new Vector(1, 0).multiply(100000));
|
||||||
|
|
||||||
|
// add all actors
|
||||||
|
add(bg);
|
||||||
|
add(customers);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Static helper methods
|
||||||
|
public static void addStatsCollectionOutline(Scene scene) {
|
||||||
|
Image moneyButton = new Image("images/pixui-pack/Buttons/Button_White_Outline (9).png");
|
||||||
|
moneyButton.center(-10, 25);
|
||||||
|
Image kebabSoldButton = new Image("images/pixui-pack/Buttons/Button_White_Outline (9).png");
|
||||||
|
kebabSoldButton.center(0, 25);
|
||||||
|
Image waitingCustomersButton = new Image("images/pixui-pack/Buttons/Button_White_Outline (9).png");
|
||||||
|
waitingCustomersButton.center(10, 25);
|
||||||
|
|
||||||
|
Image moneyIcon = new Image("images/kebab-pack/money-128x128.png").size(2, 2);
|
||||||
|
moneyIcon.center(-12, 25);
|
||||||
|
Image kebabSoldIcon = new Image("images/kebab-pack/kebab-128x128.png").size(2, 2);
|
||||||
|
kebabSoldIcon.center(-2, 25);
|
||||||
|
Image waitingCustomersIcon = new Image("images/kebab-pack/aladin-256x256.png").size(2, 2);
|
||||||
|
waitingCustomersIcon.center(8, 25);
|
||||||
|
|
||||||
|
scene.add(moneyButton);
|
||||||
|
scene.add(moneyIcon);
|
||||||
|
scene.add(kebabSoldButton);
|
||||||
|
scene.add(kebabSoldIcon);
|
||||||
|
scene.add(waitingCustomersButton);
|
||||||
|
scene.add(waitingCustomersIcon);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Text[] createTexts(Scene scene) {
|
||||||
|
Text[] texts = new Text[10];
|
||||||
|
Font font = fonts.get("fonts/BitcountGridDouble-Regular.ttf");
|
||||||
|
|
||||||
|
Text money = new Text("0");
|
||||||
|
money.color("#000000");
|
||||||
|
money.font(font);
|
||||||
|
money.height(2.5);
|
||||||
|
money.center(-9, 25);
|
||||||
|
texts[0] = money;
|
||||||
|
Text kebabSold = new Text("0");
|
||||||
|
kebabSold.color("#000000");
|
||||||
|
kebabSold.font(font);
|
||||||
|
kebabSold.height(2.5);
|
||||||
|
kebabSold.center(1, 25);
|
||||||
|
texts[1] = kebabSold;
|
||||||
|
Text waitingCustomers = new Text("0");
|
||||||
|
waitingCustomers.color("#000000");
|
||||||
|
waitingCustomers.font(font);
|
||||||
|
waitingCustomers.height(2.5);
|
||||||
|
waitingCustomers.center(11, 25);
|
||||||
|
texts[2] = waitingCustomers;
|
||||||
|
|
||||||
|
scene.add(money);
|
||||||
|
scene.add(kebabSold);
|
||||||
|
scene.add(waitingCustomers);
|
||||||
|
|
||||||
|
return texts;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setTexts(Text[] texts, int money, int kebabSold, int waitingCustomers) {
|
||||||
|
texts[0].content(String.valueOf(money));
|
||||||
|
texts[1].content(String.valueOf(kebabSold));
|
||||||
|
texts[2].content(String.valueOf(waitingCustomers));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setMoney(Text[] texts, int money) {
|
||||||
|
texts[0].content(String.valueOf(money));
|
||||||
|
}
|
||||||
|
public static void setKebabSold(Text[] texts, int kebabSold) {
|
||||||
|
texts[1].content(String.valueOf(kebabSold));
|
||||||
|
}
|
||||||
|
public static void setWaitingCustomers(Text[] texts, int waitingCustomers) {
|
||||||
|
texts[2].content(String.valueOf(waitingCustomers));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void saveStats(Text[] texts) {
|
||||||
|
int money = Integer.parseInt(texts[0].content());
|
||||||
|
int kebabSold = Integer.parseInt(texts[1].content());
|
||||||
|
int waitingCustomers = Integer.parseInt(texts[2].content());
|
||||||
|
|
||||||
|
System.out.println(money);
|
||||||
|
System.out.println(kebabSold);
|
||||||
|
System.out.println(waitingCustomers);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,89 +0,0 @@
|
|||||||
package project.utils;
|
|
||||||
|
|
||||||
import pi.Scene;
|
|
||||||
import pi.actor.Image;
|
|
||||||
import pi.Text;
|
|
||||||
import static pi.Controller.fonts;
|
|
||||||
|
|
||||||
import java.awt.Font;
|
|
||||||
|
|
||||||
public class StatsCollection {
|
|
||||||
public static void addStatsCollectionOutline(Scene scene) {
|
|
||||||
Image moneyButton = new Image("images/pixui-pack/Buttons/Button_White_Outline (9).png");
|
|
||||||
moneyButton.center(-10, 25);
|
|
||||||
Image kebabSoldButton = new Image("images/pixui-pack/Buttons/Button_White_Outline (9).png");
|
|
||||||
kebabSoldButton.center(0, 25);
|
|
||||||
Image waitingCustomersButton = new Image("images/pixui-pack/Buttons/Button_White_Outline (9).png");
|
|
||||||
waitingCustomersButton.center(10, 25);
|
|
||||||
|
|
||||||
Image moneyIcon = new Image("images/kebab-pack/money-128x128.png").size(2, 2);
|
|
||||||
moneyIcon.center(-12, 25);
|
|
||||||
Image kebabSoldIcon = new Image("images/kebab-pack/kebab-128x128.png").size(2, 2);
|
|
||||||
kebabSoldIcon.center(-2, 25);
|
|
||||||
Image waitingCustomersIcon = new Image("images/kebab-pack/aladin-256x256.png").size(2, 2);
|
|
||||||
waitingCustomersIcon.center(8, 25);
|
|
||||||
|
|
||||||
scene.add(moneyButton);
|
|
||||||
scene.add(moneyIcon);
|
|
||||||
scene.add(kebabSoldButton);
|
|
||||||
scene.add(kebabSoldIcon);
|
|
||||||
scene.add(waitingCustomersButton);
|
|
||||||
scene.add(waitingCustomersIcon);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static Text[] createTexts(Scene scene) {
|
|
||||||
Text[] texts = new Text[10];
|
|
||||||
Font font = fonts.get("fonts/BitcountGridDouble-Regular.ttf");
|
|
||||||
|
|
||||||
Text money = new Text("0");
|
|
||||||
money.color("#000000");
|
|
||||||
money.font(font);
|
|
||||||
money.height(2.5);
|
|
||||||
money.center(-9, 25);
|
|
||||||
texts[0] = money;
|
|
||||||
Text kebabSold = new Text("0");
|
|
||||||
kebabSold.color("#000000");
|
|
||||||
kebabSold.font(font);
|
|
||||||
kebabSold.height(2.5);
|
|
||||||
kebabSold.center(1, 25);
|
|
||||||
texts[1] = kebabSold;
|
|
||||||
Text waitingCustomers = new Text("0");
|
|
||||||
waitingCustomers.color("#000000");
|
|
||||||
waitingCustomers.font(font);
|
|
||||||
waitingCustomers.height(2.5);
|
|
||||||
waitingCustomers.center(11, 25);
|
|
||||||
texts[2] = waitingCustomers;
|
|
||||||
|
|
||||||
scene.add(money);
|
|
||||||
scene.add(kebabSold);
|
|
||||||
scene.add(waitingCustomers);
|
|
||||||
|
|
||||||
return texts;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void setTexts(Text[] texts, int money, int kebabSold, int waitingCustomers) {
|
|
||||||
texts[0].content(String.valueOf(money));
|
|
||||||
texts[1].content(String.valueOf(kebabSold));
|
|
||||||
texts[2].content(String.valueOf(waitingCustomers));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void setMoney(Text[] texts, int money) {
|
|
||||||
texts[0].content(String.valueOf(money));
|
|
||||||
}
|
|
||||||
public static void setKebabSold(Text[] texts, int kebabSold) {
|
|
||||||
texts[1].content(String.valueOf(kebabSold));
|
|
||||||
}
|
|
||||||
public static void setWaitingCustomers(Text[] texts, int waitingCustomers) {
|
|
||||||
texts[2].content(String.valueOf(waitingCustomers));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void saveStats(Text[] texts) {
|
|
||||||
int money = Integer.parseInt(texts[0].content());
|
|
||||||
int kebabSold = Integer.parseInt(texts[1].content());
|
|
||||||
int waitingCustomers = Integer.parseInt(texts[2].content());
|
|
||||||
|
|
||||||
System.out.println(money);
|
|
||||||
System.out.println(kebabSold);
|
|
||||||
System.out.println(waitingCustomers);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 3.9 KiB |
BIN
Binary file not shown.
Reference in New Issue
Block a user