Class InsertMarbleAction
java.lang.Object
it.polimi.ingsw.controller.action.Action
it.polimi.ingsw.controller.action.InsertMarbleAction
public class InsertMarbleAction extends Action
An action to request to the model to insert a specific marble obtained after shopping the market into warehouse
-
Constructor Summary
Constructors Constructor Description InsertMarbleAction(int marbleIndex)InsertMarbleAction(java.lang.String username, int marbleIndex) -
Method Summary
Modifier and Type Method Description PhaseTypeperformAction(IGameState gameState)Insert the specified marble of the player.Methods inherited from class it.polimi.ingsw.controller.action.Action
getUsername, isCurrentPlayer, setUsernameMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
InsertMarbleAction
public InsertMarbleAction(int marbleIndex) -
InsertMarbleAction
public InsertMarbleAction(java.lang.String username, int marbleIndex)
-
-
Method Details
-
performAction
public PhaseType performAction(IGameState gameState) throws InvalidActionException, NotAllowedActionException, WrongPlayerException, InvalidUsernameException, MarbleNotExistExceptionInsert the specified marble of the player.- Specified by:
performActionin classAction- Parameters:
gameState- the current state of this game- Returns:
- the next phase of this player's turn
- Throws:
InvalidActionException- this Action is not correctly initializedNotAllowedActionException- this Action can't be performed in this phase of turn or gameWrongPlayerException- the player for which this action must be performed isn't the current playerInvalidUsernameException- the player for which this action must be performed doesn't exist in this gameMarbleNotExistException- the specified marble doesn't exist
-