mirror of
https://github.com/xSquishyLiam/mc-GeyserModelEngine-plugin.git
synced 2025-12-19 14:59:19 +00:00
fix
This commit is contained in:
@@ -77,13 +77,8 @@ public class EntityTask {
|
|||||||
|
|
||||||
|
|
||||||
if (tick % 5 == 0) {
|
if (tick % 5 == 0) {
|
||||||
|
|
||||||
checkViewers(viewers);
|
|
||||||
|
|
||||||
if (tick % 40 == 0) {
|
if (tick % 40 == 0) {
|
||||||
|
|
||||||
for (Player viewer : Set.copyOf(viewers)) {
|
for (Player viewer : Set.copyOf(viewers)) {
|
||||||
|
|
||||||
if (!canSee(viewer, model.getEntity())) {
|
if (!canSee(viewer, model.getEntity())) {
|
||||||
viewers.remove(viewer);
|
viewers.remove(viewer);
|
||||||
}
|
}
|
||||||
@@ -135,17 +130,12 @@ public class EntityTask {
|
|||||||
|
|
||||||
private void sendSpawnPacket(Player onlinePlayer) {
|
private void sendSpawnPacket(Player onlinePlayer) {
|
||||||
EntityTask task = model.getTask();
|
EntityTask task = model.getTask();
|
||||||
int delay = 50;
|
|
||||||
boolean firstJoined = GeyserModelEngine.getInstance().getJoinedPlayer().getIfPresent(onlinePlayer) != null;
|
boolean firstJoined = GeyserModelEngine.getInstance().getJoinedPlayer().getIfPresent(onlinePlayer) != null;
|
||||||
|
|
||||||
if (firstJoined) {
|
if (firstJoined) {
|
||||||
delay = GeyserModelEngine.getInstance().getJoinSendDelay();
|
task.sendEntityData(onlinePlayer, GeyserModelEngine.getInstance().getJoinSendDelay() / 50);
|
||||||
}
|
|
||||||
if (task == null || firstJoined) {
|
|
||||||
GeyserModelEngine.getInstance().getScheduler().schedule(() -> {
|
|
||||||
model.getTask().sendEntityData(onlinePlayer, 1);
|
|
||||||
}, delay, TimeUnit.MILLISECONDS);
|
|
||||||
} else {
|
} else {
|
||||||
task.sendEntityData(onlinePlayer, 1);
|
task.sendEntityData(onlinePlayer, 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -195,7 +185,7 @@ public class EntityTask {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void updateEntityProperties(Collection<Player> players, boolean ignore, String... forceAnims) {
|
public void updateEntityProperties(Collection<Player> players, boolean firstSend, String... forceAnims) {
|
||||||
int entity = model.getEntity().getEntityId();
|
int entity = model.getEntity().getEntityId();
|
||||||
Set<String> forceAnimSet = Set.of(forceAnims);
|
Set<String> forceAnimSet = Set.of(forceAnims);
|
||||||
|
|
||||||
@@ -266,7 +256,7 @@ public class EntityTask {
|
|||||||
intUpdates.put("modelengine:anim" + i, integer);
|
intUpdates.put("modelengine:anim" + i, integer);
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
if (!ignore) {
|
if (!firstSend) {
|
||||||
if (intUpdates.equals(lastIntSet)) {
|
if (intUpdates.equals(lastIntSet)) {
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user