Пример #1
0
        private void setData(uint data, bool updateHex)
        {
            currentFlags   = ((data & 0xFFFF0000) >> 16) | ((data & 0xF00) << 8);
            currentSubType = (int)(data & 0xF000) >> 12;
            currentParam   = (int)data & 0xFF;

            DataUpdateFlag++;

            // populate the simple fields
            for (int i = 0; i < 20; i++)
            {
                flagsListBox.SetItemChecked(i, (currentFlags & (1 << i)) != 0);
            }

            subTypeComboBox.SelectedIndex = currentSubType;

            // set up the pipe/door stuff
            pipeDoorMainTypeComboBox.Items.AddRange(
                LanguageManager.GetList("DoorPipeMainSelection").ToArray());

            populateListBox(pipeDoorTypeListBox, 32, "PipeTileType");

            updateParamTypeAndData();
            if (updateHex)
            {
                updateHexEditor();
            }

            DataUpdateFlag--;

            Visible = true;
        }
Пример #2
0
        public List <string> getFullList(string name)
        {
            List <string> fullList = LanguageManager.GetList(name);
            List <string> newList  = new List <string>();

            foreach (string i in fullList)
            {
                newList.Add(i);
            }
            if (lists.ContainsKey(name))
            {
                foreach (KeyValuePair <int, string> item in lists[name])
                {
                    if (newList.Count > item.Key)
                    {
                        newList[item.Key] = item.Value;
                    }
                }
            }
            if (name == "Music")
            {
                for (int l = 0; l < newList.ToArray().Length; l++)
                {
                    try
                    {
                        newList[l] = string.Format("{0}: {1}", newList[l].Split('=')[0], newList[l].Split('=')[1]);
                    }
                    catch { }
                }
            }

            return(newList);
        }
