Skip to content

Commit 9527adb

Browse files
committed
Added check for sign validity. Fixed #379
1 parent f8d2dbc commit 9527adb

File tree

1 file changed

+13
-0
lines changed
  • src/main/java/myessentials/entities/sign

1 file changed

+13
-0
lines changed

src/main/java/myessentials/entities/sign/Sign.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package myessentials.entities.sign;
22

3+
import myessentials.MyEssentialsCore;
34
import myessentials.entities.BlockPos;
45
import net.minecraft.entity.player.EntityPlayer;
56
import net.minecraft.init.Blocks;
@@ -28,6 +29,8 @@ public abstract class Sign {
2829

2930
protected abstract String[] getText();
3031

32+
protected abstract boolean isValid();
33+
3134
public void onShiftRightClick(EntityPlayer player) {
3235
}
3336

@@ -75,6 +78,16 @@ public void deleteSignBlock() {
7578
}
7679

7780
public static class Container extends ArrayList<Sign> {
81+
@Override
82+
public boolean add(Sign sign) {
83+
if(sign.isValid()) {
84+
return super.add(sign);
85+
} else {
86+
MyEssentialsCore.instance.LOG.error("Failed to validate a special sign at location ({}, {}, {}; DIM: {})", sign.bp.getX(), sign.bp.getY(), sign.bp.getZ(), sign.bp.getDim());
87+
return false;
88+
}
89+
}
90+
7891
public Sign get(BlockPos bp) {
7992
for(Sign sign : this) {
8093
if(bp.equals(sign.bp)) {

0 commit comments

Comments
 (0)