Browse Source

[ts] Fixed bug in IkConstraint

badlogic 9 years ago
parent
commit
9197f6f0f7

+ 2 - 0
spine-ts/build/spine-all.js

@@ -2164,6 +2164,8 @@ var spine;
 			}
 			}
 		};
 		};
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
+			if (!bone.appliedValid)
+				bone.updateAppliedTransform();
 			var p = bone.parent;
 			var p = bone.parent;
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var x = targetX - p.worldX, y = targetY - p.worldY;
 			var x = targetX - p.worldX, y = targetY - p.worldY;

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


+ 2 - 0
spine-ts/build/spine-canvas.js

@@ -2164,6 +2164,8 @@ var spine;
 			}
 			}
 		};
 		};
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
+			if (!bone.appliedValid)
+				bone.updateAppliedTransform();
 			var p = bone.parent;
 			var p = bone.parent;
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var x = targetX - p.worldX, y = targetY - p.worldY;
 			var x = targetX - p.worldX, y = targetY - p.worldY;

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


+ 2 - 0
spine-ts/build/spine-core.js

@@ -1921,6 +1921,8 @@ var spine;
 			}
 			}
 		};
 		};
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
+			if (!bone.appliedValid)
+				bone.updateAppliedTransform();
 			var p = bone.parent;
 			var p = bone.parent;
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var x = targetX - p.worldX, y = targetY - p.worldY;
 			var x = targetX - p.worldX, y = targetY - p.worldY;

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


+ 2 - 0
spine-ts/build/spine-threejs.js

@@ -1921,6 +1921,8 @@ var spine;
 			}
 			}
 		};
 		};
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
+			if (!bone.appliedValid)
+				bone.updateAppliedTransform();
 			var p = bone.parent;
 			var p = bone.parent;
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var x = targetX - p.worldX, y = targetY - p.worldY;
 			var x = targetX - p.worldX, y = targetY - p.worldY;

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


+ 2 - 0
spine-ts/build/spine-webgl.js

@@ -1921,6 +1921,8 @@ var spine;
 			}
 			}
 		};
 		};
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
+			if (!bone.appliedValid)
+				bone.updateAppliedTransform();
 			var p = bone.parent;
 			var p = bone.parent;
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var x = targetX - p.worldX, y = targetY - p.worldY;
 			var x = targetX - p.worldX, y = targetY - p.worldY;

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


+ 2 - 0
spine-ts/build/spine-widget.js

@@ -1921,6 +1921,8 @@ var spine;
 			}
 			}
 		};
 		};
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
 		IkConstraint.prototype.apply1 = function (bone, targetX, targetY, alpha) {
+			if (!bone.appliedValid)
+				bone.updateAppliedTransform();
 			var p = bone.parent;
 			var p = bone.parent;
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var id = 1 / (p.a * p.d - p.b * p.c);
 			var x = targetX - p.worldX, y = targetY - p.worldY;
 			var x = targetX - p.worldX, y = targetY - p.worldY;

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


+ 1 - 0
spine-ts/core/src/IkConstraint.ts

@@ -73,6 +73,7 @@ module spine {
 		/** Adjusts the bone rotation so the tip is as close to the target position as possible. The target is specified in the world
 		/** Adjusts the bone rotation so the tip is as close to the target position as possible. The target is specified in the world
 		 * coordinate system. */
 		 * coordinate system. */
 		apply1 (bone: Bone, targetX: number, targetY: number, alpha: number) {
 		apply1 (bone: Bone, targetX: number, targetY: number, alpha: number) {
+			if (!bone.appliedValid) bone.updateAppliedTransform();
 			let p = bone.parent;
 			let p = bone.parent;
 			let id = 1 / (p.a * p.d - p.b * p.c);
 			let id = 1 / (p.a * p.d - p.b * p.c);
 			let x = targetX - p.worldX, y = targetY - p.worldY;
 			let x = targetX - p.worldX, y = targetY - p.worldY;

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