Skip to content

Instantly share code, notes, and snippets.

@jmurth1234
Created September 1, 2011 16:26
Show Gist options
  • Save jmurth1234/1186570 to your computer and use it in GitHub Desktop.
Save jmurth1234/1186570 to your computer and use it in GitHub Desktop.
Here is code
package net.rymate.ChangeName;
import java.util.logging.Logger;
import net.minecraft.server.EntityPlayer;
import net.minecraft.server.EntityTracker;
import net.minecraft.server.WorldServer;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.craftbukkit.entity.CraftPlayer;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
public class ChangePlayerName extends JavaPlugin {
Logger log = Logger.getLogger("Minecraft");
public void onDisable() {
log.info(this.getDescription().getMain() + "disabled!");
}
public void onEnable() {
log.info(this.getDescription().getMain() + "enabled!");
}
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
Player senderplayer = (Player) sender;
if (!(sender instanceof CraftPlayer)) {
sender.sendMessage("You are not an in-game player!");
return false;
}
if (senderplayer.hasPermission("change.name")) {
EntityPlayer player = (EntityPlayer) ((CraftPlayer) sender).getHandle();
if (args.length > 0) {
sender.sendMessage("You are now discuised as " + args[0] + "!");
senderplayer.setDisplayName(args[0]);
setPlayerName(player, args[0]);
} else {
sender.sendMessage("Wrong usage! /changename <name>");
}
return true;
} else {
sender.sendMessage("Nope, can't do that!");
}
return true;
}
//thanks to Lahwran for this code :D
public void setPlayerName(EntityPlayer player, String newname) {
WorldServer world = (WorldServer) player.world;
EntityTracker tracker = world.tracker;
tracker.untrackEntity(player);
player.name = newname;
tracker.track(player);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment