Only log sign base color changes when we log SIGNTEXT for this world

This commit is contained in:
Brokkonaut
2019-05-27 23:53:50 +02:00
parent 4fda020dfc
commit 424ef3b02b

View File

@ -221,16 +221,18 @@ public class InteractLogging extends LoggingListener {
case JUNGLE_WALL_SIGN: case JUNGLE_WALL_SIGN:
case ACACIA_WALL_SIGN: case ACACIA_WALL_SIGN:
case DARK_OAK_WALL_SIGN: case DARK_OAK_WALL_SIGN:
ItemStack stack = event.getItem(); if (wcfg.isLogging(Logging.SIGNTEXT) && event.getAction() == Action.RIGHT_CLICK_BLOCK) {
if (stack != null && BukkitUtils.isDye(stack.getType())) { ItemStack stack = event.getItem();
final BlockState before = event.getClickedBlock().getState(); if (stack != null && BukkitUtils.isDye(stack.getType())) {
if (before instanceof Sign) { final BlockState before = event.getClickedBlock().getState();
DyeColor newColor = BukkitUtils.dyeToDyeColor(stack.getType()); if (before instanceof Sign) {
Sign signBefore = (Sign) before; DyeColor newColor = BukkitUtils.dyeToDyeColor(stack.getType());
if (newColor != null && signBefore.getColor() != newColor) { Sign signBefore = (Sign) before;
final Sign signAfter = (Sign) event.getClickedBlock().getState(); if (newColor != null && signBefore.getColor() != newColor) {
signAfter.setColor(newColor); final Sign signAfter = (Sign) event.getClickedBlock().getState();
consumer.queueBlockReplace(Actor.actorFromEntity(player), signBefore, signAfter); signAfter.setColor(newColor);
consumer.queueBlockReplace(Actor.actorFromEntity(player), signBefore, signAfter);
}
} }
} }
} }