Exemplo n.º 1
0
 public override void Execute(List <string> _params, CommandSenderInfo _senderInfo)
 {
     try
     {
         if (_params.Count != 1 && _params.Count != 2 && _params.Count != 4 && _params.Count != 5 && _params.Count != 8)
         {
             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Wrong number of arguments, expected 1, 2, 4, 5 or 8, found {0}", _params.Count));
             return;
         }
         if (_params[0].ToLower().Equals("off"))
         {
             if (ChatColorPrefix.IsEnabled)
             {
                 ChatColorPrefix.IsEnabled = false;
                 Config.WriteXml();
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Chat color prefix has been set to off"));
                 return;
             }
             else
             {
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Chat color prefix is already off"));
                 return;
             }
         }
         else if (_params[0].ToLower().Equals("on"))
         {
             if (!ChatColorPrefix.IsEnabled)
             {
                 ChatColorPrefix.IsEnabled = true;
                 Config.WriteXml();
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Chat color prefix has been set to on"));
                 return;
             }
             else
             {
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Chat color prefix is already on"));
                 return;
             }
         }
         else if (_params[0].ToLower().Equals("add"))
         {
             if (_params.Count != 4 && _params.Count != 5 && _params.Count != 8)
             {
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Wrong number of arguments, expected 4, 5 or 8, found {0}", _params.Count));
                 return;
             }
             ClientInfo _cInfo = ConsoleHelper.ParseParamIdOrName(_params[1]);
             if (_cInfo == null)
             {
                 if (_params[1].Length == 17)
                 {
                     _cInfo = PersistentOperations.GetClientInfoFromSteamId(_params[1]);
                     if (_cInfo == null)
                     {
                         SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Can not find player data attached to {0}", _params[1]));
                         return;
                     }
                 }
                 else
                 {
                     if (int.TryParse(_params[1], out int _entId))
                     {
                         _cInfo = PersistentOperations.GetClientInfoFromEntityId(_entId);
                         if (_cInfo == null)
                         {
                             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Can not find player data attached to {0}", _params[1]));
                             return;
                         }
                     }
                     else
                     {
                         SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Can not find player data attached to {0}", _params[1]));
                         return;
                     }
                 }
             }
             if (_params.Count == 8)
             {
                 foreach (var group in ChatColorPrefix.Dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Can not add id {0} to the chat color prefix list. Group {1} already exists on the list. Create a new entry or add them to this group", _cInfo.playerId, _params[3]));
                         return;
                     }
                 }
                 double _daysToExpire;
                 if (!double.TryParse(_params[7], out _daysToExpire))
                 {
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Invalid days to expire: {0}", _params[7]));
                     return;
                 }
                 DateTime _expireDate;
                 if (_daysToExpire > 0d)
                 {
                     _expireDate = DateTime.Now.AddDays(_daysToExpire);
                 }
                 else
                 {
                     _expireDate = DateTime.Now.AddDays(18250d);
                 }
                 if ((!_params[5].Contains("[") || !_params[5].Contains("]")) && _params[5] != "**")
                 {
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Can not add id {0} to the chat color prefix list. Name color must be in HTML format, example [FFFFFF] with the brackets included. Found: {1}", _params[1], _params[5]));
                     return;
                 }
                 if ((!_params[6].Contains("[") || !_params[6].Contains("]")) && _params[6] != "**")
                 {
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Can not add id {0} to the chat color prefix list. Prefix color must be in HTML format, example [FFFFFF] with the brackets included. Found: {1}", _params[1], _params[6]));
                     return;
                 }
                 string[] _c = new string[] { _params[2], _params[3], _params[4], _params[5], _params[6] };
                 if (ChatColorPrefix.Dict.ContainsKey(_params[1]))
                 {
                     ChatColorPrefix.Dict[_cInfo.playerId]  = _c;
                     ChatColorPrefix.Dict1[_cInfo.playerId] = _expireDate;
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Updated id {0} with the name of {1} to the group {2} using prefix {3}, name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], _params[3], _params[4], _params[5], _params[6], _expireDate.ToString()));
                 }
                 else
                 {
                     ChatColorPrefix.Dict.Add(_cInfo.playerId, _c);
                     ChatColorPrefix.Dict1.Add(_cInfo.playerId, _expireDate);
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Added id {0} with the name of {1} to the group {2} using prefix {3}, name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], _params[3], _params[4], _params[5], _params[6], _expireDate.ToString()));
                 }
                 ChatColorPrefix.UpdateXml();
                 return;
             }
             else if (_params.Count == 5)
             {
                 foreach (var group in ChatColorPrefix.Dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         double _daysToExpire2;
                         if (!double.TryParse(_params[4], out _daysToExpire2))
                         {
                             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Invalid days to expire: {0}", _params[4]));
                             return;
                         }
                         DateTime _expireDate2;
                         if (_daysToExpire2 > 0d)
                         {
                             _expireDate2 = DateTime.Now.AddDays(_daysToExpire2);
                         }
                         else
                         {
                             _expireDate2 = DateTime.Now.AddDays(18250d);
                         }
                         string[] _c = new string[] { _params[2], group.Value[1], group.Value[2], group.Value[3], group.Value[4] };
                         if (ChatColorPrefix.Dict.ContainsKey(_cInfo.playerName))
                         {
                             ChatColorPrefix.Dict[_cInfo.playerId]  = _c;
                             ChatColorPrefix.Dict1[_cInfo.playerId] = _expireDate2;
                             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Updated id {0} with the name of {1} to the group {2} using prefix {3}, name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], group.Value[1], group.Value[2], group.Value[3], group.Value[4], _expireDate2.ToString()));
                         }
                         else
                         {
                             ChatColorPrefix.Dict.Add(_cInfo.playerId, _c);
                             ChatColorPrefix.Dict1.Add(_cInfo.playerId, _expireDate2);
                             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Added id {0} with the name of {1} to the group {2} using prefix {3}, name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], group.Value[1], group.Value[2], group.Value[3], group.Value[4], _expireDate2.ToString()));
                         }
                         ChatColorPrefix.UpdateXml();
                         return;
                     }
                 }
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] No group with the name {0} was found.", _params[3]));
                 return;
             }
             else if (_params.Count == 4)
             {
                 foreach (var group in ChatColorPrefix.Dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         string[] _c = new string[] { _params[2], _params[3], group.Value[2], group.Value[3], group.Value[4] };
                         ChatColorPrefix.Dict1.TryGetValue(group.Key, out DateTime _dt);
                         ChatColorPrefix.Dict.Add(_cInfo.playerId, _c);
                         ChatColorPrefix.Dict1.Add(_cInfo.playerId, _dt);
                         SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Added Id {0} with the name of {1} to the group {2} using prefix {3} name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], _params[3], group.Value[2], group.Value[3], group.Value[4], _dt.ToString()));
                         ChatColorPrefix.UpdateXml();
                         return;
                     }
                 }
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] No group with the name {0} was found.", _params[3]));
                 return;
             }
         }
         else if (_params[0].ToLower().Equals("remove"))
         {
             if (_params.Count != 2)
             {
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Wrong number of arguments, expected 2, found {0}.", _params.Count));
                 return;
             }
             foreach (var group in ChatColorPrefix.Dict)
             {
                 if (group.Value[1] == _params[1])
                 {
                     ChatColorPrefix.Dict.Remove(group.Key);
                     ChatColorPrefix.Dict1.Remove(group.Key);
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Removed {0} named {1} with group {2} from the chat color prefix list.", group.Key, group.Value[0], _params[1]));
                 }
                 if (group.Key == _params[1])
                 {
                     ChatColorPrefix.Dict.Remove(group.Key);
                     ChatColorPrefix.Dict1.Remove(group.Key);
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Removed {0} named {1} with group {2} from the chat color prefix list.", _params[1], group.Value[0], group.Value[1]));
                 }
                 if (group.Value[0] == _params[1])
                 {
                     ChatColorPrefix.Dict.Remove(group.Key);
                     ChatColorPrefix.Dict1.Remove(group.Key);
                     SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Removed {0} named {1} with group {2} from the chat color prefix list.", group.Key, _params[1], group.Value[1]));
                 }
                 ChatColorPrefix.UpdateXml();
             }
             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Completed removing id and groups matching {0} from the chat color prefix list.", _params[1]));
         }
         else if (_params[0].ToLower().Equals("list"))
         {
             foreach (var group in ChatColorPrefix.Dict)
             {
                 if (group.Value[2] == "")
                 {
                     group.Value[2] = "**";
                 }
                 if (group.Value[3] == "")
                 {
                     group.Value[3] = "**";
                 }
                 DateTime _dt;
                 ChatColorPrefix.Dict1.TryGetValue(group.Key, out _dt);
                 SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Id {0} named {1} with group {2} prefix {3} color {4} expires {5}.", group.Key, group.Value[0], group.Value[1], group.Value[2], group.Value[3], _dt));
             }
         }
         else
         {
             SdtdConsole.Instance.Output(string.Format("[SERVERTOOLS] Invalid argument {0}", _params[0]));
         }
     }
     catch (Exception e)
     {
         Log.Out(string.Format("[SERVERTOOLS] Error in ChatColorPrefixConsole.Execute: {0}", e.Message));
     }
 }
 public override void Execute(List <string> _params, CommandSenderInfo _senderInfo)
 {
     try
     {
         if (_params.Count < 1 || _params.Count > 7)
         {
             SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 1 to 7, found {0}.", _params.Count));
             return;
         }
         if (_params[0].ToLower().Equals("off"))
         {
             ChatColorPrefix.IsEnabled = false;
             SdtdConsole.Instance.Output(string.Format("Chat color prefix has been set to off"));
             return;
         }
         else if (_params[0].ToLower().Equals("on"))
         {
             ChatColorPrefix.IsEnabled = true;
             SdtdConsole.Instance.Output(string.Format("Chat color prefix has been set to on"));
             return;
         }
         else if (_params[0].ToLower().Equals("add"))
         {
             if (_params.Count < 4 || _params.Count > 7)
             {
                 SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 4 to 7, found {0}.", _params.Count));
                 return;
             }
             string _steamId = "";
             if (_params[1].Length == 17)
             {
                 _steamId = _params[1];
             }
             else
             {
                 ClientInfo _cInfo = ConsoleHelper.ParseParamIdOrName(_params[1]);
                 if (_cInfo != null)
                 {
                     _steamId = _cInfo.playerId;
                 }
                 else
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not add entity Id or name {0}. They are offline. Use their steam Id instead.", _params[1]));
                     return;
                 }
             }
             if (ChatColorPrefix.dict.ContainsKey(_steamId))
             {
                 SdtdConsole.Instance.Output(string.Format("Can not add Id. {0} is already in the chat color prefix list. Remove them first.", _params[1]));
                 return;
             }
             if (_params.Count == 7)
             {
                 foreach (var group in ChatColorPrefix.dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         SdtdConsole.Instance.Output(string.Format("Can not add Id {0} to the chat color prefix list. Group {1} already exists on the list. Create a new entry or add them to this group", _params[1], _params[3]));
                         return;
                     }
                 }
                 double _daysToExpire;
                 if (!double.TryParse(_params[6], out _daysToExpire))
                 {
                     SdtdConsole.Instance.Output(string.Format("Invalid days to expire: {0}", _params[6]));
                     return;
                 }
                 DateTime _expireDate;
                 if (_daysToExpire > 0d)
                 {
                     _expireDate = DateTime.Now.AddDays(_daysToExpire);
                 }
                 else
                 {
                     _expireDate = DateTime.Now.AddDays(18250d);
                 }
                 string _color = "";
                 if (!_params[5].StartsWith("[") && !_params[5].StartsWith("**"))
                 {
                     _color = "[" + _params[5] + "]";
                 }
                 else
                 {
                     _color = _params[5];
                 }
                 string[] _c = new string[] { _params[2], _params[3], _params[4], _color };
                 ChatColorPrefix.dict.Add(_steamId, _c);
                 ChatColorPrefix.dict1.Add(_steamId, _expireDate);
                 SdtdConsole.Instance.Output(string.Format("Added Id {0} with the name of {1} to the group {2} with prefix {3} and color {4} that expires {5} to the chat color prefix list.", _steamId, _params[2], _params[3], _params[4], _color, _expireDate.ToString()));
                 ChatColorPrefix.UpdateXml();
                 return;
             }
             else if (_params.Count == 5)
             {
                 foreach (var group in ChatColorPrefix.dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         string[] _c = { _params[2], _params[3], group.Value[2], group.Value[3] };
                         double   _daysToExpire2;
                         if (!double.TryParse(_params[4], out _daysToExpire2))
                         {
                             SdtdConsole.Instance.Output(string.Format("Invalid days to expire: {0}", _params[4]));
                             return;
                         }
                         DateTime _expireDate2;
                         if (_daysToExpire2 > 0d)
                         {
                             _expireDate2 = DateTime.Now.AddDays(_daysToExpire2);
                         }
                         else
                         {
                             _expireDate2 = DateTime.Now.AddDays(18250d);
                         }
                         ChatColorPrefix.dict.Add(_steamId, _c);
                         ChatColorPrefix.dict1.Add(_steamId, _expireDate2);
                         SdtdConsole.Instance.Output(string.Format("Added Id {0} with the name of {1} to the group {2} with prefix {3} and color {4} that expires {5} to the chat color prefix list.", _steamId, _params[2], _params[3], group.Value[2], group.Value[3], _expireDate2.ToString()));
                         ChatColorPrefix.UpdateXml();
                         return;
                     }
                 }
                 SdtdConsole.Instance.Output(string.Format("No group with the name {0} was found.", _params[3]));
                 return;
             }
             else if (_params.Count == 4)
             {
                 foreach (var group in ChatColorPrefix.dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         string[] _c = new string[] { _params[2], _params[3], group.Value[2], group.Value[3] };
                         DateTime _dt;
                         ChatColorPrefix.dict1.TryGetValue(group.Key, out _dt);
                         ChatColorPrefix.dict.Add(_steamId, _c);
                         ChatColorPrefix.dict1.Add(_steamId, _dt);
                         SdtdConsole.Instance.Output(string.Format("Added Id {0} with the name of {1} to the group {2} with prefix {3} and color {4} that expires {5} to the chat color prefix list.", _steamId, _params[2], _params[3], group.Value[2], group.Value[3], _dt.ToString()));
                         ChatColorPrefix.UpdateXml();
                         return;
                     }
                 }
                 SdtdConsole.Instance.Output(string.Format("No group with the name {0} was found.", _params[3]));
                 return;
             }
         }
         else if (_params[0].ToLower().Equals("remove") || _params[0].ToLower().Equals("delete") || _params[0].ToLower().Equals("del"))
         {
             if (_params.Count != 2)
             {
                 SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 2, found {0}.", _params.Count));
                 return;
             }
             foreach (var group in ChatColorPrefix.dict)
             {
                 if (group.Value[1] == _params[1])
                 {
                     ChatColorPrefix.dict.Remove(group.Key);
                     ChatColorPrefix.dict1.Remove(group.Key);
                     SdtdConsole.Instance.Output(string.Format("Removed {0} named {1} with group {2} from the chat color prefix list.", group.Key, group.Value[0], _params[1]));
                 }
                 if (group.Key == _params[1])
                 {
                     ChatColorPrefix.dict.Remove(group.Key);
                     ChatColorPrefix.dict1.Remove(group.Key);
                     SdtdConsole.Instance.Output(string.Format("Removed {0} named {1} with group {2} from the chat color prefix list.", _params[1], group.Value[0], group.Value[1]));
                 }
                 if (group.Value[0] == _params[1])
                 {
                     ChatColorPrefix.dict.Remove(group.Key);
                     ChatColorPrefix.dict1.Remove(group.Key);
                     SdtdConsole.Instance.Output(string.Format("Removed {0} named {1} with group {2} from the chat color prefix list.", group.Key, _params[1], group.Value[1]));
                 }
                 ChatColorPrefix.UpdateXml();
             }
             SdtdConsole.Instance.Output(string.Format("Completed removing id and groups matching {0} from the chat color prefix list.", _params[1]));
         }
         else if (_params[0].ToLower().Equals("list"))
         {
             foreach (var group in ChatColorPrefix.dict)
             {
                 if (group.Value[2] == "")
                 {
                     group.Value[2] = "**";
                 }
                 if (group.Value[3] == "")
                 {
                     group.Value[3] = "**";
                 }
                 DateTime _dt;
                 ChatColorPrefix.dict1.TryGetValue(group.Key, out _dt);
                 SdtdConsole.Instance.Output(string.Format("Id {0} named {1} with group {2} prefix {3} color {4} expires {5}.", group.Key, group.Value[0], group.Value[1], group.Value[2], group.Value[3], _dt));
             }
         }
         else
         {
             SdtdConsole.Instance.Output(string.Format("Invalid argument {0}.", _params[0]));
         }
     }
     catch (Exception e)
     {
         Log.Out(string.Format("[SERVERTOOLS] Error in ChatColorPrefixConsole.Run: {0}.", e));
     }
 }
