public Lichtstrahl(Model partikelmodel, Vector3 position, Vector3 richtung, int levelnummer, Effect partikeleffect, SoundEffect türöffnet) { this.partikeleffect = partikeleffect; this.partikelmodel = partikelmodel; this.position = position; this.richtung = richtung; p = new Lichtquelle_Partikel(partikelmodel, position, richtung, null, null, new MyColor(000000), partikeleffect); collider = new PartikelCollider(türöffnet); }
public void Update(GameTime gameTime, PartikelCollider collider, ref Player player, ref bool gewonnen, ref Level_LoaderV2 levelloader) { if (vorgänger != null) { vorgänger.Update(gameTime, collider, ref player, ref gewonnen, ref levelloader); } else { if (richtung == new Vector3(0, 0, 0)) { nachfolger.setVorgänger(null); } } if (nachfolger != null) { if (nachfolger.richtung == new Vector3(0, 0, 0)) { löscheNachfolger(); } } if (richtung == new Vector3(0, 0, 1) || richtung == new Vector3(0, 0, -1)) { horizontal = true; } if (richtung == new Vector3(1, 0, 0) || richtung == new Vector3(-1, 0, 0)) { horizontal = false; } int letzeBewegung = gameTime.TotalGameTime.Milliseconds; Vector3 newposition = position + richtung; collider.colliding(this, newposition, ref player, ref gewonnen, ref levelloader); }