public void PrzesóńDalej(MenuPodstawa mp)
        {
            bool CzyKontynułuj = true;

            Zaznaczenie = true;
            PrzesónieciaGdyOtwierasz = new Vector2(0, WielkośćElementu.Y) * (kolekcja.Count - 1);
            XnaKontrolka OstatniPrzesówany = this, Nadpsiany = null;

            while (CzyKontynułuj)
            {
                CzyKontynułuj = false;
                foreach (XnaKontrolka item in mp.Lista)
                {
                    if (item.PrzynależnośćDoInejFigury)
                    {
                        continue;
                    }
                    if (item != OstatniPrzesówany && item.Krawedzie != null && OstatniPrzesówany.Krawedzie != null && OstatniPrzesówany.Krawedzie.Kolizja(item.Krawedzie))
                    {
                        CzyKontynułuj = true;
                        item.Miejsce += PrzesónieciaGdyOtwierasz;
                        if (!Przesówane.Exists((XnaKontrolka x) => { return(x == item); }))
                        {
                            Przesówane.Add(item);
                        }
                        Nadpsiany = item;
                    }
                }
                OstatniPrzesówany = Nadpsiany;
            }
            ZmianaZazanczenia += ObsógaPRzesóniećInychMenu;
            Zaznaczenie        = false;
        }
Exemple #2
0
 public void Remove(XnaKontrolka x)
 {
     Lista.Remove(x);
     x.Usówanie();
 }
Exemple #3
0
 public void Add(XnaKontrolka Kontrolka)
 {
     Lista.Add(Kontrolka);
     Kontrolka.Dodawanie();
 }
Exemple #4
0
        bool ObsługaMyszki()
        {
            if (BlokadaOdczytu)
            {
                return(true);
            }

            MouseState m = Mouse.GetState();

            MiejsceMyszki = new Vector2(m.X, m.Y);
            Vector2 Min = Vector2.Zero, Max = Vector2.Zero;

            if (m.LeftButton == ButtonState.Pressed)
            {
                if (ByłKlikniety)
                {
                    Vector2 c = MiejsceDawnegoKlikniecia;
                    c.X -= m.X;
                    c.Y -= m.Y;
                    float Długośc = c.Length();
                    if (c.Length() > 2)
                    {
                        Min = MiejsceDawnegoKlikniecia;
                        Max = MiejsceMyszki;
                        try
                        {
                            UżywanieKotrolekPoKwadracie(new EventPrzesuniecie(MiejsceDawnegoKlikniecia.X, MiejsceDawnegoKlikniecia.Y, MiejsceMyszki.X, MiejsceMyszki.Y), Min, Max);
                        }
                        catch (Exception e)
                        {
                        }
                        MiejsceDawnegoKlikniecia = new Vector2(m.X, m.Y);
                        ByłPrzesówany            = true;
                    }
                }
                else
                {
                    ByłKlikniety             = true;
                    MiejsceDawnegoKlikniecia = new Vector2(m.X, m.Y);
                }
            }
            else
            {
                if (ByłKlikniety)
                {
                    if (!ByłPrzesówany)
                    {
                        Vector2 c = MiejsceDawnegoKlikniecia;
                        c.X -= m.X;
                        c.Y -= m.Y;
                        if (c.Length() < 6)
                        {
                            try
                            {
                                UżywanieKotrolekPoPunkcie(new EventKlikniety(MiejsceDawnegoKlikniecia.X, MiejsceDawnegoKlikniecia.Y), MiejsceDawnegoKlikniecia);
                            }
                            catch (Exception e)
                            {
                            }
                        }
                    }
                    ByłKlikniety = false;
                }
                else
                {
                    bool b = true;
                    foreach (XnaKontrolka item in Lista)
                    {
                        if (item.KolizjaZawsze(MiejsceMyszki) && !item.BezWielkości)
                        {
                            if (item == ZaznaczonaKontrolkaMyszką)
                            {
                                b = false;
                                break;
                            }
                            b = false;
                            if (ZaznaczonaKontrolkaMyszką != null)
                            {
                                ZaznaczonaKontrolkaMyszką.Puść(MiejsceMyszki);
                            }
                            item.PoczotekTrzymanaMyszką(MiejsceMyszki);
                            ZaznaczonaKontrolkaMyszką = item;
                        }
                    }
                    if (ZaznaczonaKontrolkaMyszką != null && b)
                    {
                        ZaznaczonaKontrolkaMyszką.Puść(MiejsceMyszki);
                        ZaznaczonaKontrolkaMyszką = null;
                    }
                    ByłKlikniety  = false;
                    ByłPrzesówany = false;
                }
            }

            return(true);
        }
 public float LenghtToObject(XnaKontrolka X)
 {
     return((X.Miejsce - Miejsce).Length());
 }