Browse Source
Merge branch 'develop' of https://github.com/RedEagle-dh/BitBiome into Julia
remotes/origin/Julia
Merge branch 'develop' of https://github.com/RedEagle-dh/BitBiome into Julia
remotes/origin/Julia
Juliakn66
2 years ago
20 changed files with 716 additions and 13 deletions
-
16src/main/java/org/bitbiome/Boot.java
-
56src/main/java/org/bitbiome/classes/Colors.java
-
24src/main/java/org/bitbiome/classes/CreateLocations.java
-
16src/main/java/org/bitbiome/classes/InteractionLoop.java
-
23src/main/java/org/bitbiome/classes/JsonParser.java
-
69src/main/java/org/bitbiome/classes/TravelEngine.java
-
4src/main/java/org/bitbiome/commands/CommandAPI.java
-
8src/main/java/org/bitbiome/commands/CommandListener.java
-
17src/main/java/org/bitbiome/commands/HelpCommand.java
-
18src/main/java/org/bitbiome/commands/LocationCommand.java
-
4src/main/java/org/bitbiome/commands/QuitCommand.java
-
33src/main/java/org/bitbiome/commands/TravelCommand.java
-
40src/main/java/org/bitbiome/entities/Item.java
-
33src/main/java/org/bitbiome/entities/Location.java
-
47src/main/java/org/bitbiome/entities/Mob.java
-
61src/main/java/org/bitbiome/entities/Player.java
-
17src/main/resources/gameconfig.json
-
204src/main/resources/quiz.json
-
17src/test/java/org/bitbiome/commands/HelpCommandTest.java
-
22src/test/java/org/bitbiome/commands/LocationCommandTest.java
@ -0,0 +1,56 @@ |
|||||
|
package org.bitbiome.classes; |
||||
|
|
||||
|
public class Colors { |
||||
|
|
||||
|
public static final String ANSI_RESET = "\u001B[0m"; |
||||
|
|
||||
|
public static final String ANSI_BLACK = "\u001B[30m"; |
||||
|
public static final String ANSI_RED = "\u001B[31m"; |
||||
|
public static final String ANSI_GREEN = "\u001B[32m"; |
||||
|
public static final String ANSI_YELLOW = "\u001B[33m"; |
||||
|
public static final String ANSI_BLUE = "\u001B[34m"; |
||||
|
public static final String ANSI_PURPLE = "\u001B[35m"; |
||||
|
public static final String ANSI_CYAN = "\u001B[36m"; |
||||
|
public static final String ANSI_WHITE = "\u001B[37m"; |
||||
|
|
||||
|
public static final String ANSI_BRIGHT_BLACK = "\u001B[90m"; |
||||
|
public static final String ANSI_BRIGHT_RED = "\u001B[91m"; |
||||
|
public static final String ANSI_BRIGHT_GREEN = "\u001B[92m"; |
||||
|
public static final String ANSI_BRIGHT_YELLOW = "\u001B[93m"; |
||||
|
public static final String ANSI_BRIGHT_BLUE = "\u001B[94m"; |
||||
|
public static final String ANSI_BRIGHT_PURPLE = "\u001B[95m"; |
||||
|
public static final String ANSI_BRIGHT_CYAN = "\u001B[96m"; |
||||
|
public static final String ANSI_BRIGHT_WHITE = "\u001B[97m"; |
||||
|
|
||||
|
public static final String[] FOREGROUNDS = { |
||||
|
ANSI_BLACK, ANSI_RED, ANSI_GREEN, ANSI_YELLOW, |
||||
|
ANSI_BLUE, ANSI_PURPLE, ANSI_CYAN, ANSI_WHITE, |
||||
|
ANSI_BRIGHT_BLACK, ANSI_BRIGHT_RED, ANSI_BRIGHT_GREEN, ANSI_BRIGHT_YELLOW, |
||||
|
ANSI_BRIGHT_BLUE, ANSI_BRIGHT_PURPLE, ANSI_BRIGHT_CYAN, ANSI_BRIGHT_WHITE |
||||
|
}; |
||||
|
|
||||
|
public static final String ANSI_BG_BLACK = "\u001B[40m"; |
||||
|
public static final String ANSI_BG_RED = "\u001B[41m"; |
||||
|
public static final String ANSI_BG_GREEN = "\u001B[42m"; |
||||
|
public static final String ANSI_BG_YELLOW = "\u001B[43m"; |
||||
|
public static final String ANSI_BG_BLUE = "\u001B[44m"; |
||||
|
public static final String ANSI_BG_PURPLE = "\u001B[45m"; |
||||
|
public static final String ANSI_BG_CYAN = "\u001B[46m"; |
||||
|
public static final String ANSI_BG_WHITE = "\u001B[47m"; |
||||
|
|
||||
|
public static final String ANSI_BRIGHT_BG_BLACK = "\u001B[100m"; |
||||
|
public static final String ANSI_BRIGHT_BG_RED = "\u001B[101m"; |
||||
|
public static final String ANSI_BRIGHT_BG_GREEN = "\u001B[102m"; |
||||
|
public static final String ANSI_BRIGHT_BG_YELLOW = "\u001B[103m"; |
||||
|
public static final String ANSI_BRIGHT_BG_BLUE = "\u001B[104m"; |
||||
|
public static final String ANSI_BRIGHT_BG_PURPLE = "\u001B[105m"; |
||||
|
public static final String ANSI_BRIGHT_BG_CYAN = "\u001B[106m"; |
||||
|
public static final String ANSI_BRIGHT_BG_WHITE = "\u001B[107m"; |
||||
|
|
||||
|
public static final String[] BACKGROUNDS = { |
||||
|
ANSI_BG_BLACK, ANSI_BG_RED, ANSI_BG_GREEN, ANSI_BG_YELLOW, |
||||
|
ANSI_BG_BLUE, ANSI_BG_PURPLE, ANSI_BG_CYAN, ANSI_BG_WHITE, |
||||
|
ANSI_BRIGHT_BG_BLACK, ANSI_BRIGHT_BG_RED, ANSI_BRIGHT_BG_GREEN, ANSI_BRIGHT_BG_YELLOW, |
||||
|
ANSI_BRIGHT_BG_BLUE, ANSI_BRIGHT_BG_PURPLE, ANSI_BRIGHT_BG_CYAN, ANSI_BRIGHT_BG_WHITE }; |
||||
|
|
||||
|
} |
@ -0,0 +1,24 @@ |
|||||
|
package org.bitbiome.classes; |
||||
|
|
||||
|
import org.bitbiome.entities.Item; |
||||
|
import org.bitbiome.entities.Location; |
||||
|
import org.bitbiome.entities.Mob; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
|
||||
|
public class CreateLocations { |
||||
|
|
||||
|
public static Location createForest() { |
||||
|
ArrayList<Item> items = new ArrayList<>(); |
||||
|
ArrayList<Mob> mobs = new ArrayList<>(); |
||||
|
String name = "Wald"; |
||||
|
return new Location(name, mobs, items); |
||||
|
} |
||||
|
|
||||
|
public static Location createBeach() { |
||||
|
ArrayList<Item> items = new ArrayList<>(); |
||||
|
ArrayList<Mob> mobs = new ArrayList<>(); |
||||
|
String name = "Strand"; |
||||
|
return new Location(name, mobs, items); |
||||
|
} |
||||
|
} |
@ -0,0 +1,69 @@ |
|||||
|
package org.bitbiome.classes; |
||||
|
|
||||
|
import org.bitbiome.entities.Location; |
||||
|
import org.bitbiome.entities.Player; |
||||
|
import org.json.JSONArray; |
||||
|
import org.json.JSONObject; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
|
||||
|
public class TravelEngine { |
||||
|
|
||||
|
private JSONArray locations; |
||||
|
private JsonParser jp; |
||||
|
private Player player; |
||||
|
|
||||
|
public TravelEngine(Player player) { |
||||
|
jp = new JsonParser(); |
||||
|
locations = jp.getJSONObject("gameconfig.json").getJSONArray("locations"); |
||||
|
this.player = player; |
||||
|
} |
||||
|
|
||||
|
public void travelTo(Location location) { |
||||
|
player.setLocation(location); |
||||
|
JSONObject jObj = jp.getJSONObject("playerconfig.json"); |
||||
|
jObj.put("currentLocation", location.getName()); |
||||
|
|
||||
|
jp.writeObject("playerconfig.json", jObj); |
||||
|
} |
||||
|
|
||||
|
public Player getPlayer() { |
||||
|
return player; |
||||
|
} |
||||
|
|
||||
|
public JSONArray getLocationList() { |
||||
|
return locations; |
||||
|
} |
||||
|
|
||||
|
public boolean locationExists(String name) { |
||||
|
boolean found = false; |
||||
|
for (int i = 0; i < locations.length(); i++) |
||||
|
if (locations.getJSONObject(i).getString("name").equals(name)) { |
||||
|
found = true; |
||||
|
} |
||||
|
return found; |
||||
|
} |
||||
|
|
||||
|
public Location getLocationByName(String name) { |
||||
|
JsonParser jp = new JsonParser(); |
||||
|
JSONObject gameconfig = jp.getJSONObject("gameconfig.json"); |
||||
|
JSONArray locations = gameconfig.getJSONArray("locations"); |
||||
|
JSONObject location = null; |
||||
|
if (locationExists(name)) { |
||||
|
for (int i = 0; i < locations.length(); i++) { |
||||
|
if (locations.getJSONObject(i).getString("name").equals(name)) { |
||||
|
location = locations.getJSONObject(i); |
||||
|
} |
||||
|
} |
||||
|
assert location != null; |
||||
|
//TODO Create Location by name and add mobs and times to the location |
||||
|
JSONArray items = location.getJSONArray("items"); |
||||
|
JSONArray mobs = location.getJSONArray("mobs"); |
||||
|
System.out.println(items.toString(1)); |
||||
|
System.out.println(mobs.toString(1)); |
||||
|
return new Location(name, new ArrayList<>(), new ArrayList<>()); |
||||
|
} else { |
||||
|
return null; |
||||
|
} |
||||
|
} |
||||
|
} |
@ -1,8 +1,10 @@ |
|||||
package org.bitbiome.commands; |
package org.bitbiome.commands; |
||||
|
|
||||
|
import org.bitbiome.classes.TravelEngine; |
||||
|
|
||||
import java.util.Scanner; |
import java.util.Scanner; |
||||
|
|
||||
public interface CommandAPI { |
public interface CommandAPI { |
||||
public void performCommand(Scanner scanner, boolean isRunning, String message); |
|
||||
|
public void performCommand(Scanner scanner, boolean isRunning, String message, TravelEngine travelEngine); |
||||
|
|
||||
} |
} |
@ -0,0 +1,18 @@ |
|||||
|
package org.bitbiome.commands; |
||||
|
|
||||
|
import org.bitbiome.classes.TravelEngine; |
||||
|
|
||||
|
import java.util.Scanner; |
||||
|
|
||||
|
public class LocationCommand implements CommandAPI{ |
||||
|
|
||||
|
@Override |
||||
|
public void performCommand(Scanner scanner, boolean isRunning, String message, TravelEngine travelEngine) { |
||||
|
System.out.println(getLocationMessage(travelEngine)); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
public static String getLocationMessage(TravelEngine travelEngine) { |
||||
|
return "Du befindest dich gerade hier: " + travelEngine.getPlayer().getLocation().getName(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
package org.bitbiome.commands; |
||||
|
|
||||
|
import org.bitbiome.classes.Colors; |
||||
|
import org.bitbiome.classes.CreateLocations; |
||||
|
import org.bitbiome.classes.TravelEngine; |
||||
|
import org.bitbiome.entities.Item; |
||||
|
import org.bitbiome.entities.Location; |
||||
|
import org.bitbiome.entities.Mob; |
||||
|
import org.json.JSONArray; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Scanner; |
||||
|
|
||||
|
|
||||
|
public class TravelCommand implements CommandAPI { |
||||
|
|
||||
|
@Override |
||||
|
public void performCommand(Scanner scanner, boolean isRunning, String message, TravelEngine travelEngine) { |
||||
|
System.out.println(Colors.ANSI_BLUE + "Du hast dein Travel-Pad gezückt. Wohin möchtest du reisen?" + Colors.ANSI_RESET); |
||||
|
JSONArray locations = travelEngine.getLocationList(); |
||||
|
for (int i = 0; i < locations.length(); i++) { |
||||
|
System.out.println("- " + locations.getJSONObject(i).getString("name")); |
||||
|
} |
||||
|
|
||||
|
String locationName = scanner.nextLine(); |
||||
|
if (travelEngine.locationExists(locationName)) { |
||||
|
travelEngine.travelTo(new Location(locationName, new ArrayList<Mob>(), new ArrayList<Item>())); |
||||
|
System.out.println(Colors.ANSI_BLUE + "Du bist nun hierhin gereist: " + locationName + "\n" + Colors.ANSI_RESET); |
||||
|
} else { |
||||
|
System.out.println(Colors.ANSI_BLUE + "Du hast dein Travel-Pad weggesteckt." + Colors.ANSI_RESET); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,40 @@ |
|||||
|
package org.bitbiome.entities; |
||||
|
|
||||
|
public class Item { |
||||
|
|
||||
|
public String name; |
||||
|
public boolean doesDamage; |
||||
|
public float damage; |
||||
|
|
||||
|
|
||||
|
public Item(String name, boolean doesDamage, float damage) { |
||||
|
this.name = name; |
||||
|
this.doesDamage = doesDamage; |
||||
|
this.damage = damage; |
||||
|
} |
||||
|
|
||||
|
public String getName() { |
||||
|
return name; |
||||
|
} |
||||
|
|
||||
|
public float getDamage() { |
||||
|
return damage; |
||||
|
} |
||||
|
|
||||
|
public boolean doesDamage() { |
||||
|
return doesDamage; |
||||
|
} |
||||
|
|
||||
|
public void setName(String name) { |
||||
|
this.name = name; |
||||
|
} |
||||
|
|
||||
|
public void setDamage(float damage) { |
||||
|
this.damage = damage; |
||||
|
} |
||||
|
|
||||
|
public void changeDoesDamage(boolean doesDamage) { |
||||
|
this.doesDamage = doesDamage; |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
package org.bitbiome.entities; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
|
||||
|
public class Location { |
||||
|
|
||||
|
private String name; |
||||
|
private ArrayList<Mob> mobList; |
||||
|
private ArrayList<Item> itemList; |
||||
|
|
||||
|
|
||||
|
public Location(String name, ArrayList<Mob> mobList, ArrayList<Item> itemList) { |
||||
|
this.name = name; |
||||
|
this.mobList = mobList; |
||||
|
this.itemList = itemList; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
public String getName() { |
||||
|
return name; |
||||
|
} |
||||
|
|
||||
|
public ArrayList<Mob> getMobList() { |
||||
|
return mobList; |
||||
|
} |
||||
|
|
||||
|
public ArrayList<Item> getItemList() { |
||||
|
return itemList; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,47 @@ |
|||||
|
package org.bitbiome.entities; |
||||
|
|
||||
|
public class Mob { |
||||
|
|
||||
|
private String name; |
||||
|
private boolean isFriendly; |
||||
|
|
||||
|
private float hp; |
||||
|
private float damage; |
||||
|
|
||||
|
public Mob(String name, boolean isFriendly, float hp, float damage) { |
||||
|
this.name = name; |
||||
|
this.isFriendly = isFriendly; |
||||
|
this.hp = hp; |
||||
|
this.damage = damage; |
||||
|
} |
||||
|
|
||||
|
public String getName() { |
||||
|
return name; |
||||
|
} |
||||
|
|
||||
|
public boolean isFriendly() { |
||||
|
return isFriendly; |
||||
|
} |
||||
|
|
||||
|
public float getHp() { |
||||
|
return hp; |
||||
|
} |
||||
|
|
||||
|
public float getDamage() { |
||||
|
return damage; |
||||
|
} |
||||
|
|
||||
|
public void setDamage(float damage) { |
||||
|
this.damage = damage; |
||||
|
} |
||||
|
|
||||
|
public void setHp(float hp) { |
||||
|
this.hp = hp; |
||||
|
} |
||||
|
|
||||
|
public void setFriendly(boolean isFriendly) { |
||||
|
this.isFriendly = isFriendly; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,61 @@ |
|||||
|
package org.bitbiome.entities; |
||||
|
|
||||
|
import org.bitbiome.classes.CreateLocations; |
||||
|
import org.bitbiome.classes.JsonParser; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
|
||||
|
public class Player { |
||||
|
private String name; |
||||
|
private float hp; |
||||
|
private Location location; |
||||
|
|
||||
|
private ArrayList<Item> inventory; |
||||
|
|
||||
|
private JsonParser jp; |
||||
|
|
||||
|
public Player(String name) { |
||||
|
jp = new JsonParser(); |
||||
|
this.name = name; |
||||
|
hp = 100.0F; |
||||
|
location = new Location(jp.getJSONObject("playerconfig.json").getString("currentLocation"), new ArrayList<>(), new ArrayList<>()); |
||||
|
inventory = new ArrayList<>(); |
||||
|
} |
||||
|
|
||||
|
public String getName() { |
||||
|
return name; |
||||
|
} |
||||
|
|
||||
|
public ArrayList<Item> getInventory() { |
||||
|
return inventory; |
||||
|
} |
||||
|
|
||||
|
public float getHp() { |
||||
|
return hp; |
||||
|
} |
||||
|
|
||||
|
public Location getLocation() { |
||||
|
return location; |
||||
|
} |
||||
|
|
||||
|
public void setLocation(Location location) { |
||||
|
this.location = location; |
||||
|
} |
||||
|
|
||||
|
public void setHp(float hp) { |
||||
|
this.hp = hp; |
||||
|
} |
||||
|
|
||||
|
public boolean addToInventory(Item item) { |
||||
|
return inventory.add(item); |
||||
|
} |
||||
|
|
||||
|
public boolean removeFromInventory(Item item) { |
||||
|
return inventory.remove(item); |
||||
|
} |
||||
|
|
||||
|
public void setName(String name) { |
||||
|
this.name = name; |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,204 @@ |
|||||
|
{ |
||||
|
"Quiz": [ |
||||
|
{ |
||||
|
"frage": "Wie lang ist der Äquator der Erde?", |
||||
|
"antworten": [ |
||||
|
"20.000m", |
||||
|
"30km", |
||||
|
"60.000km", |
||||
|
"40.000km" |
||||
|
], |
||||
|
"korrekteAntwort": "40.000km" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Was ist der längste Fluss der Welt?", |
||||
|
"antworten": [ |
||||
|
"Amazonas", |
||||
|
"Nil", |
||||
|
"Rhein", |
||||
|
"Niger" |
||||
|
], |
||||
|
"korrekteAntwort": "Nil" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Wie viele Tasten hat ein Klavier?", |
||||
|
"antworten": [ |
||||
|
"74", |
||||
|
"86", |
||||
|
"82", |
||||
|
"88" |
||||
|
], |
||||
|
"korrekteAntwort": "88" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Von wem wird der Bundespräsident gewählt?", |
||||
|
"antworten": [ |
||||
|
"Vom Europäischen Parlament", |
||||
|
"Vom Bundeskanzler", |
||||
|
"Vom Bundestag", |
||||
|
"Von der Bundesversammlung" |
||||
|
], |
||||
|
"korrekteAntwort": "von der Bundesversammlung" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Welches Land produziert jährlich die meisten Filme?", |
||||
|
"antworten": [ |
||||
|
"USA", |
||||
|
"Indien", |
||||
|
"Japan", |
||||
|
"Nigeria" |
||||
|
], |
||||
|
"korrekteAntwort": "Indien" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Wie heißt der am schnellsten schwimmende Fisch auf Erden?", |
||||
|
"antworten": [ |
||||
|
"Flugfisch", |
||||
|
"Tigerhai", |
||||
|
"Segelfisch", |
||||
|
"Windfisch" |
||||
|
], |
||||
|
"korrekteAntwort": "Segelfisch" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Was ist KEIN Gewächs?", |
||||
|
"antworten": [ |
||||
|
"Geranie", |
||||
|
"Moosfarn", |
||||
|
"Incolornis", |
||||
|
"Strandflieder" |
||||
|
], |
||||
|
"korrekteAntwort": "Incolornis" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Was nutzt eine Fledermaus zur Orientierung in der Luft?", |
||||
|
"antworten": [ |
||||
|
"Infrarot", |
||||
|
"Röntgenstrahlen", |
||||
|
"Speichel", |
||||
|
"Ultraschall" |
||||
|
], |
||||
|
"korrekteAntwort": "Ultraschall" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Von wem stammt der berühmte Satz: 'Ich denke, also bin ich'?", |
||||
|
"antworten": [ |
||||
|
"John Fitzgerald Kennedy", |
||||
|
"George Walker Bush", |
||||
|
"René Descartes", |
||||
|
"Julius Caesar" |
||||
|
], |
||||
|
"korrekteAntwort": "René Descartes" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Welches Lebensmittel enthält das meiste Wasser?", |
||||
|
"antworten": [ |
||||
|
"Gurke", |
||||
|
"Wassermelone", |
||||
|
"Zitrone", |
||||
|
"Paprika" |
||||
|
], |
||||
|
"korrekteAntwort": "Gurke" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Welches Lebensmittel gehört im botanischen Sinne zu den Früchten?", |
||||
|
"antworten": [ |
||||
|
"Möhre", |
||||
|
"Kartoffel", |
||||
|
"Tomate", |
||||
|
"Weißkohl" |
||||
|
], |
||||
|
"korrekteAntwort": "Tomate" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Haptische Wahrnehmung beruht auf dem...?", |
||||
|
"antworten": [ |
||||
|
"Greifreflex", |
||||
|
"Gleichgewichtssinn", |
||||
|
"Hörsinn", |
||||
|
"Tastsinn" |
||||
|
], |
||||
|
"korrekteAntwort": "Tastsinn" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Wie nennt man den letzten Tanz einer Tanzveranstaltung?", |
||||
|
"antworten": [ |
||||
|
"Voraus", |
||||
|
"Garaus", |
||||
|
"Kehraus", |
||||
|
"Durchaus" |
||||
|
], |
||||
|
"korrekteAntwort": "Kehraus" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Wie nennt man ein tiefes, enges Tal, durch das ein Gebirgsbach fließt?", |
||||
|
"antworten": [ |
||||
|
"Klamm", |
||||
|
"Feucht", |
||||
|
"Nass", |
||||
|
"Schwamm" |
||||
|
], |
||||
|
"korrekteAntwort": "Klamm" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Wer oder was ist Gerbera?", |
||||
|
"antworten": [ |
||||
|
"eine europäische Landschaft", |
||||
|
"eine Pflanze", |
||||
|
"die erste Präsidentin von Südafrika", |
||||
|
"eine Stadt in Lichtenstein" |
||||
|
], |
||||
|
"korrekteAntwort": "eine Pflanze" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Nach wem wurde ein Gesellschaftsanzug benannt?", |
||||
|
"antworten": [ |
||||
|
"Richard von Weizsäcker", |
||||
|
"Gustav Heinemann", |
||||
|
"Jürgen Klinsmann", |
||||
|
"Gustav Stresemann" |
||||
|
], |
||||
|
"korrekteAntwort": "Gustav Stresemann" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Was ist Speckstein?", |
||||
|
"antworten": [ |
||||
|
"eine Fischart, die sich als Stein tarnt", |
||||
|
"ein Gericht aus dem Mittelalter", |
||||
|
"eine Skulptur im Römischen Reich unter Nero", |
||||
|
"ein besonders weicher Stein" |
||||
|
], |
||||
|
"korrekteAntwort": "ein besonders weicher Stein" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "In welcher Religion gibt es Gurus?", |
||||
|
"antworten": [ |
||||
|
"im Christentum", |
||||
|
"im Hinduismus", |
||||
|
"im Islam", |
||||
|
"im Judentum" |
||||
|
], |
||||
|
"korrekteAntwort": "im Hinduismus" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Was versteht man unter Brunsbüttel?", |
||||
|
"antworten": [ |
||||
|
"eine Industriestadt an der Unterelbe", |
||||
|
"einen Plakatkleber", |
||||
|
"eine 630 Mark-Kraft", |
||||
|
"ein Staatssekretär" |
||||
|
], |
||||
|
"korrekteAntwort": "eine Industriestadt an der Unterelbe" |
||||
|
}, |
||||
|
{ |
||||
|
"frage": "Welcher im 11. Jahrhundert gegründeter Orden rettet und pfelgt auch noch heute Verletzte und Kranke?", |
||||
|
"antworten": [ |
||||
|
"die Dominikaner", |
||||
|
"die Augustiner", |
||||
|
"die Zisterzienser", |
||||
|
"die Johanniter" |
||||
|
], |
||||
|
"korrekteAntwort": "die Johanniter" |
||||
|
} |
||||
|
] |
||||
|
} |
@ -1,14 +1,29 @@ |
|||||
package org.bitbiome.commands; |
package org.bitbiome.commands; |
||||
|
|
||||
|
import org.bitbiome.classes.Colors; |
||||
import org.junit.jupiter.api.Test; |
import org.junit.jupiter.api.Test; |
||||
import static org.junit.jupiter.api.Assertions.assertEquals; |
import static org.junit.jupiter.api.Assertions.assertEquals; |
||||
|
import static org.junit.jupiter.api.Assertions.assertTrue; |
||||
|
|
||||
public class HelpCommandTest { |
public class HelpCommandTest { |
||||
|
|
||||
@Test |
@Test |
||||
public void testHelpCommand() { |
public void testHelpCommand() { |
||||
String helpMessage = HelpCommand.getHelpMessage(); |
String helpMessage = HelpCommand.getHelpMessage(); |
||||
assertEquals("Hier ist eine Liste der Commands:\n- help -> Gibt diese Nachricht aus\n- exit/quit -> Beendet das Spiel\n", helpMessage); |
|
||||
|
StringBuilder outputMessage = new StringBuilder(); |
||||
|
outputMessage |
||||
|
.append("|______________|_____________________________|\n") |
||||
|
.append("|" + Colors.ANSI_PURPLE + " Command" + Colors.ANSI_RESET + " | " + Colors.ANSI_PURPLE + "Description" + Colors.ANSI_RESET + " |\n") |
||||
|
.append("|--------------|-----------------------------|\n") |
||||
|
.append("|" + Colors.ANSI_GREEN + " help" + Colors.ANSI_RESET + " | Gibt diese Nachricht aus |\n") |
||||
|
.append("|--------------|-----------------------------|\n") |
||||
|
.append("|" + Colors.ANSI_GREEN + " exit/quit" + Colors.ANSI_RESET + " | Beendet das Spiel |\n") |
||||
|
.append("|--------------|-----------------------------|\n") |
||||
|
.append("|" + Colors.ANSI_GREEN + " travel" + Colors.ANSI_RESET + " | Startet das Reise System |\n") |
||||
|
.append("|--------------|-----------------------------|\n") |
||||
|
.append("|" + Colors.ANSI_GREEN + " location" + Colors.ANSI_RESET + " | Gibt deine Location aus |\n") |
||||
|
.append("|______________|_____________________________|\n"); |
||||
|
assertEquals(outputMessage.toString(), helpMessage); |
||||
} |
} |
||||
|
|
||||
|
|
||||
|
@ -0,0 +1,22 @@ |
|||||
|
package org.bitbiome.commands; |
||||
|
|
||||
|
import org.bitbiome.classes.TravelEngine; |
||||
|
import org.bitbiome.entities.Player; |
||||
|
import org.junit.jupiter.api.Test; |
||||
|
|
||||
|
import static org.junit.jupiter.api.Assertions.assertTrue; |
||||
|
|
||||
|
import java.util.Arrays; |
||||
|
|
||||
|
public class LocationCommandTest { |
||||
|
|
||||
|
@Test |
||||
|
public void testLocationCommand() { |
||||
|
Player p = new Player("Unit"); |
||||
|
TravelEngine tE = new TravelEngine(p); |
||||
|
String[] standorte = {"Wald", "Strand"}; |
||||
|
String locationMessage = LocationCommand.getLocationMessage(tE).split(": ")[1]; |
||||
|
assertTrue(Arrays.asList(standorte).contains(locationMessage)); |
||||
|
} |
||||
|
|
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue