public ArrayList<Action> getPossibleActions() {
		ArrayList<Action> possibleActions = new ArrayList<Action>();
		
		if (this.movementCounter > 0){
			for (Relative_Direction absoluteExitDirection : this.getCurrentRoom().getAbsoluteExits()) {
				possibleActions.add(new MoveAction(absoluteExitDirection));
			}
		}
		
		Set<Action> roomActions = this.getCurrentRoom().getRoomActions();
		for(Action a : roomActions){
			if (a.canPerform(this)){
				possibleActions.add(a);
			}
		}
		
		if (Game.getInstance().getCurrentCharacter() == this) {
			possibleActions.add(new EndTurnAction());
		}
		
		DisplayItemCardsAction displayItems = new DisplayItemCardsAction();
		if (displayItems.canPerform(this)) possibleActions.add(displayItems);
		
		DisplayOmenCardsAction displayOmens = new DisplayOmenCardsAction();
		if (displayOmens.canPerform(this)) possibleActions.add(displayOmens);
		
		DisplayEventCardsAction displayEvents = new DisplayEventCardsAction();
		if (displayEvents.canPerform(this)) possibleActions.add(displayEvents);
		
		
		return possibleActions;
	}