diff --git a/Assets/Cryville/Crtr/InputProxy.cs b/Assets/Cryville/Crtr/InputProxy.cs index 8c489b5..b4aabae 100644 --- a/Assets/Cryville/Crtr/InputProxy.cs +++ b/Assets/Cryville/Crtr/InputProxy.cs @@ -339,6 +339,18 @@ namespace Cryville.Crtr { if (vec.Key.Source.Source.Handler != handler) continue; InputProxyEntry proxy; if (!_sproxies.TryGetValue(vec.Key.Source.Source, out proxy)) continue; + + float ft, tt = (float)GetSyncedTime(time, handler); + if (!_vect.TryGetValue(vec.Key.Source, out ft)) ft = tt; + if (ft < tt) { + _etor.ContextCascadeInsert(); + _vecsrcs[0].Set(vec.Value); + _etor.ContextCascadeUpdate(_var_input_vec, _vecsrcs[0]); + OnInput(vec.Key.Source, proxy.Target, ft, tt, false); + _etor.ContextCascadeDiscard(); + _vect[vec.Key.Source] = tt; + } + Cleanup(proxy.Target, (float)GetSyncedTime(time, handler)); } }