/******************************************************************************* * Copyright (c) 2015 * * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. *******************************************************************************/ package jsettlers.common.menu.action; /** * This enum defines the type of the action. * * @author Michael Zangl * @author Andreas Eberle */ public enum EActionType { /** * Builds a building, the building has to be supplied by the action. * * @see BuildAction */ BUILD, /** * Show or hide the construction marks. * * @see ShowConstructionMarksAction */ SHOW_CONSTRUCTION_MARK, /** * Destroys the selected items. */ DESTROY, /** * Select a point on the map. * * @see PointAction */ SELECT_POINT, /** * Select all units of the type on that point that are around that point. * * @see PointAction */ SELECT_POINT_TYPE, /** * Skip the next minute of gameplay. */ FAST_FORWARD, // - - - - - - SPEED - - - - - /** * Pauses or resumes the game. */ SPEED_TOGGLE_PAUSE, /** * Increases game speed. */ SPEED_FASTER, /** * Decreases game speed. */ SPEED_SLOWER, /** * Sets the game speed to slow. */ SPEED_SLOW, /** * Sets the game speed to the default value. */ SPEED_NORMAL, /** * Sets the game speed to fast. */ SPEED_FAST, // - - - - - - SELECTION - - - - - - - /** * Lets the currently selected settlers start working. */ START_WORKING, /** * Lets the currently selected settlers stop working. */ STOP_WORKING, /** * Request to set the working area of the building. * * @see SelectAction */ SET_WORK_AREA, /** * Lets the settler move to a given point. * * @see MoveToAction */ MOVE_TO, /** * Sets the screen to display the selection. */ SHOW_SELECTION, /** * Sets the screen to display current message. */ SHOW_MESSAGE, /** * Selects an area of the screen. * * @see SelectAreaAction */ SELECT_AREA, /** * Deselect everything. */ DESELECT, /** * The screen changed. * * @see ScreenChangeAction */ SCREEN_CHANGE, /** * used for debugging (should be fired on pressing d). */ DEBUG_ACTION, /** * Changes the side panel content. * * @see ChangePanelAction */ CHANGE_PANEL, /** * Toggles debug tile display. */ TOGGLE_DEBUG, /** * Pan to the given point. * <p> * The action must be an instance of {@link PanToAction} */ PAN_TO, /** * Toggles fog of war. */ TOGGLE_FOG_OF_WAR, /** * Zoom in. */ ZOOM_IN, /** * Zoom out. */ ZOOM_OUT, /** * Save the game. */ SAVE, /** * used to convert any movable to another.<br> * * @see ConvertAction */ CONVERT, /** * GUI internal. Implements ExecutableAction */ EXECUTABLE, /** * Exit the game. Does not ask any more. */ EXIT, /** * Sets the speed to be not paused. */ SPEED_UNSET_PAUSE, /** * Sets the speed to be paused. */ SPEED_SET_PAUSE, /** * Unspecified action. */ UNSPECIFIED, /** * Asks the user to set a work area. */ ASK_SET_WORK_AREA, /** * Aborts the current user action, attempts to reset the GUI state to the default state. */ ABORT, /** * Asks the user if he wants to destroy the building. */ ASK_DESTROY, /** * Toggles if original graphics should be used by the gui. */ TOGGLE_ORIGINAL_GRAPHICS, /** * The user wants to go back. */ BACK, /** * The user wants to set the priority of the building. * * @see SetBuildingPriorityAction */ SET_BUILDING_PRIORITY, /** * The user wants to change the settings for the distribution of a material to the receiving buildings. * * @see SetMaterialDistributionSettingsAction */ SET_MATERIAL_DISTRIBUTION_SETTINGS, /** * The user wants to change the order in which materials are served by bearers. * * @see SetMaterialPrioritiesAction */ SET_MATERIAL_PRIORITIES, /** * Focus a UI Input. */ FOCUS, /** * Select the next movable or building of a given type. */ NEXT_OF_TYPE, /** * Request an upgrade of the soldiers. * * @see UpgradeSoldiersAction */ UPGRADE_SOLDIERS, /** * Set the material production. * * @see SetMaterialProductionAction */ SET_MATERIAL_PRODUCTION, /** * Sets if the material should be placed in stock or not. * * @see SetMaterialShouldUseStockAction */ SET_MATERIAL_STOCK_ACCEPTED, /** * Add as many soldiers to this building as possible. */ SOLDIERS_ALL, /** * Only put one soldier in this building. */ SOLDIERS_ONE, /** * Add one more soldier of this type to the building. * * @see SoldierAction */ SOLDIERS_MORE, /** * Add one more soldier of this type to the building. * * @see SoldierAction */ SOLDIERS_LESS, /** * Ask the user to select a trading waypoint. * * @see AskSetTradingWaypointAction */ ASK_SET_TRADING_WAYPOINT, /** * Set the trading waypoint for the current selection. * * @see SetTradingWaypointAction */ SET_TRADING_WAYPOINT, /** * Ask the user to set the dock position. */ ASK_SET_DOCK, /** * Set the dock position. * * @see PointAction */ SET_DOCK, /** * Changes the amount of materials that should be traded from the current trading building. * * @see ChangeTradingRequestAction */ CHANGE_TRADING_REQUEST }