/// <summary> /// Handles a flag request from a client /// </summary> static public void Handle_CS_PlayerFlag(CS_PlayerFlag pkt, Player player) { //Allow the player's arena to handle it if (player._arena == null) { Log.write(TLog.Error, "Player {0} sent update packet with no arena.", player); return; } if (player.IsSpectator) { Log.write(TLog.Warning, "Player {0} attempted to activate a flag from spec.", player); return; } //Find the associated flag LioInfo.Flag flag = player._server._assets.getLioByID(pkt.flagID) as LioInfo.Flag; //If it doesn't exist, nevermind if (flag == null) { Log.write(TLog.Warning, "Player {0} attempted to use flag which doesn't exist.", player); } else { player._arena.handleEvent(delegate(Arena arena) { player._arena.handlePlayerFlag(player, pkt.bPickup, pkt.bSuccess, flag); } ); } }
public bool playerFlagAction(Player player, bool bPickup, bool bInPlace, LioInfo.Flag flag) { return(true); }
/// <summary> /// Handles a player's flag request /// </summary> public virtual void handlePlayerFlag(Player from, bool bPickup, bool bInPlace, LioInfo.Flag flag) { }