private void plist(Player sender, ChatEventArgs eventargs) { sender.OnPlayerChat.Normal -= new ChatEvent.EventHandler(plist); if (eventargs.Message.ToLower() != "yes" || sender.ExtraData.GetIfExist <object, object>("LastCmd") != "mapinfo" && sender.ExtraData.GetIfExist("LastCmd") != "mi") { return; } eventargs.Cancel(); Level l = (Level)sender.GetDatapass("mapinfoLevel"); List <Player> templist = Server.Players.FindAll((p) => { return(p.Level == l); }); if (templist.Count == 0) { sender.SendMessage("No one is on " + l.Name + "."); return; } if (templist.Count == 1 && sender.Level == l) { sender.SendMessage("No one besides you is on " + l.Name + "."); return; } templist.ForEach((p) => { sender.SendMessage(String.Concat(p.Color, p.Username)); }); }
private void plist(Player sender, ChatEventArgs eventargs) { sender.OnPlayerChat.Normal -= new ChatEvent.EventHandler(plist); if (eventargs.Message.ToLower() != "yes" || sender.ExtraData.GetIfExist<object, object>("LastCmd") != "mapinfo" && sender.ExtraData.GetIfExist("LastCmd") != "mi") return; eventargs.Cancel(); Level l = (Level)sender.GetDatapass("mapinfoLevel"); List<Player> templist = Server.Players.FindAll((p) => { return p.Level == l; }); if (templist.Count == 0) { sender.SendMessage("No one is on " + l.Name + "."); return; } if (templist.Count == 1 && sender.Level == l) { sender.SendMessage("No one besides you is on " + l.Name + "."); return; } templist.ForEach((p) => { sender.SendMessage(String.Concat(p.Color, p.Username)); }); }
void OnAllPlayersChat_Normal(Player p, ChatEventArgs args) { #region Spam Check if (hasPlayerInfo(p)) { PlayerInfo pi = getPlayerInfo(p); if (pi.LastMessage.ToLower() == args.Message.ToLower()) { pi.offense++; } else { pi.LastMessage = args.Message; pi.offense--; } } #endregion #region Caps Check int rage = 0; bool skip = false; goagain: //EWW LABELS string newmessage = ""; string message = args.Message; for (int i = 0; i < message.Length; i++) { char c = message[i]; if (caps.IndexOf(c) != -1) { rage++; } else { rage--; } if (rage >= 5 && caps.IndexOf(c) != -1) { c = nocaps[caps.IndexOf(c)]; } newmessage += c; } if (rage == message.Length) { skip = true; p.SendMessage("Lay off the caps :/"); goto goagain; } else if (rage >= 7 && !skip) { p.SendMessage("Lay off the caps :/"); if (!hasPlayerInfo(p)) { PlayerInfo pi = new PlayerInfo(p); pi.LastMessageSent = DateTime.Now; pi.LastMessage = message; players.Add(pi); } else { PlayerInfo pi = getPlayerInfo(p); pi.offense++; } } args.Message = newmessage; #endregion if (hasPlayerInfo(p) && getPlayerInfo(p).kicked) { args.Cancel(); } }
public void OnChat(Player Player, ChatEventArgs args) { ExtraPlayerData P = FindPlayer(Player); if (Voting && IsNotImportant(args.Message)) { int l = args.Message.Length; if (l > 3) l = 3; else if (l <= 0) l = 1; Player.ExtraData.CreateIfNotExist("Voted", false); var didVote = (bool)Player.ExtraData.GetIfExist("Voted"); if (args.Message.ToLower().Equals(LevelChoices[0].Substring(0, l).ToString().ToLower()) && !didVote) { Player.SendMessage("[Zombie Survival]: " + Colors.red + "Thank you for voting for " + LevelChoices[0]); LevelVotes.x += 1; Player.ExtraData["Voted"] = true; args.Cancel(); } else if (args.Message.ToLower().Equals(LevelChoices[1].Substring(0, l).ToString().ToLower())) { Player.SendMessage("[Zombie Survival]: " + Colors.red + "Thank you for voting for " + LevelChoices[1]); LevelVotes.y += 1; Player.ExtraData["Voted"] = true; args.Cancel(); } else if (args.Message.ToLower().Equals("random".Substring(0, l).ToString().ToLower())) { Player.SendMessage("[Zombie Survival]: " + Colors.red + "Thank you for voting for random"); LevelVotes.z += 1; Player.ExtraData["Voted"] = true; args.Cancel(); } else if (!(bool)Player.ExtraData.GetIfExist("Voiced") && !P.Referee) { Player.SendMessage("[Zombie Survival]: " + Colors.red + "You may not speak while voting, sorry :("); args.Cancel(); } else { args.Message = ZombieHelper.CleanString(Player, args.Message); if (args.Message == "") { args.Cancel(); return; } return; } } else if (IsNotImportant(args.Message)) { var voiceString = (string)Player.ExtraData.GetIfExist("VoiceString") ?? ""; var mColor = Player.Group.Color; var mPrefix = (string)Player.ExtraData.GetIfExist("Title") ?? ""; string msg = voiceString + mPrefix + mColor + Player.Username + ": &f" + args.Message; if (P.Referee) { msg = Colors.gold + "[Referee] " + msg; } else if (P.Infected) { msg = Colors.red + "[Infected] " + msg; } else { msg = Colors.green + "[Survivor] " + msg; } string l = ZombieHelper.CleanString(Player, msg); if (l == "") { args.Cancel(); return; } Player.UniversalChat(l); Server.IRC.SendMessage(l); args.Cancel(); return; } else { args.Message = ZombieHelper.CleanString(Player, args.Message); if (args.Message == "") { args.Cancel(); return; } return; } }
void OnAllPlayersChat_Normal(Player p, ChatEventArgs args) { #region Spam Check if (hasPlayerInfo(p)) { PlayerInfo pi = getPlayerInfo(p); if (pi.LastMessage.ToLower() == args.Message.ToLower()) pi.offense++; else { pi.LastMessage = args.Message; pi.offense--; } } #endregion #region Caps Check int rage = 0; bool skip = false; goagain: //EWW LABELS string newmessage = ""; string message = args.Message; for (int i = 0; i < message.Length; i++) { char c = message[i]; if (caps.IndexOf(c) != -1) rage++; else rage--; if (rage >= 5 && caps.IndexOf(c) != -1) c = nocaps[caps.IndexOf(c)]; newmessage += c; } if (rage == message.Length) { skip = true; p.SendMessage("Lay off the caps :/"); goto goagain; } else if (rage >= 7 && !skip) { p.SendMessage("Lay off the caps :/"); if (!hasPlayerInfo(p)) { PlayerInfo pi = new PlayerInfo(p); pi.LastMessageSent = DateTime.Now; pi.LastMessage = message; players.Add(pi); } else { PlayerInfo pi = getPlayerInfo(p); pi.offense++; } } args.Message = newmessage; #endregion if (hasPlayerInfo(p) && getPlayerInfo(p).kicked) args.Cancel(); }