1616
1717 function preload() {
1818 game.load.image('sonic', 'assets/sprites/sonic_havok_sanity.png');
19+ game.load.image('carrot', 'assets/sprites/carrot.png');
1920 }
2021
2122 var s;
@@ -25,6 +26,9 @@ function preload() {
2526 var d;
2627 var e;
2728 var f;
29+ var g;
30+ var h;
31+ var i;
2832
2933 var tests;
3034
@@ -39,15 +43,21 @@ function create() {
3943 d = game.add.child(s, -280, 200, 'sonic');
4044 e = game.add.child(s, -350, 200, 'sonic');
4145 f = game.add.child(s, -420, 200, 'sonic');
46+ g = game.add.child(f, -50, 0, 'carrot');
47+ h = game.add.child(f, -80, 0, 'carrot');
48+ i = game.add.child(f, -110, 0, 'carrot');
4249
4350 a.name = 'A';
4451 b.name = 'B';
4552 c.name = 'C';
4653 d.name = 'D';
4754 e.name = 'E';
4855 f.name = 'F';
56+ g.name = 'g';
57+ h.name = 'h';
58+ i.name = 'i';
4959
50- tests = [a,b,c,d,e,f];
60+ tests = [a,b,c,d,e,f,g,h,i ];
5161
5262 game.input.onUp.add(runChange, this);
5363
@@ -56,27 +66,34 @@ function create() {
5666 }
5767
5868 function runChange () {
59- changeOrder(a, f );
69+ changeOrder(a, h );
6070 }
6171
6272 function changeOrder (node1, node2) {
6373
74+ // if (node1 === node2 || node1.parent !== node2.parent)
75+ if (node1 === node2)
76+ {
77+ console.warn("You cannot swap a node with itself or re-parent");
78+ return;
79+ }
80+
6481 console.log('Changing order of', node1.name,'and',node2.name);
6582
66- var index1 = s.children.indexOf(node1);
67- var index2 = s.children.indexOf(node2);
83+ // var index1 = s.children.indexOf(node1);
84+ // var index2 = s.children.indexOf(node2);
6885
69- if (index1 !== -1 && index2 !== -1)
70- {
86+ // if (index1 !== -1 && index2 !== -1)
87+ // {
7188 // Cache the node values
7289 var node1Prev = node1._iPrev;
7390 var node1Next = node1._iNext;
74- var node1First = node1.first;
75- var node1Last = node1.last;
91+ // var node1First = node1.first;
92+ // var node1Last = node1.last;
7693 var node2Prev = node2._iPrev;
7794 var node2Next = node2._iNext;
78- var node2First = node2.first;
79- var node2Last = node2.last;
95+ // var node2First = node2.first;
96+ // var node2Last = node2.last;
8097
8198 // Now deep scan search and replace
8299 var currentNode = game.world._stage;
@@ -86,7 +103,7 @@ function changeOrder (node1, node2) {
86103
87104 do
88105 {
89- console.log('Checking', currentNode.name, currentNode.first.name, currentNode.last.name);
106+ // console.log('Checking', currentNode.name, currentNode.first.name, currentNode.last.name);
90107
91108 if (currentNode !== node1 && currentNode !== node2)
92109 {
@@ -239,7 +256,7 @@ function changeOrder (node1, node2) {
239256 node2Next._iPrev = node1;
240257 }
241258 }
242- }
259+ // }
243260
244261 scanList(game.world._stage);
245262
0 commit comments