mirror of
https://github.com/BentoBoxWorld/BentoBox.git
synced 2024-11-23 19:25:12 +01:00
Removes nether trees (#822)
https://github.com/BentoBoxWorld/BentoBox/issues/746 NOTE: The settings will need to be removed from the game mode addons too otherwise it will be confusing to admins.
This commit is contained in:
parent
6634a4e1f5
commit
8b79ce3b3e
@ -28,7 +28,6 @@ import world.bentobox.bentobox.listeners.BannedVisitorCommands;
|
||||
import world.bentobox.bentobox.listeners.BlockEndDragon;
|
||||
import world.bentobox.bentobox.listeners.DeathListener;
|
||||
import world.bentobox.bentobox.listeners.JoinLeaveListener;
|
||||
import world.bentobox.bentobox.listeners.NetherTreesListener;
|
||||
import world.bentobox.bentobox.listeners.PanelListenerManager;
|
||||
import world.bentobox.bentobox.listeners.PortalTeleportationListener;
|
||||
import world.bentobox.bentobox.listeners.StandardSpawnProtectionListener;
|
||||
@ -232,8 +231,6 @@ public class BentoBox extends JavaPlugin {
|
||||
manager.registerEvents(new StandardSpawnProtectionListener(this), this);
|
||||
// Nether portals
|
||||
manager.registerEvents(new PortalTeleportationListener(this), this);
|
||||
// Nether trees conversion
|
||||
manager.registerEvents(new NetherTreesListener(this), this);
|
||||
// End dragon blocking
|
||||
manager.registerEvents(new BlockEndDragon(this), this);
|
||||
// Banned visitor commands
|
||||
|
@ -171,11 +171,6 @@ public interface WorldSettings extends ConfigObject {
|
||||
*/
|
||||
boolean isNetherIslands();
|
||||
|
||||
/**
|
||||
* @return the netherTrees
|
||||
*/
|
||||
boolean isNetherTrees();
|
||||
|
||||
/**
|
||||
* @return the onJoinResetEnderChest
|
||||
*/
|
||||
|
@ -1,50 +0,0 @@
|
||||
package world.bentobox.bentobox.listeners;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.Tag;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.BlockState;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.world.StructureGrowEvent;
|
||||
import org.eclipse.jdt.annotation.NonNull;
|
||||
|
||||
import world.bentobox.bentobox.BentoBox;
|
||||
import world.bentobox.bentobox.api.configuration.WorldSettings;
|
||||
|
||||
/**
|
||||
* Handles conversion of trees in the Nether if {@link WorldSettings#isNetherTrees()} is {@code true}.
|
||||
*
|
||||
* @author tastybento
|
||||
*/
|
||||
public class NetherTreesListener implements Listener {
|
||||
|
||||
private BentoBox plugin;
|
||||
|
||||
public NetherTreesListener(@NonNull BentoBox plugin) {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts trees to gravel and glowstone.
|
||||
*
|
||||
* @param e event
|
||||
*/
|
||||
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
|
||||
public void onTreeGrow(StructureGrowEvent e) {
|
||||
// Don't do anything if we're not in the right place.
|
||||
if (!plugin.getIWM().isNetherTrees(e.getWorld()) || !e.getWorld().getEnvironment().equals(World.Environment.NETHER)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Modify everything!
|
||||
for (BlockState b : e.getBlocks()) {
|
||||
if (Tag.LOGS.isTagged(b.getType())) {
|
||||
b.setType(Material.GRAVEL);
|
||||
} else if (Tag.LEAVES.isTagged(b.getType())) {
|
||||
b.setType(Material.GLOWSTONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -416,16 +416,6 @@ public class IslandWorldManager {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if nether trees should be created in the nether or not
|
||||
*
|
||||
* @param world - world
|
||||
* @return true or false
|
||||
*/
|
||||
public boolean isNetherTrees(@Nullable World world) {
|
||||
return world != null && (gameModes.containsKey(world) && gameModes.get(world).getWorldSettings().isNetherTrees());
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether the End Dragon can spawn or not in this world
|
||||
*
|
||||
|
@ -1,49 +0,0 @@
|
||||
package world.bentobox.bentobox.listeners;
|
||||
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||
import org.powermock.modules.junit4.PowerMockRunner;
|
||||
import org.powermock.reflect.Whitebox;
|
||||
|
||||
import world.bentobox.bentobox.BentoBox;
|
||||
import world.bentobox.bentobox.managers.IslandWorldManager;
|
||||
|
||||
/**
|
||||
* Tests {@link NetherTreesListener}.
|
||||
*
|
||||
* @author Poslovitch
|
||||
* @since 1.3.0
|
||||
*/
|
||||
@Ignore
|
||||
@RunWith(PowerMockRunner.class)
|
||||
@PrepareForTest({BentoBox.class})
|
||||
public class NetherTreesListenerTest {
|
||||
|
||||
/* Plugin */
|
||||
private BentoBox plugin;
|
||||
|
||||
/* Island World Manager */
|
||||
private IslandWorldManager iwm;
|
||||
|
||||
/* Listener */
|
||||
private NetherTreesListener listener;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
/* Plugin */
|
||||
plugin = mock(BentoBox.class);
|
||||
Whitebox.setInternalState(BentoBox.class, "instance", plugin);
|
||||
|
||||
/* Island World Manager */
|
||||
iwm = mock(IslandWorldManager.class);
|
||||
when(plugin.getIWM()).thenReturn(iwm);
|
||||
|
||||
/* Listener */
|
||||
listener = new NetherTreesListener(plugin);
|
||||
}
|
||||
}
|
@ -402,22 +402,6 @@ public class IslandWorldManagerTest {
|
||||
assertNull(iwm.getEndWorld(null));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for {@link world.bentobox.bentobox.managers.IslandWorldManager#isNetherTrees(org.bukkit.World)}.
|
||||
*/
|
||||
@Test
|
||||
public void testIsNetherTrees() {
|
||||
assertFalse(iwm.isNetherTrees(netherWorld));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for {@link world.bentobox.bentobox.managers.IslandWorldManager#isNetherTrees(org.bukkit.World)}.
|
||||
*/
|
||||
@Test
|
||||
public void testIsNetherTreesNull() {
|
||||
assertFalse(iwm.isNetherTrees(null));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test method for {@link world.bentobox.bentobox.managers.IslandWorldManager#isDragonSpawn(org.bukkit.World)}.
|
||||
*/
|
||||
|
@ -1,6 +1,3 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package world.bentobox.bentobox.managers;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
@ -32,7 +29,6 @@ import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.powermock.api.mockito.PowerMockito;
|
||||
import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||
|
Loading…
Reference in New Issue
Block a user