Tokenize ruleset keys. Remove MotionName.

This commit is contained in:
2022-11-09 14:01:27 +08:00
parent 55efc7a428
commit c33186086c
13 changed files with 153 additions and 112 deletions

View File

@@ -91,28 +91,28 @@ namespace Cryville.Crtr {
if (ev == null) { }
else if (ev.Unstamped == null) { }
else if (ev.Unstamped is Chart.Motion) {
var tev = (Chart.Motion)ev.Unstamped;
if (tev.Name.MainName != "judge") return;
phMotions.Add(tev, (Vec1)s.GetRawValue<Vec1>(tev.Name).Clone());
/*var tev = (Chart.Motion)ev.Unstamped;
if (tev.Name != "judge") return;
phMotions.Add(tev, (Vec1)s.GetRawValue<Vec1>(tev.Name).Clone());*/
}
else if (ev.Unstamped is InstantEvent) {
var oev = ((InstantEvent)ev.Unstamped).Original;
/*var oev = ((InstantEvent)ev.Unstamped).Original;
if (oev is Chart.Motion) {
var tev = (Chart.Motion)oev;
if (tev.Name.MainName != "judge") return;
if (tev.Name != "judge") return;
var v0 = phMotions[tev];
var v1 = s.GetRawValue<Vec1>(tev.Name);
// var etor = new Evaluator();
for (var vi = Mathf.Ceil(v0.Value); vi < v1.Value; vi++) {
var v = new Vec1(vi);
var t = MotionLerper.Delerp(v, ev.Time, v1, ev.Origin.Time, v0, tev.transition, tev.rate);
/*CompiledRuleset.PatchJudge(
CompiledRuleset.PatchJudge(
Event, ChartPlayer.cruleset.primary_judges[tev.Name.SubName],
t, etor, patchedJudgeEvents
);*/
);
}
phMotions.Remove(tev);
}
}*/
}
}
}
@@ -137,12 +137,12 @@ namespace Cryville.Crtr {
public override void MotionUpdate(byte ct, Chart.Motion ev) {
base.MotionUpdate(ct, ev);
if (ct == 0) {
if (ev.Name.MainName == "judge") {
/*if (ev.Name == "judge") {
if (invalidated) return;
if (ev.Name.SubName == null)
if (ev.Name == null)
throw new InvalidOperationException();
// judge.IssueImmediate(this, ev.Name.SubName, GetFramePoint(cs.Parent, cs.Track));
}
judge.IssueImmediate(this, ev.Name.SubName, GetFramePoint(cs.Parent, cs.Track));
}*/
}
else if (ct == 16) {
/*var etor = new EvalImpl();