diff options
author | Dico200 <dico.karssiens@gmail.com> | 2015-11-22 17:25:56 +0100 |
---|---|---|
committer | Dico200 <dico.karssiens@gmail.com> | 2015-11-22 17:25:56 +0100 |
commit | 39b38ff0937ce5b00483e00f61598154a8fe14cf (patch) | |
tree | d0672242c0f222138ee426e8c5082aa454d9d08d | |
parent | 019b3c6b579177db11197c85e15b35d842febf76 (diff) |
Block break fix 4
-rw-r--r-- | serversigns.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/serversigns.py b/serversigns.py index 14e103d..cab8258 100644 --- a/serversigns.py +++ b/serversigns.py @@ -260,7 +260,8 @@ def on_break(event): block = event.getBlock() if block.getType() in (Material.SIGN_POST, Material.WALL_SIGN): - check_sign(event, block, attached = False) + if check_sign(event, block, attached = False): + del signs[from] for block_face, data_values in faces.iteritems(): block2 = block.getRelative(block_face) @@ -278,9 +279,13 @@ def check_sign(event, block, attached = True): player = event.getPlayer() sign = getSign(fromLoc(block.getLocation())) if not canEdit(sign, player) and not can_build(player, block): - event.setCancelled(True) - msg(event.getPlayer(), signsMsg("You cannot break %s" % ("the sign attached to that block" if attached else "that sign"))) - + event.setCancelled(True) + msg(event.getPlayer(), signsMsg("You cannot break %s" % ("the sign attached to that block" if attached else "that sign"))) + else: + loc = fromLoc(block.getLocation()) + del signs[loc] + save_signs() + msg(player, signsMsg("Reset the %s which you just broke" % identifySign(loc))) def can_build(player, block): global checking_block |