Development Assistance Cannot cast CraftGhast to CraftCreature

Discussion in 'Plugin Help/Development/Requests' started by darkbro100, Dec 16, 2014.

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

    darkbro100

    Code:
        public void run() {
            if(GamePlayer.players.size() > 0) {
                for(GamePlayer player : GamePlayer.players) {
                    if(!player.hasheli) continue;
                  
                    Entity ghast = player.helicopter;
                  
                    int x = player.getPlayer().getLocation().getBlockX();
                    int y = player.getPlayer().getLocation().getBlockY() + 10;
                    int z = player.getPlayer().getLocation().getBlockZ();
                  
                    CraftCreature cc = (CraftCreature) ghast; //error here
                    EntityCreature cent = cc.getHandle();
                  
                    PathEntity path = cent.world.a(cent, x, y, z, (float) cent.getAttributeInstance(GenericAttributes.b).getValue(), true, false, false, true);
                    cent.setPathEntity(path);
                    cent.getNavigation().a(path, 1);
                }
            }
        }
    
    I'm trying to make a ghast move to a player's location every second, however I keep getting this error whenever it is ran:

    Code:
    [01:12:27 WARN]: [ffa] Task #9 for ffa v1.0 generated an exception
    java.lang.ClassCastException: org.bukkit.craftbukkit.v1_7_R4.entity.CraftGhast cannot be cast to org.bukkit.craftbukkit.v1_7_R4.entity.CraftCreature
            at me.mario.ffa.HelicopterTask.run(HelicopterTask.java:24) ~[?:?]
            at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot.jar:git-Spigot-1649]
            at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot.jar:git-Spigot-1649]
            at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:641) [spigot.jar:git-Spigot-1649]
            at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [spigot.jar:git-Spigot-1649]
            at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [spigot.jar:git-Spigot-1649]
            at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [spigot.jar:git-Spigot-1649]
            at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [spigot.jar:git-Spigot-1649]
    
    Any ideas on how to fix this?
     
  2. Offline

    nverdier

    A Entity isn't an CraftCreature.... You can't convert between them. Also, what is player.helicopter?
     
  3. Offline

    97WaterPolo

    @darkbro100
    Try converting it to a normal bukkit entity first.
    PHP:
                                CraftGhast g;
                                
    CraftCreature cc = (CraftCreatureg.getHandle().getBukkitEntity();
                                
    cc.getHandle().getNavigation().a(path,l);
     
  4. Offline

    Rocoty

    Apparently a ghast isn't a creature, so you can't treat it as one. For the record, if ghasts were in fact creatures, you wouldn't have to cast anyway. (Upcasts are in most cases redundant)
     
  5. Offline

    darkbro100

    So how would I set a ghast's path if I can't treat it as a creature?

    @97WaterPolo the code you gave me did not work, I got the same error. :c

    EDIT by TImtower: merged posts and moved to Bukkit alternatives.
     
    Last edited by a moderator: Dec 18, 2014
  6. Offline

    darkbro100

    bump, any help would be appreciated
     
Thread Status:
Not open for further replies.

Share This Page