Merge pull request #428 from NoJokeFNA/fix/sound-wrappers
[1.19] Fix sound wrappers
This commit is contained in:
1 file changed
+42
+42
@@ -19,6 +19,7 @@
|
||||
package com.github.retrooper.packetevents.wrapper.play.server;
|
||||
|
||||
import com.github.retrooper.packetevents.event.PacketSendEvent;
|
||||
import com.github.retrooper.packetevents.manager.server.ServerVersion;
|
||||
import com.github.retrooper.packetevents.protocol.packettype.PacketType;
|
||||
import com.github.retrooper.packetevents.protocol.sound.SoundCategory;
|
||||
import com.github.retrooper.packetevents.util.Vector3i;
|
||||
@@ -30,6 +31,7 @@ public class WrapperPlayServerSoundEffect extends PacketWrapper<WrapperPlayServe
|
||||
private Vector3i effectPosition;
|
||||
private float volume;
|
||||
private float pitch;
|
||||
private long seed;
|
||||
|
||||
public WrapperPlayServerSoundEffect(PacketSendEvent event) {
|
||||
super(event);
|
||||
@@ -37,12 +39,18 @@ public class WrapperPlayServerSoundEffect extends PacketWrapper<WrapperPlayServe
|
||||
|
||||
public WrapperPlayServerSoundEffect(int soundID, SoundCategory soundCategory,
|
||||
Vector3i effectPosition, float volume, float pitch) {
|
||||
this(soundID, soundCategory, effectPosition, volume, pitch, -1);
|
||||
}
|
||||
|
||||
public WrapperPlayServerSoundEffect(int soundID, SoundCategory soundCategory,
|
||||
Vector3i effectPosition, float volume, float pitch, long seed) {
|
||||
super(PacketType.Play.Server.SOUND_EFFECT);
|
||||
this.soundID = soundID;
|
||||
this.soundCategory = soundCategory;
|
||||
this.effectPosition = effectPosition;
|
||||
this.volume = volume;
|
||||
this.pitch = pitch;
|
||||
this.seed = seed;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -52,6 +60,9 @@ public class WrapperPlayServerSoundEffect extends PacketWrapper<WrapperPlayServe
|
||||
effectPosition = new Vector3i(readInt(), readInt(), readInt());
|
||||
volume = readFloat();
|
||||
pitch = readFloat();
|
||||
if (serverVersion.isNewerThanOrEquals(ServerVersion.V_1_19)) {
|
||||
this.seed = readLong();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -63,6 +74,19 @@ public class WrapperPlayServerSoundEffect extends PacketWrapper<WrapperPlayServe
|
||||
writeInt(effectPosition.z);
|
||||
writeFloat(volume);
|
||||
writeFloat(pitch);
|
||||
if (serverVersion.isNewerThanOrEquals(ServerVersion.V_1_19)) {
|
||||
writeLong(seed);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void copy(WrapperPlayServerSoundEffect wrapper) {
|
||||
soundID = wrapper.soundID;
|
||||
soundCategory = wrapper.soundCategory;
|
||||
effectPosition = wrapper.effectPosition;
|
||||
volume = wrapper.volume;
|
||||
pitch = wrapper.pitch;
|
||||
seed = wrapper.seed;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -113,4 +137,22 @@ public class WrapperPlayServerSoundEffect extends PacketWrapper<WrapperPlayServe
|
||||
public void setPitch(float pitch) {
|
||||
this.pitch = pitch;
|
||||
}
|
||||
|
||||
/**
|
||||
* Seeds only exist in server version 1.19+
|
||||
*
|
||||
* @return the seed
|
||||
*/
|
||||
public long getSeed() {
|
||||
return seed;
|
||||
}
|
||||
|
||||
/**
|
||||
* Seeds only exist in server version 1.19+
|
||||
*
|
||||
* @param seed the seed to set
|
||||
*/
|
||||
public void setSeed(long seed) {
|
||||
this.seed = seed;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user