-
Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!
Последнее сообщение от Wrechid
-
Сообщение
Любая версия sTASKedit v102+
multi selecting many tasks seems difficult, here is a simple method i added for using SHIFT and CTRL keys to the MainWindow.cs : //(c)Rey35 .... .... .... namespace sTASKedit { public partial class MainWindow : Form { .... .... .... List<TreeNode> selectedNodes; TreeNode previousNode; #endregion public MainWindow(string FileName, int TaskIdSpace, int TaskId) { if (File.Exists(Application.StartupPath + "\\configs\\config.ini")) { selectedNodes = new List<TreeNode>(); .... .... .... } } .... .... .... // add this to BeforeSelect private void treeView_tasks_BeforeSelect(object sender, TreeViewCancelEventArgs e) { e.Cancel = true; } // add this to MouseClick private void treeView_tasks_MouseClick(object sender, MouseEventArgs e) { TreeNode currentNode = treeView_tasks.GetNodeAt(e.Location); bool control = (ModifierKeys == Keys.Control); bool shift = (ModifierKeys == Keys.Shift); if (control) { List<TreeNode> addedNodes = new List<TreeNode>(); List<TreeNode> removedNodes = new List<TreeNode>(); if (!selectedNodes.Contains(currentNode)) { addedNodes.Add(currentNode); previousNode = currentNode; } else { removedNodes.Add(currentNode); } changeSelection(addedNodes, removedNodes); } else if (shift && previousNode != null) { if (currentNode.Parent == previousNode.Parent) { List<TreeNode> addedNodes = new List<TreeNode>(); List<TreeNode> removedNodes = new List<TreeNode>(); bool selection = false; bool selectionEnd = false; TreeNodeCollection nodes = null; if (previousNode.Parent == null) { nodes = treeView_tasks.Nodes; } else { nodes = previousNode.Parent.Nodes; } foreach (TreeNode n in nodes) { if (n == currentNode || n == previousNode) { if (selection) { selectionEnd = true; } if (!selection) { selection = true; } } if (selection && !selectedNodes.Contains(n)) { addedNodes.Add(n); } if (selectionEnd) { break; } } if (addedNodes.Count > 0) { changeSelection(addedNodes, removedNodes); } } } else { if (!currentNode.Checked) { List<TreeNode> addedNodes = new List<TreeNode>(); List<TreeNode> removedNodes = new List<TreeNode>(); removedNodes.AddRange(selectedNodes); if (removedNodes.Contains(currentNode)) { removedNodes.Remove(currentNode); } else { addedNodes.Add(currentNode); } changeSelection(addedNodes, removedNodes); previousNode = currentNode; } } } protected void changeSelection(List<TreeNode> addedNodes, List<TreeNode> removedNodes) { foreach (TreeNode n in addedNodes) { if (!n.Checked) { n.Checked = true; selectedNodes.Add(n); } } foreach (TreeNode n in removedNodes) { n.Checked = false; selectedNodes.Remove(n); } } } } //(c)Rey35 just an idea... :)
-
Сообщение
Любая версия Конфиги к sELedit
here is converted elements 190 to 156... all i did was delete the items in list 48 (NPC_SKILL_SERVICE) and replace them with the items from v156 elements.data... Also i had to use blank gshops as default ones from the server had items that wasn't in the new elements.data file... If you convert from a higher version there are additional steps needed... This link will be temporary... elements.data_v190=v156
-
Сообщение
Любая версия Конфиги к sELedit
That 190 => 156 rule will convert the structure fine... There are other things in the v190 that are not compatible with v156... Example : list "NPC_SKILL_SERVICE" has to be replaced with the list from v156... I think the new skills from 181+ are not compatible with gs, and prevents from loading...