/// <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 }
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"); }
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(); }