Add effect emitting stub.

This commit is contained in:
2023-02-15 18:13:04 +08:00
parent eb6dafbd60
commit e7ce0985fb
2 changed files with 20 additions and 0 deletions

View File

@@ -70,6 +70,12 @@ namespace Cryville.Crtr {
Name = IdentifierManager.SharedInstance.Request(k[0])
};
}
else if (a.Contains("emit")) {
if (k.Count != 1) throw new FormatException("Invalid effect name");
return new SkinPropertyKey.EmitEffect {
Name = IdentifierManager.SharedInstance.Request(k[0])
};
}
switch (k.Count) {
case 1:
if (compKeyFlag) return new SkinPropertyKey.CreateComponent {

View File

@@ -97,5 +97,19 @@ namespace Cryville.Crtr {
state.Handler.PushAnchorEvent(_time, Name);
}
}
public class EmitEffect : SkinPropertyKey {
public int Name { get; set; }
public EmitEffect() { }
public override string ToString() {
return string.Format("@emit {0}", IdentifierManager.SharedInstance.Retrieve(Name));
}
public override bool IsValueRequired { get { return true; } }
public override void ExecuteStatic(ContainerState state, RuntimeSkinContext ctx, PdtExpression exp) {
// TODO
}
public override void ExecuteDynamic(ContainerState state, RuntimeSkinContext ctx, PdtExpression exp) {
// TODO
}
}
}
}