Annoying Error

Discussion in 'Plugin Development' started by iWareWolf, Jun 15, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    iWareWolf

    Code:
    package net.heroesofgalderon.skills;
     
    import com.herocraftonline.heroes.Heroes;
    import com.herocraftonline.heroes.api.SkillResult;
    import com.herocraftonline.heroes.characters.Hero;
    import com.herocraftonline.heroes.characters.skill.ActiveSkill;
    import com.herocraftonline.heroes.characters.skill.SkillType;
    import java.util.HashSet;
    import java.util.Set;
    import net.minecraft.server.v1_7_R3.PacketPlayOutEntityDestroy;
    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.block.Block;
    import org.bukkit.block.BlockFace;
    import org.bukkit.configuration.ConfigurationSection;
    import org.bukkit.craftbukkit.v1_7_R3.entity.CraftPlayer;
    import org.bukkit.entity.LivingEntity;
    import org.bukkit.entity.Player;
    import org.bukkit.entity.Snowball;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.EntityDamageByEntityEvent;
    import org.bukkit.metadata.FixedMetadataValue;
     
    public class SkillSpiderTrap
            extends ActiveSkill {
     
        public SkillSpiderTrap(Heroes plugin) {
            super(plugin, "SpiderTrap");
            setDescription("You conjure a web around your target and summoned spiders.");
            setUsage("/skill spidertrap");
            setArgumentRange(0, 0);
            setIdentifiers(new String[]{"skill spidertrap"});
            setTypes(new SkillType[]{SkillType.EARTH, SkillType.SILENCABLE, SkillType.HARMFUL});
            Bukkit.getServer().getPluginManager().registerEvents(new SkillBlockListener(this), plugin);
        }
     
        @Override
        public ConfigurationSection getDefaultConfig() {
            ConfigurationSection node = super.getDefaultConfig();
            return node;
        }
     
        @Override
        public SkillResult use(Hero hero, String[] args) {
            Player player = hero.getPlayer();
            Snowball sb = player.throwSnowball();
            sb.setVelocity(sb.getVelocity().multiply(1.5));
            sb.setMetadata("SpiderTrap", new FixedMetadataValue(this.plugin, ""));
     
            for (Player p : Bukkit.getServer().getOnlinePlayers()) {
                PacketPlayOutEntityDestroy packet = new PacketPlayOutEntityDestroy(sb.getEntityId());
                ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet);
            }
     
            broadcastExecuteText(hero);
            return SkillResult.NORMAL;
        }
     
        public class SkillBlockListener
                implements Listener {
     
            SkillSpiderTrap skill;
     
            public SkillBlockListener(SkillSpiderTrap skill) {
                this.skill = skill;
            }
     
            @EventHandler
            public void onDamage(EntityDamageByEntityEvent event) {
                if (event.getDamager() instanceof Snowball) {
                    Snowball sb = (Snowball) event.getDamager();
                    if (sb.getShooter() instanceof Player) {
                        Player player = (Player) sb.getShooter();
                        if (sb.hasMetadata("SpiderTrap")) {
                            if (event.getEntity() instanceof LivingEntity) {
                                LivingEntity ent = (LivingEntity) event.getEntity();
                                trapEntity(player, ent);
                            }
                        }
                    }
                }
            }
     
            private final BlockFace[] surrounding = new BlockFace[]{BlockFace.NORTH,
                BlockFace.NORTH_EAST,
                BlockFace.EAST,
                BlockFace.SOUTH_EAST,
                BlockFace.SOUTH,
                BlockFace.SOUTH_WEST,
                BlockFace.WEST,
                BlockFace.NORTH_WEST};
     
            public void trapEntity(Player player, LivingEntity entity) {
                final Set<Block> blocks = new HashSet<>();
                for (BlockFace bf : surrounding) {
                    Block block = entity.getLocation().getBlock().getRelative(bf);
                    if (block.getType().equals(Material.AIR)) {
                        block.setType(Material.WEB);
                        blocks.add(block);
                    }
                }
     
                Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(skill.plugin, new Runnable() {
     
                    @Override
                    public void run() {
                        for (Block block : blocks) {
                            block.setType(Material.AIR);
                        }
                    }
                }, 100);
            }
        }
     
        @Override
        public String getDescription(Hero hero) {
            return getDescription();
        }
    }
    

    Code:
    15.06 19:55:22 [Server] INFO ... 20 more
    15.06 19:55:22 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:292) ~[Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_55]
    15.06 19:55:22 [Server] INFO at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_55]
    15.06 19:55:22 [Server] INFO at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_55]
    15.06 19:55:22 [Server] INFO at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_55]
    15.06 19:55:22 [Server] INFO at net.heroesofgalderon.skills.SkillSpiderTrap$SkillBlockListener.onDamage(SkillSpiderTrap.java:79) ~[?:?]
    15.06 19:55:22 [Server] INFO at net.heroesofgalderon.skills.SkillSpiderTrap$SkillBlockListener.trapEntity(SkillSpiderTrap.java:105) ~[?:?]
    15.06 19:55:22 [Server] INFO Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:482) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:576) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:283) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:686) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.WorldServer.tickEntities(WorldServer.java:516) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.World.tickEntities(World.java:1412) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.World.playerJoinedWorld(World.java:1545) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.World.entityJoinedWorld(World.java:1569) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.EntityProjectile.h(EntityProjectile.java:155) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.EntitySnowball.a(SourceFile:30) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.EntityMonster.damageEntity(EntityMonster.java:48) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at net.minecraft.server.v1_7_R3.EntityLiving.damageEntity(EntityLiving.java:663) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.craftbukkit.v1_7_R3.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:451) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.craftbukkit.v1_7_R3.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:424) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.craftbukkit.v1_7_R3.event.CraftEventFactory.callEvent(CraftEventFactory.java:99) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30) ~[Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:294) ~[Spigot.jar:git-Spigot-1475]
    15.06 19:55:22 [Server] INFO org.bukkit.event.EventException
    15.06 19:55:22 [Server] ERROR Could not pass event EntityDamageByEntityEvent to Heroes v1.5.5.3-SNAPSHOT-b29
     
  2. Offline

    Onlineids

  3. Offline

    iWareWolf

  4. Offline

    Onlineids

  5. Offline

    iWareWolf

  6. Offline

    messageofdeath

    It has something to do with a ClassCastException java.lang.String cannot be cast to java.lang.Integer
     
  7. Offline

    Onlineids

    messageofdeath Yea I saw that just couldn't find the source of that error
     
  8. Offline

    JaguarJo

    Locked. You are not using CraftBukkit software. We do not support unofficial builds. Please seek support from the makers of your software.
     
Thread Status:
Not open for further replies.

Share This Page