Entity Module
Overview
The entity module allows you to interact with entities client-sided.
- Adds the ability to render rainbow sheep, client side instead of server-sided.
- Adds the ability to flip entities, without doing anything server-sided.
Integration
Override rainbow sheep for a player
public void overrideRainbowSheepExample(Player viewer) {
Optional<ApolloPlayer> apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId());
apolloPlayerOpt.ifPresent(apolloPlayer -> {
// Get all Sheep in the player's world
List<UUID> sheepUuids = viewer.getWorld().getEntitiesByClass(Sheep.class)
.stream().map(Sheep::getUniqueId).collect(Collectors.toList());
this.entityModule.overrideRainbowSheep(apolloPlayer, sheepUuids);
});
}
overrideRainbowSheep
Parameters
ApolloPlayer Viewer
- The player you want to view the rainbow sheep.
List<ApolloEntity> sheepEntities
- A list of all sheep entities you want to be rainbow.
Resetting rainbow sheep for a player
public void resetRainbowSheepExample(Player viewer) {
Optional<ApolloPlayer> apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId());
apolloPlayerOpt.ifPresent(apolloPlayer -> {
// Get all Sheep in the player's world
List<ApolloEntity> sheepEntities = viewer.getWorld().getEntitiesByClass(Sheep.class)
.stream().map(sheep -> new ApolloEntity(sheep.getEntityId(), sheep.getUniqueId()))
.collect(Collectors.toList());
this.entityModule.overrideRainbowSheep(apolloPlayer, sheepEntities);
});
}
resetRainbowSheep
Parameters
ApolloPlayer Viewer
- The player you want to reset the rainbow sheep for.
List<ApolloEntity> sheepEntities
- A list of all sheep entities you want to remove the rainbow state from.
Flip entities for a player
public void flipEntityExample(Player viewer) {
Optional<ApolloPlayer> apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId());
apolloPlayerOpt.ifPresent(apolloPlayer -> {
// Get all cows within 10 blocks of the player
List<ApolloEntity> entities = viewer.getWorld()
.getNearbyEntities(viewer.getLocation(), 10, 10, 10)
.stream().filter(entity -> entity instanceof Cow)
.map(cow -> new ApolloEntity(cow.getEntityId(), cow.getUniqueId()))
.collect(Collectors.toList());
this.entityModule.flipEntity(apolloPlayer, entities);
});
}
flipEntity
Parameters
ApolloPlayer Viewer
- The player you want to see the flipped entity.
List<ApolloEntity> entities
- A list of all entities you want to flip.
Resetting flipped entities for a player
public void resetFlippedEntityExample(Player viewer) {
Optional<ApolloPlayer> apolloPlayerOpt = Apollo.getPlayerManager().getPlayer(viewer.getUniqueId());
apolloPlayerOpt.ifPresent(apolloPlayer -> {
// Get all cows within 10 blocks of the player
List<ApolloEntity> entities = viewer.getWorld()
.getNearbyEntities(viewer.getLocation(), 10, 10, 10)
.stream().filter(entity -> entity instanceof Cow)
.map(cow -> new ApolloEntity(cow.getEntityId(), cow.getUniqueId()))
.collect(Collectors.toList());
this.entityModule.resetFlippedEntity(apolloPlayer, entities);
});
}
resetFlippedEntity
Parameters
ApolloPlayer Viewer
- The player you want to reset the flipped entity for.
List<ApolloEntity> entities
- A list of all entities you want to reset the flip state from.