本文整理汇总了C#中MCDeamon.Player.SendMessage方法的典型用法代码示例。如果您正苦于以下问题:C# Player.SendMessage方法的具体用法?C# Player.SendMessage怎么用?C# Player.SendMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MCDeamon.Player
的用法示例。
在下文中一共展示了Player.SendMessage方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Use
public override void Use(Player p, string message)
{
if (message == "" || message.IndexOf(' ') != -1)
{
Help(p);
return;
}
else
{
if (File.Exists("extra/commands/source/Cmd" + message + ".cs")) { p.SendMessage("File Cmd" + message + ".cs already exists. Choose another name."); return; }
try
{
Scripting.CreateNew(message);
}
catch (Exception e)
{
Server.ErrorLog(e);
Player.SendMessage(p, "An error occurred creating the class file.");
return;
}
Player.SendMessage(p, "Successfully created a new command class.");
}
}
示例2: Use
public override void Use(Player p, string message)
{
Pos cpos;
if (p.aiming)
{
if (message == "")
{
p.aiming = false;
Player.SendMessage(p, "Disabled missiles");
return;
}
}
cpos.ending = 0;
if (message.ToLower() == "destroy") cpos.ending = 1;
else if (message.ToLower() == "explode") cpos.ending = 2;
else if (message.ToLower() == "teleport") cpos.ending = -1;
else if (message != "") { Help(p); return; }
cpos.x = 0; cpos.y = 0; cpos.z = 0; p.blockchangeObject = cpos;
p.ClearBlockchange();
p.Blockchange += new Player.BlockchangeEventHandler(Blockchange1);
p.SendMessage("Missile mode engaged, fire and guide!");
if (p.aiming)
{
return;
}
p.aiming = true;
Thread aimThread = new Thread(new ThreadStart(delegate
{
CatchPos pos;
List<CatchPos> buffer = new List<CatchPos>();
while (p.aiming)
{
List<CatchPos> tempBuffer = new List<CatchPos>();
double a = Math.Sin(((double)(128 - p.rot[0]) / 256) * 2 * Math.PI);
double b = Math.Cos(((double)(128 - p.rot[0]) / 256) * 2 * Math.PI);
double c = Math.Cos(((double)(p.rot[1] + 64) / 256) * 2 * Math.PI);
try
{
ushort x = (ushort)(p.pos[0] / 32);
x = (ushort)Math.Round(x + (double)(a * 3));
ushort y = (ushort)(p.pos[1] / 32 + 1);
y = (ushort)Math.Round(y + (double)(c * 3));
ushort z = (ushort)(p.pos[2] / 32);
z = (ushort)Math.Round(z + (double)(b * 3));
if (x > p.level.width || y > p.level.depth || z > p.level.height) throw new Exception();
if (x < 0 || y < 0 || z < 0) throw new Exception();
for (ushort xx = x; xx <= x + 1; xx++)
{
for (ushort yy = (ushort)(y - 1); yy <= y; yy++)
{
for (ushort zz = z; zz <= z + 1; zz++)
{
if (p.level.GetTile(xx, yy, zz) == Block.air)
{
pos.x = xx; pos.y = yy; pos.z = zz;
tempBuffer.Add(pos);
}
}
}
}
List<CatchPos> toRemove = new List<CatchPos>();
foreach (CatchPos cP in buffer)
{
if (!tempBuffer.Contains(cP))
{
p.SendBlockchange(cP.x, cP.y, cP.z, Block.air);
toRemove.Add(cP);
}
}
foreach (CatchPos cP in toRemove)
{
buffer.Remove(cP);
}
foreach (CatchPos cP in tempBuffer)
{
if (!buffer.Contains(cP))
{
buffer.Add(cP);
p.SendBlockchange(cP.x, cP.y, cP.z, Block.glass);
}
}
tempBuffer.Clear();
toRemove.Clear();
}
//.........这里部分代码省略.........
示例3: Help
public override void Help(Player p)
{
p.SendMessage("/whoip <ip address> - Displays players associated with a given IP address.");
}