mirror of
https://github.com/essentials/Essentials.git
synced 2025-08-18 12:31:26 +02:00
Fix vanish
This commit is contained in:
@@ -270,8 +270,10 @@ public class Essentials extends JavaPlugin implements IEssentials
|
||||
{
|
||||
for (Player p : getServer().getOnlinePlayers())
|
||||
{
|
||||
if (getUser(p).isVanished())
|
||||
IUser user = getUser(p);
|
||||
if (user.isVanished())
|
||||
{
|
||||
user.toggleVanished();
|
||||
p.sendMessage(_("unvanishedReload"));
|
||||
}
|
||||
}
|
||||
@@ -395,7 +397,7 @@ public class Essentials extends JavaPlugin implements IEssentials
|
||||
{
|
||||
return userMap.getUser(playerName);
|
||||
}
|
||||
*/
|
||||
*/
|
||||
@Override
|
||||
public World getWorld(final String name)
|
||||
{
|
||||
|
@@ -11,25 +11,14 @@ public class Commandvanish extends EssentialsCommand
|
||||
@Override
|
||||
protected void run(IUser user, String commandLabel, String[] args) throws Exception
|
||||
{
|
||||
user.toggleVanished();
|
||||
if (user.isVanished())
|
||||
{
|
||||
for (Player p : server.getOnlinePlayers())
|
||||
{
|
||||
p.showPlayer(user);
|
||||
}
|
||||
user.sendMessage(_("vanished"));
|
||||
user.sendMessage(_("unvanished"));
|
||||
}
|
||||
else
|
||||
{
|
||||
for (Player p : server.getOnlinePlayers())
|
||||
{
|
||||
if (!Permissions.VANISH_SEE_OTHERS.isAuthorized(p))
|
||||
{
|
||||
p.hidePlayer(user);
|
||||
}
|
||||
user.sendMessage(_("unvanished"));
|
||||
}
|
||||
}
|
||||
user.toggleVanished();
|
||||
}
|
||||
}
|
||||
|
@@ -131,6 +131,10 @@ public class EssentialsPlayerListener implements Listener
|
||||
{
|
||||
user.setGodModeEnabled(false);
|
||||
}
|
||||
if (user.isVanished())
|
||||
{
|
||||
user.toggleVanished();
|
||||
}
|
||||
if (user.getData().getInventory() != null)
|
||||
{
|
||||
user.getInventory().setContents(user.getData().getInventory().getBukkitInventory());
|
||||
|
@@ -29,7 +29,6 @@ import org.bukkit.inventory.ItemStack;
|
||||
|
||||
public class User extends UserBase implements IUser
|
||||
{
|
||||
|
||||
private CommandSender replyTo = null;
|
||||
@Getter
|
||||
private transient IUser teleportRequester;
|
||||
@@ -61,7 +60,6 @@ public class User extends UserBase implements IUser
|
||||
teleport = new Teleport(this, ess);
|
||||
}
|
||||
|
||||
|
||||
public User(final OfflinePlayer offlinePlayer, final IEssentials ess)
|
||||
{
|
||||
super(offlinePlayer, ess);
|
||||
@@ -674,8 +672,10 @@ public class User extends UserBase implements IUser
|
||||
spew = true;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (!overfilled.isEmpty()) {
|
||||
else
|
||||
{
|
||||
if (!overfilled.isEmpty())
|
||||
{
|
||||
throw new ChargeException("Inventory full");
|
||||
}
|
||||
}
|
||||
@@ -695,15 +695,19 @@ public class User extends UserBase implements IUser
|
||||
}
|
||||
return cost <= mon;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateMoneyCache(double userMoney) {
|
||||
if (super.getMoney() != userMoney) {
|
||||
public void updateMoneyCache(double userMoney)
|
||||
{
|
||||
if (super.getMoney() != userMoney)
|
||||
{
|
||||
super.setMoney(userMoney);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canAfford(double amount, boolean b) {
|
||||
public boolean canAfford(double amount, boolean b)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
private transient long teleportInvulnerabilityTimestamp = 0;
|
||||
@@ -730,6 +734,8 @@ public class User extends UserBase implements IUser
|
||||
teleportInvulnerabilityTimestamp = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasInvulnerabilityAfterTeleport()
|
||||
{
|
||||
return teleportInvulnerabilityTimestamp != 0 && teleportInvulnerabilityTimestamp >= System.currentTimeMillis();
|
||||
@@ -741,10 +747,23 @@ public class User extends UserBase implements IUser
|
||||
vanished = !vanished;
|
||||
if (vanished)
|
||||
{
|
||||
for (Player p : ess.getServer().getOnlinePlayers())
|
||||
{
|
||||
if (!Permissions.VANISH_SEE_OTHERS.isAuthorized(ess.getUser(p)))
|
||||
{
|
||||
p.hidePlayer(getBase());
|
||||
}
|
||||
}
|
||||
setHidden(true);
|
||||
ess.getVanishedPlayers().add(getName());
|
||||
}
|
||||
else
|
||||
{
|
||||
for (Player p : ess.getServer().getOnlinePlayers())
|
||||
{
|
||||
p.showPlayer(getBase());
|
||||
}
|
||||
setHidden(false);
|
||||
ess.getVanishedPlayers().remove(getName());
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user