Selaa lähdekoodia

Aim and shoot buttons for hoverboard demo.

Nathan Sweet 8 vuotta sitten
vanhempi
commit
0033209e87
2 muutettua tiedostoa jossa 26 lisäystä ja 5 poistoa
  1. 3 1
      spine-ts/webgl/demos/hoverboard.html
  2. 23 4
      spine-ts/webgl/demos/hoverboard.js

+ 3 - 1
spine-ts/webgl/demos/hoverboard.html

@@ -10,7 +10,9 @@
 
 
 <center>
 <center>
 <div class="aspect"><div><canvas id="hoverboard-canvas"></canvas></div></div>
 <div class="aspect"><div><canvas id="hoverboard-canvas"></canvas></div></div>
-<input id="hoverboard-drawbones" type="checkbox"></input> Display Bones
+<input id="hoverboard-drawbones" type="checkbox"></input> Display Bones<br>
+<input id="hoverboard-aim" type="checkbox"></input> Aim<br>
+<button id="hoverboard-shoot">Shoot</button>
 </center>
 </center>
 
 
 <script>
 <script>

+ 23 - 4
spine-ts/webgl/demos/hoverboard.js

@@ -9,7 +9,7 @@ var hoverboardDemo = function(loadingComplete, bgColor) {
 	var timeKeeper, loadingScreen;
 	var timeKeeper, loadingScreen;
 	var target = null;
 	var target = null;
 	var hoverTargets = [];
 	var hoverTargets = [];
-	var controlBones = ["hoverboard controller", "hip controller", "board target"];
+	var controlBones = ["hoverboard controller", "hip controller", "board target", "crosshair"];
 	var coords = new spine.webgl.Vector3(), temp = new spine.webgl.Vector3(), temp2 = new spine.Vector2(), temp3 = new spine.webgl.Vector3();
 	var coords = new spine.webgl.Vector3(), temp = new spine.webgl.Vector3(), temp2 = new spine.Vector2(), temp3 = new spine.webgl.Vector3();
 	var isPlaying = true;
 	var isPlaying = true;
 
 
@@ -74,7 +74,7 @@ var hoverboardDemo = function(loadingComplete, bgColor) {
 		}
 		}
 	}
 	}
 
 
-	function setupUI() {
+	function setupUI () {
 		var checkbox = $("#hoverboard-drawbones");
 		var checkbox = $("#hoverboard-drawbones");
 		renderer.skeletonDebugRenderer.drawRegionAttachments = false;
 		renderer.skeletonDebugRenderer.drawRegionAttachments = false;
 		renderer.skeletonDebugRenderer.drawPaths = false;
 		renderer.skeletonDebugRenderer.drawPaths = false;
@@ -83,9 +83,28 @@ var hoverboardDemo = function(loadingComplete, bgColor) {
 			renderer.skeletonDebugRenderer.drawPaths = this.checked;
 			renderer.skeletonDebugRenderer.drawPaths = this.checked;
 			renderer.skeletonDebugRenderer.drawBones = this.checked;
 			renderer.skeletonDebugRenderer.drawBones = this.checked;
 		});
 		});
-	}
 
 
-	function setupInput (){
+		$("#hoverboard-aim").change(function () {
+			if (!this.checked)
+				state.setEmptyAnimation(1, 0.2);
+			else {
+				state.setEmptyAnimation(1, 0);
+				state.addAnimation(1, "aim", true, 0).mixDuration = 0.2;
+			}
+		});
+
+		$("#hoverboard-shoot").click(function () {
+			state.setAnimation(2, "aim", true);
+			state.setAnimation(3, "shoot", false).listener = {
+				complete: function (trackIndex) {
+					state.setEmptyAnimation(2, 0.2);
+					state.clearTrack(3);
+				}
+			};
+		});
+	}
+	
+	function setupInput () {
 		input.addListener({
 		input.addListener({
 			down: function(x, y) {
 			down: function(x, y) {
 				isPlaying = false;
 				isPlaying = false;