Exemplo n.º 3
0
 public override void Execute(List <string> _params, CommandSenderInfo _senderInfo)
 {
     try
     {
         if (_params.Count != 2 && _params.Count != 8)
         {
             SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 2 or 8, found {0}", _params.Count));
             return;
         }
         if (_params[0].ToLower().Equals("remove"))
         {
             if (_params.Count == 2)
             {
                 if (!ReservedSlots.Dict.ContainsKey(_params[1]))
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not remove id from the reserved slots list. {0} is not in the list.", _params[1]));
                 }
                 else
                 {
                     ReservedSlots.Dict.Remove(_params[1]);
                     SdtdConsole.Instance.Output(string.Format("Removed id {0} from the reserved slots list.", _params[1]));
                 }
                 if (!ChatColorPrefix.Dict.ContainsKey(_params[1]))
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not remove id from the chat color prefix list. {0} is not in the list.", _params[1]));
                 }
                 else
                 {
                     ChatColorPrefix.Dict.Remove(_params[1]);
                     SdtdConsole.Instance.Output(string.Format("Removed id {0} from the chat color prefix list.", _params[1]));
                 }
             }
             else
             {
                 SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 2, found {0}.", _params.Count));
             }
         }
         else if (_params[0].ToLower().Equals("add"))
         {
             ClientInfo _cInfo = ConsoleHelper.ParseParamIdOrName(_params[1]);
             if (_cInfo == null)
             {
                 if (_params[1].Length == 17)
                 {
                     _cInfo = PersistentOperations.GetClientInfoFromSteamId(_params[1]);
                     if (_cInfo == null)
                     {
                         SdtdConsole.Instance.Output(string.Format("Can not find player data attached to {0}", _params[1]));
                         return;
                     }
                 }
                 else
                 {
                     if (int.TryParse(_params[1], out int _entId))
                     {
                         _cInfo = PersistentOperations.GetClientInfoFromEntityId(_entId);
                         if (_cInfo == null)
                         {
                             SdtdConsole.Instance.Output(string.Format("Can not find player data attached to {0}", _params[1]));
                             return;
                         }
                     }
                     else
                     {
                         SdtdConsole.Instance.Output(string.Format("Can not find player data attached to {0}", _params[1]));
                         return;
                     }
                 }
             }
             if (_params.Count == 8)
             {
                 foreach (var group in ChatColorPrefix.Dict)
                 {
                     if (group.Value[1] == _params[3])
                     {
                         SdtdConsole.Instance.Output(string.Format("Can not add id {0} to the chat color prefix list. Group {1} already exists on the list. Create a new entry or add them to this group", _cInfo.playerId, _params[3]));
                         return;
                     }
                 }
                 if (!_params[5].Contains("[") || !_params[5].Contains("]"))
                 {
                     SdtdConsole.Instance.Output(string.Format("Invalid days to expire: {0}", _params[7]));
                     return;
                 }
                 double _daysToExpire;
                 if (!double.TryParse(_params[7], out _daysToExpire))
                 {
                     SdtdConsole.Instance.Output(string.Format("Invalid days to expire: {0}", _params[7]));
                     return;
                 }
                 DateTime _expireDate;
                 if (_daysToExpire > 0d)
                 {
                     _expireDate = DateTime.Now.AddDays(_daysToExpire);
                 }
                 else
                 {
                     _expireDate = DateTime.Now.AddDays(18250d);
                 }
                 if (ReservedSlots.Dict.ContainsKey(_params[1]))
                 {
                     ReservedSlots.Dict[_params[1]]  = _expireDate;
                     ReservedSlots.Dict1[_params[1]] = _params[2];
                     SdtdConsole.Instance.Output(string.Format("Updated id {0}, with the name of {1}, expiring on {2} from the Reserved Slots list.", _params[1], _params[2], _expireDate.ToString()));
                 }
                 else
                 {
                     ReservedSlots.Dict.Add(_params[1], _expireDate);
                     ReservedSlots.Dict1.Add(_params[1], _params[2]);
                     SdtdConsole.Instance.Output(string.Format("Added id {0}, with the name of {1} expiring on {2} from the Reserved Slots list.", _params[1], _params[2], _expireDate.ToString()));
                 }
                 ReservedSlots.UpdateXml();
                 string[] _c = new string[] { _params[2], _params[3], _params[4], _params[5], _params[6] };
                 if (ChatColorPrefix.Dict.ContainsKey(_params[1]))
                 {
                     ChatColorPrefix.Dict[_params[1]]  = _c;
                     ChatColorPrefix.Dict1[_params[1]] = _expireDate;
                     SdtdConsole.Instance.Output(string.Format("Updated id {0}, with the name of {1} to the group {2} using prefix {3}, name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], _params[3], _params[4], _params[5], _params[6], _expireDate.ToString()));
                 }
                 else
                 {
                     ChatColorPrefix.Dict.Add(_params[1], _c);
                     ChatColorPrefix.Dict1.Add(_params[1], _expireDate);
                     SdtdConsole.Instance.Output(string.Format("Added id {0}, with the name of {1} to the group {2} using prefix {3}, name color {4} and prefix color {5} that expires {6} to the chat color prefix list.", _cInfo.playerId, _params[2], _params[3], _params[4], _params[5], _params[6], _expireDate.ToString()));
                 }
                 ChatColorPrefix.UpdateXml();
             }
             else
             {
                 SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 8, found {0}.", _params.Count));
             }
         }
         else
         {
             SdtdConsole.Instance.Output(string.Format("Invalid argument {0}", _params[0]));
         }
     }
     catch (Exception e)
     {
         Log.Out(string.Format("[SERVERTOOLS] Error in DonorConsole.Execute: {0}", e.Message));
     }
 }
