Update: CC - Bacon - Entity Loaded (2xswm1bwq8.js) 248 bytes modified

beta.r3js.org
-=yb4f310 2018-02-18 17:54:19 +01:00
parent 501feb846e
commit ef40661661
1 changed files with 22 additions and 14 deletions

View File

@ -43,7 +43,7 @@ this.scoreTexture = GameLib.EntityManager.Instance.findComponentById('kva68t4dm8
* Animations * Animations
*/ */
this.animation = GameLib.EntityManager.Instance.findComponentById('tnlwgvf12x'); this.animation = GameLib.EntityManager.Instance.findComponentById('tnlwgvf12x');
this.animationSystem = GameLib.EntityManager.Instance.queryComponents(GameLib.Component.SYSTEM_ANIMATION)[0]; //this.animationSystem = GameLib.EntityManager.Instance.queryComponents(GameLib.Component.SYSTEM_ANIMATION)[0];
/** /**
* Lights * Lights
@ -822,9 +822,10 @@ GameLib.CustomCode.prototype.rotateBlock = function (clockwise) {
var targetRotation = this.block.center.rotation.z + Math.PI / 2; var targetRotation = this.block.center.rotation.z + Math.PI / 2;
} }
this.animationSystem.stop(); var rotationBackup = {
instance : this.block.center.instance.rotation.z,
var originalRotation = this.block.center.rotation.z; object : this.block.center.rotation.z
}
this.block.center.rotation.z = targetRotation; this.block.center.rotation.z = targetRotation;
this.block.center.updateInstance('rotation'); this.block.center.updateInstance('rotation');
@ -833,20 +834,27 @@ GameLib.CustomCode.prototype.rotateBlock = function (clockwise) {
if (boundaries.collision) { if (boundaries.collision) {
this.block.center.rotation.z = originalRotation; /**
this.block.center.updateInstance('rotation'); * There's a collision, restore the instance rotation
*/
this.block.center.instance.rotation.z = rotationBackup.instance;
this.animationSystem.start(); /**
* And also the object rotation
*/
this.block.center.rotation.z = rotationBackup.object;
} else { } else {
this.block.center.rotation.z = originalRotation; /**
* Restore our instance rotation
this.animationSystem.start(); */
this.block.center.instance.rotation.z = rotationBackup.instance;
/**
* Update our object to the new rotation
*/
this.block.center.rotation.z = targetRotation; this.block.center.rotation.z = targetRotation;
this.block.center.updateInstance('rotation');
} }
}.bind(this); }.bind(this);
@ -1307,7 +1315,7 @@ GameLib.CustomCode.prototype.spawnBigBlock = function () {
GameLib.CustomCode.prototype.getNextBlock = function () { GameLib.CustomCode.prototype.getNextBlock = function () {
this.animationSystem.stop(); // this.animationSystem.stop();
this.block = this.spawnBigBlock(); this.block = this.spawnBigBlock();
@ -1318,7 +1326,7 @@ GameLib.CustomCode.prototype.getNextBlock = function () {
} }
); );
this.animationSystem.start(); // this.animationSystem.start();
this.animation.meshes.push(this.block.center); this.animation.meshes.push(this.block.center);