Ignore:
Timestamp:
Apr 18, 2015, 4:27:57 PM (10 years ago)
Author:
alloc
Message:

Binary improvements

File:
1 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/AllocsCommands/Commands/ListLandProtection.cs

    r224 r230  
    44namespace AllocsFixes.CustomCommands
    55{
    6         public class ListLandProtection : ConsoleCommand
     6        public class ListLandProtection : ConsoleCmdAbstract
    77        {
    8                 public ListLandProtection (ConsoleSdtd cons) : base(cons)
    9                 {
    10                 }
    11 
    12                 public override string Description ()
     8                public override string GetDescription ()
    139                {
    1410                        return "lists all land protection blocks and owners";
    1511                }
    1612
    17                 public override string[] Names ()
     13                public override string[] GetCommands ()
    1814                {
    1915                        return new string[] { "listlandprotection", "llp" };
    2016                }
    2117
    22                 public override void ExecuteRemote (string _sender, string[] _params)
     18                public override void Execute (List<string> _params, CommandSenderInfo _senderInfo)
    2319                {
    2420                        try {
    25                                 if (_params.Length >= 1 && _params [0].ToLower ().Equals ("nearby")) {
    26                                         string[] params2 = new string[_params.Length + 1];
    27                                         for (int i = 0; i < _params.Length; i++)
    28                                                 params2 [i] = _params [i];
    29                                         params2 [_params.Length] = _sender;
    30                                         _params = params2;
     21                                if (_senderInfo.RemoteClientInfo != null) {
     22                                        if (_params.Count >= 1 && _params [0].ToLower ().Equals ("nearby")) {
     23                                                _params.Add (_senderInfo.RemoteClientInfo.playerId);
     24                                        }
    3125                                }
    32                                 Run (_params);
    33                         } catch (Exception e) {
    34                                 Log.Out ("Error in ListLandProtection.ExecuteRemote: " + e);
    35                         }
    36                 }
    3726
    38                 public override void Run (string[] _params)
    39                 {
    40                         try {
    41                                 World w = CommonMappingFunctions.GetGameManager ().World;
    42                                 PersistentPlayerList ppl = CommonMappingFunctions.GetGameManager ().GetPersistentPlayerList ();
     27                                World w = GameManager.Instance.World;
     28                                PersistentPlayerList ppl = GameManager.Instance.GetPersistentPlayerList ();
    4329
    4430                                bool summaryOnly = false;
     
    4834                                int closeToDistance = 32;
    4935
    50                                 if (_params.Length == 1) {
     36                                if (_params.Count == 1) {
    5137                                        long tempLong;
    5238
     
    5642                                                steamIdFilter = _params [0];
    5743                                        } else {
    58                                                 ClientInfo ci = CommonMappingFunctions.GetClientInfoFromNameOrID (_params [0], true);
     44                                                ClientInfo ci = ConsoleHelper.ParseParamIdOrName (_params [0]);
    5945                                                if (ci != null) {
    60                                                         steamIdFilter = CommonMappingFunctions.GetSteamID (ci);
     46                                                        steamIdFilter = ci.playerId;
    6147                                                } else {
    62                                                         m_Console.SendResult ("Player name or entity id \"" + _params [0] + "\" not found.");
     48                                                        SdtdConsole.Instance.Output ("Player name or entity id \"" + _params [0] + "\" not found.");
    6349                                                        return;
    6450                                                }
    6551                                        }
    66                                 } else if (_params.Length >= 2) {
     52                                } else if (_params.Count >= 2) {
    6753                                        if (_params [0].ToLower ().Equals ("nearby")) {
    6854                                                try {
    69                                                         if (_params.Length == 3) {
     55                                                        if (_params.Count == 3) {
    7056                                                                if (!int.TryParse (_params[1], out closeToDistance)) {
    71                                                                         m_Console.SendResult ("Given radius is not an integer!");
     57                                                                        SdtdConsole.Instance.Output ("Given radius is not an integer!");
    7258                                                                }
    7359                                                        }
    74                                                         ClientInfo ci = CommonMappingFunctions.GetClientInfoFromSteamID (_params [_params.Length - 1]);
    75                                                         EntityPlayer ep = CommonMappingFunctions.GetEntityPlayer (ci);
     60                                                        ClientInfo ci = ConsoleHelper.ParseParamSteamIdOnline (_params [_params.Count - 1]);
     61                                                        EntityPlayer ep = w.Players.dict [ci.entityId];
    7662                                                        closeTo = new Vector3i (ep.GetPosition ());
    7763                                                        onlyCloseToPlayer = true;
    7864                                                } catch (Exception e) {
    79                                                         m_Console.SendResult ("Error getting current player's position");
     65                                                        SdtdConsole.Instance.Output ("Error getting current player's position");
    8066                                                        Log.Out ("Error in ListLandProtection.Run: " + e);
    8167                                                }
    8268                                        } else {
    83                                                 m_Console.SendResult ("Illegal parameter list");
     69                                                SdtdConsole.Instance.Output ("Illegal parameter list");
    8470                                                return;
    8571                                        }
     
    10389                                                        name += " (" + kvp.Key.PlayerId + ")";
    10490
    105                                                         m_Console.SendResult (String.Format ("Player \"{0}\" owns {3} keystones (protected: {1}, current hardness multiplier: {2})", name, w.LandClaimIsActive (kvp.Key), w.LandClaimPower (kvp.Key), kvp.Value.Count));
     91                                                        SdtdConsole.Instance.Output (String.Format ("Player \"{0}\" owns {3} keystones (protected: {1}, current hardness multiplier: {2})", name, w.LandClaimIsActive (kvp.Key), w.LandClaimPower (kvp.Key), kvp.Value.Count));
    10692                                                        if (!summaryOnly) {
    10793                                                                foreach (Vector3i v in kvp.Value) {
    108                                                                         m_Console.SendResult ("   (" + v.ToString () + ")");
     94                                                                        SdtdConsole.Instance.Output ("   (" + v.ToString () + ")");
    10995                                                                }
    11096                                                        }
     
    114100
    115101                                if (steamIdFilter.Length == 0)
    116                                         m_Console.SendResult ("Total of " + d.Count + " keystones in the game");
     102                                        SdtdConsole.Instance.Output ("Total of " + d.Count + " keystones in the game");
    117103                        } catch (Exception e) {
    118104                                Log.Out ("Error in ListLandProtection.Run: " + e);
Note: See TracChangeset for help on using the changeset viewer.