diff --git a/Commands/Economy/CmdEconomy.cs b/Commands/Economy/CmdEconomy.cs
index de10caea9..dfdff2e7c 100644
--- a/Commands/Economy/CmdEconomy.cs
+++ b/Commands/Economy/CmdEconomy.cs
@@ -20,7 +20,7 @@ using System.Globalization;
using System.Threading;
using MCGalaxy.SQL;
namespace MCGalaxy.Commands {
-
+
/// Economy Beta v1.0 QuantumHive
public sealed class CmdEconomy : Command {
public override string name { get { return "economy"; } }
@@ -38,10 +38,10 @@ namespace MCGalaxy.Commands {
for (int i = 0; i < raw.Length; i++)
args[i] = i < 2 ? raw[i].ToLower() : raw[i];
- if (args[0] == "setup")
- HandleSetup(p, message, args);
+ if (args[0] == "setup")
+ HandleSetup(p, message, args);
else
- Help(p);
+ Help(p);
}
void HandleSetup(Player p, string message, string[] args) {
@@ -143,8 +143,8 @@ namespace MCGalaxy.Commands {
if (!int.TryParse(args[5], out newPrice)) {
Player.SendMessage(p, "%cInvalid amount of %3" + Server.moneys); return;
}
- if (newPrice < 0) {
- Player.SendMessage(p, "%cAmount of %3" + Server.moneys + "%c cannot be negative"); return;
+ if (newPrice < 0) {
+ Player.SendMessage(p, "%cAmount of %3" + Server.moneys + "%c cannot be negative"); return;
}
lvl.price = newPrice;
Player.SendMessage(p, "%aSuccessfully changed preset price to %f" + lvl.price + " %3" + Server.moneys);
@@ -157,10 +157,12 @@ namespace MCGalaxy.Commands {
break;
case "enable":
- if (Economy.Settings.Levels) { Player.SendMessage(p, "%cMaps are already enabled for the economy system"); break; } else { Economy.Settings.Levels = true; Player.SendMessage(p, "%aMaps are now enabled for the economy system"); break; }
+ if (Economy.Settings.Levels) { Player.SendMessage(p, "%cMaps are already enabled for the economy system"); break; }
+ else { Economy.Settings.Levels = true; Player.SendMessage(p, "%aMaps are now enabled for the economy system"); break; }
case "disable":
- if (Economy.Settings.Levels == false) { Player.SendMessage(p, "%cMaps are already disabled for the economy system"); break; } else { Economy.Settings.Levels = false; Player.SendMessage(p, "%aMaps are now disabled for the economy system"); break; }
+ if (!Economy.Settings.Levels) { Player.SendMessage(p, "%cMaps are already disabled for the economy system"); break; }
+ else { Economy.Settings.Levels = false; Player.SendMessage(p, "%aMaps are now disabled for the economy system"); break; }
default:
Player.SendMessage(p, "%cThat wasn't a valid command addition!");
@@ -242,43 +244,44 @@ namespace MCGalaxy.Commands {
case "rank":
switch (args[2]) {
case "enable":
- if (Economy.Settings.Ranks) { Player.SendMessage(p, "%cRanks are already enabled for the economy system"); break; } else { Economy.Settings.Ranks = true; Player.SendMessage(p, "%aRanks are now enabled for the economy system"); break; }
+ if (Economy.Settings.Ranks) { Player.SendMessage(p, "%cRanks are already enabled for the economy system"); break; }
+ else { Economy.Settings.Ranks = true; Player.SendMessage(p, "%aRanks are now enabled for the economy system"); break; }
case "disable":
- if (Economy.Settings.Ranks == false) { Player.SendMessage(p, "%cRanks are already disabled for the economy system"); break; } else { Economy.Settings.Ranks = false; Player.SendMessage(p, "%aRanks are now disabled for the economy system"); break; }
+ if (!Economy.Settings.Ranks) { Player.SendMessage(p, "%cRanks are already disabled for the economy system"); break; }
+ else { Economy.Settings.Ranks = false; Player.SendMessage(p, "%aRanks are now disabled for the economy system"); break; }
case "price":
Economy.Settings.Rank rnk = Economy.FindRank(args[3]);
- if (rnk == null) { Player.SendMessage(p, "%cThat wasn't a rank or it's past the max rank (maxrank is: " + Group.Find(Economy.Settings.MaxRank).color + Economy.Settings.MaxRank + "%c)"); break; } else {
- try {
- rnk.price = int.Parse(args[4]);
- } catch { Player.SendMessage(p, "%cInvalid price input: that wasn't a number!"); return; }
- Player.SendMessage(p, "%aSuccesfully changed the rank price for " + rnk.group.color + rnk.group.name + " to: %f" + rnk.price + " %3" + Server.moneys);
- break;
- }
+ if (rnk == null) {
+ Player.SendMessage(p, "%cThat wasn't a rank or it's past the max rank (maxrank is: " + Group.Find(Economy.Settings.MaxRank).color + Economy.Settings.MaxRank + "%c)"); return; }
+ try {
+ rnk.price = int.Parse(args[4]);
+ } catch { Player.SendMessage(p, "%cInvalid price input: that wasn't a number!"); return; }
+ Player.SendMessage(p, "%aSuccesfully changed the rank price for " + rnk.group.color + rnk.group.name + " to: %f" + rnk.price + " %3" + Server.moneys);
+ break;
case "maxrank":
case "max":
case "maximum":
case "maximumrank":
Group grp = Group.Find(args[3]);
- if (grp == null) { Player.SendMessage(p, "%cThat wasn't a rank!"); } else {
- if (p.group.Permission < grp.Permission) { Player.SendMessage(p, "%cCan't set a maxrank that is higher than yours!"); } else {
- Economy.Settings.MaxRank = args[3].ToLower(); Player.SendMessage(p, "%aSuccessfully set max rank to: " + Group.Find(Economy.Settings.MaxRank).color + Economy.Settings.MaxRank);
- int lasttrueprice = 0;
- foreach (Group group in Group.GroupList) {
- if (group.Permission > grp.Permission) { break; }
- if (!(group.Permission <= Group.Find(Server.defaultRank).Permission)) {
- Economy.Settings.Rank rank = new Economy.Settings.Rank();
- rank = Economy.FindRank(group.name);
- if (rank == null) {
- rank = new Economy.Settings.Rank();
- rank.group = group;
- if (lasttrueprice == 0) { rank.price = 1000; } else { rank.price = lasttrueprice + 250; }
- Economy.Settings.RanksList.Add(rank);
- } else { lasttrueprice = rank.price; }
- }
- }
+ if (grp == null) { Player.SendMessage(p, "%cThat wasn't a rank!"); return; }
+ if (p.group.Permission < grp.Permission) { Player.SendMessage(p, "%cCan't set a maxrank that is higher than yours!"); return; }
+ Economy.Settings.MaxRank = args[3].ToLower();
+ Player.SendMessage(p, "%aSuccessfully set max rank to: " + Group.Find(Economy.Settings.MaxRank).color + Economy.Settings.MaxRank);
+ int lasttrueprice = 0;
+ foreach (Group group in Group.GroupList) {
+ if (group.Permission > grp.Permission) break;
+ if (!(group.Permission <= Group.Find(Server.defaultRank).Permission)) {
+ Economy.Settings.Rank rank = new Economy.Settings.Rank();
+ rank = Economy.FindRank(group.name);
+ if (rank == null) {
+ rank = new Economy.Settings.Rank();
+ rank.group = group;
+ if (lasttrueprice == 0) { rank.price = 1000; } else { rank.price = lasttrueprice + 250; }
+ Economy.Settings.RanksList.Add(rank);
+ } else { lasttrueprice = rank.price; }
}
}
break;
diff --git a/Commands/Fun/CmdInfected.cs b/Commands/Fun/CmdInfected.cs
index bdcd7d4c2..eaaa56d5b 100644
--- a/Commands/Fun/CmdInfected.cs
+++ b/Commands/Fun/CmdInfected.cs
@@ -20,7 +20,7 @@ namespace MCGalaxy.Commands
public sealed class CmdInfected : Command
{
public override string name { get { return "infected"; } }
- public override string shortcut { get { return ""; } }
+ public override string shortcut { get { return "dead"; } }
public override string type { get { return CommandTypes.Games; } }
public override bool museumUsable { get { return true; } }
public override LevelPermission defaultRank { get { return LevelPermission.Banned; } }
diff --git a/Commands/Information/CmdAfk.cs b/Commands/Information/CmdAfk.cs
index 2018846a3..f6751e341 100644
--- a/Commands/Information/CmdAfk.cs
+++ b/Commands/Information/CmdAfk.cs
@@ -37,7 +37,8 @@ namespace MCGalaxy.Commands
if (message == "list") {
foreach (string s in Server.afkset) {
- if (p.hidden) continue;
+ Player pl = PlayerInfo.FindExact(s);
+ if (pl == null || !Player.CanSee(p, pl)) continue;
Player.SendMessage(p, s);
}
return;
diff --git a/Commands/Information/CmdPCount.cs b/Commands/Information/CmdPCount.cs
index 6bd41f178..a7c2e9a39 100644
--- a/Commands/Information/CmdPCount.cs
+++ b/Commands/Information/CmdPCount.cs
@@ -39,10 +39,9 @@ namespace MCGalaxy.Commands {
Player[] players = PlayerInfo.Online.Items;
foreach (Player pl in players) {
- if (!pl.hidden || p == null || Player.CanSee(p, pl)) {
- count++;
- if (pl.hidden) hiddenCount++;
- }
+ if (!Player.CanSee(p, pl)) continue;
+ count++;
+ if (pl.hidden) hiddenCount++;
}
string verb = count == 1 ? "is " : "are ";
diff --git a/Commands/Moderation/CmdHide.cs b/Commands/Moderation/CmdHide.cs
index 84bc8dfa9..a1daf9585 100644
--- a/Commands/Moderation/CmdHide.cs
+++ b/Commands/Moderation/CmdHide.cs
@@ -1,19 +1,19 @@
/*
- Copyright 2010 MCSharp team (Modified for use with MCZall/MCLawl/MCGalaxy)
-
- Dual-licensed under the Educational Community License, Version 2.0 and
- the GNU General Public License, Version 3 (the "Licenses"); you may
- not use this file except in compliance with the Licenses. You may
- obtain a copy of the Licenses at
-
- http://www.opensource.org/licenses/ecl2.php
- http://www.gnu.org/licenses/gpl-3.0.html
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the Licenses are distributed on an "AS IS"
- BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- or implied. See the Licenses for the specific language governing
- permissions and limitations under the Licenses.
+ Copyright 2010 MCSharp team (Modified for use with MCZall/MCLawl/MCGalaxy)
+
+ Dual-licensed under the Educational Community License, Version 2.0 and
+ the GNU General Public License, Version 3 (the "Licenses"); you may
+ not use this file except in compliance with the Licenses. You may
+ obtain a copy of the Licenses at
+
+ http://www.opensource.org/licenses/ecl2.php
+ http://www.gnu.org/licenses/gpl-3.0.html
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the Licenses are distributed on an "AS IS"
+ BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ or implied. See the Licenses for the specific language governing
+ permissions and limitations under the Licenses.
*/
using System.IO;
namespace MCGalaxy.Commands
@@ -22,71 +22,69 @@ namespace MCGalaxy.Commands
{
public override string name { get { return "hide"; } }
public override string shortcut { get { return ""; } }
- public override string type { get { return CommandTypes.Moderation; } }
+ public override string type { get { return CommandTypes.Moderation; } }
public override bool museumUsable { get { return true; } }
public override LevelPermission defaultRank { get { return LevelPermission.Operator; } }
public CmdHide() { }
- public override void Use(Player p, string message)
- {
+ public override void Use(Player p, string message) {
if (p == null) { MessageInGameOnly(p); return; }
- if (message == "check")
- {
- if (p.hidden)
- {
- Player.SendMessage(p, "You are currently hidden!");
- return;
- }
- else
- {
- Player.SendMessage(p, "You are not currently hidden!");
- return;
- }
- }
- else
- if (message != "")
- if (p.possess != "")
- {
- Player.SendMessage(p, "Stop your current possession first.");
- return;
+ DoHide(p, message, true);
+ }
+
+ internal static void DoHide(Player p, string message, bool messageOps) {
+ if (message == "check") {
+ string state = p.hidden ? "" : "not ";
+ Player.SendMessage(p, "You are " + state + "currently hidden!"); return;
}
+ if (message != "" && p.possess != "") {
+ Player.SendMessage(p, "Stop your current possession first."); return;
+ }
Command opchat = Command.all.Find("opchat");
Command adminchat = Command.all.Find("adminchat");
p.hidden = !p.hidden;
- if (p.hidden)
- {
+
+ if (p.hidden) {
Player.GlobalDespawn(p, true);
- Chat.GlobalMessageOps("To Ops -" + p.color + p.DisplayName + Server.DefaultColor + "- is now &finvisible" + Server.DefaultColor + ".");
- Player.SendChatFrom(p, "&c- " + p.color + p.prefix + p.DisplayName + Server.DefaultColor + " " +
+ if (messageOps)
+ Chat.GlobalMessageOps("To Ops -" + p.color + p.DisplayName + "%S- is now &finvisible%S.");
+
+ Player.SendChatFrom(p, "&c- " + p.FullName + " %S" +
(File.Exists("text/logout/" + p.name + ".txt") ? CP437Reader.ReadAllText("text/logout/" + p.name + ".txt") : "Disconnected."), false);
Server.IRC.Say(p.DisplayName + " left the game (Disconnected.)");
- if (!p.opchat)
- {
- opchat.Use(p, message);
- }
- //Player.SendMessage(p, "You're now &finvisible&e.");
- }
- else
- {
+ if (messageOps && !p.opchat) opchat.Use(p, message);
+ } else {
Player.GlobalSpawn(p, p.pos[0], p.pos[1], p.pos[2], p.rot[0], p.rot[1], false);
- Chat.GlobalMessageOps("To Ops -" + p.color + p.DisplayName + Server.DefaultColor + "- is now &8visible" + Server.DefaultColor + ".");
- Player.SendChatFrom(p, "&a+ " + p.color + p.prefix + p.DisplayName + Server.DefaultColor + " " +
+ if (messageOps)
+ Chat.GlobalMessageOps("To Ops -" + p.color + p.DisplayName + "%S- is now &8visible%S.");
+
+ Player.SendChatFrom(p, "&a+ " + p.FullName + " %S" +
(File.Exists("text/login/" + p.name + ".txt") ? CP437Reader.ReadAllText("text/login/" + p.name + ".txt") : "joined the game."), false);
Server.IRC.Say(p.DisplayName + " joined the game");
- if (p.opchat)
- {
- opchat.Use(p, message);
- }
- if (p.adminchat)
- {
- adminchat.Use(p, message);
- }
- //Player.SendMessage(p, "You're now &8visible&e.");
+ if (messageOps && p.opchat) opchat.Use(p, message);
+ if (p.adminchat) adminchat.Use(p, message);
}
}
- public override void Help(Player p)
- {
+
+ public override void Help(Player p) {
Player.SendMessage(p, "/hide - Toggles your visibility to other players, also toggles opchat.");
}
}
+
+ public sealed class CmdXhide : Command {
+ public override string name { get { return "xhide"; } }
+ public override string shortcut { get { return ""; } }
+ public override string type { get { return CommandTypes.Moderation; } }
+ public override bool museumUsable { get { return false; } }
+ public override LevelPermission defaultRank { get { return LevelPermission.Admin; } }
+
+ public override void Use(Player p, string message) {
+ if (p == null) { MessageInGameOnly(p); return; }
+ CmdHide.DoHide(p, message, false);
+ }
+
+ public override void Help(Player p) {
+ Player.SendMessage(p, "/xhide - like /hide, only it doesn't send a message to ops.");
+ }
+ }
}
diff --git a/Commands/Moderation/CmdXhide.cs b/Commands/Moderation/CmdXhide.cs
deleted file mode 100644
index 381501b1e..000000000
--- a/Commands/Moderation/CmdXhide.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- Copyright 2011 MCForge
-
- Dual-licensed under the Educational Community License, Version 2.0 and
- the GNU General Public License, Version 3 (the "Licenses"); you may
- not use this file except in compliance with the Licenses. You may
- obtain a copy of the Licenses at
-
- http://www.opensource.org/licenses/ecl2.php
- http://www.gnu.org/licenses/gpl-3.0.html
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the Licenses are distributed on an "AS IS"
- BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- or implied. See the Licenses for the specific language governing
- permissions and limitations under the Licenses.
-*/
-using System.IO;
-namespace MCGalaxy.Commands
-{
- public sealed class CmdXhide : Command
- {
- public override string name { get { return "xhide"; } }
- public override string shortcut { get { return ""; } }
- public override string type { get { return CommandTypes.Moderation; } }
- public override bool museumUsable { get { return false; } }
- public override LevelPermission defaultRank { get { return LevelPermission.Admin; } }
-
- public override void Use(Player p, string message)
- {
- if (p == null) { MessageInGameOnly(p); return; }
- if (message != "") { Help(p); return; }
- if (p.possess != "")
- {
- Player.SendMessage(p, "Stop your current possession first.");
- return;
- }
- Command adminchat = Command.all.Find("adminchat");
- p.hidden = !p.hidden;
- if (p.hidden)
- {
- Player.GlobalDespawn(p, true);
- Player.SendChatFrom(p, "&c- " + p.color + p.prefix + p.DisplayName + Server.DefaultColor + " " +
- (File.Exists("text/logout/" + p.name + ".txt") ? CP437Reader.ReadAllText("text/logout/" + p.name + ".txt") : "Disconnected."), false);
- Server.IRC.Say(p.name + " left the game (Disconnected.)");
- if (!p.adminchat)
- {
- adminchat.Use(p, message);
- }
-
- }
- else
- {
- Player.GlobalSpawn(p, p.pos[0], p.pos[1], p.pos[2], p.rot[0], p.rot[1], false, "");
- Player.SendChatFrom(p, "&a+ " + p.color + p.prefix + p.DisplayName + Server.DefaultColor + " " +
- (File.Exists("text/login/" + p.name + ".txt") ? CP437Reader.ReadAllText("text/login/" + p.name + ".txt") : "joined the game."), false);
- Server.IRC.Say(p.name + " joined the game");
- if (p.adminchat)
- {
- adminchat.Use(p, message);
- }
- }
- }
- public override void Help(Player p)
- {
- Player.SendMessage(p, "/xhide - like /hide, only it doesn't send a message to ops.");
- }
- }
-}
-
diff --git a/Commands/World/CmdMuseum.cs b/Commands/World/CmdMuseum.cs
index da4008ea3..8bf03c246 100644
--- a/Commands/World/CmdMuseum.cs
+++ b/Commands/World/CmdMuseum.cs
@@ -82,7 +82,7 @@ namespace MCGalaxy.Commands
level.name = "&cMuseum " + Server.DefaultColor + "(" + message.Split(' ')[0] + " " + message.Split(' ')[1] + ")";
if (!p.hidden)
- Player.GlobalMessage(p.color + p.prefix + p.name + Server.DefaultColor + " went to the " + level.name);
+ Player.GlobalMessage(p.FullName + " %Swent to the " + level.name);
} else {
Player.SendMessage(p, "Level or backup could not be found.");
}
diff --git a/Commands/other/CmdReview.cs b/Commands/other/CmdReview.cs
index d1f3aa842..e27f0daba 100644
--- a/Commands/other/CmdReview.cs
+++ b/Commands/other/CmdReview.cs
@@ -61,7 +61,7 @@ namespace MCGalaxy.Commands
bool isopson = false;
Player[] players = PlayerInfo.Online.Items;
foreach (Player pl in players) {
- if (pl.group.Permission >= Server.reviewnext && !pl.hidden) {
+ if (pl.group.Permission >= Server.reviewnext && Player.CanSee(p, pl)) {
isopson = true; break;
}
}
@@ -70,12 +70,12 @@ namespace MCGalaxy.Commands
{
Server.reviewlist.Add(p.name);
int reviewlistpos = Server.reviewlist.IndexOf(p.name);
- if (reviewlistpos > 1) { Player.SendMessage(p, "You entered the &creview " + Server.DefaultColor + "queue. You have &c" + reviewlistpos.ToString() + Server.DefaultColor + " people in front of you in the queue"); }
- if (reviewlistpos == 1) { Player.SendMessage(p, "You entered the &creview " + Server.DefaultColor + "queue. There is &c1 " + Server.DefaultColor + "person in front of you in the queue"); }
- if ((reviewlistpos + 1) == 1) { Player.SendMessage(p, "You entered the &creview " + Server.DefaultColor + "queue. You are &cfirst " + Server.DefaultColor + "in line!"); }
+ if (reviewlistpos > 1) { Player.SendMessage(p, "You entered the &creview %Squeue. You have &c" + reviewlistpos + " %Speople in front of you in the queue"); }
+ if (reviewlistpos == 1) { Player.SendMessage(p, "You entered the &creview %Squeue. There is &c1 %Sperson in front of you in the queue"); }
+ if (reviewlistpos == 0) { Player.SendMessage(p, "You entered the &creview %Squeue. You are &cfirst %Sin line!"); }
Player.SendMessage(p, "The Online Operators have been notified. Someone should be with you shortly.");
- string start = (reviewlistpos + 1) > 1 ? "There are now &c" + (reviewlistpos + 1) + " %Speople" : "There is now &c1 %Sperson";
+ string start = reviewlistpos > 0 ? "There are now &c" + (reviewlistpos + 1) + " %Speople" : "There is now &c1 %Sperson";
Chat.GlobalMessageMinPerms(p.color + p.name + " %Sentered the review queue", Server.reviewnext);
Chat.GlobalMessageMinPerms(start + " waiting for a &creview!", Server.reviewnext);
p.ReviewTimer();
diff --git a/MCGalaxy_.csproj b/MCGalaxy_.csproj
index a3d8b0087..0231ab7d3 100644
--- a/MCGalaxy_.csproj
+++ b/MCGalaxy_.csproj
@@ -299,7 +299,6 @@
-
diff --git a/Player/Player.cs b/Player/Player.cs
index 8ee317381..d673d47fa 100644
--- a/Player/Player.cs
+++ b/Player/Player.cs
@@ -479,42 +479,40 @@ namespace MCGalaxy {
}
}
- public static void GlobalSpawn(Player from, ushort x, ushort y, ushort z, byte rotx, byte roty, bool self, string possession = "")
- {
+ public static void GlobalSpawn(Player p, ushort x, ushort y, ushort z,
+ byte rotx, byte roty, bool self, string possession = "") {
Player[] players = PlayerInfo.Online.Items;
- foreach (Player p in players) {
- if (p.Loading && p != from) continue;
- if (p.level != from.level || (from.hidden && !self)) continue;
+ foreach (Player other in players) {
+ if (other.Loading && p != other) continue;
+ if (p.level != other.level || (p.hidden && !self)) continue;
- if (p != from)
- {
- if (Server.ZombieModeOn && !p.aka) {
- if (from.infected) {
+ if (p != other) {
+ if (Server.ZombieModeOn && !other.aka) {
+ if (p.infected) {
if (Server.zombie.ZombieName != "")
- p.SendSpawn(from.id, Colors.red + Server.zombie.ZombieName + possession, x, y, z, rotx, roty);
+ other.SendSpawn(p.id, Colors.red + Server.zombie.ZombieName + possession, x, y, z, rotx, roty);
else
- p.SendSpawn(from.id, Colors.red + from.name + possession, x, y, z, rotx, roty);
- } else if (!from.referee) {
- p.SendSpawn(from.id, from.color + from.name + possession, x, y, z, rotx, roty);
+ other.SendSpawn(p.id, Colors.red + p.name + possession, x, y, z, rotx, roty);
+ } else if (!p.referee) {
+ other.SendSpawn(p.id, p.color + p.name + possession, x, y, z, rotx, roty);
}
} else {
- p.SendSpawn(from.id, from.color + from.name + possession, x, y, z, rotx, roty);
+ other.SendSpawn(p.id, p.color + p.name + possession, x, y, z, rotx, roty);
}
- }
- else if (self)
- {
- p.pos = new ushort[3] { x, y, z }; p.rot = new byte[2] { rotx, roty };
- p.oldpos = p.pos; p.basepos = p.pos; p.oldrot = p.rot;
- p.SendSpawn(0xFF, from.color + from.name + possession, x, y, z, rotx, roty);
+ } else if (self) {
+ other.pos = new ushort[3] { x, y, z }; other.rot = new byte[2] { rotx, roty };
+ other.oldpos = other.pos; other.basepos = other.pos; other.oldrot = other.rot;
+ other.SendSpawn(0xFF, p.color + p.name + possession, x, y, z, rotx, roty);
}
}
}
- public static void GlobalDespawn(Player from, bool self) {
+
+ public static void GlobalDespawn(Player p, bool self) {
Player[] players = PlayerInfo.Online.Items;
- foreach (Player p in players) {
- if ( p.level != from.level || ( from.hidden && !self ) ) continue;
- if ( p != from ) { p.SendDespawn(from.id); }
- else if ( self ) { p.SendDespawn(255); }
+ foreach (Player other in players) {
+ if (p.level != other.level || (p.hidden && !self) ) continue;
+ if (p != other) { other.SendDespawn(p.id); }
+ else if (self) { other.SendDespawn(255); }
}
}
@@ -595,7 +593,7 @@ namespace MCGalaxy {
isFlying = false;
aiming = false;
- SendKick(kickMsg, sync);
+ SendKick(kickMsg, sync);
if (!loggedIn) {
connections.Remove(this);
RemoveFromPending();
@@ -615,7 +613,7 @@ namespace MCGalaxy {
GlobalDespawn(this, false);
if (discMsg != null) {
if (!hidden) {
- string leavem = "&c- " + color + prefix + DisplayName + " %S" + discMsg;
+ string leavem = "&c- " + FullName + " %S" + discMsg;
if ((Server.guestLeaveNotify && group.Permission <= LevelPermission.Guest) || group.Permission > LevelPermission.Guest) {
Player[] players = PlayerInfo.Online.Items;
foreach (Player pl in players) { Player.SendMessage(pl, leavem); }