Add set cooldown register in ItemRewriter

This commit is contained in:
KennyTV 2019-11-27 12:56:20 +01:00
parent 42efec6e2b
commit a68eac7cd2

View File

@ -85,6 +85,18 @@ public class ItemRewriter {
});
}
public void registerSetCooldown(int oldPacketId, int newPacketId, ItemIdRewriteFunction itemIDRewriteFunction) {
protocol.registerOutgoing(State.PLAY, oldPacketId, newPacketId, new PacketRemapper() {
@Override
public void registerMap() {
handler(wrapper -> {
int itemId = wrapper.read(Type.VAR_INT);
wrapper.write(Type.VAR_INT, itemIDRewriteFunction.rewrite(itemId));
});
}
});
}
// Only sent to the client
public PacketHandler itemArrayHandler(Type<Item[]> type) {
return wrapper -> {
@ -108,4 +120,10 @@ public class ItemRewriter {
void rewrite(Item item);
}
@FunctionalInterface
public interface ItemIdRewriteFunction {
int rewrite(int itemId);
}
}