mirror of
https://github.com/EssentialsX/Essentials.git
synced 2024-10-06 19:48:12 +02:00
Updated /spawnmob to use bukkit code
Less code that breaks with future minecraft updates.
This commit is contained in:
parent
9d6727daf2
commit
c378d98b0f
@ -1,15 +1,11 @@
|
|||||||
package com.earth2me.essentials;
|
package com.earth2me.essentials;
|
||||||
|
|
||||||
import java.lang.reflect.Constructor;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
import net.minecraft.server.Entity;
|
|
||||||
import net.minecraft.server.WorldServer;
|
|
||||||
import org.bukkit.Server;
|
import org.bukkit.Server;
|
||||||
import org.bukkit.craftbukkit.entity.CraftEntity;
|
import org.bukkit.entity.Entity;
|
||||||
import org.bukkit.craftbukkit.CraftServer;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
|
||||||
@ -84,14 +80,15 @@ public enum Mob
|
|||||||
{
|
{
|
||||||
"unchecked", "CallToThreadDumpStack"
|
"unchecked", "CallToThreadDumpStack"
|
||||||
})
|
})
|
||||||
public CraftEntity spawn(Player player, Server server) throws MobException
|
public Entity spawn(Player player, Server server) throws MobException
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
WorldServer world = ((org.bukkit.craftbukkit.CraftWorld)player.getWorld()).getHandle();
|
return player.getWorld().spawn(player.getLocation(), (Class<Entity>)ClassLoader.getSystemClassLoader().loadClass("net.minecraft.server.Entity" + entityClass));
|
||||||
Constructor<CraftEntity> craft = (Constructor<CraftEntity>)ClassLoader.getSystemClassLoader().loadClass("org.bukkit.craftbukkit.entity.Craft" + craftClass).getConstructors()[0];
|
//WorldServer world = ((org.bukkit.craftbukkit.CraftWorld)player.getWorld()).getHandle();
|
||||||
Constructor<Entity> entity = (Constructor<Entity>)ClassLoader.getSystemClassLoader().loadClass("net.minecraft.server.Entity" + entityClass).getConstructors()[0];
|
//Constructor<CraftEntity> craft = (Constructor<CraftEntity>)ClassLoader.getSystemClassLoader().loadClass("org.bukkit.craftbukkit.entity.Craft" + craftClass).getConstructors()[0];
|
||||||
return craft.newInstance((CraftServer)server, entity.newInstance(world));
|
//Constructor<Entity> entity = (Constructor<Entity>)ClassLoader.getSystemClassLoader().loadClass("net.minecraft.server.Entity" + entityClass).getConstructors()[0];
|
||||||
|
//return craft.newInstance((CraftServer)server, entity.newInstance(world));
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
@ -3,8 +3,6 @@ package com.earth2me.essentials.commands;
|
|||||||
import net.minecraft.server.WorldServer;
|
import net.minecraft.server.WorldServer;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.Server;
|
import org.bukkit.Server;
|
||||||
import org.bukkit.craftbukkit.entity.CraftEntity;
|
|
||||||
import com.earth2me.essentials.Essentials;
|
|
||||||
import com.earth2me.essentials.User;
|
import com.earth2me.essentials.User;
|
||||||
import com.earth2me.essentials.Mob;
|
import com.earth2me.essentials.Mob;
|
||||||
import com.earth2me.essentials.Mob.MobException;
|
import com.earth2me.essentials.Mob.MobException;
|
||||||
@ -20,6 +18,7 @@ import org.bukkit.craftbukkit.entity.CraftCreeper;
|
|||||||
import org.bukkit.craftbukkit.entity.CraftSheep;
|
import org.bukkit.craftbukkit.entity.CraftSheep;
|
||||||
import org.bukkit.craftbukkit.entity.CraftSlime;
|
import org.bukkit.craftbukkit.entity.CraftSlime;
|
||||||
import org.bukkit.craftbukkit.entity.CraftWolf;
|
import org.bukkit.craftbukkit.entity.CraftWolf;
|
||||||
|
import org.bukkit.entity.Entity;
|
||||||
|
|
||||||
|
|
||||||
public class Commandspawnmob extends EssentialsCommand
|
public class Commandspawnmob extends EssentialsCommand
|
||||||
@ -62,9 +61,9 @@ public class Commandspawnmob extends EssentialsCommand
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
CraftEntity spawnedMob = null;
|
Entity spawnedMob = null;
|
||||||
Mob mob = null;
|
Mob mob = null;
|
||||||
CraftEntity spawnedMount = null;
|
Entity spawnedMount = null;
|
||||||
Mob mobMount = null;
|
Mob mobMount = null;
|
||||||
|
|
||||||
mob = Mob.fromName(mobType);
|
mob = Mob.fromName(mobType);
|
||||||
@ -96,8 +95,8 @@ public class Commandspawnmob extends EssentialsCommand
|
|||||||
loc.setY(loc.getY() + 1);
|
loc.setY(loc.getY() + 1);
|
||||||
block = user.getWorld().getBlockAt(loc);
|
block = user.getWorld().getBlockAt(loc);
|
||||||
}
|
}
|
||||||
spawnedMob.teleportTo(loc);
|
spawnedMob.teleport(loc);
|
||||||
world.addEntity(spawnedMob.getHandle());
|
//world.addEntity((CraftEntity)spawnedMob).getHandle());
|
||||||
|
|
||||||
if (mountType != null)
|
if (mountType != null)
|
||||||
{
|
{
|
||||||
@ -116,9 +115,10 @@ public class Commandspawnmob extends EssentialsCommand
|
|||||||
user.sendMessage(Util.i18n("unableToSpawnMob"));
|
user.sendMessage(Util.i18n("unableToSpawnMob"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
spawnedMount.teleportTo(spawnedMob);
|
spawnedMount.teleport(spawnedMob);
|
||||||
spawnedMount.getHandle().setPassengerOf(spawnedMob.getHandle());
|
spawnedMob.setPassenger(spawnedMount);
|
||||||
world.addEntity(spawnedMount.getHandle());
|
//spawnedMount.getHandle().setPassengerOf(spawnedMob.getHandle());
|
||||||
|
//world.addEntity(spawnedMount.getHandle());
|
||||||
}
|
}
|
||||||
if (mobData != null)
|
if (mobData != null)
|
||||||
{
|
{
|
||||||
@ -143,8 +143,8 @@ public class Commandspawnmob extends EssentialsCommand
|
|||||||
for (int i = 1; i < mobCount; i++)
|
for (int i = 1; i < mobCount; i++)
|
||||||
{
|
{
|
||||||
spawnedMob = mob.spawn(user, server);
|
spawnedMob = mob.spawn(user, server);
|
||||||
spawnedMob.teleportTo(loc);
|
spawnedMob.teleport(loc);
|
||||||
world.addEntity(spawnedMob.getHandle());
|
//world.addEntity(spawnedMob.getHandle());
|
||||||
if (mobMount != null)
|
if (mobMount != null)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@ -156,9 +156,10 @@ public class Commandspawnmob extends EssentialsCommand
|
|||||||
user.sendMessage(Util.i18n("unableToSpawnMob"));
|
user.sendMessage(Util.i18n("unableToSpawnMob"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
spawnedMount.teleportTo(spawnedMob);
|
spawnedMount.teleport(spawnedMob);
|
||||||
spawnedMount.getHandle().setPassengerOf(spawnedMob.getHandle());
|
spawnedMob.setPassenger(spawnedMount);
|
||||||
world.addEntity(spawnedMount.getHandle());
|
//spawnedMount.getHandle().setPassengerOf(spawnedMob.getHandle());
|
||||||
|
//world.addEntity(spawnedMount.getHandle());
|
||||||
}
|
}
|
||||||
if (mobData != null)
|
if (mobData != null)
|
||||||
{
|
{
|
||||||
@ -195,7 +196,7 @@ public class Commandspawnmob extends EssentialsCommand
|
|||||||
return s.toUpperCase().charAt(0) + s.toLowerCase().substring(1);
|
return s.toUpperCase().charAt(0) + s.toLowerCase().substring(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void changeMobData(String type, CraftEntity spawned, String data, User user) throws Exception
|
private void changeMobData(String type, Entity spawned, String data, User user) throws Exception
|
||||||
{
|
{
|
||||||
if ("Slime".equalsIgnoreCase(type))
|
if ("Slime".equalsIgnoreCase(type))
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user