mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2025-12-21 09:46:02 +08:00
Added die button.
This commit is contained in:
parent
97bedf22bb
commit
bcea86ab95
@ -11,7 +11,8 @@
|
|||||||
<center>
|
<center>
|
||||||
<div class="aspect"><div><canvas id="transitions-canvas"></canvas></div></div>
|
<div class="aspect"><div><canvas id="transitions-canvas"></canvas></div></div>
|
||||||
Time multiplier
|
Time multiplier
|
||||||
<div id="transitions-timeslider" class="slider filled"></div>
|
<div id="transitions-timeslider" class="slider filled"></div><br>
|
||||||
|
<button id="transitions-die">Die</button>
|
||||||
</center>
|
</center>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@ -45,9 +45,9 @@ var transitionsDemo = function(loadingComplete, bgColor) {
|
|||||||
skeletonNoMix = new spine.Skeleton(skeleton.data);
|
skeletonNoMix = new spine.Skeleton(skeleton.data);
|
||||||
state = createState(0.25);
|
state = createState(0.25);
|
||||||
state.multipleMixing = true;
|
state.multipleMixing = true;
|
||||||
setAnimations(state, 0, true);
|
setAnimations(state, 0, 0);
|
||||||
stateNoMix = createState(0);
|
stateNoMix = createState(0);
|
||||||
setAnimations(stateNoMix, -0.25, true);
|
setAnimations(stateNoMix, -0.25, 0);
|
||||||
|
|
||||||
state.apply(skeleton);
|
state.apply(skeleton);
|
||||||
skeleton.updateWorldTransform();
|
skeleton.updateWorldTransform();
|
||||||
@ -64,33 +64,36 @@ var transitionsDemo = function(loadingComplete, bgColor) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function setupInput() {
|
function setupInput() {
|
||||||
input.addListener({
|
$("#transitions-die").click(function () {
|
||||||
down: function(x, y) { },
|
var entry = state.setAnimation(0, "death", false);
|
||||||
up: function(x, y) { },
|
setAnimations(state, 0, true, 0);
|
||||||
moved: function(x, y) { },
|
entry.next.mixDuration = 0.1;
|
||||||
dragged: function(x, y) { }
|
|
||||||
|
var entry = stateNoMix.setAnimation(0, "death", false);
|
||||||
|
setAnimations(stateNoMix, -0.25, -0.25 + -0.1);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function createState(mix) {
|
function createState (mix) {
|
||||||
var stateData = new spine.AnimationStateData(skeleton.data);
|
var stateData = new spine.AnimationStateData(skeleton.data);
|
||||||
stateData.defaultMix = mix;
|
stateData.defaultMix = mix;
|
||||||
var state = new spine.AnimationState(stateData);
|
var state = new spine.AnimationState(stateData);
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|
||||||
function setAnimations(state, mix, first) {
|
function setAnimations (state, delay, first) {
|
||||||
state.addAnimation(0, "idle", true, first ? 0 : 0.6);
|
state.addAnimation(0, "idle", true, first);
|
||||||
state.addAnimation(0, "walk", true, 0.6);
|
state.addAnimation(0, "walk", true, 0.6);
|
||||||
state.addAnimation(0, "run", true, 1);
|
state.addAnimation(0, "jump", false, 1);
|
||||||
|
state.addAnimation(0, "run", true, delay);
|
||||||
state.addAnimation(0, "walk", true, 1.2);
|
state.addAnimation(0, "walk", true, 1.2);
|
||||||
state.addAnimation(0, "run", true, 0.5);
|
state.addAnimation(0, "run", true, 0.5);
|
||||||
state.addAnimation(0, "jump", false, 1);
|
state.addAnimation(0, "jump", false, 1);
|
||||||
state.addAnimation(0, "run", true, mix);
|
state.addAnimation(0, "run", true, delay);
|
||||||
state.addAnimation(0, "jump", true, 0.5);
|
state.addAnimation(0, "jump", true, 0.5);
|
||||||
state.addAnimation(0, "walk", true, mix).listener = {
|
state.addAnimation(0, "walk", true, delay).listener = {
|
||||||
start: function (trackIndex) {
|
start: function (trackIndex) {
|
||||||
setAnimations(state, mix, false);
|
setAnimations(state, delay, 0.6);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user