Пример #1
0
        private void CreateBrushPanel(Brush brush)
        {
            Panel brushPanel = new  DCButton();

            toolTip1.SetToolTip(brushPanel, brush.getName() + " - " + brush.GetType().Name);
            brushPanel.BorderStyle           = System.Windows.Forms.BorderStyle.FixedSingle;
            brushPanel.Margin                = new System.Windows.Forms.Padding(1);
            brushPanel.BackgroundImageLayout = ImageLayout.Zoom;
            brushPanel.Name = brush.getName();
            //brushPanel.Tooltip
            brushPanel.Size = new System.Drawing.Size(34, 34);
            if (brush.getLookID() != 0)
            {
                int lookid = brush.getLookID();
                //     brushPanel.BackColor = Color.White;
                brushPanel.BackgroundImage = Global.gfx.spriteItems[Global.items.items[lookid].SpriteId].getBitmap();
            }
            else
            {
                brushPanel.BackColor = Color.Black;
            }

            brushPanel.MouseDown += new MouseEventHandler(brushClick);
            brushPanel.Tag        = brush;
            brushListItems.Controls.Add(brushPanel);

            if (selectedBrush == null)
            {
                brushClick(brushPanel, null);
            }
        }
Пример #2
0
 private void placeCreatureBT_Click(object sender, EventArgs e)
 {
     if (ItemListView.SelectedItems.Count > 0)
     {
         selectedBrush = (Brush)ItemListView.SelectedItems[0].Tag;
         UpdateEditor();
     }
 }
Пример #3
0
 private void ListView_SelectedIndexChanged(object sender, EventArgs e)
 {
     activePalette = this;
     if (ItemListView.SelectedItems.Count > 0)
     {
         selectedBrush = (Brush)ItemListView.SelectedItems[0].Tag;
         UpdateEditor();
     }
 }
Пример #4
0
        private void brushClick(object sender, MouseEventArgs e)
        {
            activePalette = this;
            if (selectedPanelBrush != null)
            {
                selectedPanelBrush.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
            }
            selectedPanelBrush             = (Panel)sender;
            selectedPanelBrush.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
            selectedBrush = (Brush)selectedPanelBrush.Tag;


            UpdateEditor();
            UpdateDoodadBrush();
        }
Пример #5
0
        public ListViewItem CreateListViewItem(Brush brush)
        {
            ListViewItem lvItem = new ListViewItem();

            lvItem.Text = brush.getName() + ":" + brush.getLookID();
            if (brush.getLookID() != 0)
            {
                int lookid = brush.getLookID();
                lvItem.ImageIndex = Global.gfx.getImageIndex(Global.items.items[lookid].SpriteId);
            }
            if (brush.getSpriteLookID() != 0)
            {
                lvItem.ImageIndex = Global.gfx.getCreatureImageIndex((int)brush.getSpriteLookID());
            }

            lvItem.Tag = brush;
            return(lvItem);
        }
Пример #6
0
        public Brush getDoodadBrush()
        {
            Brush ret = null;

            if ((this.ground != null) && (ground.getDoodadBrush() != null))
            {
                ret = ground.getDoodadBrush();
            }

            foreach (Item it in Items)
            {
                if (it.getDoodadBrush() != null)
                {
                    ret = it.getDoodadBrush();
                }
            }
            return(ret);
        }
Пример #7
0
 private void placeSpawn_Click(object sender, EventArgs e)
 {
     selectedBrush = (Brush)placeSpawnBT.Tag;
     UpdateEditor();
 }
Пример #8
0
        private bool SelectBrushInternal(Brush brush, PaletteType palette)
        {
            paletteType_CB.SelectedIndex = getPaletteType_CBIndex(palette);
            foreach (var item in tileSet_CB.Items)
            {
                TileSet tileset = (TileSet)item;

                TilesetCategory category = null;

                switch (palette)
                {
                case PaletteType.TERRAIN:
                    category = tileset.getCategory(TilesetCategoryType.TILESET_TERRAIN);
                    break;

                case PaletteType.DOODAD:
                    category = tileset.getCategory(TilesetCategoryType.TILESET_DOODAD);
                    break;

                case PaletteType.RAW:
                    category = tileset.getCategory(TilesetCategoryType.TILESET_RAW);
                    break;

                case PaletteType.ITEM:
                    category = tileset.getCategory(TilesetCategoryType.TILESET_ITEM);
                    break;

                case PaletteType.CREATURE:
                    category = tileset.getCategory(TilesetCategoryType.TILESET_CREATURE);
                    break;
                }

                foreach (Brush ibrush in category.brushlist)
                {
                    if (ibrush.Equals(brush))
                    {
                        tileSet_CB.SelectedItem = item;
                        if (panelEditor.Controls.Contains(brushListItems))
                        {
                            foreach (Control control in brushListItems.Controls)
                            {
                                if (control.Tag.Equals(brush))
                                {
                                    Panel panel = (Panel)control;
                                    brushClick(panel, null);
                                    return(true);
                                }
                            }
                        }
                        else if (panelEditor.Controls.Contains(ItemListView))
                        {
                            foreach (ListViewItem lvitem in ItemListView.Items)
                            {
                                if (lvitem.Tag.Equals(brush))
                                {
                                    lvitem.Selected = true;
                                    lvitem.Focused  = true;
                                    ItemListView.Select();
                                    ItemListView.EnsureVisible(lvitem.Index);
                                    return(true);
                                }
                            }
                        }
                    }
                }
            }
            return(false);
        }
