private static void HandleTransformOutlineAlphaTag(AssTagContext context, DateTime startTime, DateTime endTime, float accel, string arg) { if (!context.Style.HasOutline) { return; } if (context.Style.OutlineIsBox) { BackColorAnimation anim = FetchColorAnimation(context, startTime, endTime, s => s.BackColor, (s, e, c) => new BackColorAnimation(s, c, e, c, accel)); anim.EndColor = ColorUtil.ChangeColorAlpha(anim.EndColor, 255 - (ParseHex(arg) & 255)); } else { HandleTransformShadowAlphaTag(context, ShadowType.Glow, startTime, endTime, accel, arg); } }
private static void HandleTransformOutlineColorTag(AssTagContext context, DateTime startTime, DateTime endTime, int accel, string arg) { if (!context.Style.HasOutline) { return; } if (context.Style.OutlineIsBox) { BackColorAnimation anim = FetchColorAnimation(context, startTime, endTime, s => s.BackColor, (s, e, c) => new BackColorAnimation(s, c, e, c)); anim.EndColor = ParseColor(arg, anim.EndColor.A); } else { HandleTransformShadowColorTag(context, ShadowType.Glow, startTime, endTime, accel, arg); } }