3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-07-30 00:58:13 +02:00

Only add entity to entity cache if ID doesn't exist (#428)

Dieser Commit ist enthalten in:
Camotoy 2020-04-26 00:54:42 -04:00 committet von GitHub
Ursprung 35506f8bef
Commit 0caecf68db
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 4AEE18F83AFDEB23

Datei anzeigen

@ -58,13 +58,19 @@ public class EntityCache {
}
public void spawnEntity(Entity entity) {
cacheEntity(entity);
entity.spawnEntity(session);
if (cacheEntity(entity)) {
entity.spawnEntity(session);
}
}
public void cacheEntity(Entity entity) {
entityIdTranslations.put(entity.getEntityId(), entity.getGeyserId());
entities.put(entity.getGeyserId(), entity);
public boolean cacheEntity(Entity entity) {
// Check to see if the entity exists, otherwise we can end up with duplicated mobs
if (!entityIdTranslations.containsKey(entity.getEntityId())) {
entityIdTranslations.put(entity.getEntityId(), entity.getGeyserId());
entities.put(entity.getGeyserId(), entity);
return true;
}
return false;
}
public boolean removeEntity(Entity entity, boolean force) {