Example #1
0
        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);
        }
Example #2
0
        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);
        }