Ejemplo n.º 1
0
        private void DrawMouseMoveCross(Graphics graphics)
        {
            if (MouseMoveCelestialObject == null)
            {
                return;
            }

            DrawTacticalMap.DrawPreTarget(MouseMoveCelestialObject, graphics, _screenParameters);
        }
Ejemplo n.º 2
0
        public static void DrawActiveModule(Graphics graphics, CelestialObjectTypes activeModule, PointF mousePosition, GameSession gameSession, SortedDictionary <int, GranularObjectInformation> granularTurnInformation, int turnStep, ScreenParameters screenParameters)
        {
            var playerSpaceship = gameSession.GetPlayerSpaceShip();

            var screenCoordinates = UI.ToScreenCoordinates(screenParameters, new PointF(playerSpaceship.PositionX, playerSpaceship.PositionY));

            var mouseCoordinatesInternal = OutlandAreaCommon.Tools.ToRelativeCoordinates(mousePosition, screenParameters.Center);

            var mouseMapCoordinates = OutlandAreaCommon.Tools.ToTacticalMapCoordinates(mouseCoordinatesInternal, screenParameters.CenterScreenOnMap);



            switch (activeModule)
            {
            case CelestialObjectTypes.PointInMap:
                break;

            case CelestialObjectTypes.Missile:
                var radarLinePen = new Pen(Color.FromArgb(60, 60, 60), 1);
                graphics.DrawLine(radarLinePen, screenCoordinates.X, screenCoordinates.Y, mousePosition.X, mousePosition.Y);

                var missile = new Missile
                {
                    PositionY = mouseMapCoordinates.Y,
                    PositionX = mouseMapCoordinates.X
                };
                DrawTacticalMap.DrawPreTarget(missile, graphics, screenParameters);


                break;

            case CelestialObjectTypes.SpaceshipPlayer:
                break;

            case CelestialObjectTypes.SpaceshipNpcNeutral:
                break;

            case CelestialObjectTypes.SpaceshipNpcEnemy:
                break;

            case CelestialObjectTypes.SpaceshipNpcFriend:
                break;

            case CelestialObjectTypes.Asteroid:
                break;

            case CelestialObjectTypes.None:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }