Package com.onarandombox.MultiverseCore.api

Examples of com.onarandombox.MultiverseCore.api.MultiverseWorld


    /**
     * {@inheritDoc}
     */
    @Override
    public boolean createWorld(String name) {
        MultiverseWorld mvworld;
        if ((mvworld = this.getCore().getMVWorldManager().getMVWorld(name)) == null) {
            return true;
        }

        // first write it to the config, then load
View Full Code Here


    /**
     * {@inheritDoc}
     */
    @Override
    public void createWorldWithNotifications(String name, final CommandSender sender) {
        MultiverseWorld mvworld;
        if ((mvworld = this.getCore().getMVWorldManager().getMVWorld(name)) == null) {
            sender.sendMessage("That world doesn't exist...");
            return;
        }

View Full Code Here

        @Override
        public void run() {
            // 4. Load the world
            MVAWorldListener.addPass(name);
            plugin.getCore().getMVWorldManager().loadWorld(name);
            MultiverseWorld world = plugin.getCore().getMVWorldManager().getMVWorld(name);

            plugin.log(Level.INFO, "Reset of world '" + name + "' finished.");

            // call the event
            plugin.getServer().getPluginManager().callEvent(new MVAResetFinishedEvent(name));
View Full Code Here

    protected void setWorldSpawn(CommandSender sender) {
        if (sender instanceof Player) {
            Player p = (Player) sender;
            Location l = p.getLocation();
            World w = p.getWorld();
            MultiverseWorld foundWorld = this.plugin.getMVWorldManager().getMVWorld(w.getName());
            if (foundWorld != null) {
                foundWorld.setSpawnLocation(p.getLocation());
                BlockSafety bs = this.plugin.getBlockSafety();
                if (!bs.playerCanSpawnHereSafely(p.getLocation()) && foundWorld.getAdjustSpawn()) {
                    sender.sendMessage("It looks like that location would normally be unsafe. But I trust you.");
                    sender.sendMessage("I'm turning off the Safe-T-Teleporter for spawns to this world.");
                    sender.sendMessage("If you want this turned back on just do:");
                    sender.sendMessage(ChatColor.AQUA + "/mvm set adjustspawn true " + foundWorld.getAlias());
                    foundWorld.setAdjustSpawn(false);
                }
                sender.sendMessage("Spawn was set to: " + plugin.getLocationManipulation().strCoords(p.getLocation()));
                if (!plugin.saveWorldConfig()) {
                    sender.sendMessage(ChatColor.RED + "There was an issue saving worlds.yml!  Your changes will only be temporary!");
                }
View Full Code Here

     * @param event The Event that was fired.
     */
    @EventHandler(priority = EventPriority.LOW)
    public void playerRespawn(PlayerRespawnEvent event) {
        World world = event.getPlayer().getWorld();
        MultiverseWorld mvWorld = this.worldManager.getMVWorld(world.getName());
        // If it's not a World MV manages we stop.
        if (mvWorld == null) {
            return;
        }


        if (mvWorld.getBedRespawn() && event.isBedSpawn()) {
            this.plugin.log(Level.FINE, "Spawning " + event.getPlayer().getName() + " at their bed");
            return;
        }

        // Get the instance of the World the player should respawn at.
        MultiverseWorld respawnWorld = null;
        if (this.worldManager.isMVWorld(mvWorld.getRespawnToWorld())) {
            respawnWorld = this.worldManager.getMVWorld(mvWorld.getRespawnToWorld());
        }

        // If it's null then it either means the World doesn't exist or the value is blank, so we don't handle it.
        // NOW: We'll always handle it to get more accurate spawns
        if (respawnWorld != null) {
            world = respawnWorld.getCBWorld();
        }
        // World has been set to the appropriate world
        Location respawnLocation = getMostAccurateRespawnLocation(world);

        MVRespawnEvent respawnEvent = new MVRespawnEvent(respawnLocation, event.getPlayer(), "compatability");
View Full Code Here

        this.plugin.getServer().getPluginManager().callEvent(respawnEvent);
        event.setRespawnLocation(respawnEvent.getPlayersRespawnLocation());
    }

    private Location getMostAccurateRespawnLocation(World w) {
        MultiverseWorld mvw = this.worldManager.getMVWorld(w.getName());
        if (mvw != null) {
            return mvw.getSpawnLocation();
        }
        return w.getSpawnLocation();
    }
View Full Code Here

                teleporter = this.plugin.getServer().getPlayer(teleporterName);
            }
        }
        this.plugin.log(Level.FINER, "Inferred sender '" + teleporter + "' from name '"
                + teleporterName + "', fetched from name '" + teleportee.getName() + "'");
        MultiverseWorld fromWorld = this.worldManager.getMVWorld(event.getFrom().getWorld().getName());
        MultiverseWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
        if (toWorld == null) {
            this.plugin.log(Level.FINE, "Player '" + teleportee.getName() + "' is teleporting to world '"
                    + event.getTo().getWorld().getName() + "' which is not managed by Multiverse-Core.  No further "
                    + "actions will be taken by Multiverse-Core.");
            return;
        }
        if (event.getFrom().getWorld().equals(event.getTo().getWorld())) {
            // The player is Teleporting to the same world.
            this.plugin.log(Level.FINER, "Player '" + teleportee.getName() + "' is teleporting to the same world.");
            this.stateSuccess(teleportee.getName(), toWorld.getAlias());
            return;
        }
        // TODO: Refactor these lines.
        // Charge the teleporter
        event.setCancelled(!pt.playerHasMoneyToEnter(fromWorld, toWorld, teleporter, teleportee, true));
        if (event.isCancelled() && teleporter != null) {
            this.plugin.log(Level.FINE, "Player '" + teleportee.getName()
                    + "' was DENIED ACCESS to '" + toWorld.getAlias()
                    + "' because '" + teleporter.getName()
                    + "' don't have the FUNDS required to enter it.");
            return;
        }

        // Check if player is allowed to enter the world if we're enforcing permissions
        if (plugin.getMVConfig().getEnforceAccess()) {
            event.setCancelled(!pt.playerCanGoFromTo(fromWorld, toWorld, teleporter, teleportee));
            if (event.isCancelled() && teleporter != null) {
                this.plugin.log(Level.FINE, "Player '" + teleportee.getName()
                        + "' was DENIED ACCESS to '" + toWorld.getAlias()
                        + "' because '" + teleporter.getName()
                        + "' don't have: multiverse.access." + event.getTo().getWorld().getName());
                return;
            }
        } else {
            this.plugin.log(Level.FINE, "Player '" + teleportee.getName()
                    + "' was allowed to go to '" + toWorld.getAlias() + "' because enforceaccess is off.");
        }

        // Does a limit actually exist?
        if (toWorld.getPlayerLimit() > -1) {
            // Are there equal or more people on the world than the limit?
            if (toWorld.getCBWorld().getPlayers().size() >= toWorld.getPlayerLimit()) {
                // Ouch the world is full, lets see if the player can bypass that limitation
                if (!pt.playerCanBypassPlayerLimit(toWorld, teleporter, teleportee)) {
                    this.plugin.log(Level.FINE, "Player '" + teleportee.getName()
                            + "' was DENIED ACCESS to '" + toWorld.getAlias()
                            + "' because the world is full and '" + teleporter.getName()
                            + "' doesn't have: mv.bypass.playerlimit." + event.getTo().getWorld().getName());
                    event.setCancelled(true);
                    return;
                }
            }
        }

        // By this point anything cancelling the event has returned on the method, meaning the teleport is a success \o/
        this.stateSuccess(teleportee.getName(), toWorld.getAlias());
    }
View Full Code Here

        }
        // The adjust should have happened much earlier.
        if (event.getTo() == null) {
            return;
        }
        MultiverseWorld fromWorld = this.worldManager.getMVWorld(event.getFrom().getWorld().getName());
        MultiverseWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
        if (event.getFrom().getWorld().equals(event.getTo().getWorld())) {
            // The player is Portaling to the same world.
            this.plugin.log(Level.FINER, "Player '" + event.getPlayer().getName() + "' is portaling to the same world.");
            return;
        }
View Full Code Here

    }

    // FOLLOWING 2 Methods and Private class handle Per Player GameModes.
    private void handleGameModeAndFlight(Player player, World world) {

        MultiverseWorld mvWorld = this.worldManager.getMVWorld(world.getName());
        if (mvWorld != null) {
            this.handleGameModeAndFlight(player, mvWorld);
        } else {
            this.plugin.log(Level.FINER, "Not handling gamemode and flight for world '" + world.getName()
                    + "' not managed by Multiverse.");
View Full Code Here

            sender.sendMessage(this.getCommandUsage());
            sender.sendMessage("Nothing changed.");
            return;
        }

        MultiverseWorld world;
        String value = args.get(0);
        String property = args.get(1);

        if (args.size() == 2) {
            world = this.worldManager.getMVWorld(p.getWorld().getName());
        } else {
            world = this.worldManager.getMVWorld(args.get(2));
        }

        if (world == null) {
            sender.sendMessage("That world does not exist!");
            return;
        }

        if (!ModifyCommand.validateAction(Action.Add, property)) {
            sender.sendMessage("Sorry, you can't ADD to " + property);
            sender.sendMessage("Please visit our Github Wiki for more information: http://goo.gl/4W8cY");
            return;
        }

        // TODO fix this
        if (world.addToVariable(property, value)) {
            sender.sendMessage(ChatColor.GREEN + "Success! " + ChatColor.AQUA
                    + value + ChatColor.WHITE + " was " + ChatColor.GREEN + "added to " + ChatColor.GREEN + property);
            if (!plugin.saveWorldConfig()) {
                sender.sendMessage(ChatColor.RED + "There was an issue saving worlds.yml!  Your changes will only be temporary!");
            }
View Full Code Here

TOP

Related Classes of com.onarandombox.MultiverseCore.api.MultiverseWorld

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.