首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JS:如何执行从函数2调用函数2的函数1?

JS:如何执行从函数2调用函数2的函数1?
EN

Stack Overflow用户
提问于 2016-06-23 06:16:47
回答 1查看 45关注 0票数 0

我正在为一个画布游戏制作一个动画系统。每当我想移动一个播放器时,我使用entities[0].moveTo(...)entities[0]是一个对象,moveTo()是它的方法,执行更大的animate()函数。

代码语言:javascript
复制
var moveTo = function(x,y,d){
    if(x!=0) animate(this,'x',this.coords.x+x*tilescale,d,animation_mode);
    if(y!=0) animate(this,'y',this.coords.y+y*tilescale,d,animation_mode);
}
var animate = function(e, prop, val, duration, mode) {
    if(mode){
        var start = new Date().getTime();
        var end = start + duration;
        var current = e["offset"][prop];
        var distance = val - current;
        var step = function() {
            var timestamp = new Date().getTime();
            var progress = Math.min((duration - (end - timestamp)) / duration, 1);
            e["offset"][prop] = current + (distance * progress);
            render();
            if (progress < 1) requestAnimationFrame(step);
            else ## moveTo.onanimationfinished() ##
        };

        return step();
    }
    else{
        return;
    }
};

基本上,我想要两个小变换的“颠簸”动画--前进,然后快速后退。当“前进”部分完成时,应显示“返回”部分。有办法做到这一点吗?

EN

回答 1

Stack Overflow用户

发布于 2016-06-23 07:53:21

您可以创建一个新函数bumb,然后在animate的末尾调用它,但您也可以在animate函数中给出另一个名为bumb的参数,如下所示:

代码语言:javascript
复制
var animate = function(e, prop, val, duration, mode, bump) {
   if(bump){
      // Bump animatio
   }
   else{
      // Move animation
   }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37979159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档