private void setMerknader(Farge farge, string tekst)
        {
            farge.FargeMerknader.Clear();

            string[] merker = tekst.Split(';');

            string nyTekst = "";

            if (merker != null)
            {
                foreach (Merknad alleMerke in db.Produktbeholder.Merknader)
                {
                    foreach (string ettmerke in merker)
                    {
                        if (!string.IsNullOrWhiteSpace(ettmerke) && alleMerke.MerknadMerke == ettmerke.Trim())
                        {
                            farge.FargeMerknader.Add(alleMerke);
                            nyTekst += alleMerke.MerknadMerke + ";";
                            break;
                        }
                    }
                }
            }
            farge.SetMerknader = nyTekst.TrimEnd(';');
        }
        void leggTilAlleFargerKnapp_Click(object sender, RoutedEventArgs e)
        {
            if (!(prisgruppeListboks.SelectedItem is FargeBeholder))
            {
                return;
            }

            FargeBeholder merketFargebeholder = prisgruppeListboks.SelectedItem as FargeBeholder;
            List <Farge>  nyFargeliste        = new List <Farge>();

            foreach (FargeBeholder fb in db.Produktbeholder.Prisgruppesamling)
            {
                if (fb != merketFargebeholder)
                {
                    foreach (Farge farge in fb.Farger)
                    {
                        bool leggTil = true;
                        foreach (Farge fargeIMerketFargebeholder in nyFargeliste)
                        {
                            if (farge.FargeTittel.Trim() == fargeIMerketFargebeholder.FargeTittel.Trim())
                            {
                                leggTil = false;
                                break;
                            }
                        }

                        if (leggTil)
                        {
                            Farge nyFarge = new Farge(farge.FargeTittel, merketFargebeholder);
                            nyFarge.SetMerknader = farge.SetMerknader;

                            foreach (Merknad m in farge.FargeMerknader)
                            {
                                nyFarge.FargeMerknader.Add(m);
                            }

                            nyFargeliste.Add(farge);
                        }
                    }
                }
            }

            //nyFargeliste.OrderBy(farge => farge.FargeTittel);
            nyFargeliste.Sort(delegate(Farge f1, Farge f2) { return(f1.FargeTittel.CompareTo(f2.FargeTittel)); });
            foreach (Farge farge in nyFargeliste)
            {
                merketFargebeholder.Farger.Add(farge);
            }
        }
Exemple #3
0
        /// <summary>
        /// UPDATE
        /// </summary>
        /// <param name="gameTime"></param>
        public void Update(GameTime gameTime)
        {
            _gammelPosisjon = Posisjon;                              //kontrollverdier
            _fargeTimer    += gameTime.ElapsedGameTime.Milliseconds; // så ikke blinkingen av farge skjer umiddelbart og for raskt

            //lager x og y komponenter av rotasjonsvinkel og skalerer opp med spilleraksellerasjon.
            Hastighet += new Vector2((float)Math.Cos(_rotasjon), (float)Math.Sin(_rotasjon)) * _spillerAksellerasjon;
            Hastighet += Verden.Gravitasjon * new Vector2(0, 1f); //Gravitasjon , positiv Y-akse nedover.
            //legger Hastighetsvektoren til posisjon.
            Posisjon += Hastighet;

            //max fartsgrense for spiller
            if (Hastighet.X >= 7f || Hastighet.Y >= 7)
            {
                Hastighet *= 0.98f;
            }
            if (Hastighet.X <= -7f || Hastighet.Y <= -7)
            {
                Hastighet *= 0.98f;
            }

            if (_fargeTimer > 500 && Farge.Equals(Color.Red))
            {
                _fargeTimer = 0; //nullstiller timer, så fargen kan returnere til normal ved et definert tidspunkt.
                Farge       = Color.Pink;
            }

            if (Helse <= 0)      // om helse er under 0
            {
                IsDead = true;   //game over
            }
            if (Posisjon.Y <= 5) //grense på "taket" til himmelen
            {
                Hastighet *= -1;
            }

            //Nullstille rotasjon slik at rotasjon alltid er mellom 0 og 2Pi
            if (_rotasjon == MathHelper.TwoPi)
            {
                _rotasjon = 0;
            }
            if (_rotasjon == MathHelper.TwoPi * -1)
            {
                _rotasjon = 0;
            }

            CheckInput(gameTime); //Sjekker keyboardinput for w-a-d og turbo
            CheckCollision();     //Sjekker kollisjon mellom skip og terrain
        }
        void cmbFargevelger2_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ComboBox cmb = sender as ComboBox;

            if (cmb.SelectedItem == null || !(cmb.SelectedItem is Farge))
            {
                return;
            }

            Farge valgtFarge = cmb.SelectedItem as Farge;

            foreach (CorianProdukt produkt in Liste)
            {
                produkt.Prisgruppe = null;
                bool doBreak = false;
                foreach (CorianPrisgruppeProdukt prisgruppe in produkt.Prisgrupper)
                {
                    if (prisgruppe != null)
                    {
                        foreach (Farge farge in prisgruppe.Farger.Farger)
                        {
                            //string s = prisgruppe.Farger.PrisgruppeNavn + ": " + farge;
                            if (valgtFarge.FargeTittel == farge.FargeTittel && prisgruppe.Pris > 0)
                            //if (valgtFarge == farge)
                            {
                                produkt.Prisgruppe = prisgruppe;
                                doBreak            = true;
                                break;
                            }
                        }
                    }

                    if (doBreak)
                    {
                        break;
                    }
                } //Prisgrupper
            }     //Liste


            if (sistePrisKlikket != null)
            {
                PrisRadioButton_Click(sistePrisKlikket, new RoutedEventArgs());
            }
        }
        void fargerListboks_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (!(fargerListboks.SelectedItem is Farge))
            {
                return;
            }

            Farge farge = fargerListboks.SelectedItem as Farge;

            merknaderVisning.Text = "";

            foreach (Merknad m in farge.FargeMerknader)
            {
                merknaderVisning.Text += m.MerknadTekst + "\n";
            }

            merknaderVisning.Text = merknaderVisning.Text.Trim();

            FargeIendring = farge;

            fargerListboks.ScrollIntoView(farge);
        }
        void nyFargeKnapp_Click(object sender, RoutedEventArgs e)
        {
            if (prisgruppeListboks.SelectedItem == null || !(prisgruppeListboks.SelectedItem is FargeBeholder))
            {
                return;
            }

            //string prisgruppenavn = "";
            //if (prisgruppeListboks.SelectedItem is FargeBeholder)
            //    prisgruppenavn = (prisgruppeListboks.SelectedItem as FargeBeholder).PrisgruppeNavn;
            FargeBeholder fb    = (prisgruppeListboks.SelectedItem as FargeBeholder);
            int           index = fargerListboks.SelectedIndex + 1;

            if (fargerListboks.SelectedIndex == -1)
            {
                index = fargerListboks.Items.Count;
            }

            Farge nyFarge = new Farge("Farge" + nrFarge++, prisgruppeListboks.SelectedItem as FargeBeholder);

            fb.Farger.Insert(index, nyFarge);

            fargerListboks.ScrollIntoView(nyFarge);
        }