private void HandlePlanetWarsMessages(Talker.SpringEventArgs e) { if (!Program.main.config.PlanetWarsEnabled || Program.main.PlanetWars == null) { return; } if (e.Param >= Talker.TO_EVERYONE_LEGACY) { return; } int count; if (!PlanetWarsMessages.TryGetValue(e.Text, out count)) { count = 0; } count++; PlanetWarsMessages[e.Text] = count; if (count != 2) { return; // only send if count matches 2 exactly } if (Program.main.PlanetWars != null) { Program.main.PlanetWars.SpringMessage(e.Text); } }
void talker_SpringEvent(object sender, Talker.SpringEventArgs e) { switch (e.EventType) { case Talker.SpringEventType.PLAYER_JOINED: if (PlayerJoined != null) { PlayerJoined(this, new SpringLogEventArgs(e.PlayerName)); } break; case Talker.SpringEventType.PLAYER_LEFT: if (e.Param == 0) { if (PlayerDisconnected != null) { PlayerDisconnected(this, new SpringLogEventArgs(e.PlayerName)); } else if (PlayerLeft != null) { PlayerLeft(this, new SpringLogEventArgs(e.PlayerName)); } } break; case Talker.SpringEventType.PLAYER_CHAT: if (PlayerSaid != null) { PlayerSaid(this, new SpringLogEventArgs(e.PlayerName, e.Text)); } break; case Talker.SpringEventType.PLAYER_DEFEATED: if (PlayerLost != null) { PlayerLost(this, new SpringLogEventArgs(e.PlayerName)); } break; case Talker.SpringEventType.SERVER_GAMEOVER: // if (GameOver != null) GameOver(this, new SpringLogEventArgs(e.PlayerName)); break; case Talker.SpringEventType.SERVER_QUIT: if (GameOver != null) { GameOver(this, new SpringLogEventArgs(e.PlayerName)); } break; } }
private void talker_SpringEvent(object sender, Talker.SpringEventArgs e) { switch (e.EventType) { case Talker.SpringEventType.PLAYER_JOINED: //Program.main.AutoHost.SayBattle("dbg joined " + e.PlayerName); if (PlayerJoined != null) { PlayerJoined(this, new SpringLogEventArgs(e.PlayerName)); } break; case Talker.SpringEventType.PLAYER_LEFT: //Program.main.AutoHost.SayBattle("dbg left " + e.PlayerName); if (e.Param == 0 && PlayerDisconnected != null) { PlayerDisconnected(this, new SpringLogEventArgs(e.PlayerName)); } if (PlayerLeft != null) { PlayerLeft(this, new SpringLogEventArgs(e.PlayerName)); } break; case Talker.SpringEventType.PLAYER_CHAT: HandlePlanetWarsMessages(e); // only public chat if (PlayerSaid != null && (e.Param == Talker.TO_EVERYONE || e.Param == Talker.TO_EVERYONE_LEGACY)) { PlayerSaid(this, new SpringLogEventArgs(e.PlayerName, e.Text)); } break; case Talker.SpringEventType.PLAYER_DEFEATED: //Program.main.AutoHost.SayBattle("dbg defeated " + e.PlayerName); if (PlayerLost != null) { PlayerLost(this, new SpringLogEventArgs(e.PlayerName)); } break; case Talker.SpringEventType.SERVER_GAMEOVER: //Program.main.AutoHost.SayBattle("dbg gameover " + e.PlayerName); if (GameOver != null) { GameOver(this, new SpringLogEventArgs(e.PlayerName)); } break; case Talker.SpringEventType.PLAYER_READY: //Program.main.AutoHost.SayBattle("dbg ready " + e.PlayerName); if (e.Param == 1) { readyPlayers.Add(e.PlayerName); } break; case Talker.SpringEventType.SERVER_QUIT: //Program.main.AutoHost.SayBattle("dbg quit "); //if (GameOver != null) GameOver(this, new SpringLogEventArgs(e.PlayerName)); break; } }