Properly cancel block explosions (#59)

Fix chat sanitising
This commit is contained in:
allinkdev 2023-08-25 16:23:24 +01:00 committed by eva
parent f97411ce09
commit 6ab96bd1bd
2 changed files with 12 additions and 2 deletions

View File

@ -2,6 +2,7 @@ package dev.plex.listener.impl;
import dev.plex.listener.PlexListener;
import org.bukkit.event.EventHandler;
import org.bukkit.event.block.BlockExplodeEvent;
import org.bukkit.event.block.BlockFromToEvent;
import org.bukkit.event.block.BlockRedstoneEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
@ -11,7 +12,7 @@ import org.bukkit.event.player.PlayerDropItemEvent;
public class TogglesListener extends PlexListener
{
@EventHandler
public void onBlockExplode(ExplosionPrimeEvent event)
public void onExplosionPrime(ExplosionPrimeEvent event)
{
if (!plugin.toggles.getBoolean("explosions"))
{
@ -20,6 +21,15 @@ public class TogglesListener extends PlexListener
}
}
@EventHandler
public void onBlockExplode(BlockExplodeEvent event) {
if (!plugin.toggles.getBoolean("explosions"))
{
event.getBlock().breakNaturally();
event.setCancelled(true);
}
}
@EventHandler
public void onEntityExplode(EntityExplodeEvent event)
{

View File

@ -281,6 +281,6 @@ public class PlexUtils implements PlexBase
public static String cleanString(String input)
{
return CharMatcher.ascii().retainFrom(input);
return CharMatcher.forPredicate(c -> Character.getDirectionality(c) != Character.DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE || Character.getDirectionality(c) != Character.DIRECTIONALITY_RIGHT_TO_LEFT).retainFrom(input);
}
}