private void OnFlagResult(FlagEventArgs e) { if (FlagResult != null) { FlagResult(this, e); } }
/// <summary> /// Event handler responds to Read/Not Ready events from the webdata conmt /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Webdata_Ready(object sender, FlagEventArgs e) { switch (e.Flag) { case true: if (!webdata.Connected) { return; } textBoxWebDataStatus.Text = "READY"; textBoxWebDataStatus.BackColor = Color.Green; initializeToolStripMenuItem.Enabled = false; break; case false: if (webdata.Connected) { return; } textBoxWebDataStatus.Text = "NOT READY"; textBoxWebDataStatus.BackColor = Color.Red; initializeToolStripMenuItem.Enabled = true; break; } }
public bool GrantFlag(ServerPlayer player, FlagInstance flag) { if (flag.Owner != null || player.Info.CariedFlag != null) { return(false); } OnGrantFlag?.Invoke(player, flag); FlagEventArgs args = new FlagEventArgs(); args.Player = player; args.Flag = flag; FlagPreGrab?.Invoke(this, args); if (flag.Status == FlagStatuses.FlagNoExist) { return(false); } lock (ActiveFlags) { if (!args.Allow || flag.Owner != null) { return(false); } lock (WorldFlags) WorldFlags.Remove(flag.FlagID); lock (CarriedFlags) CarriedFlags.Add(flag.FlagID, flag); flag.Owner = player; flag.Status = FlagStatuses.FlagOnTank; flag.OwnerID = player.PlayerID; } FlagGrabbed?.Invoke(this, flag); player.Info.CariedFlag = flag; MsgGrabFlag grabMessage = new MsgGrabFlag(); grabMessage.PlayerID = player.PlayerID; grabMessage.FlagData = flag; Logger.Log2("Player " + player.Callsign + " granted flag " + flag.FlagID.ToString() + " " + flag.ToString()); Players.SendToAll(grabMessage, false); return(true); }
void Service_FlagResult(object sender, FlagEventArgs e) { try { View.Invoke(new ThreadStart(delegate() { string message = null; if (e.Success) { message = "This place was flagged."; } else { message = "Unable to flag this place."; } MessageBox.Show(message, "MySquare", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1); })); } catch (ObjectDisposedException) { } }