protected override ActionPosition GetPositionForMove(GameState fullState) { var grenadeFor = DoGrenade(fullState); if (grenadeFor != null) { _puzzle.Log("Time for a grenade!"); _puzzle.Log(grenadeFor); return(new ActionPosition() { X = grenadeFor.X - 1, Y = grenadeFor.Y - 1, IsSkill = true }); } return(ActionPosition.Translate(GetMoveFromElementToTargetOrAlternateTarget(Entity, fullState.Tanks, fullState.EnemyDestroyers))); }
protected override ActionPosition GetPositionForMove(GameState fullState) { //Push this element to reapers all around to mess with them return(ActionPosition.Translate(GetMoveFromElementToTargetOrAlternateTarget(Entity, fullState.EnemyReapers))); }
protected override ActionPosition GetPositionForMove(GameState fullState) { //Move our reaper to the water sources, if no water present follow our destroyers to allow us to be at the water asap return(ActionPosition.Translate(GetMoveFromElementToTargetOrAlternateTarget(Entity, fullState.Water, fullState.Destroyers))); //Move to any destroyer close, we want to have them precious waters }