painting provider
This commit is contained in:
parent
e9dc95275c
commit
0d99f705e8
2 changed files with 20 additions and 5 deletions
api/src/main/java/me/tofaa/entitylib
|
@ -1,6 +1,7 @@
|
|||
package me.tofaa.entitylib.meta.other;
|
||||
|
||||
import com.github.retrooper.packetevents.protocol.world.Direction;
|
||||
import com.github.retrooper.packetevents.protocol.world.PaintingType;
|
||||
import me.tofaa.entitylib.meta.EntityMeta;
|
||||
import me.tofaa.entitylib.meta.Metadata;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
@ -115,6 +116,10 @@ public class PaintingMeta extends EntityMeta {
|
|||
return this.height;
|
||||
}
|
||||
|
||||
public PaintingType asProtocolType() {
|
||||
return PaintingType.getById(this.ordinal());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,15 +1,14 @@
|
|||
package me.tofaa.entitylib.wrapper.spawning;
|
||||
|
||||
import com.github.retrooper.packetevents.protocol.world.Location;
|
||||
import com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerSpawnEntity;
|
||||
import com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerSpawnExperienceOrb;
|
||||
import com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerSpawnLivingEntity;
|
||||
import com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerSpawnWeatherEntity;
|
||||
import com.github.retrooper.packetevents.wrapper.play.server.*;
|
||||
import me.tofaa.entitylib.meta.other.PaintingMeta;
|
||||
import me.tofaa.entitylib.utils.Check;
|
||||
import me.tofaa.entitylib.wrapper.WrapperExperienceOrbEntity;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import sun.reflect.generics.reflectiveObjects.NotImplementedException;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.Optional;
|
||||
|
||||
interface SpawnPacketProviders {
|
||||
|
@ -41,9 +40,20 @@ interface SpawnPacketProviders {
|
|||
);
|
||||
};
|
||||
|
||||
@NotNull SpawnPacketProvider<WrapperPlayServerSpawnWeatherEntity> WEATHER_ENTITY = (user, entity) -> {
|
||||
@NotNull SpawnPacketProvider<WrapperPlayServerSpawnWeatherEntity> LEGACY_WEATHER_ENTITY = (user, entity) -> {
|
||||
throw new NotImplementedException();
|
||||
};
|
||||
@NotNull SpawnPacketProvider<WrapperPlayServerSpawnPainting> LEGACY_PAINTING = (user, entity) -> {
|
||||
Check.stateCondition(!(entity.getEntityMeta() instanceof PaintingMeta), "Attempted to use spawn packet provider for paintings but not using an entity with PaintingMeta.");
|
||||
PaintingMeta meta = entity.getEntityMeta(PaintingMeta.class);
|
||||
return new WrapperPlayServerSpawnPainting(
|
||||
entity.getEntityId(),
|
||||
entity.getUuid(),
|
||||
meta.getType().asProtocolType(),
|
||||
entity.getLocation().getPosition().toVector3i(),
|
||||
meta.getDirection()
|
||||
);
|
||||
};
|
||||
|
||||
@NotNull SpawnPacketProvider<WrapperPlayServerSpawnLivingEntity> PRE_1_19_LIVING = (user, entity) -> {
|
||||
Location location = entity.getLocation();
|
||||
|
|
Loading…
Reference in a new issue