Exemplo n.º 4
0
 public override void Execute(List <string> _params, CommandSenderInfo _senderInfo)
 {
     try
     {
         if (_params[0].ToLower().Equals("remove"))
         {
             if (_params.Count == 2)
             {
                 if (!ReservedSlots.Dict.ContainsKey(_params[1]))
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not remove Id from the reserved slots list. {0} is not in the list.", _params[1]));
                 }
                 else
                 {
                     ReservedSlots.Dict.Remove(_params[1]);
                     SdtdConsole.Instance.Output(string.Format("Remove Id {0} from the reserved slots list.", _params[1]));
                 }
                 if (!ChatColorPrefix.dict.ContainsKey(_params[1]))
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not remove Id from the chat color prefix list. {0} is not in the list.", _params[1]));
                 }
                 else
                 {
                     ChatColorPrefix.dict.Remove(_params[1]);
                     SdtdConsole.Instance.Output(string.Format("Remove Id {0} from the chat color prefix list.", _params[1]));
                 }
             }
             else
             {
                 SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 2, found {0}.", _params.Count));
             }
         }
         else if (_params[0].ToLower().Equals("add"))
         {
             if (_params.Count == 7)
             {
                 if (ReservedSlots.Dict.ContainsKey(_params[1]))
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not add Id to the reserved slots list. {0} is in the list.", _params[1]));
                 }
                 else
                 {
                     double _daysToExpire;
                     if (!double.TryParse(_params[6], out _daysToExpire))
                     {
                         SdtdConsole.Instance.Output(string.Format("Invalid days to expire: {0}", _params[6]));
                         return;
                     }
                     DateTime _expireDate;
                     if (_daysToExpire > 0d)
                     {
                         _expireDate = DateTime.Now.AddDays(_daysToExpire);
                     }
                     else
                     {
                         _expireDate = DateTime.Now.AddDays(18250d);
                     }
                     ReservedSlots.Dict.Add(_params[1], _expireDate);
                     ReservedSlots.Dict1.Add(_params[1], _params[2]);
                     SdtdConsole.Instance.Output(string.Format("Added Id {0} with the name of {1} that expires on {2} to the Reserved Slots list.", _params[1], _params[2], _expireDate.ToString()));
                     ReservedSlots.UpdateXml();
                 }
                 if (ChatColorPrefix.dict.ContainsKey(_params[1]))
                 {
                     SdtdConsole.Instance.Output(string.Format("Can not add Id to the chat color prefix list. {0} is in the list.", _params[1]));
                 }
                 else
                 {
                     double _daysToExpire;
                     if (!double.TryParse(_params[6], out _daysToExpire))
                     {
                         SdtdConsole.Instance.Output(string.Format("Invalid days to expire: {0}", _params[6]));
                         return;
                     }
                     DateTime _expireDate;
                     if (_daysToExpire > 0d)
                     {
                         _expireDate = DateTime.Now.AddDays(_daysToExpire);
                     }
                     else
                     {
                         _expireDate = DateTime.Now.AddDays(18250d);
                     }
                     string _color = "";
                     if (!_params[5].StartsWith("["))
                     {
                         _color = "[" + _params[5] + "]";
                     }
                     else
                     {
                         _color = _params[5];
                     }
                     string[] _c = new string[] { _params[2], _params[3], _params[4], _color };
                     ChatColorPrefix.dict.Add(_params[1], _c);
                     ChatColorPrefix.dict1.Add(_params[1], _expireDate);
                     SdtdConsole.Instance.Output(string.Format("Added Id {0} with the name of {1} to the group {2} with prefix {3} and color {4} that expires {5} to the chat color prefix list.", _params[1], _params[2], _params[3], _params[4], _color, _expireDate.ToString()));
                     ChatColorPrefix.UpdateXml();
                 }
             }
             else
             {
                 SdtdConsole.Instance.Output(string.Format("Wrong number of arguments, expected 7, found {0}.", _params.Count));
             }
         }
         else
         {
             SdtdConsole.Instance.Output(string.Format("Invalid argument {0}", _params[0]));
         }
     }
     catch (Exception e)
     {
         Log.Out(string.Format("[SERVERTOOLS] Error in DonorConsole.Execute: {0}", e));
     }
 }