关于#c##的问题:我想知道如何在Unity2D中按下一个键后回到角色三秒前的位置呢

我想知道如何在Unity2D中按下一个键后回到角色三秒前的位置呢?

如果仅仅是是角色(不要求整个场景)到简单,那就是每次更新动画的时候把角色的当前位置延迟3秒发送一次

如果会用Rx.net的一句话就行,不会用也没关系。 反正延迟赋值这种事情,自己写代码你也能实现

rx的例子

//定义部分
            //定义一个观察源
            Subject<DateTime> obSubject = new Subject<DateTime>();
            //把第一观察源延迟3秒发送形成第2个观察源
            var obdelay = obSubject.Delay(TimeSpan.FromSeconds(3));

                //使用部分
                //每次unity更新动画时候,你把新数据发送到第一个观察源里
                
            obdelay.Subscribe(p =>
            {
                //我这里用订阅观察效果,你可以看到,他实际到达这里是延迟了3秒的
                var p1 = p;

            });

            //这里是发送一个数据出去,从反射到上面那个订阅接收,实际被延迟了3秒
            obSubject.OnNext(new DateTime());
        }
        

        //ps:我用了rx.net做例子,不过例子本身不重要,只是说可以转变一下思路,与其费劲查找3秒前,不如让3秒前的延迟3秒发送出去