/// <summary> /// Liikutetaan kisua /// </summary> /// <param name="hahmo">Kisu</param> /// <param name="NOPEUS">Kisun NOPEUS</param> /// <returns>Kisun liikkeen</returns> public void Liikuta(PlatformCharacter hahmo, double NOPEUS) { hahmo.Walk(NOPEUS); if (PowerUp == true) { hahmo.Walk(POWER_US_NOPEUS); } }
/// <summary> /// Asetetaan ohjaimet. /// </summary> private void AsetaOhjaimet() { Keyboard.Listen(Key.Up, ButtonState.Down, delegate { pelaaja.Jump(nopeus); }, "Pelaaja hyppää ylöspäin"); Keyboard.Listen(Key.Right, ButtonState.Down, delegate { pelaaja.Walk(nopeus); }, "Pelaaja liikkuu oikealle"); Keyboard.Listen(Key.Left, ButtonState.Down, delegate { pelaaja.Walk(-nopeus); }, "Pelaaja liikkuu vasemmalle"); PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); }
void Liikuta(PlatformCharacter hahmo, double nopeus) { Angle kulma = hahmo.Angle; kulma.Degrees -= 15; hahmo.Angle = kulma; hahmo.Walk(nopeus); }
/// <summary> /// Liikuttaa pelaajaa, kun pelaaja ei ole kumartunut. /// </summary> /// <param name="hahmo">Pelaajahahmo</param> /// <param name="nopeus">Liikkumisnopeus</param> private void Liikuta(PlatformCharacter hahmo, double nopeus) { if (pelaaja1.Image == pelaajanKuva) { hahmo.Walk(nopeus); } }
/// <summary> /// Pistetään PlatformCharacter kävelemään haluttuun suuntaan. /// </summary> /// <param name="liikuteltavaOlio">liikuteltava olio.</param> /// <param name="suunta">Olion nopeus (suunta).</param> private void PelaajaWalk(PlatformCharacter liikuteltavaOlio, Vector suunta) { #region Reunatarkistukset //tässä jos sattuu tarviimaan. //if (suunta.X < 0 && (liikuteltavaOlio.X < Level.Left + (liikuteltavaOlio.Width / 2))) //{ // liikuteltavaOlio.Velocity = Vector.Zero; // return; //} //if (suunta.X > 0 && (liikuteltavaOlio.X > Level.Right - (liikuteltavaOlio.Width / 2))) //{ // liikuteltavaOlio.Velocity = Vector.Zero; // return; //} //if (suunta.Y < 0 && (liikuteltavaOlio.Y < Level.Bottom + (liikuteltavaOlio.Height / 2))) //{ // liikuteltavaOlio.Velocity = Vector.Zero; // return; //} //if (suunta.Y > 0 && (liikuteltavaOlio.Y > Level.Top - (liikuteltavaOlio.Height / 2))) //{ // liikuteltavaOlio.Velocity = Vector.Zero; // return; //} #endregion liikuteltavaOlio.Walk(suunta.X); }
/// <inheritdoc/> protected override void Update(Time time) { if (!(this.Owner is PlatformCharacter)) { return; } //Calculate from Speed later? double yTolerance = 10.0; double xTolerance = 10.0; PlatformCharacter pc = this.Owner as PlatformCharacter; if (_triesToJump) { //Brains are walking against a wall: if (Math.Abs(pc.Velocity.X) < 5) { //If position hasn't changed since last jump, change direction. if ((pc.Position - lastJumpingPosition).Magnitude < 1) { pc.Stop(); this.Speed *= -1; } else { pc.Jump(JumpSpeed); lastJumpingPosition = pc.Position; //Brains don't change direction in mid-air while jumping: if (!_fallsOffPlatforms) { _fallsOffPlatforms = true; Timer.SingleShot(0.5, delegate { _fallsOffPlatforms = false; }); } } } } //Changes direction if it's about to fall off a platform: if (!_fallsOffPlatforms && pc.IsAboutToFall() && Math.Abs(pc.Velocity.Y) < yTolerance) { pc.Stop(); if (_triesToJump && Math.Abs(pc.Velocity.X) < xTolerance) { this.Speed *= -1; } } if (!_triesToJump && Math.Abs(pc.Velocity.X) < xTolerance) { this.Speed *= -1; } pc.Walk(this.Speed); base.Update(time); }
void LiikutaPelaajaa(int suunta) { Steve.Walk(suunta); if (!Steve.Animation.IsPlaying) { Steve.Animation.Start(); } }
private void LuoPelaaja(Vector position, double width, double height) { PlatformCharacter hahmo = new PlatformCharacter(40, 80); hahmo.Position = position; Add(hahmo); AssaultRifle ase = new AssaultRifle(60, 15); hahmo.Weapon = ase; //PlatformCharacter apu = new PlatformCharacter( 20, 20, Shape.Circle ); PhysicsObject apu = new PhysicsObject(20, 20, Shape.Circle); FollowerBrain aivot = new FollowerBrain(hahmo); aivot.DistanceClose = 80; aivot.StopWhenTargetClose = true; apu.Brain = aivot; apu.IgnoresGravity = true; Add(apu); AddCollisionHandler(apu, "ammus", delegate(PhysicsObject a, PhysicsObject b) { a.Destroy(); b.Destroy(); }); Label hahmonNimi = new Label(RandomGen.NextLetter(true).ToString() + RandomGen.NextLetter(false).ToString()); hahmonNimi.Bottom = hahmo.Height; hahmo.Add(hahmonNimi); Keyboard.Listen(Key.Space, ButtonState.Down, delegate { var ammus = ase.Shoot(); if (ammus != null) { ammus.Tag = "ammus"; } }, null); Keyboard.Listen(Key.Right, ButtonState.Down, () => hahmo.Walk(200), null); Keyboard.Listen(Key.Left, ButtonState.Down, () => hahmo.Walk(-200), null); Keyboard.Listen(Key.Up, ButtonState.Down, () => hahmo.Jump(600), null); Keyboard.Listen(Key.Enter, ButtonState.Pressed, delegate { if (!apu.IsDestroyed) { MessageDisplay.Add("boop!"); } }, null); }
void laskeutunutAmpuu(PlatformCharacter ampuja, Timer sender) { if (ampuja != null && !ampuja.IsDestroyed) { double suunta = LaskeAmpujanSuunta(ampuja); ampuja.Walk(suunta); ampuja.Weapon.Angle = LaskeAmpujanKulma(ampuja, suunta); PhysicsObject ammus = ampuja.Weapon.Shoot(); if (ammus != null) { ammus.Size = new Vector(10, 10); ammus.IgnoresCollisionResponse = true; AddCollisionHandler(ammus, laskeutuneenLuotiOsui); } ampuja.Walk(suunta * 200); } else { sender.Stop(); } }
/// <summary> /// Määritellään pelaajan liike. /// </summary> /// <param name="pelaaja">Pelaajan hahmo</param> /// <param name="nopeus">Hahmon nopeus liikuttaessa</param> // Lähde: Jypelin tasohyppelypelin pohja. private void LiikutaPelaajaa(PlatformCharacter pelaaja, double nopeus) { pelaaja.Walk(nopeus); }
/// <summary> /// Aliohjelma toteuttaa pelaajan kävelyn oikealle. /// </summary> /// <param name="player"></param> private void Kaveleoikea(PlatformCharacter player) { player.Walk(300); player.FacingDirection = Direction.Left; }
/// <summary> /// Aliohjelma toteuttaa pelaajan kävelyn vasemmalle. /// </summary> /// <param name="player"></param> private void Kavelevasen(PlatformCharacter player) { player.Walk(-300); player.FacingDirection = Direction.Right; }
/// <summary> /// Tasohyppelijä kävelee /// </summary> /// <param name="pelaaja">tasohyppelijä</param> /// <param name="nopeus">sysäys jolla th halutaan hyppäävän</param> void Kavely(PlatformCharacter pelaaja, double nopeus) { pelaaja.Walk(nopeus); }
/// <summary> /// Liikuttaa hahmoa annatuilla parametereillä oikealle ja vasemmall /// </summary> /// <param name="sankari">Pelin sankari</param> /// <param name="suunta">Pääohjelmasta tuotu kävelysuunta</param> public void LiikutaHahmoa(PlatformCharacter sankari, double suunta) { sankari.Walk(suunta); }
void Liikuta(PlatformCharacter hahmo, double kerroin) { hahmo.Walk(Nopeus * kerroin); }
void LiikutaHahmoa(double nopeus) { pelaaja.Walk(nopeus); }
/// <summary> /// Pelihahmo liikkuu annettuun suuntaan. /// </summary> /// <param name="hahmo">Pelihahmo.</param> public void HahmoVasemalle(PlatformCharacter hahmo) { hahmo.Walk(-liikeNopeus); }
void Liikuta(PlatformCharacter hahmo, double nopeus) { hahmo.Walk(nopeus); }
void LiikutaPelaajaa(double nopeus) { ToistaTehoste(Tapahtuma.Liikkuu); Pelaaja.Walk(nopeus); }
/// <summary> /// Pelihahmo liikkuu annettuun suuntaan. /// </summary> /// <param name="hahmo">Pelihahmo.</param> public void HahmoOikealle(PlatformCharacter hahmo) { hahmo.Walk(liikeNopeus); }