Пример #1
0
 private void ChooseMoveIfApplicable(MovementOptionsAvailable e)
 {
     IfAITurn(() => EventQueue.Instance.Add(new AIActionQueued(() =>
     {
         if (Char.Team != Team.Enemy)
         {
             return;
         }
         EventQueue.Instance.Add(new MovementConfirmed(GetBestMovement(e.AvailableMoves)));
     })));
 }
        private void ShowOptions(MovementOptionsAvailable e)
        {
            if (!GameWorld.FriendlyPerception[GameWorld.CurrentCharacter.CurrentTile.Position])
            {
                return;
            }
            var visuals = new List <IVisual>();

            e.AvailableMoves.ForEach(x =>
            {
                visuals.Add(new UiImage
                {
                    Image     = "Effects/Cover_Gray",
                    Transform = GameWorld.Map.TileToWorldTransform(x.Last()).WithSize(TileData.RenderSize),
                    Tint      = UiColors.AvailableMovesView_Rectangles
                });
            });
            _visuals = visuals;
        }
Пример #3
0
 private void OnMovementOptionsAvailable(MovementOptionsAvailable e)
 {
     _availableMoves             = e.AvailableMoves.ToList();
     _showsHoveredPathDirections = true;
     _shouldCheckMouse           = GameWorld.CurrentCharacter.Team == Team.Friendly;
 }
 private void ShowOptions(MovementOptionsAvailable e)
 {
     _possibleMoves = e.AvailableMoves.Select(x => x.Last()).ToList();
 }