SHOW:
|
|
- or go back to the newest paste.
1 | private void border1_Click( object sender, RoutedEventArgs e ) | |
2 | { | |
3 | ||
4 | Point p = ( ( MouseEventArgs )e.OriginalSource ).GetPosition( border1.Child ); | |
5 | Vector2D v = new Vector2D( p.X, p.Y ); | |
6 | v = v * multransform + addtransform; | |
7 | SkillTree.SkillNode node = null; | |
8 | ||
9 | var nodes = Tree.Skillnodes.Where(n => ((n.Value.Position - v).Length < 50)); | |
10 | if (nodes != null && nodes.Count() != 0) | |
11 | { | |
12 | node = nodes.First().Value; | |
13 | ||
14 | if (Tree.SkilledNodes.Contains(node.id)) | |
15 | { | |
16 | Tree.ForceRefundNode(node.id); | |
17 | UpdateAllAttributeList(); | |
18 | ||
19 | prePath = Tree.GetShortestPathTo(node.id); | |
20 | Tree.DrawPath(prePath); | |
21 | } | |
22 | else if (prePath != null) | |
23 | { | |
24 | foreach (ushort i in prePath) | |
25 | { | |
26 | Tree.SkilledNodes.Add(i); | |
27 | } | |
28 | UpdateAllAttributeList(); | |
29 | Tree.UpdateAvailNodes(); | |
30 | ||
31 | toRemove = Tree.ForceRefundNodePreview(node.id); | |
32 | if (toRemove != null) | |
33 | Tree.DrawRefundPreview(toRemove); | |
34 | } | |
35 | } | |
36 | tbSkillURL.Text = Tree.SaveToURL( ); | |
37 | } |