Пример #9
0
 public static bool SelectBrush(Brush brush, PaletteType palette)
 {
     return(getSelectedPalette().SelectBrushInternal(brush, palette));
 }
Пример #10
0
        private void paletteType_CB_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                updateEditor  = false;
                selectedBrush = null;
                BrushShapeChange(quadBrush, null);
                BrushSizeChange(brushPanel0, null);
            }
            finally
            {
                updateEditor = true;
            }

            panelEditor.Controls.Clear();
            tileSet_CB.Items.Clear();
            brushListItems.Controls.Clear();
            ItemListView.Clear();
            BrushThicknessP.Visible = false;
            toolBoxGB.Visible       = false;
            creatureBrush.Visible   = false;
            brushSizeGB.Visible     = true;
            tileSet_CB.Visible      = true;
            if (panelEditorTop != 0)
            {
                panelEditor.Top = panelEditorTop;
                panelEditorTop  = 0;
            }

            if (IsTerrainSelected())
            {
                toolBoxGB.Visible = true;
                panelEditor.Controls.Add(brushListItems);
                foreach (TileSet tileSet in  Materials.getInstance().getTileSetList())
                {
                    if (tileSet.getCategory2(TilesetCategoryType.TILESET_TERRAIN) != null)
                    {
                        tileSet_CB.Items.Add(tileSet);
                    }
                }
                if (tileSet_CB.Items.Count > 0)
                {
                    tileSet_CB.SelectedIndex = 0;
                }
            }
            else if (IsDoodadSelected())
            {
                BrushThicknessP.Visible = true;
                panelEditor.Controls.Add(brushListItems);
                foreach (TileSet tileSet in Materials.getInstance().getTileSetList())
                {
                    if (tileSet.getCategory2(TilesetCategoryType.TILESET_DOODAD) != null)
                    {
                        tileSet_CB.Items.Add(tileSet);
                    }
                }
                if (tileSet_CB.Items.Count > 0)
                {
                    tileSet_CB.SelectedIndex = 0;
                }
            }
            else if (IsItemSelected())
            {
                panelEditor.Controls.Add(ItemListView);

                foreach (TileSet tileSet in Materials.getInstance().getTileSetList())
                {
                    if (tileSet.getCategory2(TilesetCategoryType.TILESET_ITEM) != null)
                    {
                        tileSet_CB.Items.Add(tileSet);
                    }
                }
                if (tileSet_CB.Items.Count > 0)
                {
                    tileSet_CB.SelectedIndex = 0;
                }
            }

            else if (IsCreatureSelected())
            {
                creatureBrush.Visible = true;
                brushSizeGB.Visible   = false;
                panelEditor.Controls.Add(ItemListView);

                tileSet_CB.Visible = false;
                panelEditorTop     = panelEditor.Top;
                panelEditor.Top    = tileSet_CB.Top;

                foreach (TileSet tileSet in Materials.getInstance().getTileSetList())
                {
                    if (tileSet.getCategory2(TilesetCategoryType.TILESET_CREATURE) != null)
                    {
                        tileSet_CB.Items.Add(tileSet);
                    }
                }
                if (tileSet_CB.Items.Count > 0)
                {
                    tileSet_CB.SelectedIndex = 0;
                }
            }
            else if (IsRawSelected())
            {
                panelEditor.Controls.Add(ItemListView);

                foreach (TileSet tileSet in Materials.getInstance().getTileSetList())
                {
                    if (tileSet.getCategory2(TilesetCategoryType.TILESET_RAW) != null)
                    {
                        tileSet_CB.Items.Add(tileSet);
                    }
                }
                if (tileSet_CB.Items.Count > 0)
                {
                    tileSet_CB.SelectedIndex = 0;
                }
            }
        }
Пример #11
0
 private void RegistrerBrush(Panel brushPanel, Brush brush)
 {
     brushPanel.MouseDown += new MouseEventHandler(brushClick);
     brushPanel.Tag        = brush;
 }