Example #1
0
        /// <summary>
        /// Asetetaan ohjaimet varsinaista peliä varten
        /// </summary>
        private void AsetaOhjaimet()
        {
            Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Show help");
            Keyboard.Listen(Key.F5, ButtonState.Pressed, Begin, "New game");
            // Keyboard.Listen(Key.Escape, ButtonState.Pressed, KysyLopetus, "Exit game");
            Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Exit game");
            Keyboard.Listen(Key.Up, ButtonState.Down, KaannaMailaa, "Move up", 5.0);
            Keyboard.Listen(Key.Down, ButtonState.Down, KaannaMailaa, "Move down", -5.0);
            Keyboard.Listen(Key.Space, ButtonState.Pressed, PudotaPallo, "Drop ball");

            Mouse.IsCursorVisible = true;
            Mouse.ListenOn(pisteNaytto, MouseButton.Left, ButtonState.Pressed, delegate() { AloitaUusiPeli(); }, null);
            Mouse.Listen(MouseButton.Left, ButtonState.Pressed, delegate() { PudotaPallo(); }, "Drop ball");
            //  Mouse.ListenMovement(0.1, delegate (AnalogState analogState) { Tahtaa(Mouse.PositionOnWorld); }, "Aim");
            Mouse.ListenMovement(0.1, () => { Tahtaa(Mouse.PositionOnWorld); }, "Aim");

            TouchPanel.ListenOn(pisteNaytto, ButtonState.Pressed, delegate(Touch kosketus) { AloitaUusiPeli(); }, null);
            TouchPanel.Listen(ButtonState.Pressed, delegate(Touch kosketus) { PudotaPallo(); }, "Drop ball");
            TouchPanel.Listen(ButtonState.Down, delegate(Touch kosketus) { Tahtaa(kosketus.PositionOnWorld); }, "Aim");
            // PhoneBackButton.Listen(KysyLopetus, "Lopeta peli");
            PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");

#if ANDROID // lisää tähän ehtoa jos muitakin kallistelun tukevia
            Accelerometer.Calibration = AccelerometerCalibration.ZeroAngle;
            Accelerometer.ListenAnalog(AccelerometerSensitivity.Realtime, TahtaaAccel, "Aim");
            Accelerometer.Listen(AccelerometerDirection.Shake, delegate { PudotaPallo(); }, "Drop ball");
#endif
        }
