public override void Use(Player p, string message, CommandData data) { if (message.Length == 0) { if (!hooked) // not thread-safe but meh { OnSentMapEvent.Register(HandleOnSentMap, Priority.High); OnGettingMotdEvent.Register(HandleGettingMotd, Priority.High); hooked = true; } if (LevelInfo.IsRealmOwner(p.name, p.level.MapName) || CheckExtraPerm(p, data, 1)) { EnableHacksBypass(p); } else { p.Message("&cYou can only bypass hacks on your own realms."); } } else if (message.CaselessEq("stop")) { DisableHacksBypass(p); } else { Help(p); } }
protected override void UnhookEventHandlers() { OnPlayerMoveEvent.Unregister(HandlePlayerMove); OnPlayerSpawningEvent.Unregister(HandlePlayerSpawning); OnJoinedLevelEvent.Unregister(HandleOnJoinedLevel); OnGettingMotdEvent.Unregister(HandleGettingMotd); base.UnhookEventHandlers(); }
protected override void HookEventHandlers() { OnPlayerMoveEvent.Register(HandlePlayerMove, Priority.High); OnPlayerSpawningEvent.Register(HandlePlayerSpawning, Priority.High); OnJoinedLevelEvent.Register(HandleOnJoinedLevel, Priority.High); OnGettingMotdEvent.Register(HandleGettingMotd, Priority.High); base.HookEventHandlers(); }
public string GetMotd() { Zone zone = ZoneIn; string motd = zone == null ? "ignore" : zone.Config.MOTD; // fallback to level MOTD, then rank MOTD, then server MOTD if (motd == "ignore") { motd = level.Config.MOTD; } if (motd == "ignore") { motd = String.IsNullOrEmpty(group.MOTD) ? Server.Config.MOTD : group.MOTD; } OnGettingMotdEvent.Call(this, ref motd); return(motd); }
public override void Use(Player p, string message, CommandData data) { if (!hooked) // not thread-safe but meh { OnSentMapEvent.Register(HandleOnSentMap, Priority.High); OnGettingMotdEvent.Register(HandleGettingMotd, Priority.High); hooked = true; } if (LevelInfo.IsRealmOwner(p.name, p.level.MapName) || CheckExtraPerm(p, data, 1)) { p.Extras[ext_allowed_key] = true; p.SendMapMotd(); p.Message("&aYou are now bypassing hacks restrictions on this map"); } else { p.Message("&cYou can only bypass hacks on your own realms."); } }
public override void Unload(bool shutdown) { OnGettingMotdEvent.Unregister(HandleGettingMOTD); Command.Unregister(Command.Find("Crouch")); }
public override void Load(bool startup) { OnGettingMotdEvent.Register(HandleGettingMOTD, Priority.Low); Command.Register(new CmdCrouch()); }