mirror of
https://athene2.informatik.unibw-muenchen.de/progproj/gruppen-ht24/Gruppe-02.git
synced 2025-04-17 12:40:59 +02:00
Compare commits
8 Commits
8821602728
...
e49b22c022
Author | SHA1 | Date | |
---|---|---|---|
|
e49b22c022 | ||
|
aae003823d | ||
|
1369de865a | ||
|
8e3cf9c31e | ||
|
bc31c61fb3 | ||
|
975e4a2737 | ||
|
8d638158e4 | ||
|
1f37eb9962 |
@ -25,7 +25,7 @@ import com.simsilica.lemur.style.ElementId;
|
|||||||
|
|
||||||
import pp.dialog.Dialog;
|
import pp.dialog.Dialog;
|
||||||
import pp.monopoly.client.MonopolyApp;
|
import pp.monopoly.client.MonopolyApp;
|
||||||
import pp.monopoly.game.server.PlayerColor;
|
import pp.monopoly.game.server.Player;
|
||||||
import pp.monopoly.message.client.PlayerReady;
|
import pp.monopoly.message.client.PlayerReady;
|
||||||
import pp.monopoly.notification.Sound;
|
import pp.monopoly.notification.Sound;
|
||||||
|
|
||||||
@ -67,6 +67,9 @@ public class LobbyMenu extends Dialog {
|
|||||||
/** Selected player figure. */
|
/** Selected player figure. */
|
||||||
private String figure;
|
private String figure;
|
||||||
|
|
||||||
|
private VersionedReference<Set<Integer>> selectionRef;
|
||||||
|
private Selector<String> figureDropdown;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructs the lobby menu for player configuration.
|
* Constructs the lobby menu for player configuration.
|
||||||
*
|
*
|
||||||
@ -142,7 +145,7 @@ public class LobbyMenu extends Dialog {
|
|||||||
figureDropdownContainer.setBackground(null);
|
figureDropdownContainer.setBackground(null);
|
||||||
|
|
||||||
VersionedList<String> figures = new VersionedList<>();
|
VersionedList<String> figures = new VersionedList<>();
|
||||||
figures.add("Laptop");
|
figures.add("Computer");
|
||||||
figures.add("Flugzeug");
|
figures.add("Flugzeug");
|
||||||
figures.add("Jägermeister");
|
figures.add("Jägermeister");
|
||||||
figures.add("Katze");
|
figures.add("Katze");
|
||||||
@ -150,8 +153,7 @@ public class LobbyMenu extends Dialog {
|
|||||||
figures.add("Handyholster");
|
figures.add("Handyholster");
|
||||||
|
|
||||||
|
|
||||||
|
figureDropdown = new Selector<>(figures, "glass");
|
||||||
Selector<String> figureDropdown = new Selector<>(figures, "glass");
|
|
||||||
figureDropdown.setBackground(new QuadBackgroundComponent(ColorRGBA.DarkGray));
|
figureDropdown.setBackground(new QuadBackgroundComponent(ColorRGBA.DarkGray));
|
||||||
figureDropdown.setPreferredSize(new Vector3f(100, 20, 0));
|
figureDropdown.setPreferredSize(new Vector3f(100, 20, 0));
|
||||||
figureDropdownContainer.addChild(figureDropdown);
|
figureDropdownContainer.addChild(figureDropdown);
|
||||||
@ -159,10 +161,12 @@ public class LobbyMenu extends Dialog {
|
|||||||
Vector3f dimens2 = figureDropdown.getPopupContainer().getPreferredSize();
|
Vector3f dimens2 = figureDropdown.getPopupContainer().getPreferredSize();
|
||||||
dimens2.setX( dimens.getX() );
|
dimens2.setX( dimens.getX() );
|
||||||
figureDropdown.getPopupContainer().setPreferredSize(new Vector3f(200,200,5));
|
figureDropdown.getPopupContainer().setPreferredSize(new Vector3f(200,200,5));
|
||||||
figureDropdown.getSelectionModel().setSelection(0);
|
|
||||||
figure = "Laptop";
|
|
||||||
|
|
||||||
addSelectionActionListener(figureDropdown, this::onDropdownSelectionChanged);
|
// Create selection ref for updating
|
||||||
|
selectionRef = figureDropdown.getSelectionModel().createReference();
|
||||||
|
// Set default
|
||||||
|
figureDropdown.getSelectionModel().setSelection(0);
|
||||||
|
onDropdownSelectionChanged(figureDropdown);
|
||||||
|
|
||||||
Container buttonContainer = menuContainer.addChild(new Container(new SpringGridLayout(Axis.X, Axis.Y)));
|
Container buttonContainer = menuContainer.addChild(new Container(new SpringGridLayout(Axis.X, Axis.Y)));
|
||||||
buttonContainer.setPreferredSize(new Vector3f(100, 40, 0));
|
buttonContainer.setPreferredSize(new Vector3f(100, 40, 0));
|
||||||
@ -216,6 +220,7 @@ public class LobbyMenu extends Dialog {
|
|||||||
1 // Höhere Z-Ebene für den Vordergrund
|
1 // Höhere Z-Ebene für den Vordergrund
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
app.getGuiNode().attachChild(menuContainer);
|
app.getGuiNode().attachChild(menuContainer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -247,31 +252,12 @@ public class LobbyMenu extends Dialog {
|
|||||||
|
|
||||||
// Create a material with a solid color
|
// Create a material with a solid color
|
||||||
Material material = new Material(app.getAssetManager(), "Common/MatDefs/Misc/Unshaded.j3md");
|
Material material = new Material(app.getAssetManager(), "Common/MatDefs/Misc/Unshaded.j3md");
|
||||||
material.setColor("Color", idToColor()); // Set the desired color
|
material.setColor("Color", Player.getColor(app.getId()).getColor()); // Set the desired color
|
||||||
circleGeometry.setMaterial(material);
|
circleGeometry.setMaterial(material);
|
||||||
|
|
||||||
return circleGeometry;
|
return circleGeometry;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Maps the player's ID to a corresponding color.
|
|
||||||
*
|
|
||||||
* @return the color associated with the player's ID
|
|
||||||
*/
|
|
||||||
private ColorRGBA idToColor() {
|
|
||||||
switch (app.getId()+1) {
|
|
||||||
case 1: return PlayerColor.CYAN.getColor();
|
|
||||||
case 2: return PlayerColor.YELLOW.getColor();
|
|
||||||
case 3: return PlayerColor.RED.getColor();
|
|
||||||
case 4: return PlayerColor.PINK.getColor();
|
|
||||||
case 5: return PlayerColor.GREEN.getColor();
|
|
||||||
case 6: return PlayerColor.PURPLE.getColor();
|
|
||||||
|
|
||||||
default:
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Toggles the player's ready state and sends the configuration to the server.
|
* Toggles the player's ready state and sends the configuration to the server.
|
||||||
*/
|
*/
|
||||||
@ -287,42 +273,11 @@ public class LobbyMenu extends Dialog {
|
|||||||
new SettingsMenu(app).open();
|
new SettingsMenu(app).open();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@Override
|
||||||
* Adds a custom action listener to a dropdown selector.
|
public void update(float tpf) {
|
||||||
*
|
if (selectionRef.update()) {
|
||||||
* @param selector the selector to add the listener to
|
onDropdownSelectionChanged(figureDropdown);
|
||||||
* @param listener the action to perform when a selection changes
|
}
|
||||||
*/
|
|
||||||
private void addSelectionActionListener(Selector<String> selector, SelectionActionListener<String> listener) {
|
|
||||||
VersionedReference<Set<Integer>> selectionRef = selector.getSelectionModel().createReference();
|
|
||||||
|
|
||||||
app.getStateManager().attach(new BaseAppState() {
|
|
||||||
@Override
|
|
||||||
public void update(float tpf) {
|
|
||||||
if (selectionRef.update()) {
|
|
||||||
String selected = selectionRef.get().toString();
|
|
||||||
listener.onSelectionChanged(selected);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void initialize(Application app) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void cleanup(Application app) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onEnable() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onDisable() {
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -330,30 +285,20 @@ public class LobbyMenu extends Dialog {
|
|||||||
*
|
*
|
||||||
* @param selected the selected figure
|
* @param selected the selected figure
|
||||||
*/
|
*/
|
||||||
private void onDropdownSelectionChanged(String selected) {
|
private void onDropdownSelectionChanged(Selector<String> selector) {
|
||||||
app.getGameLogic().playSound(Sound.BUTTON);
|
app.getGameLogic().playSound(Sound.BUTTON);
|
||||||
switch (selected) {
|
switch (selector.getSelectedItem()) {
|
||||||
case "[0]":
|
case "Jägermeister":
|
||||||
figure = "Computer";
|
|
||||||
break;
|
|
||||||
case "[1]":
|
|
||||||
figure = "Flugzeug";
|
|
||||||
break;
|
|
||||||
case "[2]":
|
|
||||||
figure = "Jaegermeister";
|
figure = "Jaegermeister";
|
||||||
break;
|
break;
|
||||||
case "[3]":
|
case "Handyholster":
|
||||||
figure = "Katze";
|
|
||||||
break;
|
|
||||||
case "[4]":
|
|
||||||
figure = "OOP";
|
|
||||||
break;
|
|
||||||
case "[5]":
|
|
||||||
figure = "Holster";
|
figure = "Holster";
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
figure = selector.getSelectedItem();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
System.out.println("FIGUR:::::"+figure);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -133,7 +133,7 @@ public class Toolbar extends Dialog implements GameEventListener {
|
|||||||
|
|
||||||
// Spielerfarbe abrufen
|
// Spielerfarbe abrufen
|
||||||
Player currentPlayer = playerHandler.getPlayerById(app.getId());
|
Player currentPlayer = playerHandler.getPlayerById(app.getId());
|
||||||
ColorRGBA playerColor = currentPlayer.getColor().getColor();
|
ColorRGBA playerColor = Player.getColor(currentPlayer.getId()).getColor();
|
||||||
|
|
||||||
// Oberer Balken
|
// Oberer Balken
|
||||||
Container playerColorBar = new Container();
|
Container playerColorBar = new Container();
|
||||||
@ -381,7 +381,7 @@ public class Toolbar extends Dialog implements GameEventListener {
|
|||||||
for (Player player : playerHandler.getPlayers()) {
|
for (Player player : playerHandler.getPlayers()) {
|
||||||
if (player.getId() != app.getId()) {
|
if (player.getId() != app.getId()) {
|
||||||
// Spielerfarbe abrufen
|
// Spielerfarbe abrufen
|
||||||
ColorRGBA playerColor = (player.getColor().getColor());
|
ColorRGBA playerColor = (Player.getColor(player.getId()).getColor());
|
||||||
|
|
||||||
// Label für den Spieler erstellen
|
// Label für den Spieler erstellen
|
||||||
Label playerLabel = new Label(
|
Label playerLabel = new Label(
|
||||||
|
@ -344,15 +344,16 @@ public class ClientGameLogic implements ServerInterpreter, GameEventBroker {
|
|||||||
public void received(NotificationMessage msg) {
|
public void received(NotificationMessage msg) {
|
||||||
if (msg.getKeyWord().equals("rent")) {
|
if (msg.getKeyWord().equals("rent")) {
|
||||||
notifyListeners(new PopUpEvent("rent", msg));
|
notifyListeners(new PopUpEvent("rent", msg));
|
||||||
|
playSound(Sound.MONEY_LOST);
|
||||||
} else if (msg.getKeyWord().equals("jailpay")) {
|
} else if (msg.getKeyWord().equals("jailpay")) {
|
||||||
|
playSound(Sound.MONEY_LOST);
|
||||||
notifyListeners(new PopUpEvent(msg.getKeyWord(), msg));
|
notifyListeners(new PopUpEvent(msg.getKeyWord(), msg));
|
||||||
} else if(msg.getKeyWord().equals("NoMoneyWarning")) {
|
} else if(msg.getKeyWord().equals("NoMoneyWarning")) {
|
||||||
notifyListeners(new PopUpEvent("NoMoneyWarning", msg));
|
notifyListeners(new PopUpEvent("NoMoneyWarning", msg));
|
||||||
} else if (msg.getKeyWord().equals("jailpay")) {
|
|
||||||
notifyListeners(new PopUpEvent("jailpay", msg));
|
|
||||||
} else if (msg.getKeyWord().equals("jailtryagain")) {
|
} else if (msg.getKeyWord().equals("jailtryagain")) {
|
||||||
notifyListeners(new PopUpEvent("jailtryagain", msg));
|
notifyListeners(new PopUpEvent("jailtryagain", msg));
|
||||||
} else if(msg.getKeyWord().equals("ReceivedRent")) {
|
} else if(msg.getKeyWord().equals("ReceivedRent")) {
|
||||||
|
playSound(Sound.MONEY_COLLECTED);
|
||||||
notifyListeners(new PopUpEvent("ReceivedRent", msg));
|
notifyListeners(new PopUpEvent("ReceivedRent", msg));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -90,7 +90,7 @@ public class Player implements FieldVisitor<Void>{
|
|||||||
return figure;
|
return figure;
|
||||||
}
|
}
|
||||||
|
|
||||||
public PlayerColor getColor() {
|
public static PlayerColor getColor(int id) {
|
||||||
switch ((id%6)+1) {
|
switch ((id%6)+1) {
|
||||||
case 1: return PlayerColor.CYAN;
|
case 1: return PlayerColor.CYAN;
|
||||||
case 2: return PlayerColor.YELLOW;
|
case 2: return PlayerColor.YELLOW;
|
||||||
@ -347,8 +347,8 @@ public class Player implements FieldVisitor<Void>{
|
|||||||
int rent = field.calcRent();
|
int rent = field.calcRent();
|
||||||
field.getOwner().earnMoney(rent);
|
field.getOwner().earnMoney(rent);
|
||||||
pay(rent);
|
pay(rent);
|
||||||
sendRentNotification("rent", field.getOwner(), rent);
|
sendRentNotification("ReceivedRent", field.getOwner(), rent);
|
||||||
sendRentNotification("ReceivedRent", this, rent);
|
sendRentNotification("rent", this, rent);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@ -365,8 +365,8 @@ public class Player implements FieldVisitor<Void>{
|
|||||||
int rent = rollResult.calcTotal()*factor;
|
int rent = rollResult.calcTotal()*factor;
|
||||||
field.getOwner().earnMoney(rent);
|
field.getOwner().earnMoney(rent);
|
||||||
pay(rent);
|
pay(rent);
|
||||||
sendRentNotification("rent", field.getOwner(), rent);
|
sendRentNotification("ReceivedRent", field.getOwner(), rent);
|
||||||
sendRentNotification("ReceivedRent", this, rent);
|
sendRentNotification("rent", this, rent);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@ -380,8 +380,8 @@ public class Player implements FieldVisitor<Void>{
|
|||||||
|
|
||||||
field.getOwner().earnMoney(rent);
|
field.getOwner().earnMoney(rent);
|
||||||
pay(rent);
|
pay(rent);
|
||||||
sendRentNotification("rent", field.getOwner(), rent);
|
sendRentNotification("ReceivedRent", field.getOwner(), rent);
|
||||||
sendRentNotification("ReceivedRent", this, rent);
|
sendRentNotification("rent", this, rent);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@ -626,6 +626,7 @@ public class Player implements FieldVisitor<Void>{
|
|||||||
if (rollResult.isDoublets()) {
|
if (rollResult.isDoublets()) {
|
||||||
handler.getLogic().send(Player.this, new JailEvent(false));
|
handler.getLogic().send(Player.this, new JailEvent(false));
|
||||||
state = new ActiveState();
|
state = new ActiveState();
|
||||||
|
getHandler().getLogic().send(Player.this, new NextPlayerTurn());
|
||||||
} else {
|
} else {
|
||||||
remainingAttempts--;
|
remainingAttempts--;
|
||||||
}
|
}
|
||||||
@ -637,6 +638,7 @@ public class Player implements FieldVisitor<Void>{
|
|||||||
public void payBail() {
|
public void payBail() {
|
||||||
pay(500);
|
pay(500);
|
||||||
state = new ActiveState();
|
state = new ActiveState();
|
||||||
|
getHandler().getLogic().send(Player.this, new NextPlayerTurn());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -6,22 +6,24 @@ import com.jme3.math.ColorRGBA;
|
|||||||
* Enum representing six distinct colors for players in the game.
|
* Enum representing six distinct colors for players in the game.
|
||||||
*/
|
*/
|
||||||
public enum PlayerColor {
|
public enum PlayerColor {
|
||||||
CYAN(new ColorRGBA(1 / 255f, 190 / 255f, 254 / 255f, 1)),
|
CYAN(new ColorRGBA(1 / 255f, 190 / 255f, 254 / 255f, 1), "Cyan"),
|
||||||
YELLOW(new ColorRGBA(255 / 255f, 255 / 255f, 0 / 255f, 1)),
|
YELLOW(new ColorRGBA(255 / 255f, 255 / 255f, 0 / 255f, 1), "Gelb"),
|
||||||
RED(new ColorRGBA(255 / 255f, 0 / 255f, 0 / 255f, 1)),
|
RED(new ColorRGBA(255 / 255f, 0 / 255f, 0 / 255f, 1), "Rot"),
|
||||||
PINK(new ColorRGBA(255 / 255f, 77 / 255f, 166 / 255f, 1)),
|
PINK(new ColorRGBA(255 / 255f, 77 / 255f, 166 / 255f, 1), "Pink"),
|
||||||
GREEN(new ColorRGBA(0 / 255f, 204 / 255f, 0 / 255f, 1)),
|
GREEN(new ColorRGBA(0 / 255f, 204 / 255f, 0 / 255f, 1), "Grün"),
|
||||||
PURPLE(new ColorRGBA(143 / 255f, 0 / 255f, 255 / 255f, 1));
|
PURPLE(new ColorRGBA(143 / 255f, 0 / 255f, 255 / 255f, 1), "Lila");
|
||||||
|
|
||||||
private final ColorRGBA color;
|
private final ColorRGBA color;
|
||||||
|
private final String colorName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructs a PlayerColor with the specified ColorRGBA value.
|
* Constructs a PlayerColor with the specified ColorRGBA value.
|
||||||
*
|
*
|
||||||
* @param color the ColorRGBA value associated with the player color
|
* @param color the ColorRGBA value associated with the player color
|
||||||
*/
|
*/
|
||||||
PlayerColor(ColorRGBA color) {
|
PlayerColor(ColorRGBA color, String colorName) {
|
||||||
this.color = color;
|
this.color = color;
|
||||||
|
this.colorName = colorName;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -32,4 +34,13 @@ public enum PlayerColor {
|
|||||||
public ColorRGBA getColor() {
|
public ColorRGBA getColor() {
|
||||||
return color;
|
return color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the Name of the Color
|
||||||
|
*
|
||||||
|
* @return a String with re corresponing name
|
||||||
|
*/
|
||||||
|
public String getColorName() {
|
||||||
|
return colorName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -432,9 +432,13 @@ public class ServerGameLogic implements ClientInterpreter {
|
|||||||
} else if (msg.getA().equals("PayJail")) {
|
} else if (msg.getA().equals("PayJail")) {
|
||||||
playerHandler.getPlayerById(from).payBail();
|
playerHandler.getPlayerById(from).payBail();
|
||||||
} else if(msg.getA().equals("hack")) {
|
} else if(msg.getA().equals("hack")) {
|
||||||
for (BuildingProperty bp : boardManager.getPropertyFields( List.of(1,3)).stream().filter(p -> p instanceof BuildingProperty).map(p -> (BuildingProperty) p).collect(Collectors.toList())) {
|
// for (BuildingProperty bp : boardManager.getPropertyFields( List.of(1,3)).stream().filter(p -> p instanceof BuildingProperty).map(p -> (BuildingProperty) p).collect(Collectors.toList())) {
|
||||||
bp.setOwner(playerHandler.getPlayerById(0));
|
// bp.setOwner(playerHandler.getPlayerById(0));
|
||||||
playerHandler.getPlayerById(0).addProperty(bp.getId());
|
// playerHandler.getPlayerById(0).addProperty(bp.getId());
|
||||||
|
// }
|
||||||
|
for(PropertyField field : boardManager.getBoard().stream().filter(p -> p instanceof PropertyField).map(p -> (PropertyField) p).collect(Collectors.toList())) {
|
||||||
|
field.setOwner(playerHandler.getPlayerById(0));
|
||||||
|
playerHandler.getPlayerById(0).addProperty(field.getId());
|
||||||
}
|
}
|
||||||
playerHandler.getPlayerById(0).earnMoney(20000);
|
playerHandler.getPlayerById(0).earnMoney(20000);
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,7 @@ public class DeckHelper{
|
|||||||
cards.add(new Card("Du hast ein Antreten verschlafen. Zahle 500 EUR", "antreten-verschlafen-1"));
|
cards.add(new Card("Du hast ein Antreten verschlafen. Zahle 500 EUR", "antreten-verschlafen-1"));
|
||||||
cards.add(new Card("Du hast den Maibock organisiert. Du erhältst 3000 EUR", "maibock-organisiert"));
|
cards.add(new Card("Du hast den Maibock organisiert. Du erhältst 3000 EUR", "maibock-organisiert"));
|
||||||
cards.add(new Card("Der Spieß macht eine unangekündigte Inventur. Zahle für jedes Haus 400 EUR und für jedes Hotel 2800 EUR", "inventur-haeuser-hotels"));
|
cards.add(new Card("Der Spieß macht eine unangekündigte Inventur. Zahle für jedes Haus 400 EUR und für jedes Hotel 2800 EUR", "inventur-haeuser-hotels"));
|
||||||
cards.add(new Card("Es gab keine Mozzarella-Bällchen mehr für Thoma. Alle Spieler rücken vor bis aufs Gym.", "dienstsport-gym"));
|
cards.add(new Card("Es gab keine Mozzarella-Bällchen mehr für Thoma. Rücke vor bis aufs Gym.", "dienstsport-gym"));
|
||||||
cards.add(new Card("Auf deiner Stube wurde Schimmel gefunden. Gehe ins Gulak. Begib dich direkt dorthin. Gehe nicht über Monatsgehalt. Ziehe nicht 2000 EUR ein.", "schimmel-gulak"));
|
cards.add(new Card("Auf deiner Stube wurde Schimmel gefunden. Gehe ins Gulak. Begib dich direkt dorthin. Gehe nicht über Monatsgehalt. Ziehe nicht 2000 EUR ein.", "schimmel-gulak"));
|
||||||
cards.add(new Card("Deine Stube ist nach einer Partynacht nicht mehr bewohnbar. Du ziehst ins Gulak. Begib dich direkt dorthin. Gehe nicht über Monatsgehalt. Ziehe nicht 2000 EUR ein.", "partynacht-gulak"));
|
cards.add(new Card("Deine Stube ist nach einer Partynacht nicht mehr bewohnbar. Du ziehst ins Gulak. Begib dich direkt dorthin. Gehe nicht über Monatsgehalt. Ziehe nicht 2000 EUR ein.", "partynacht-gulak"));
|
||||||
cards.add(new Card("Das Jahresabschlussantreten steht an. Ziehe vor bis Schwimmhalle.", "jahresabschlussantreten"));
|
cards.add(new Card("Das Jahresabschlussantreten steht an. Ziehe vor bis Schwimmhalle.", "jahresabschlussantreten"));
|
||||||
|
@ -119,10 +119,10 @@ public class BoardManager {
|
|||||||
return false; // Null check for safety
|
return false; // Null check for safety
|
||||||
}
|
}
|
||||||
|
|
||||||
//Check for mortage
|
//Check for hotel
|
||||||
// if (field.isMortgaged()) {
|
if (field.getHotel() == 1) {
|
||||||
// return false;
|
return false;
|
||||||
// }
|
}
|
||||||
|
|
||||||
// Get the color group of the property
|
// Get the color group of the property
|
||||||
FieldColor groupColor = field.getColor();
|
FieldColor groupColor = field.getColor();
|
||||||
|
Loading…
Reference in New Issue
Block a user