Example #2
0
    void asetaNapit()
    {
        Mouse.Listen(MouseButton.Left, ButtonState.Pressed, AloitaHeittoHiirella, null);
        Mouse.Listen(MouseButton.Left, ButtonState.Released, LopetaHeitto, null);
        Mouse.Listen(MouseButton.Right, ButtonState.Pressed, asetaPallo, "Palauta pallo alkutilanteeseen");
        Mouse.ListenMovement(0.1, HeitaHiirella, null);

        TouchPanel.Listen(ButtonState.Pressed, AloitaHeittoKosketuksella, null);
        TouchPanel.Listen(ButtonState.Released, LopetaHeittoKosketuksella, null);
        TouchPanel.Listen(ButtonState.Down, HeitaKosketuksella, null);
        //PhoneBackButton.Listen(ConfirmExit,"Lopettaa pelin");

        Keyboard.Listen(Key.Space, ButtonState.Down, laskeVoima, "Pidä pohjassa heiton voimakk5uuden säätämiseen.");
        Keyboard.Listen(Key.Space, ButtonState.Released, heitaPallo, null);
        Keyboard.Listen(Key.Left, ButtonState.Down, pyoritaPalloa, "Anna pallolle alakierrettä.", 0.2);
        Keyboard.Listen(Key.Right, ButtonState.Down, pyoritaPalloa, "Anna pallolle yläkierrettä.", -0.2);

        /* TODO ShowControlHelp
         * Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");*/
        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Poistu");

        ControllerOne.Listen(Button.RightTrigger, ButtonState.Down, laskeVoimaPadilla, "Pidä pohjassa heiton voimakkuuden säätämiseen.");
        ControllerOne.Listen(Button.RightTrigger, ButtonState.Released, heitaPallo, null);
        ControllerOne.Listen(Button.RightStick, ButtonState.Up, pyoritaPalloaPadilla, "Anna pallolle kierrettä.");
        ControllerOne.Listen(Button.A, ButtonState.Pressed, asetaPallo, "Palauta pallo alkutilanteeseen");

        //ControllerOne.Listen( Button.Start, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet" );
        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu");
    }
        /// <summary>
        /// Alustetaan peli
        /// </summary>
        public override void Begin()
        {
            Level.Background.Color = Color.Black;

            double dy = Screen.Height / NY;       // Lasketaan ruudun korkeus pikseleinä
            int    nx = (int)(Screen.Width / dy); // ja montako mahtuu X-suuntaan
            int    ny = NY;

            sukupolvi         = new int[ny, nx];   //  Luodaan taulukot
            seuraavaSukupolvi = new int[ny, nx];
            oliot             = new GameObject[ny, nx];
            // seuraavaSukupolvi = sukupolvi;          // jos tämä on mukana, käyttäytyy eri tavalla

            LuoOliot(this, oliot);

            // IsFullScreen = true;

            timer.Interval = 0.1; // timeri antamaan tapahtuma 0.1 sek välein
            timer.Timeout += LaskeJaPiirraSeuraavaSukupolvi;
            timer.Start();

            ArvoSukupolvi();  // jos halutaan käynnistää automaattisesti

            Camera.ZoomToAllObjects();
            // Camera.Zoom(20);
            // Camera.Move(new Vector(Screen.Width/2, Screen.Height/2));

            // Kuuntelijat:
            Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu");
            Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");
            Keyboard.Listen(Key.Enter, ButtonState.Pressed, Jatka, "Jatka");
            Keyboard.Listen(Key.Space, ButtonState.Pressed, ArvoSukupolvi, "Arvo sukupolvi");
            Keyboard.Listen(Key.Delete, ButtonState.Pressed, TyhjennaSukupolvi, "Tyhjennä sukupolvi");
            Keyboard.Listen(Key.Right, ButtonState.Pressed, LaskeJaPiirraSeuraavaSukupolvi, "Seuraava sukupolvi");
            Keyboard.Listen(Key.Left, ButtonState.Pressed, PiirraEdellinenSukupolvi, "Edellinen sukupolvi");
            Mouse.IsCursorVisible = true;
            Mouse.Listen(MouseButton.Left, ButtonState.Pressed, HiiriPainettu, null);
            Mouse.Listen(MouseButton.Right, ButtonState.Pressed, delegate { Jatka(); }, "Jatka");

            TouchPanel.Listen(ButtonState.Pressed, NayttoaPainettu, null);
            TouchPanel.ListenGesture(GestureType.DoubleTap, delegate { Jatka(); }, "Jatka");
            TouchPanel.ListenGesture(GestureType.VerticalDrag, delegate { TyhjennaSukupolvi(); }, "Tyhjennä taulukko");
            TouchPanel.ListenGesture(GestureType.HorizontalDrag, delegate { ArvoSukupolvi(); }, "Arvo sukupolvi");
            Accelerometer.Listen(AccelerometerDirection.Shake, delegate { ArvoSukupolvi(); }, "Arvo sukupolvi");
            PhoneBackButton.Listen(Exit, "Lopeta peli");
        }
Example #4
0
    public override void Begin()
    {
        TouchPanel.Listen(ButtonState.Down, (tp) => MessageDisplay.Add("liikkuu"), "Liikuttaa pelaajaa");

        //SetWindowSize(1050, 590);
        // Contols and events
        Level.Background.Color = BackgroundColor;
        Mouse.IsCursorVisible  = true;
        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
        Keyboard.Listen(Key.N, ButtonState.Released, ToggleNodeLables, "Näytä numerointi");
        Keyboard.Listen(Key.L, ButtonState.Released, ToggleNodeLables, "Näytä numerointi");
        Keyboard.Listen(Key.D, ButtonState.Released, ToggleDemandLabels, "Näytä tilausten koot");
        Keyboard.Listen(Key.S, ButtonState.Released, ShowOptimalSolution, "Näytä ratkaisu");

        // Select the problem to play
        problemMenu             = new VRPProblemSelector(this);
        problemInstanceMetadata = VRPProblemSelector.LoadInstanceDataFromFile(@"Content\problemdata.txt");

        if (UNLOCK_ALL)
        {
            problemInstanceMetadata.ForEach(i => i.Locked = false);
        }

        VRPProblemSelector.LoadPlayerInstanceDataFromFile(@"Content\playerdata.txt", problemInstanceMetadata);

        //Mouse.Listen(MouseButton.Left, ButtonState.Pressed, MenuMousePressed, "Valitse kenttä");
        problemMenu.ViewSetSelect(problemInstanceMetadata, OnSetSelected);

        //StartGame(@"C:\Users\juherask\Dissertation\Phases\Tuning\Benchmarks\VRPLIB\E\E-n13-k4.vrp");

        Timer blinkInfeasible = new Timer();

        blinkInfeasible.Interval     = 0.33;
        blinkInfeasible.TimesLimited = false;
        blinkInfeasible.Timeout     += BlinkBlinkingObjects;
        blinkInfeasible.Start();
    }