public static bool OnNoonWorkEnableCheck(out bool result, int workID, Maid maid) { WorkEventArgs args = new WorkEventArgs { Tag = MaidChangeType.NoonWorkId, CallerMaid = maid, CheckCalledTarget = false, ForceEnabled = false, ID = workID }; CheckWorkEnabled?.Invoke(null, args); result = args.ForceEnabled; return(args.ForceEnabled); }
private void OnWorkEnabledCheck(object sender, WorkEventArgs args) { if (args.CallerMaid == null) return; if (!IsMaidLoaded(args.CallerMaid)) return; switch (args.Tag) { case MaidChangeType.NoonWorkId: args.ForceEnabled = GetMaidInfo(args.CallerMaid).IsNoonWorkForceEnabled(args.ID); break; case MaidChangeType.NightWorkId: args.ForceEnabled = GetMaidInfo(args.CallerMaid).IsNightWorkForceEnabled(args.ID); break; } Debugger.WriteLine( LogLevel.Info, $"Attempting to check work enabled: ID={args.ID}, Force={args.ForceEnabled}"); }
public static bool OnNoonWorkEnableCheck(out bool result, int workID, Maid maid) { WorkEventArgs args = new WorkEventArgs { Tag = MaidChangeType.NoonWorkId, CallerMaid = maid, CheckCalledTarget = false, ForceEnabled = false, ID = workID }; CheckWorkEnabled?.Invoke(args); result = args.ForceEnabled; return args.ForceEnabled; }