## Uses of Class
edu.cwru.SimpleRTS.action.Action

Packages that use Action
edu.cwru.SimpleRTS.action
edu.cwru.SimpleRTS.agent
edu.cwru.SimpleRTS.agent.visual
edu.cwru.SimpleRTS.Log
edu.cwru.SimpleRTS.model

Uses of Action in edu.cwru.SimpleRTS.action

Subclasses of Action in edu.cwru.SimpleRTS.action
`class` `DirectedAction`
`class` `LocatedAction`
`class` `LocatedProductionAction`
`class` `ProductionAction`
`class` `TargetedAction`

Methods in edu.cwru.SimpleRTS.action that return Action
`static Action` `Action.createCompoundAttack(int unitid, int targetid)`
`static Action` `Action.createCompoundBuild(int unitid, int templateID, int x, int y)`
`static Action` `Action.createCompoundDeposit(int unitid, int targetid)`
`static Action` `Action.createCompoundGather(int unitid, int targetid)`
`static Action` `Action.createCompoundMove(int unitid, int x, int y)`
`static Action` `Action.createCompoundProduction(int unitid, int templateID)`
`static Action` `Action.createFail(int unitid)` Used to indicate that a compound action failed, and it should be redone
`static Action` `Action.createPermanentFail(int unitid)` Used to indicate that a compound action failed permanently, and it should be aborted
`static Action` `Action.createPrimitiveBuild(int unitid, int templateID)`
`static Action` `Action.createPrimitiveDeposit(int unitid, Direction d)`
`static Action` `Action.createPrimitiveGather(int unitid, Direction d)`
`static Action` `Action.createPrimitiveMove(int unitid, Direction d)`
`static Action` `Action.createPrimitiveProduction(int unitid, int templateID)`
`Action` `ActionQueue.getFullAction()`
`Action` `ActionQueue.popPrimitive()`

Method parameters in edu.cwru.SimpleRTS.action with type arguments of type Action
`void` `ActionQueue.resetPrimitives(java.util.LinkedList<Action> primitives)`

Constructors in edu.cwru.SimpleRTS.action with parameters of type Action
`ActionQueue(Action fullAction, java.util.LinkedList<Action> primitives)`

Constructor parameters in edu.cwru.SimpleRTS.action with type arguments of type Action
`ActionQueue(Action fullAction, java.util.LinkedList<Action> primitives)`

Uses of Action in edu.cwru.SimpleRTS.agent

Methods in edu.cwru.SimpleRTS.agent that return types with arguments of type Action
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `ScriptedGoalAgent.act(State.StateView state)`
`com.google.common.collect.ImmutableMap<java.lang.Integer,Action>` `Agent.getAction()` Request the action that the agent will take at this timestep.
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `SimpleAgent2.initialStep(State.StateView newstate)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `SimpleAgent1.initialStep(State.StateView newstate)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `ScriptedGoalAgent.initialStep(State.StateView newstate)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `MyAgent.initialStep(State.StateView newstate)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `CombatAgent.initialStep(State.StateView newstate)` Start a new trial.
`abstract com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `Agent.initialStep(State.StateView newstate)` Accept the initial state of an episode
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `SimpleAgent2.middleStep(State.StateView newState)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `SimpleAgent1.middleStep(State.StateView newState)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `ScriptedGoalAgent.middleStep(State.StateView newstate)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `MyAgent.middleStep(State.StateView newState)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `CombatAgent.middleStep(State.StateView newstate)`
`abstract com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `Agent.middleStep(State.StateView newstate)` Accept an intermediate state of an episode

Method parameters in edu.cwru.SimpleRTS.agent with type arguments of type Action
`void` `BasicGatheringCoordinator.assignActions(State.StateView state, edu.cwru.SimpleRTS.agent.ScriptedGoalAgent.RelevantStateView relstate, java.util.Map<java.lang.Integer,Action> actions)`
`void` `PrimativeAttackCoordinator.coordinate(State.StateView state, java.util.Map<java.lang.Integer,Action> actions)` Append the relevant actions to the action set.
`boolean` `ScriptedGoalAgent.Goal.tryExecute(State.StateView state, edu.cwru.SimpleRTS.agent.ScriptedGoalAgent.RelevantStateView relstate, java.util.Map<java.lang.Integer,Action> actions)` See if those actions can be done.

Uses of Action in edu.cwru.SimpleRTS.agent.visual

Methods in edu.cwru.SimpleRTS.agent.visual that return types with arguments of type Action
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `VisualAgent.initialStep(State.StateView newstate)`
`com.google.common.collect.ImmutableMap.Builder<java.lang.Integer,Action>` `VisualAgent.middleStep(State.StateView newstate)`

Methods in edu.cwru.SimpleRTS.agent.visual with parameters of type Action
`void` `VisualAgent.addAction(Action action)`

Uses of Action in edu.cwru.SimpleRTS.Log

Methods in edu.cwru.SimpleRTS.Log that return types with arguments of type Action
`java.util.List<Action>` `ActionLogger.getActions(int playernum, int roundnumber)` Get the actions of a player

Methods in edu.cwru.SimpleRTS.Log with parameters of type Action
`void` `ActionLogger.addAction(int playernum, Action action)`

Uses of Action in edu.cwru.SimpleRTS.model

Methods in edu.cwru.SimpleRTS.model that return types with arguments of type Action
`java.util.LinkedList<Action>` `SimplePlanner.planAttack(int actor, int target)`
`java.util.LinkedList<Action>` `SimplePlanner.planAttack(Unit actor, Unit target)` Uses `#getDirections(StateView, int, int, int, int, int, boolean)` to get directions to the specified place and `#planMove(Unit, LinkedList<Direction>)` to follow them.
`java.util.LinkedList<Action>` `SimplePlanner.planBuild(int actor, int targetX, int targetY, int template)`
`java.util.LinkedList<Action>` `SimplePlanner.planBuild(Unit actor, int targetX, int targetY, UnitTemplate template)`
`java.util.LinkedList<Action>` `SimplePlanner.planDeposit(int actor, int target)`
`java.util.LinkedList<Action>` `SimplePlanner.planDeposit(Unit actor, Unit target)` Uses `#getDirections(int, int, int, int, int, boolean)` to get directions to the specified place and `#planMove(Unit, LinkedList<Direction>)` to move almost there.
`java.util.LinkedList<Action>` `SimplePlanner.planFail(int actor)`
`java.util.LinkedList<Action>` `SimplePlanner.planGather(int actor, int target)`
`java.util.LinkedList<Action>` `SimplePlanner.planGather(Unit actor, ResourceNode target)` Uses `#getDirections(int, int, int, int, int, boolean)` to get directions to the specified place and `#planMove(Unit, LinkedList<Direction>)` to move almost there.
`java.util.LinkedList<Action>` `SimplePlanner.planMove(int i, int x, int y)`
`java.util.LinkedList<Action>` `SimplePlanner.planMove(Unit actor, int x, int y)` Uses `#getDirections(int, int, int, int, int, boolean)` to get directions to the specified place and `#planMove(Unit, LinkedList<Direction>)` to follow them.
`java.util.LinkedList<Action>` `SimplePlanner.planPermanentFail(int actor)`
`java.util.LinkedList<Action>` `SimplePlanner.planProduce(int actor, int template)`
`java.util.LinkedList<Action>` `SimplePlanner.planProduce(Unit actor, Template template)`

Methods in edu.cwru.SimpleRTS.model with parameters of type Action
`void` `SimpleModel.setActions(Action[] action)`
`void` `Model.setActions(Action[] action)` Set the actions to be executed