diff --git a/src/main/java/re/imc/geysermodelengine/GeyserModelEngine.java b/src/main/java/re/imc/geysermodelengine/GeyserModelEngine.java index 233d59f..03778ff 100644 --- a/src/main/java/re/imc/geysermodelengine/GeyserModelEngine.java +++ b/src/main/java/re/imc/geysermodelengine/GeyserModelEngine.java @@ -45,16 +45,6 @@ public final class GeyserModelEngine extends JavaPlugin { @Getter private Cache joinedPlayer; - @Getter - @Setter - private boolean spawningModelEntity = false; - - - @Getter - @Setter - private ModelEntity currentModel = null; - - @Getter private int joinSendDelay; diff --git a/src/main/java/re/imc/geysermodelengine/listener/AddEntityPacketListener.java b/src/main/java/re/imc/geysermodelengine/listener/AddEntityPacketListener.java deleted file mode 100644 index d34e968..0000000 --- a/src/main/java/re/imc/geysermodelengine/listener/AddEntityPacketListener.java +++ /dev/null @@ -1,72 +0,0 @@ -package re.imc.geysermodelengine.listener; - -import com.comphenix.protocol.PacketType; -import com.comphenix.protocol.ProtocolLibrary; -import com.comphenix.protocol.events.*; -import com.comphenix.protocol.reflect.StructureModifier; -import org.bukkit.Bukkit; -import org.bukkit.entity.Entity; -import org.geysermc.floodgate.api.FloodgateApi; -import re.imc.geysermodelengine.GeyserModelEngine; -import re.imc.geysermodelengine.model.EntityTask; -import re.imc.geysermodelengine.model.ModelEntity; - -import java.util.Set; - -@Deprecated -public class AddEntityPacketListener extends PacketAdapter { - public AddEntityPacketListener() { - super(GeyserModelEngine.getInstance(), ListenerPriority.HIGHEST, Set.of(PacketType.Play.Server.SPAWN_ENTITY), ListenerOptions.SYNC); - } - - @Override - public void onPacketSending(PacketEvent event) { - - PacketContainer packet = event.getPacket(); - StructureModifier modifier = packet.getEntityModifier(event); - Entity entity = modifier.readSafely(0); - - if (entity == null) { - return; - } - boolean isBedrock = FloodgateApi.getInstance().isFloodgatePlayer(event.getPlayer().getUniqueId()); - ModelEntity model = ModelEntity.MODEL_ENTITIES.get(entity.getEntityId()); - - - if (model != null) { - if (isBedrock) { - if (packet.getMeta("delayed").isPresent()) { - if (model.getTask().isLooping()) { - - String lastAnimation = model.getTask().getLastAnimation(); - model.getTask().playBedrockAnimation(lastAnimation, Set.of(event.getPlayer()), true, 0f); - } - return; - } - - EntityTask task = model.getTask(); - int delay = 1; - boolean firstJoined = GeyserModelEngine.getInstance().getJoinedPlayer().getIfPresent(event.getPlayer()) != null; - if (firstJoined) { - delay = GeyserModelEngine.getInstance().getJoinSendDelay(); - } - if (task == null || firstJoined) { - Bukkit.getScheduler().runTaskLater(GeyserModelEngine.getInstance(), () -> { - model.getTask().sendEntityData(event.getPlayer(), GeyserModelEngine.getInstance().getSendDelay()); - }, delay); - } else { - task.sendEntityData(event.getPlayer(), GeyserModelEngine.getInstance().getSendDelay()); - } - - event.setCancelled(true); - - Bukkit.getScheduler().runTaskLater(GeyserModelEngine.getInstance(), () -> { - packet.setMeta("delayed", 1); - ProtocolLibrary.getProtocolManager().sendServerPacket(event.getPlayer(), packet); - }, delay + 2); - } else { - event.setCancelled(true); - } - } - } -} diff --git a/src/main/java/re/imc/geysermodelengine/listener/ModelListener.java b/src/main/java/re/imc/geysermodelengine/listener/ModelListener.java index 7efca10..c50e01a 100644 --- a/src/main/java/re/imc/geysermodelengine/listener/ModelListener.java +++ b/src/main/java/re/imc/geysermodelengine/listener/ModelListener.java @@ -99,28 +99,6 @@ public class ModelListener implements Listener { - @EventHandler(priority = EventPriority.HIGHEST) - public void onModelEntitySpawn(EntitySpawnEvent event) { - if (GeyserModelEngine.getInstance().isSpawningModelEntity() && event.getEntity() instanceof LivingEntity entity) { - if (event.isCancelled()) { - event.setCancelled(false); - } - ModelEntity model = GeyserModelEngine.getInstance().getCurrentModel(); - int id = entity.getEntityId(); - ActiveModel activeModel = model.getActiveModel(); - ModelEntity.MODEL_ENTITIES.put(id, model); - model.applyFeatures(entity, "model." + activeModel.getBlueprint().getName()); - GeyserModelEngine.getInstance().setCurrentModel(null); - GeyserModelEngine.getInstance().setSpawningModelEntity(false); - - for (Player onlinePlayer : Bukkit.getOnlinePlayers()) { - if (FloodgateApi.getInstance().isFloodgatePlayer(onlinePlayer.getUniqueId())) { - PlayerUtils.setCustomEntity(onlinePlayer, entity.getEntityId(), "modelengine:" + model.getActiveModel().getBlueprint().getName().toLowerCase()); - } - } - } - } - @EventHandler public void onModelEntityHurt(EntityDamageEvent event) { Map model = ModelEntity.ENTITIES.get(event.getEntity().getEntityId()); diff --git a/src/main/java/re/imc/geysermodelengine/model/ModelEntity.java b/src/main/java/re/imc/geysermodelengine/model/ModelEntity.java index a1417e6..c175edd 100644 --- a/src/main/java/re/imc/geysermodelengine/model/ModelEntity.java +++ b/src/main/java/re/imc/geysermodelengine/model/ModelEntity.java @@ -69,30 +69,4 @@ public class ModelEntity { } - public void applyFeatures(LivingEntity display, String name) { - display.setGravity(false); - display.setMaxHealth(2048); - display.setHealth(2048); - display.setMetadata("model_entity", new FixedMetadataValue(GeyserModelEngine.getInstance(), true)); - - //display.setInvulnerable(true); - - display.setAI(false); - display.setSilent(true); - display.setPersistent(false); - - // armorStand.setVisible(false); - - /* - String uuid = UUID.randomUUID().toString(); - MobDisguise disguise = new MobDisguise(DisguiseType.getType(entity.getType())); - disguise.setDisguiseName(uuid); - - DisguiseAPI.disguiseEntity(display, disguise); - - */ - - } - - }