Remove track property on note event. Attach contextual state on skin evaluation.
This commit is contained in:
@@ -377,14 +377,6 @@ namespace Cryville.Crtr {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Note() {
|
|
||||||
SubmitPropSrc("track", new PropSrc.Float(() => {
|
|
||||||
var i = motions.FirstOrDefault(m => m.RelativeNode == null && m.Name == "track");
|
|
||||||
if (i == null) return ((Vec1)ChartPlayer.motionRegistry["track"].InitValue).Value;
|
|
||||||
else return ((Vec1)i.AbsoluteValue).Value;
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
public override EventList GetEventsOfType(string type) {
|
public override EventList GetEventsOfType(string type) {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case "judges": return new EventList<Judge>(judges);
|
case "judges": return new EventList<Judge>(judges);
|
||||||
|
@@ -29,7 +29,9 @@ namespace Cryville.Crtr {
|
|||||||
else {
|
else {
|
||||||
ChartPlayer.etor.ContextTransform = obj;
|
ChartPlayer.etor.ContextTransform = obj;
|
||||||
ChartPlayer.etor.ContextEvent = context.Container;
|
ChartPlayer.etor.ContextEvent = context.Container;
|
||||||
|
ChartPlayer.etor.ContextState = context;
|
||||||
ChartPlayer.etor.Evaluate(GetPropOp(obj, p.Key), p.Value);
|
ChartPlayer.etor.Evaluate(GetPropOp(obj, p.Key), p.Value);
|
||||||
|
ChartPlayer.etor.ContextState = null;
|
||||||
ChartPlayer.etor.ContextEvent = null;
|
ChartPlayer.etor.ContextEvent = null;
|
||||||
ChartPlayer.etor.ContextTransform = null;
|
ChartPlayer.etor.ContextTransform = null;
|
||||||
}
|
}
|
||||||
@@ -58,7 +60,9 @@ namespace Cryville.Crtr {
|
|||||||
if (p.Value.IsConstant) continue;
|
if (p.Value.IsConstant) continue;
|
||||||
ChartPlayer.etor.ContextTransform = obj;
|
ChartPlayer.etor.ContextTransform = obj;
|
||||||
ChartPlayer.etor.ContextEvent = context.Container;
|
ChartPlayer.etor.ContextEvent = context.Container;
|
||||||
|
ChartPlayer.etor.ContextState = context;
|
||||||
ChartPlayer.etor.Evaluate(GetPropOp(obj, p.Key), p.Value);
|
ChartPlayer.etor.Evaluate(GetPropOp(obj, p.Key), p.Value);
|
||||||
|
ChartPlayer.etor.ContextState = null;
|
||||||
ChartPlayer.etor.ContextEvent = null;
|
ChartPlayer.etor.ContextEvent = null;
|
||||||
ChartPlayer.etor.ContextTransform = null;
|
ChartPlayer.etor.ContextTransform = null;
|
||||||
}
|
}
|
||||||
|
@@ -115,7 +115,9 @@ namespace Cryville.Crtr {
|
|||||||
public override Transform Match(ContainerState h, Transform a, Transform ot = null) {
|
public override Transform Match(ContainerState h, Transform a, Transform ot = null) {
|
||||||
ChartPlayer.etor.ContextTransform = a;
|
ChartPlayer.etor.ContextTransform = a;
|
||||||
ChartPlayer.etor.ContextEvent = h.Container;
|
ChartPlayer.etor.ContextEvent = h.Container;
|
||||||
|
ChartPlayer.etor.ContextState = h;
|
||||||
ChartPlayer.etor.Evaluate(_op, _exp);
|
ChartPlayer.etor.Evaluate(_op, _exp);
|
||||||
|
ChartPlayer.etor.ContextState = null;
|
||||||
ChartPlayer.etor.ContextEvent = null;
|
ChartPlayer.etor.ContextEvent = null;
|
||||||
ChartPlayer.etor.ContextTransform = null;
|
ChartPlayer.etor.ContextTransform = null;
|
||||||
return _flag ? a : null;
|
return _flag ? a : null;
|
||||||
|
Reference in New Issue
Block a user