Снова партилкы...

  • Автор темы Автор темы Kurumi
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Kurumi

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Kurumi
Я видел много подобных тем в интернете, и одну на этом форуме. Я все делаю как надо, по крайней мере я так думаю. Надеюсь на понимание и помощь...upload_2017-12-27_20-45-41.png
 
Класс CraftParticle:
Код:
import net.minecraft.server.v1_8_R3.EnumParticle;
import org.*********ventory.ItemStack;
import org.bukkit.material.MaterialData;

public class CraftParticle {
    public static EnumParticle toNMS(Particle bukkit) {
        return EnumParticle.valueOf(bukkit.name());
    }

    public static Particle toBukkit(EnumParticle nms) {
        return Particle.valueOf(nms.name());
    }

    public static int[] toData(Particle particle, Object obj) {
        if (particle.getDataType().equals(Void.class)) {
            return new int[0];
        }
        if (particle.getDataType().equals(ItemStack.class)) {
            if (obj == null) {
                return new int[2];
            }
            ItemStack itemStack = (ItemStack) obj;
            return new int[] { itemStack.getType().getId(), itemStack.getDurability() };
        }
        if (particle.getDataType().equals(MaterialData.class)) {
            if (obj == null) {
                return new int[1];
            }
            MaterialData data = (MaterialData) obj;
            return new int[] { data.getItemTypeId() + (data.getData() << 12) };
        }
        throw new IllegalArgumentException(particle.getDataType().toString());
    }
}
Класс Particle:
Код:
import org.*********ventory.ItemStack;
import org.bukkit.material.MaterialData;

public enum Particle {
    EXPLOSION_NORMAL, EXPLOSION_LARGE, EXPLOSION_HUGE, FIREWORKS_SPARK, WATER_BUBBLE, WATER_SPLASH, WATER_WAKE, SUSPENDED, SUSPENDED_DEPTH, CRIT, CRIT_MAGIC, SMOKE_NORMAL, SMOKE_LARGE, SPELL, SPELL_INSTANT, SPELL_MOB, SPELL_MOB_AMBIENT, SPELL_WITCH, DRIP_WATER, DRIP_LAVA, VILLAGER_ANGRY, VILLAGER_HAPPY, TOWN_AURA, NOTE, PORTAL, ENCHANTMENT_TABLE, FLAME, LAVA, FOOTSTEP, CLOUD, REDSTONE, SNOWBALL, SNOW_SHOVEL, SLIME, HEART, BARRIER, ITEM_CRACK(
            ItemStack.class), BLOCK_CRACK(MaterialData.class), BLOCK_DUST(
                    MaterialData.class), WATER_DROP, ITEM_TAKE, MOB_APPEARANCE, DRAGON_BREATH, END_ROD, DAMAGE_INDICATOR, SWEEP_ATTACK, FALLING_DUST(
                            MaterialData.class), TOTEM, SPIT;

    private final Class<?> dataType;

    private Particle() {
        this.dataType = Void.class;
    }

    private Particle(Class<?> data) {
        this.dataType = data;
    }

    public Class<?> getDataType() {
        return this.dataType;
    }
}
Класс SpawnParticle:
Код:
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_8_R3.CraftWorld;

import net.minecraft.server.v1_8_R3.WorldServer;

public class SpawnParticle {
    WorldServer world;

    public SpawnParticle(World w) {
        world = ((CraftWorld) w).getHandle();
    }

    public void spawnParticle(Particle particle, Location location, int count) {
        spawnParticle(particle, location.getX(), location.getY(), location.getZ(), count);
    }

    public void spawnParticle(Particle particle, double x, double y, double z, int count) {
        spawnParticle(particle, x, y, z, count, null);
    }

    public <T> void spawnParticle(Particle particle, Location location, int count, T data) {
        spawnParticle(particle, location.getX(), location.getY(), location.getZ(), count, data);
    }

    public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, T data) {
        spawnParticle(particle, x, y, z, count, 0.0D, 0.0D, 0.0D, data);
    }

    public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY,
            double offsetZ) {
        spawnParticle(particle, location.getX(), location.getY(), location.getZ(), count, offsetX, offsetY, offsetZ);
    }

    public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX,
            double offsetY, double offsetZ) {
        spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, null);
    }

    public <T> void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY,
            double offsetZ, T data) {
        spawnParticle(particle, location.getX(), location.getY(), location.getZ(), count, offsetX, offsetY, offsetZ,
                data);
    }

    public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX,
            double offsetY, double offsetZ, T data) {
        spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, 1.0D, data);
    }

    public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY,
            double offsetZ, double extra) {
        spawnParticle(particle, location.getX(), location.getY(), location.getZ(), count, offsetX, offsetY, offsetZ,
                extra);
    }

    public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX,
            double offsetY, double offsetZ, double extra) {
        spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, extra, null);
    }

    public <T> void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY,
            double offsetZ, double extra, T data) {
        spawnParticle(particle, location.getX(), location.getY(), location.getZ(), count, offsetX, offsetY, offsetZ,
                extra, data);
    }

    public <T> void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX,
            double offsetY, double offsetZ, double extra, T data) {
        if ((data != null) && (!particle.getDataType().isInstance(data))) {
            throw new IllegalArgumentException("data should be " + particle.getDataType() + " got " + data.getClass());
        }
        world.sendParticles(null, CraftParticle.toNMS(particle), true, x, y, z, count, offsetX, offsetY, offsetZ, extra,
                CraftParticle.toData(particle, data));
    }
}
 
HTML:
Caused by: java.lang.ClassNotFoundException: org.bukkit.craftbukkit.v1_8_R1.CraftWorld
Получил такую ошибку в консоли. Сделал другой импорт для CraftWorld, т.к. старый не работал
upload_2017-12-27_23-35-53.png
 
Ну вот таким отбитым помогать лучше не надо, пусть сначала хотя бы поймут что такое java и как все работает, книги чтоли почитают
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх