- Code: Select all
using System;
namespace MCDzienny
{
public class CmdBlackchat : Command
{
public override string name { get { return "blackchat"; } }
public override string shortcut { get { return "bc"; } }
public override string type { get { return "other"; } }
public override bool museumUsable { get { return false; } }
public override LevelPermission defaultRank { get { return LevelPermission.Operator; } }
public const string r = "BlackChat";
public override void Help(Player p)
{
Player.SendMessage(p, "/bchat - enables/disables black chat.");
}
public override void Use(Player p, string message)
{
if (!p.ExtraData.ContainsKey(r))
{
p.ExtraData.Add(r, false);
}
if ((bool)p.ExtraData[r] == true)
{
p.ExtraData[r] = false;
Player.SendMessage(p, "Black chat disabled.");
}
else
{
p.ExtraData[r] = true;
Player.SendMessage(p, "Black chat enabled.");
}
}
public override void Init()
{
Player.PlayerChatEvent += MakeBlack;
}
private void MakeBlack(Player p, ref string message, ref bool stopIt)
{
if (p.ExtraData.ContainsKey(r) && (bool)p.ExtraData[r] == true)
{
message =Black(message);
}
}
private string Black(string msg)
{
try
{
string blackMsg = "";
char[] Msgchar = msg.ToCharArray();
int counter = 0;
for (int i = 0; i < msg.Length; i++)
{
if (Msgchar[i] != ' ')
{
switch (counter)
{
case 0: blackMsg += "&0" + Msgchar[i]; break;
case 1: blackMsg += "&0" + Msgchar[i]; break;
case 2: blackMsg += "&0" + Msgchar[i]; break;
case 3: blackMsg += "&0" + Msgchar[i]; break;
}
}
else { blackMsg += " "; }
counter++;
if (counter > 3)
{
counter = 0;
}
}
return blackMsg;
}
catch
{
return msg;
}
}
}
}