Пример #3
0
 private void deleteDescriptions_Click(object sender, EventArgs e)
 {
     if (!descExists)
     {
         return;
     }
     if (MessageBox.Show(LanguageManager.Get("TilesetEditor", "sureDelDescriptions"), LanguageManager.Get("TilesetEditor", "titleDelDescriptions"), MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
     {
         return;
     }
     ROM.UserInfo.descriptions.Remove(TilesetID);
     createDescriptions.Visible           = true;
     deleteDescriptions.Visible           = false;
     tilesetObjectEditor1.descBox.Visible = false;
     tilesetObjectEditor1.descLbl.Visible = false;
     if (TilesetID != 65535) // The Jyotyu tileset
     {
         t.UseNotes = false;
     }
     else //Restore the original notes
     {
         t.ObjNotes = NSMBGraphics.GetDescriptions(LanguageManager.GetList("ObjNotes"));
     }
     descExists = false;
     objectPickerControl1.Invalidate(true);
 }
Пример #4
0
        private void populateListBox(ListBox listBox, int maxID, string listName)
        {
            List <String> strings = LanguageManager.GetList(listName);

            listBox.BeginUpdate();
            listBox.Items.Clear();
            for (int i = 0; i < maxID; i++)
            {
                listBox.Items.Add(string.Format(LanguageManager.Get("BehaviorEditor", "unknown"), i));
            }

            foreach (string item in strings)
            {
                int where = item.IndexOf('=');

                int idx;
                if (item.StartsWith("0x"))
                {
                    idx = int.Parse(item.Substring(2, where - 2), System.Globalization.NumberStyles.AllowHexSpecifier);
                }
                else
                {
                    idx = int.Parse(item.Substring(0, where));
                }

                string text = item.Substring(where + 1);

                listBox.Items[idx] = text;
            }
            listBox.EndUpdate();
        }
Пример #5
0
        public LevelConfig(LevelEditorControl EdControl)
        {
            InitializeComponent();
            this.EdControl = EdControl;
            this.Level     = EdControl.Level;

            tabControl1.SelectTab(0);

            LanguageManager.ApplyToContainer(this, "LevelConfig");

            // Load lists
            loadList("Foregrounds", bgTopLayerComboBox);
            loadList("Backgrounds", bgBottomLayerComboBox);
            loadList("Tilesets", tilesetComboBox);

            // Load modifier lists
            ComboBox target = null;

            foreach (string name in LanguageManager.GetList("Modifiers"))
            {
                string trimmedname = name.Trim();
                if (trimmedname == "")
                {
                    continue;
                }
                if (trimmedname[0] == '-')
                {
                    switch (trimmedname)
                    {
                    case "-1": target = set1ComboBox; break;

                    case "-2": target = set2ComboBox; break;

                    case "-3": target = set3ComboBox; break;

                    case "-4": target = set4ComboBox; break;

                    case "-5": target = set5ComboBox; break;

                    case "-6": target = set6ComboBox; break;

                    case "-7": target = set7ComboBox; break;

                    case "-8": target = set8ComboBox; break;

                    case "-9": target = set9ComboBox; break;

                    case "-10": target = set10ComboBox; break;

                    case "-16": target = set16ComboBox; break;
                    }
                }
                else
                {
                    target.Items.Add(trimmedname);
                }
            }
        }
Пример #6
0
        private void Setproperties_btn_Click(object sender, EventArgs e)
        {
            bg = (BackgroundEntry)tilesetListBox.SelectedItem;

            bool IsLevelBG = true;

            if (bg.id > 75 || bg.mappedTileset)
            {
                IsLevelBG = false;
            }
            SetBGPropertiesDialog newBg = new SetBGPropertiesDialog(bg.id, bg.name.Split(':')[1].Remove(0, 1), bg.GFXFileID, bg.PalFileID, bg.LayoutFileID, bg.BitmapOffset, bg.PaletteOffsets, IsLevelBG);

            if (newBg.Canceled)
            {
                return;
            }

            string listName = bg.topLayer ? "Foregrounds" : "Backgrounds";

            if (bg.mappedTileset)
            {
                listName = "MappedTileset";
            }

            if (string.IsNullOrWhiteSpace(newBg.bgName))
            {
                ROM.UserInfo.removeListItem(listName, bg.id, true);
                string newName = LanguageManager.GetList(listName)[bg.id];
                bool   empty   = false;
                if (string.IsNullOrWhiteSpace(newName.Split(':')[1]))
                {
                    newName += " " + LanguageManager.Get("BackgroundList", "empty");
                    empty    = true;
                }

                tilesetListBox.Items[tilesetListBox.SelectedIndex] = new BackgroundEntry(bg.topLayer, bg.id, newName, bg.mappedTileset, empty);
                return;
            }

            string NewFullName = string.Format("{0}: {1}", bg.id, newBg.bgName);

            if (!IsLevelBG)
            {
                NewFullName = string.Format("{0}: {1}@{2}@{3}@{4}@{5}@{6}@not_level_bg", bg.id, newBg.bgName, newBg.bgNCGID, newBg.bgNCLID, newBg.bgNSCID, newBg.bgBMPOffs, newBg.bgPALOffs);
            }
            else
            {
                ROM.SetFileIDFromTable(bg.id, bg.topLayer ? ROM.Data.Table_FG_NCG : ROM.Data.Table_BG_NCG, (ushort)newBg.bgNCGID);
                ROM.SetFileIDFromTable(bg.id, bg.topLayer ? ROM.Data.Table_FG_NCL : ROM.Data.Table_BG_NCL, (ushort)newBg.bgNCLID);
                ROM.SetFileIDFromTable(bg.id, bg.topLayer ? ROM.Data.Table_FG_NSC : ROM.Data.Table_BG_NSC, (ushort)newBg.bgNSCID);
            }

            ROM.UserInfo.setListItem(listName, bg.id, NewFullName, true);
            tilesetListBox.Items[tilesetListBox.SelectedIndex] = new BackgroundEntry(bg.topLayer, bg.id, NewFullName, false);
        }
Пример #7
0
 public ViewEditor(LevelEditorControl EdControl, List <NSMBView> l, bool EdVi)
 {
     InitializeComponent();
     this.EdControl = EdControl;
     this.lst       = l;
     EditingViews   = EdVi;
     LanguageManager.ApplyToContainer(this, "ViewEditor");
     music.Items.AddRange(ROM.UserInfo.getFullList("Music").ToArray());
     lightList.Items.AddRange(LanguageManager.GetList("3DLighting").ToArray());
     UpdateList();
 }
Пример #8
0
 public EntranceEditor(LevelEditorControl ec)
 {
     InitializeComponent();
     EdControl = ec;
     UpdateList();
     if (entranceTypeComboBox.Items.Count == 0)
     {
         entranceTypeComboBox.Items.AddRange(LanguageManager.GetList("EntranceTypes").ToArray());
     }
     LanguageManager.ApplyToContainer(this, "EntranceEditor");
 }
Пример #9
0
        public BehaviorEditor()
        {
            InitializeComponent();

            Visible = false;

            // Set up stuff that won't change
            flagsListBox.Items.AddRange(
                LanguageManager.GetList("BehaviourFlags").ToArray());
            subTypeComboBox.Items.AddRange(
                LanguageManager.GetList("TileSubTypes").ToArray());
            LanguageManager.ApplyToContainer(this, "BehaviorEditor");
        }
Пример #10
0
        private void LoadLevelNames()
        {
            List <string> LevelNames = LanguageManager.GetList("LevelNames");

            TreeNode WorldNode = null;
            TreeNode LevelNode;
            TreeNode AreaNode;

            for (int NameIdx = 0; NameIdx < LevelNames.Count; NameIdx++)
            {
                LevelNames[NameIdx] = LevelNames[NameIdx].Trim();
                if (LevelNames[NameIdx] == "")
                {
                    continue;
                }
                if (LevelNames[NameIdx][0] == '-')
                {
                    // Create a world
                    string[] ParseWorld = LevelNames[NameIdx].Substring(1).Split('|');
                    WorldNode = levelTreeView.Nodes.Add("ln" + NameIdx.ToString(), ParseWorld[0]);
                }
                else
                {
                    // Create a level
                    string[] ParseLevel = LevelNames[NameIdx].Split('|');
                    int      AreaCount  = ParseLevel.Length - 1;
                    if (AreaCount == 1)
                    {
                        // One area only; no need for a subfolder here
                        LevelNode     = WorldNode.Nodes.Add("ln" + NameIdx.ToString(), ParseLevel[0]);
                        LevelNode.Tag = ParseLevel[1];
                    }
                    else
                    {
                        // Create a subfolder
                        LevelNode = WorldNode.Nodes.Add("ln" + NameIdx.ToString(), ParseLevel[0]);
                        for (int AreaIdx = 1; AreaIdx <= AreaCount; AreaIdx++)
                        {
                            AreaNode     = LevelNode.Nodes.Add("ln" + NameIdx.ToString() + "a" + AreaIdx.ToString(), LanguageManager.Get("LevelChooser", "Area") + " " + AreaIdx.ToString());
                            AreaNode.Tag = ParseLevel[AreaIdx];
                        }
                    }
                }
            }
        }
Пример #11
0
        public GoodTabsPanel(LevelEditorControl EdControl)
        {
            InitializeComponent();
            this.EdControl = EdControl;
            ToolTips       = LanguageManager.GetList("TabText");

            images            = new ImageList();
            images.ColorDepth = ColorDepth.Depth32Bit;
            images.Images.Add(Properties.Resources.config);
            images.Images.Add(Properties.Resources.block);
            images.Images.Add(Properties.Resources.bug);
            images.Images.Add(Properties.Resources.door);
            images.Images.Add(Properties.Resources.views);
            images.Images.Add(Properties.Resources.zones);
            images.Images.Add(Properties.Resources.paths);
            images.Images.Add(Properties.Resources.paths_progress);
            tabControl1.ImageList = images;

            objects       = new ObjectEditor(EdControl);
            sprites       = new SpriteEditor(EdControl);
            entrances     = new EntranceEditor(EdControl);
            views         = new ViewEditor(EdControl, EdControl.Level.Views, true);
            zones         = new ViewEditor(EdControl, EdControl.Level.Zones, false);
            paths         = new PathEditor(EdControl, EdControl.Level.Paths);
            progresspaths = new PathEditor(EdControl, EdControl.Level.ProgressPaths);

            config = new LevelConfig(EdControl);
            config.LoadSettings();
            EdControl.config = config;

            controls = new Control[] { config, objects, sprites, entrances, views, zones, paths, progresspaths };

            foreach (Control c in controls)
            {
                AddTab(c);
            }
            tabControl1.SelectedIndex = 1;

            //Select nothing
            SelectObjects(new List <LevelItem>());
        }
Пример #12
0
        private void RenameBtn_Click(object sender, EventArgs e)
        {
            if (tilesetListBox.SelectedIndex < 2)
            {
                MessageBox.Show(LanguageManager.Get("TilesetList", "errorRename"));
                return;
            }
            string newName;

            if (textForm.ShowDialog(LanguageManager.Get("TilesetList", "renamePrompt"), tilesetListBox.SelectedItem.ToString(), out newName) == DialogResult.OK)
            {
                if (newName == string.Empty)
                {
                    ROM.UserInfo.removeListItem("Tilesets", tilesetListBox.SelectedIndex - 2, true);
                    tilesetListBox.Items[tilesetListBox.SelectedIndex] = LanguageManager.GetList("Tilesets")[tilesetListBox.SelectedIndex - 2];
                    return;
                }
                ROM.UserInfo.setListItem("Tilesets", tilesetListBox.SelectedIndex - 2, newName, true);
                tilesetListBox.Items[tilesetListBox.SelectedIndex] = newName;
            }
        }
Пример #13
0
        public void createDescriptions(int tilesetNum)
        {
            List <string> descList = new List <string>();

            for (int l = 0; l < 256; l++)
            {
                descList.Add("");
            }
            if (tilesetNum == 65535)
            {
                List <string> defaults = LanguageManager.GetList("ObjNotes");
                for (int l = 0; l < defaults.Count; l++)
                {
                    int idx = defaults[l].IndexOf("=");
                    int num;
                    if (int.TryParse(defaults[l].Substring(0, idx), out num))
                    {
                        descList[num] = defaults[l].Substring(idx + 1);
                    }
                }
            }
            descriptions.Add(tilesetNum, descList);
        }
Пример #14
0
        public DataFinder()
        {
            InitializeComponent();
            if (Properties.Settings.Default.mdi)
            {
                this.MdiParent = MdiParentForm.instance;
            }
            List <string> LevelNames = LanguageManager.GetList("LevelNames");

            Levels     = new List <string>();
            LevelFiles = new List <string>();

            string WorldID = null;

            for (int NameIdx = 0; NameIdx < LevelNames.Count; NameIdx++)
            {
                LevelNames[NameIdx] = LevelNames[NameIdx].Trim();
                if (LevelNames[NameIdx] == "")
                {
                    continue;
                }
                if (LevelNames[NameIdx][0] == '-')
                {
                    string[] ParseWorld = LevelNames[NameIdx].Substring(1).Split('|');
                    WorldID = ParseWorld[1];
                }
                else
                {
                    string[] ParseLevel = LevelNames[NameIdx].Split('|');
                    if (ParseLevel[2] == "1")
                    {
                        Levels.Add(ParseLevel[0]);
                        LevelFiles.Add(WorldID + ParseLevel[1] + "_1");
                    }
                    else
                    {
                        int AreaCount = int.Parse(ParseLevel[2]);
                        for (int AreaIdx = 1; AreaIdx <= AreaCount; AreaIdx++)
                        {
                            Levels.Add(ParseLevel[0] + " area " + AreaIdx.ToString());
                            LevelFiles.Add(WorldID + ParseLevel[1] + "_" + AreaIdx.ToString());
                        }
                    }
                }
            }

            //now pad the level names to the same size to get the data aligned !!!
            int longestName = 0;

            foreach (string s in Levels)
            {
                if (s.Length > longestName)
                {
                    longestName = s.Length;
                }
            }
            for (int i = 0; i < Levels.Count; i++)
            {
                int pad = longestName - Levels[i].Length;
                for (int j = 0; j < pad; j++)
                {
                    Levels[i] += " ";
                }
            }
            this.Icon = Properties.Resources.nsmbe;
        }
Пример #15
0
        private void renameBtn_Click(object sender, EventArgs e)
        {
            if (musicList.SelectedIndex == -1)
            {
                return;
            }
            string newName;
            string oldName = musicList.SelectedItem.ToString();

            oldName = oldName.Substring(oldName.IndexOf(" ") + 1);
            if (textForm.ShowDialog(LanguageManager.Get("LevelChooser", "rnmmusic"), oldName, out newName) == DialogResult.OK)
            {
                if (newName == string.Empty)
                {
                    ROM.UserInfo.removeListItem("Music", musicList.SelectedIndex, true);
                    musicList.Items[musicList.SelectedIndex] = string.Format("{0}: {1}", musicList.SelectedIndex, LanguageManager.GetList("Music")[musicList.SelectedIndex].Split('=')[1]);
                    return;
                }
                ROM.UserInfo.setListItem("Music", musicList.SelectedIndex, string.Format("{0}={1}", musicList.SelectedIndex, newName), true);
                musicList.Items[musicList.SelectedIndex] = string.Format("{0}: {1}", musicList.SelectedIndex, newName);
            }
        }
Пример #16
0
 public string ToStringNormal()
 {
     return(String.Format("{0}: {1} ({2},{3})", Number,
                          LanguageManager.GetList("EntranceTypes")[Type],
                          X, Y));
 }
Пример #17
0
 public override string ToString()
 {
     return(LanguageManager.GetList("UndoActions")[20]);
 }
Пример #18
0
        public void LoadTilesets(ushort TilesetID, int JyotyuPalOverride)
        {
            Tilesets = new NSMBTileset[3];

            Console.WriteLine("JyotyuPalOverride = {0}, JyotyuPal offset = {1}...", JyotyuPalOverride, ROM.Overlay0[ROM.GetOffset(ROM.Data.Table_Jyotyu_NCL) + JyotyuPalOverride]);

            byte JyotyuPalID   = ROM.Overlay0[ROM.GetOffset(ROM.Data.Table_Jyotyu_NCL) + JyotyuPalOverride];
            File JyotyuPalFile = null;

            if (JyotyuPalID == 1)
            {
                JyotyuPalFile = ROM.FS.getFileByName("d_2d_A_J_jyotyu_B_ncl.bin");
            }
            else if (JyotyuPalID == 2)
            {
                JyotyuPalFile = ROM.FS.getFileByName("d_2d_A_J_jyotyu_R_ncl.bin");
            }
            else if (JyotyuPalID == 3)
            {
                JyotyuPalFile = ROM.FS.getFileByName("d_2d_A_J_jyotyu_W_ncl.bin");
            }
            else
            {
                JyotyuPalFile = ROM.FS.getFileByName("d_2d_A_J_jyotyu_ncl.bin");
            }

            Tilesets[0] = new NSMBTileset(
                ROM.FS.getFileByName("d_2d_A_J_jyotyu_ncg.bin"),
                JyotyuPalFile,
                ROM.FS.getFileByName("d_2d_PA_A_J_jyotyu.bin"),
                ROM.FS.getFileByName("A_J_jyotyu.bin"),
                ROM.FS.getFileByName("A_J_jyotyu_hd.bin"),
                null, true, 0);

            LoadTileset1(TilesetID);

            Tilesets[2] = new NSMBTileset(
                ROM.FS.getFileByName("d_2d_I_S_tikei_nohara_ncg.bin"),
                ROM.FS.getFileByName("d_2d_I_S_tikei_nohara_ncl.bin"),
                ROM.FS.getFileByName("d_2d_PA_I_S_nohara.bin"),
                ROM.FS.getFileByName("I_S_nohara.bin"),
                ROM.FS.getFileByName("I_S_nohara_hd.bin"),
                ROM.FS.getFileByName("NoHaRaSubUnitChangeData.bin"), false, 2);

            // Patch in a bunch of overrides to the normal tileset
            // Now works directly on the map16 data
            Tilesets[0].UseOverrides   = true;
            Tilesets[0].Overrides[1]   = 136;
            Tilesets[0].Overrides[2]   = 137;
            Tilesets[0].Overrides[3]   = 138;
            Tilesets[0].Overrides[4]   = 139;
            Tilesets[0].Overrides[5]   = 140;
            Tilesets[0].Overrides[6]   = 141;
            Tilesets[0].Overrides[7]   = 142;
            Tilesets[0].Overrides[8]   = 143;
            Tilesets[0].Overrides[36]  = 135;
            Tilesets[0].Overrides[112] = 26;
            Tilesets[0].Overrides[113] = 27;
            Tilesets[0].Overrides[114] = 53;
            Tilesets[0].Overrides[115] = 55;
            Tilesets[0].Overrides[116] = 28;
            Tilesets[0].Overrides[117] = 57;
            Tilesets[0].Overrides[118] = 144;
            Tilesets[0].Overrides[119] = 1;
            Tilesets[0].Overrides[120] = 4;
            Tilesets[0].Overrides[121] = 5;
            Tilesets[0].Overrides[122] = 30;
            Tilesets[0].Overrides[123] = 31;
            Tilesets[0].Overrides[124] = 8;
            Tilesets[0].Overrides[125] = 9;
            Tilesets[0].Overrides[126] = 20;
            Tilesets[0].Overrides[127] = 21;
            Tilesets[0].Overrides[128] = 24;
            Tilesets[0].Overrides[129] = 25;
            Tilesets[0].Overrides[132] = 29;
            Tilesets[0].Overrides[130] = 54;
            Tilesets[0].Overrides[131] = 56;
            Tilesets[0].Overrides[133] = 58;
            Tilesets[0].Overrides[134] = 2;
            Tilesets[0].Overrides[135] = 3;
            Tilesets[0].Overrides[136] = 6;
            Tilesets[0].Overrides[137] = 7;
            Tilesets[0].Overrides[138] = 12;
            Tilesets[0].Overrides[139] = 13;
            Tilesets[0].Overrides[140] = 10;
            Tilesets[0].Overrides[141] = 11;
            Tilesets[0].Overrides[142] = 22;
            Tilesets[0].Overrides[143] = 23;
            Tilesets[0].Overrides[145] = 32;
            Tilesets[0].Overrides[146] = 19;
            Tilesets[0].Overrides[147] = 17;
            Tilesets[0].Overrides[148] = 18;
            Tilesets[0].Overrides[149] = 14;
            Tilesets[0].Overrides[150] = 22;
            Tilesets[0].Overrides[151] = 23;
            Tilesets[0].Overrides[152] = 71;
            Tilesets[0].Overrides[153] = 72;
            Tilesets[0].Overrides[154] = 15;
            Tilesets[0].Overrides[155] = 16;
            Tilesets[0].Overrides[156] = 20;
            Tilesets[0].Overrides[157] = 21;
            Tilesets[0].Overrides[158] = 28;
            Tilesets[0].Overrides[159] = 29;
            Tilesets[0].Overrides[160] = 71;
            Tilesets[0].Overrides[161] = 72;
            Tilesets[0].Overrides[171] = 53;
            Tilesets[0].Overrides[172] = 57;
            Tilesets[0].Overrides[173] = 55;
            Tilesets[0].Overrides[174] = 26;
            Tilesets[0].Overrides[175] = 27;
            Tilesets[0].Overrides[187] = 54;
            Tilesets[0].Overrides[188] = 58;
            Tilesets[0].Overrides[189] = 56;
            Tilesets[0].Overrides[190] = 24;
            Tilesets[0].Overrides[191] = 25;
            Tilesets[0].Overrides[192] = 59;
            Tilesets[0].Overrides[193] = 63;
            Tilesets[0].Overrides[194] = 61;
            Tilesets[0].Overrides[195] = 65;
            Tilesets[0].Overrides[196] = 69;
            Tilesets[0].Overrides[197] = 67;
            Tilesets[0].Overrides[198] = 33;
            Tilesets[0].Overrides[199] = 34;
            Tilesets[0].Overrides[200] = 41;
            Tilesets[0].Overrides[201] = 42;
            Tilesets[0].Overrides[202] = 37;
            Tilesets[0].Overrides[203] = 38;
            Tilesets[0].Overrides[204] = 47;
            Tilesets[0].Overrides[205] = 48;
            Tilesets[0].Overrides[206] = 51;
            Tilesets[0].Overrides[207] = 52;
            Tilesets[0].Overrides[208] = 60;
            Tilesets[0].Overrides[209] = 64;
            Tilesets[0].Overrides[210] = 62;
            Tilesets[0].Overrides[211] = 66;
            Tilesets[0].Overrides[212] = 70;
            Tilesets[0].Overrides[213] = 68;
            Tilesets[0].Overrides[214] = 35;
            Tilesets[0].Overrides[215] = 36;
            Tilesets[0].Overrides[216] = 43;
            Tilesets[0].Overrides[217] = 44;
            Tilesets[0].Overrides[218] = 39;
            Tilesets[0].Overrides[219] = 40;
            Tilesets[0].Overrides[220] = 49;
            Tilesets[0].Overrides[221] = 50;
            Tilesets[0].Overrides[222] = 45;
            Tilesets[0].Overrides[223] = 46;
            Tilesets[0].Overrides[228] = 41;
            Tilesets[0].Overrides[229] = 42;
            Tilesets[0].Overrides[230] = 45;
            Tilesets[0].Overrides[231] = 65;
            Tilesets[0].Overrides[232] = 69;
            Tilesets[0].Overrides[233] = 67;
            Tilesets[0].Overrides[234] = 47;
            Tilesets[0].Overrides[235] = 48;
            Tilesets[0].Overrides[236] = 52;
            Tilesets[0].Overrides[237] = 59;
            Tilesets[0].Overrides[238] = 63;
            Tilesets[0].Overrides[239] = 61;
            Tilesets[0].Overrides[244] = 43;
            Tilesets[0].Overrides[245] = 44;
            Tilesets[0].Overrides[246] = 46;
            Tilesets[0].Overrides[247] = 66;
            Tilesets[0].Overrides[248] = 70;
            Tilesets[0].Overrides[249] = 68;
            Tilesets[0].Overrides[250] = 49;
            Tilesets[0].Overrides[251] = 50;
            Tilesets[0].Overrides[252] = 51;
            Tilesets[0].Overrides[253] = 60;
            Tilesets[0].Overrides[254] = 64;
            Tilesets[0].Overrides[255] = 62;
//            Tilesets[0].repaintAllMap16();

            RepatchBlocks(Properties.Settings.Default.SmallBlockOverlays);

            // Enable notes for the normal tileset
            Tilesets[0].UseNotes = true;
            if (ROM.UserInfo.descriptions.ContainsKey(65535))
            {
                Tilesets[0].ObjNotes = ROM.UserInfo.descriptions[65535].ToArray();
            }
            else
            {
                Tilesets[0].ObjNotes = GetDescriptions(LanguageManager.GetList("ObjNotes"));
            }
            if (ROM.UserInfo.descriptions.ContainsKey(TilesetID))
            {
                Tilesets[1].ObjNotes = ROM.UserInfo.descriptions[TilesetID].ToArray();;
                Tilesets[1].UseNotes = true;
            }
            if (ROM.UserInfo.descriptions.ContainsKey(65534))
            {
                Tilesets[2].ObjNotes = ROM.UserInfo.descriptions[65534].ToArray();
                Tilesets[2].UseNotes = true;
            }
        }
Пример #19
0
 public override string ToString()
 {
     return(string.Format(LanguageManager.GetList("UndoActions")[16], LanguageManager.Get("EntranceEditor", PropNum + 5).Replace(":", "")));
 }
Пример #20
0
        private void RenameBtn_Click(object sender, EventArgs e)
        {
            string          newName;
            BackgroundEntry bg       = tilesetListBox.SelectedItem as BackgroundEntry;
            string          listName = bg.topLayer ? "Foregrounds" : "Backgrounds";

            if (textForm.ShowDialog(LanguageManager.Get("BackgroundList", "renamePrompt"), bg.name, out newName) == DialogResult.OK)
            {
                if (newName == string.Empty)
                {
                    ROM.UserInfo.removeListItem(listName, bg.id, true);
                    tilesetListBox.Items[tilesetListBox.SelectedIndex] = new BackgroundEntry(bg.topLayer, bg.id, LanguageManager.GetList(listName)[bg.id], false);
                    return;
                }
                ROM.UserInfo.setListItem(listName, bg.id, newName, true);
                tilesetListBox.Items[tilesetListBox.SelectedIndex] = new BackgroundEntry(bg.topLayer, bg.id, newName, false);
            }
        }