Implemented the updating off all sprites depending on night/day and role
This commit is contained in:
parent
fa6ca7371e
commit
277eada934
@ -352,7 +352,6 @@ public class Client {
|
||||
gameStateModel.setDayClone(false);
|
||||
LOGGER.debug("----------------Night, Your role is:" + gameStateModel.getYourRole() + gameStateModel);
|
||||
Sprites.setNightSprites(gameStateModel.getPassengerTrainClone()[1], GameController.getGameStateModel().getKickedOff());
|
||||
chatApp.getGameController().updateGameSprites();
|
||||
chatApp.getGameController().setNoiseButtonInvisible();
|
||||
chatApp.getGameController().setVoteButtonVisibilityNight(gameStateModel);
|
||||
break;
|
||||
@ -360,12 +359,12 @@ public class Client {
|
||||
gameStateModel.setDayClone(true);
|
||||
LOGGER.debug("----------------Day, Your role is:" + gameStateModel.getYourRole()+ gameStateModel);
|
||||
Sprites.setDaySprites(gameStateModel.getPassengerTrainClone()[1], GameController.getGameStateModel().getKickedOff());
|
||||
chatApp.getGameController().updateGameSprites();
|
||||
chatApp.getGameController().setNoiseButtonVisible();
|
||||
chatApp.getGameController().setVoteButtonVisibilityDay(gameStateModel);
|
||||
break;
|
||||
case GuiParameters.updateGameState:
|
||||
gameStateModel.setGSFromString(data);
|
||||
chatApp.getGameController().updateGameSprites(LoungeSceneViewController.getTrainAnimationDayController());
|
||||
chatApp.getGameController().updateRoomLabels();
|
||||
gameStateModel.setRoleFromPosition(position);
|
||||
break;
|
||||
|
||||
@ -78,9 +78,7 @@ public class Sprites {
|
||||
shadow = SpritesDay.shadow;
|
||||
secondWagon = SpritesDay.secondWagon;
|
||||
emptyWagon = SpritesDay.emptyWagon;
|
||||
for (int i = 0; i < roles.length; i++) {
|
||||
rooms[i] = getRoomDay(i, roles[i], kickedOff);
|
||||
}
|
||||
updateDayRoomSprites(roles,kickedOff);
|
||||
emptyWagonWall = SpritesDay.emptyWagonWall;
|
||||
fullWagon = SpritesDay.fullWagon;
|
||||
loki = SpritesDay.loki;
|
||||
@ -92,6 +90,11 @@ public class Sprites {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public static void updateDayRoomSprites(String[] roles, boolean[] kickedOff) {
|
||||
for (int i = 0; i < roles.length; i++) {
|
||||
rooms[i] = getRoomDay(i, roles[i], kickedOff);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets all Images of this class to the Night version, takes into account which room is a ghost
|
||||
@ -104,9 +107,7 @@ public class Sprites {
|
||||
shadow = SpritesNight.shadow;
|
||||
secondWagon = SpritesNight.secondWagon;
|
||||
emptyWagon = SpritesNight.emptyWagon;
|
||||
for (int i = 0; i < roles.length; i++) {
|
||||
rooms[i] = getRoomNight(i, roles[i], kickedOff);
|
||||
}
|
||||
updateNightRoomSprites(roles,kickedOff);
|
||||
emptyWagonWall = SpritesNight.emptyWagonWall;
|
||||
fullWagon = SpritesNight.fullWagon;
|
||||
loki = SpritesNight.loki;
|
||||
@ -115,6 +116,12 @@ public class Sprites {
|
||||
fg = SpritesNight.fg;
|
||||
}
|
||||
|
||||
public static void updateNightRoomSprites(String[] roles, boolean[] kickedOff) {
|
||||
for (int i = 0; i < roles.length; i++) {
|
||||
rooms[i] = getRoomNight(i, roles[i], kickedOff);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a room Image from SpritesDay, corresponding to the position and the role of the passenger in that room
|
||||
* @param position the position of the room integer 0-5
|
||||
|
||||
@ -49,6 +49,14 @@ public class TrainAnimationDayController implements Initializable {
|
||||
LOGGER.debug("Empty TrainAnimationDayController() constructor was called");
|
||||
}
|
||||
|
||||
public void updateSprites(){
|
||||
shadowTrain.setImage(Sprites.getShadow());
|
||||
wagonBGImageView.setImage(Sprites.getSecondWagon());
|
||||
wagonFloorImageView.setImage(Sprites.getEmptyWagon());
|
||||
wagonFullImageView.setImage(Sprites.getFullWagon());
|
||||
lokiImageView.setImage(Sprites.getLoki());
|
||||
}
|
||||
|
||||
public ChatApp getChatApp() {
|
||||
return chatApp;
|
||||
}
|
||||
|
||||
@ -5,6 +5,8 @@ import static javafx.scene.AccessibleRole.PARENT;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.ChatApp;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.GameStateModel;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.Sprites;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.SpritesDay;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.TrainAnimationDayController;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.helpers.GuiParameters;
|
||||
import ch.unibas.dmi.dbis.cs108.BudaLogConfig;
|
||||
import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.ClientModel;
|
||||
@ -126,17 +128,23 @@ public class GameController implements Initializable {
|
||||
@FXML
|
||||
private AnchorPane chatAreaGame;
|
||||
|
||||
public void updateGameSprites(){
|
||||
public void updateGameSprites(TrainAnimationDayController trainAnimation){
|
||||
Platform.runLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try{
|
||||
if(gameStateModel.getDayClone()) {
|
||||
Sprites.updateDayRoomSprites(gameStateModel.getPassengerTrainClone()[1], gameStateModel.getKickedOff());
|
||||
} else {
|
||||
Sprites.updateNightRoomSprites(gameStateModel.getPassengerTrainClone()[1], gameStateModel.getKickedOff());
|
||||
}
|
||||
room0ImageView.setImage(Sprites.getARoom(0));
|
||||
room1ImageView.setImage(Sprites.getARoom(1));
|
||||
room2ImageView.setImage(Sprites.getARoom(2));
|
||||
room3ImageView.setImage(Sprites.getARoom(3));
|
||||
room4ImageView.setImage(Sprites.getARoom(4));
|
||||
room5ImageView.setImage(Sprites.getARoom(5));
|
||||
trainAnimation.updateSprites();
|
||||
} catch (Exception e) {
|
||||
LOGGER.info(e.getMessage());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user