internal void OnAnnounceTermination(AnnouncingScpTerminationEventArgs ev) { if (!config.Scp.announceTerminationGlobal && !config.Scp.announceTermination[ev.Role.roleId]) { ev.IsAllowed = false; } }
public void OnAnnouncingScpTermination(AnnouncingScpTerminationEventArgs ev) { if (ev.TerminationCause == "UNKNOWN") { ev.IsAllowed = false; } }
private static bool Prefix(Role scp, ref PlayerStats.HitInfo hit, ref string groupId) { var ev = new AnnouncingScpTerminationEventArgs(string.IsNullOrEmpty(hit.Attacker) ? null : API.Features.Player.Get(hit.Attacker), scp, hit, groupId); Map.OnAnnouncingScpTermination(ev); return(ev.IsAllowed); }
private void OnAnnouncingScpTermination(AnnouncingScpTerminationEventArgs ev) { if (ev.Role.roleId == RoleType.Scp106) { string message = $"scp 5 7 5 has been successfully terminated . termination cause {ev.TerminationCause}"; ev.IsAllowed = false; Cassie.Message(message); } }
private void OnAnnouncingScpTermination(AnnouncingScpTerminationEventArgs ev) { string damageType = ev.TerminationCause; if (ev.Killer != null) { damageType = ev.Killer.Team.ToFriendlyString(ev.Killer.ReferenceHub.characterClassManager); } var cassie = Config.GetScpDeathCassie(ev.Role.roleId); if (cassie != null) { ev.IsAllowed = false; var cassieMessage = cassie.Value.Replace("{damagetype}", damageType); Cassie.GlitchyMessage(CassieFormatter.Format(cassieMessage), cassie.GlitchChance, cassie.JamChance); } }
internal void AnnouncingScpTermination(AnnouncingScpTerminationEventArgs ev) { if (Plugin.Instance.Config.AnnouncingScpTermination == "") { return; } string message = Plugin.Instance.Config.AnnouncingScpTermination.Replace("%cause%", ev.TerminationCause.ToString()); message = message.Replace("%role%", ev.Role.ToString()); message = message.Replace("%killer%", ev.Killer.ToString()); if (Plugin.Instance.Config.debug_to_console) { Log.Debug(message: "[ " + Plugin.Instance.Config.map_name + "] " + message); } Plugin.sendWebHook(Plugin.Instance.Config.map_url, message, Plugin.Instance.Config.map_name); }
internal void OnAnnouncingScpTermination(AnnouncingScpTerminationEventArgs ev) { if (scp012death && ev.HitInfo.GetDamageType() == DamageTypes.Bleeding) { ev.IsAllowed = false; if (!string.IsNullOrEmpty(Config.CassieMessage)) { string message = Config.CassieMessage; message = message.Replace("{scp}", $"{RoleToString[ev.Role.roleId]}"); Timing.CallDelayed(0.5f, () => { var scps = Player.Get(Team.SCP); if (scps.Count(scp => scp.Role == RoleType.Scp079) > 0 && scps.Count() == 1) { message += (" . . ALLSECURED . SCP 0 7 9 RECONTAINMENT SEQUENCE COMMENCING . FORCEOVERCHARGE"); } Cassie.GlitchyMessage(message, 0.05f, 0.05f); }); } } }
/// <summary> /// Called before announcing an SCP termination. /// </summary> /// <param name="ev">The <see cref="PlacingDecalEventArgs"/> instance.</param> public static void OnAnnouncingScpTermination(AnnouncingScpTerminationEventArgs ev) => AnnouncingScpTermination.InvokeSafely(ev);