瀏覽代碼

[runtimes] Closes #719, fixed sortPathConstraintAttachment

badlogic 9 年之前
父節點
當前提交
1ecd627afa

二進制
spine-as3/spine-as3-example/lib/spine-as3.swc


+ 7 - 2
spine-as3/spine-as3/src/spine/Skeleton.as

@@ -213,8 +213,13 @@ public class Skeleton {
 			sortBone(slotBone);
 		else {
 			var bones:Vector.<Bone> = this.bones;
-			for each (var boneIndex:int in pathBones)
-				sortBone(bones[boneIndex]);
+			var i:int = 0;
+			while (i < pathBones.length) {
+				var boneCount:int = pathBones[i++];
+				for (var n:int = i + boneCount; i < n; i++) {				
+					sortBone(bones[pathBones[i]]);
+				}
+			}
 		}
 	}
 

+ 6 - 3
spine-c/src/spine/Skeleton.c

@@ -186,9 +186,12 @@ static void _sortPathConstraintAttachmentBones(_spSkeleton* const internal, spAt
 		_sortBone(internal, slotBone);
 	else {
 		spBone** bones = internal->super.bones;
-		int i;
-		for (i = 0; i < pathBonesCount; i++)
-			_sortBone(internal, bones[pathBones[i]]);
+		int i = 0;
+		while (i < pathBonesCount) {
+			int boneCount = pathBones[i++];
+			for (int n = i + boneCount; i < n; i++)
+				_sortBone(internal, bones[pathBones[i]]);
+		}
 	}
 }
 

二進制
spine-starling/spine-starling-example/lib/spine-as3.swc


+ 2 - 2
spine-starling/spine-starling-example/src/spine/examples/Main.as

@@ -42,9 +42,9 @@ public class Main extends Sprite {
 	public function Main () {
 		var example:Class;
 		// example = SpineboyExample;
-		example = GoblinsExample;
+		// example = GoblinsExample;
 		// example = RaptorExample;
-		// example = TankExample;
+		example = TankExample;
 		// example = VineExample;
 
 		_starling = new Starling(example, stage);

二進制
spine-starling/spine-starling/lib/spine-as3.swc


+ 7 - 3
spine-ts/build/spine-all.js

@@ -2941,9 +2941,13 @@ var spine;
 				this.sortBone(slotBone);
 			else {
 				var bones = this.bones;
-				for (var i = 0; i < pathBones.length; i++) {
-					var boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				var i = 0;
+				while (i < pathBones.length) {
+					var boneCount = pathBones[i++];
+					for (var n = i + boneCount; i < n; i++) {
+						var boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		};

File diff suppressed because it is too large
+ 0 - 0
spine-ts/build/spine-all.js.map


+ 7 - 3
spine-ts/build/spine-canvas.js

@@ -2941,9 +2941,13 @@ var spine;
 				this.sortBone(slotBone);
 			else {
 				var bones = this.bones;
-				for (var i = 0; i < pathBones.length; i++) {
-					var boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				var i = 0;
+				while (i < pathBones.length) {
+					var boneCount = pathBones[i++];
+					for (var n = i + boneCount; i < n; i++) {
+						var boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		};

File diff suppressed because it is too large
+ 0 - 0
spine-ts/build/spine-canvas.js.map


+ 7 - 3
spine-ts/build/spine-core.js

@@ -2698,9 +2698,13 @@ var spine;
 				this.sortBone(slotBone);
 			else {
 				var bones = this.bones;
-				for (var i = 0; i < pathBones.length; i++) {
-					var boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				var i = 0;
+				while (i < pathBones.length) {
+					var boneCount = pathBones[i++];
+					for (var n = i + boneCount; i < n; i++) {
+						var boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		};

File diff suppressed because it is too large
+ 0 - 0
spine-ts/build/spine-core.js.map


+ 7 - 3
spine-ts/build/spine-threejs.js

@@ -2698,9 +2698,13 @@ var spine;
 				this.sortBone(slotBone);
 			else {
 				var bones = this.bones;
-				for (var i = 0; i < pathBones.length; i++) {
-					var boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				var i = 0;
+				while (i < pathBones.length) {
+					var boneCount = pathBones[i++];
+					for (var n = i + boneCount; i < n; i++) {
+						var boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		};

File diff suppressed because it is too large
+ 0 - 0
spine-ts/build/spine-threejs.js.map


+ 7 - 3
spine-ts/build/spine-webgl.js

@@ -2698,9 +2698,13 @@ var spine;
 				this.sortBone(slotBone);
 			else {
 				var bones = this.bones;
-				for (var i = 0; i < pathBones.length; i++) {
-					var boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				var i = 0;
+				while (i < pathBones.length) {
+					var boneCount = pathBones[i++];
+					for (var n = i + boneCount; i < n; i++) {
+						var boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		};

File diff suppressed because it is too large
+ 0 - 0
spine-ts/build/spine-webgl.js.map


+ 7 - 3
spine-ts/build/spine-widget.js

@@ -2698,9 +2698,13 @@ var spine;
 				this.sortBone(slotBone);
 			else {
 				var bones = this.bones;
-				for (var i = 0; i < pathBones.length; i++) {
-					var boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				var i = 0;
+				while (i < pathBones.length) {
+					var boneCount = pathBones[i++];
+					for (var n = i + boneCount; i < n; i++) {
+						var boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		};

File diff suppressed because it is too large
+ 0 - 0
spine-ts/build/spine-widget.js.map


+ 7 - 3
spine-ts/core/src/Skeleton.ts

@@ -209,9 +209,13 @@ module spine {
 				this.sortBone(slotBone);
 			else {
 				let bones = this.bones;
-				for (let i = 0; i < pathBones.length; i++) {
-					let boneIndex = pathBones[i];
-					this.sortBone(bones[boneIndex]);
+				let i = 0;
+				while (i < pathBones.length) {
+					let boneCount = pathBones[i++]; 
+					for (let n = i + boneCount; i < n; i++) {
+						let boneIndex = pathBones[i];
+						this.sortBone(bones[boneIndex]);
+					}
 				}
 			}
 		}

+ 0 - 4
spine-ts/webgl/example/index.html

@@ -75,9 +75,6 @@ function init () {
 	assetManager.loadText("assets/stretchyman.json");
 	assetManager.loadText("assets/stretchyman.atlas");
 	assetManager.loadTexture("assets/stretchyman.png");
-	assetManager.loadText("assets/test.json")
-	assetManager.loadText("assets/test.atlas")
-	assetManager.loadTexture("assets/test.png")
 	requestAnimationFrame(load);
 }
 
@@ -85,7 +82,6 @@ function load () {
 	// Wait until the AssetManager has loaded all resources, then load the skeletons.
 	if (assetManager.isLoadingComplete()) {
 		skeletons["raptor"] = loadSkeleton("raptor", "walk", false);
-		skeletons["test"] = loadSkeleton("test", "animation", false);
 		skeletons["spineboy"] = loadSkeleton("spineboy", "run", false);		
 		skeletons["tank"] = loadSkeleton("tank", "drive", false);
 		skeletons["goblins"] = loadSkeleton("goblins-mesh", "walk", false, "goblin");

Some files were not shown because too many files changed in this diff