private void bDelete_Click(object sender, EventArgs e)
        {
            if (m_TileSet != null)
            {
                m_List.List.Remove(m_TileSet);

                var index = cmbGroups.Items.IndexOf(m_TileSet);
                cmbGroups.Items.Remove(m_TileSet);

                if (index < cmbGroups.Items.Count)
                {
                    cmbGroups.SelectedIndex = index;
                }
                else
                {
                    if (--index >= 0 && cmbGroups.Items.Count > 0)
                    {
                        cmbGroups.SelectedIndex = index;
                    }
                    else
                    {
                        TileSet = null;
                    }
                }
            }
        }
        private void bRunBrush_Click(object sender, System.EventArgs e)
        {
            if (!this.EnsureConditions())
            {
                return;
            }

            double fill   = pBarFill2.Value / 100d;
            int    width  = (int)nWidth.Value;
            int    height = (int)nHeight.Value;

            RandomBrush        brush   = new RandomBrush(width, height);
            RandomTilesList    tileset = cmbTileSet.SelectedItem as RandomTilesList;
            RandomBrushMessage msg     = null;

            if (this.rRandomHue.Checked)
            {
                HuesCollection hues = cmbHues.SelectedItem as HuesCollection;

                msg = brush.CreateMessage(tileset, hues, fill);
            }
            else
            {
                if (rNoHue.Checked)
                {
                    msg = brush.CreateMessage(tileset, 0, fill);
                }
                else
                {
                    msg = brush.CreateMessage(tileset, Pandora.Profile.Hues.SelectedIndex, fill);
                }
            }

            Pandora.BoxConnection.SendToServer(msg);
        }
        private void bRunSingle_Click(object sender, System.EventArgs e)
        {
            if (!EnsureConditions())
            {
                return;
            }

            RandomTilesList tileset = cmbTileSet.SelectedItem as RandomTilesList;

            HuesCollection hues = cmbHues.SelectedItem as HuesCollection;

            TheBox.BoxServer.RandomItem msg = null;;

            if (rNoHue.Checked)
            {
                msg = new TheBox.BoxServer.RandomItem(tileset);
            }
            else if (rSelectedHue.Checked)
            {
                msg = new TheBox.BoxServer.RandomItem(tileset, Pandora.Profile.Hues.SelectedIndex);
            }
            else
            {
                msg = new TheBox.BoxServer.RandomItem(tileset, hues);
            }

            Pandora.BoxConnection.SendToServer(msg);
        }
        private bool EnsureConditions()
        {
            if (!Pandora.BoxConnection.Connected)
            {
                MessageBox.Show(Pandora.Localization.TextProvider["Server.PleaseConnect"]);
                return(false);
            }

            RandomTilesList tileset = cmbTileSet.SelectedItem as RandomTilesList;

            if (tileset == null)
            {
                MessageBox.Show(Pandora.Localization.TextProvider["Random.NoTile"]);
                return(false);
            }

            HuesCollection hues = cmbHues.SelectedItem as HuesCollection;

            if (rRandomHue.Checked && hues == null)
            {
                MessageBox.Show(Pandora.Localization.TextProvider["Random.NoRndHue"]);
                return(false);
            }

            return(true);
        }
        private void bNew_Click(object sender, EventArgs e)
        {
            var list = new RandomTilesList(txNew.Text);

            txNew.Text = "";

            m_List.List.Add(list);

            cmbGroups.Items.Add(list);
            cmbGroups.SelectedItem = list;
        }
        private void bAreaRun_Click(object sender, System.EventArgs e)
        {
            if (!EnsureConditions())
            {
                return;
            }

            if (cmbMap.SelectedIndex == -1)
            {
                MessageBox.Show(Pandora.Localization.TextProvider["Random.NoMap"]);
                return;
            }

            RandomTilesList tileset = cmbTileSet.SelectedItem as RandomTilesList;

            HuesCollection hues = cmbHues.SelectedItem as HuesCollection;

            int x1 = Math.Min((int)n1X.Value, (int)n2X.Value);
            int x2 = Math.Max((int)n1X.Value, (int)n2X.Value);
            int y1 = Math.Min((int)n1Y.Value, (int)n2Y.Value);
            int y2 = Math.Max((int)n1Y.Value, (int)n2Y.Value);

            Rectangle rect = new Rectangle(x1, y1, x2 - x1 + 1, y2 - y1 + 1);
            double    fill = slideFill.Value / 100d;

            int map = Pandora.Profile.Travel.GetRealMapIndex(cmbMap.SelectedIndex);

            RandomRectangle rnd = new RandomRectangle(tileset, rect, fill, map);

            if (rNoHue.Checked)
            {
                rnd.Hue = 0;
            }
            else if (rSelectedHue.Checked)
            {
                rnd.Hue = Pandora.Profile.Hues.SelectedIndex;
            }
            else
            {
                rnd.RandomHues = hues;
            }

            if (chkZ.Checked)
            {
                rnd.Z = (int)numZ.Value;
            }

            TheBox.BoxServer.BoxMessage msg = rnd.CreateMessage();

            Pandora.BoxConnection.SendToServer(msg);
        }
 private void cmbGroups_SelectedIndexChanged(object sender, EventArgs e)
 {
     TileSet = cmbGroups.SelectedItem as RandomTilesList;
 }
Exemple #8
0
 public RandomItem(RandomTilesList tileset) : this(tileset, 0)
 {
 }
Exemple #9
0
 public RandomItem(RandomTilesList tileset, int hue) : this()
 {
     m_Hues.Add(hue);
     m_Items.AddRange(tileset.Tiles);
 }
Exemple #10
0
 public RandomItem(RandomTilesList tileset, HuesCollection hues) : this()
 {
     m_Hues.AddRange(hues.Hues);
     m_Items.AddRange(tileset.Tiles);
 }