This commit is contained in:
mathias 2019-06-16 00:54:39 +03:00
parent 4db7be91d5
commit 6e0acfab97
2 changed files with 30 additions and 76 deletions

View file

@ -60,8 +60,8 @@ import org.bukkit.event.block.BlockRedstoneEvent;
import org.bukkit.event.block.BlockSpreadEvent;
import org.bukkit.event.block.SignChangeEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.entity.EntitySpawnEvent;
import org.bukkit.event.entity.ExplosionPrimeEvent;
import org.bukkit.event.entity.ItemSpawnEvent;
@ -72,6 +72,7 @@ import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.player.AsyncPlayerChatEvent;
import org.bukkit.event.player.AsyncPlayerPreLoginEvent;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerDropItemEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerJoinEvent;
@ -131,21 +132,6 @@ class TickAsync extends BukkitRunnable {
world.setAutoSave(true);
}
/*try {
for (final Chunk chunk : world.getLoadedChunks()) {
try {
chunk.getTileEntities();
} catch (Exception e) {
Bukkit.getScheduler().runTask(main, new Runnable() {
public void run() {
world.regenerateChunk(chunk.getX(), chunk.getZ());
}
});
}
}
} catch (Exception e) {
}*/
try {
for (LivingEntity mob : world.getLivingEntities()) {
final AttributeInstance followAttribute = mob.getAttribute(Attribute.GENERIC_FOLLOW_RANGE);
@ -453,24 +439,21 @@ class Events implements Listener {
}
}
@EventHandler
void onEntityDeath(EntityDeathEvent event) {
/*@EventHandler
void onEntityDamage(EntityDamageEvent event) {
Entity entity = event.getEntity();
if (entity.getType() == EntityType.PLAYER) {
if ((entity.getLastDamageCause().getCause() == DamageCause.VOID && entity.getLocation().getY() > -64) ||
entity.getLastDamageCause().getCause() == DamageCause.CUSTOM ||
entity.getLastDamageCause().getCause() == DamageCause.SUICIDE) {
((Player)entity).setHealth(20);
if ((event.getCause() == DamageCause.VOID && entity.getLocation().getY() > -64) ||
event.getCause() == DamageCause.CUSTOM ||
event.getCause() == DamageCause.SUICIDE) {
event.setCancelled(true);
}
}
}
}*/
@EventHandler
void onEntityKnockbackByEntity(EntityKnockbackByEntityEvent event) {
Entity entity = event.getEntity();
if (event.getKnockbackStrength() > 100) {
event.setCancelled(true);
}
@ -569,21 +552,6 @@ class Events implements Listener {
}
}
/*@EventHandler
void onInventoryClick(InventoryClickEvent event) {
int length = 0;
for (ItemStack itemStack : event.getClickedInventory().getContents()) {
if (itemStack != null) {
length = length + itemStack.toString().length();
}
}
System.out.println("inventory");
System.out.println(length);
if (length > 100000) {
event.getClickedInventory().clear();
}
}*/
@EventHandler
void onItemSpawn(ItemSpawnEvent event) {
try {
@ -608,24 +576,6 @@ class Events implements Listener {
main.commandMillisList.put(playerUUID, System.currentTimeMillis());
/* if (arr[0].toLowerCase().equals("/minecraft:blockdata") ||
arr[0].toLowerCase().equals("/blockdata")) {
if (arr[4] != null &&
!arr[4].equals("{}")) {
final Player player = event.getPlayer();
Bukkit.getScheduler().scheduleAsyncDelayedTask(main, new Runnable() {
public void run() {
for (Chunk chunk : player.getWorld().getLoadedChunks()) {
try {
chunk.getTileEntities();
} catch (Exception e) {
player.getWorld().regenerateChunk(chunk.getX(), chunk.getZ());
}
}
}
}, 1L);
}*/
if (arr[0].toLowerCase().equals("/minecraft:gamerule") ||
arr[0].toLowerCase().equals("/gamerule")) {
if (arr[1] != null && arr[1].toLowerCase().equals("randomtickspeed")) {
@ -641,8 +591,12 @@ class Events implements Listener {
event.setMessage(particleArr[0].replaceAll(" [^ ]+$", "") + " 10 " + particleArr[1]);
}
} else if (arr[0].toLowerCase().equals("/minecraft:blockdata") ||
arr[0].toLowerCase().equals("/minecraft:clone") ||
arr[0].toLowerCase().equals("/minecraft:fill") ||
arr[0].toLowerCase().equals("/minecraft:setblock") ||
arr[0].toLowerCase().equals("/blockdata") ||
arr[0].toLowerCase().equals("/clone") ||
arr[0].toLowerCase().equals("/fill") ||
arr[0].toLowerCase().equals("/setblock")) {
if (event.getMessage().contains("translation.test.invalid")) {
event.setCancelled(true);
@ -650,6 +604,18 @@ class Events implements Listener {
}
}
@EventHandler
void onPlayerDeath(PlayerDeathEvent event) {
Player player = event.getEntity();
if ((player.getLastDamageCause().getCause() == DamageCause.VOID && player.getLocation().getY() > -64) ||
player.getLastDamageCause().getCause() == DamageCause.CUSTOM ||
player.getLastDamageCause().getCause() == DamageCause.SUICIDE) {
event.setReviveHealth(20);
event.setCancelled(true);
}
}
@EventHandler
void onPlayerInteract(PlayerInteractEvent event) {
Player player = event.getPlayer();
@ -776,24 +742,6 @@ class Events implements Listener {
if (main.consoleCommandBlacklist.contains(arr[0].toLowerCase())) {
event.setCancelled(true);
/* } else if (arr[0].toLowerCase().equals("minecraft:blockdata") ||
arr[0].toLowerCase().equals("blockdata")) {
if (arr[4] != null &&
!arr[4].equals("{}")) {
final Player player = event.getPlayer();
Bukkit.getScheduler().scheduleAsyncDelayedTask(main, new Runnable() {
public void run() {
for (Chunk chunk : player.getWorld().getLoadedChunks()) {
try {
chunk.getTileEntities();
} catch (Exception e) {
player.getWorld().regenerateChunk(chunk.getX(), chunk.getZ());
}
}
}
}, 1L);
}*/
} else if (arr[0].toLowerCase().equals("minecraft:gamerule") ||
arr[0].toLowerCase().equals("gamerule")) {
if (arr[1] != null && arr[1].toLowerCase().equals("randomtickspeed")) {
@ -809,8 +757,12 @@ class Events implements Listener {
event.setCommand(particleArr[0].replaceAll(" [^ ]+$", "") + " 10 " + particleArr[1]);
}
} else if (arr[0].toLowerCase().equals("minecraft:blockdata") ||
arr[0].toLowerCase().equals("minecraft:clone") ||
arr[0].toLowerCase().equals("minecraft:fill") ||
arr[0].toLowerCase().equals("minecraft:setblock") ||
arr[0].toLowerCase().equals("blockdata") ||
arr[0].toLowerCase().equals("clone") ||
arr[0].toLowerCase().equals("fill") ||
arr[0].toLowerCase().equals("setblock")) {
if (event.getCommand().contains("translation.test.invalid")) {
event.setCancelled(true);

View file

@ -427,6 +427,8 @@ public class Main extends JavaPlugin {
Material.WOOD_BUTTON,
Material.IRON_TRAPDOOR,
Material.WALL_BANNER,
Material.PORTAL,
Material.ENDER_PORTAL,
}));
HashSet<Material> nonSolidBlockList = new HashSet<Material>();