Search in sources :

Example 46 with Location

use of org.bukkit.Location in project Minigames by AddstarMC.

the class MinigameData method minigameLocations.

public Location minigameLocations(String minigame, String type, Configuration save) {
    Double locx = (Double) save.get(minigame + "." + type + ".x");
    Double locy = (Double) save.get(minigame + "." + type + ".y");
    Double locz = (Double) save.get(minigame + "." + type + ".z");
    Float yaw = new Float(save.get(minigame + "." + type + ".yaw").toString());
    Float pitch = new Float(save.get(minigame + "." + type + ".pitch").toString());
    String world = (String) save.get(minigame + "." + type + ".world");
    Location loc = new Location(plugin.getServer().getWorld(world), locx, locy, locz, yaw, pitch);
    return loc;
}
Also used : Location(org.bukkit.Location)

Example 47 with Location

use of org.bukkit.Location in project Minigames by AddstarMC.

the class Events method onTeleportAway.

@EventHandler
public void onTeleportAway(PlayerTeleportEvent event) {
    MinigamePlayer ply = pdata.getMinigamePlayer(event.getPlayer());
    if (ply == null)
        return;
    if (ply.isInMinigame() && (event.getCause() == TeleportCause.COMMAND || event.getCause() == TeleportCause.PLUGIN || (!ply.getMinigame().isAllowedEnderpearls() && event.getCause() == TeleportCause.ENDER_PEARL))) {
        if (!ply.getAllowTeleport()) {
            Location from = event.getFrom();
            Location to = event.getTo();
            if (from.getWorld() != to.getWorld() || from.distance(to) > 2) {
                event.setCancelled(true);
                event.getPlayer().sendMessage(ChatColor.RED + "[Minigames] " + ChatColor.WHITE + MinigameUtils.getLang("minigame.error.noTeleport"));
            }
        }
    }
}
Also used : Location(org.bukkit.Location) EventHandler(org.bukkit.event.EventHandler)

Example 48 with Location

use of org.bukkit.Location in project Minigames by AddstarMC.

the class FloorDegenerator method degenerateRandom.

private void degenerateRandom(Location lowest, Location highest, int chance) {
    Location curblock = lowest.clone();
    int x = curblock.getBlockX();
    int z = curblock.getBlockZ();
    int y = curblock.getBlockY();
    Random random = new Random();
    do {
        curblock.setZ(z);
        curblock.setX(x);
        curblock.setY(y);
        for (int i = lowest.getBlockX(); i <= highest.getBlockX() + 1; i++) {
            for (int k = lowest.getBlockZ(); k <= highest.getBlockZ() + 1; k++) {
                if (curblock.getBlock().getType() != Material.AIR && random.nextInt(100) < chance) {
                    mgm.getBlockRecorder().addBlock(curblock.getBlock(), null);
                    curblock.getBlock().setType(Material.AIR);
                }
                curblock.setZ(k);
            }
            curblock.setX(i);
            curblock.setZ(z);
        }
        y++;
    } while (y <= highest.getBlockY());
}
Also used : Random(java.util.Random) Location(org.bukkit.Location)

Example 49 with Location

use of org.bukkit.Location in project Minigames by AddstarMC.

the class FloorDegenerator method degenerateCircle.

private void degenerateCircle(Location lowest, Location highest) {
    int middledist = (int) Math.abs(Math.floor((highest.getBlockX() - lowest.getBlockX()) / 2));
    int radius = middledist - radiusModifier;
    Location centerBlock = lowest.clone();
    centerBlock.setX(centerBlock.getX() + middledist);
    centerBlock.setZ(centerBlock.getZ() + middledist);
    Location curBlock = centerBlock.clone();
    int size = (int) Math.pow(radius, 3) + 8;
    for (int i = 0; i < size; i++) {
        double cirPoint = 2 * Math.PI * i / size;
        double cx = centerBlock.getX() - 0.5 + Math.round(radius * Math.cos(cirPoint));
        double cz = centerBlock.getZ() - 0.5 + Math.round(radius * Math.sin(cirPoint));
        curBlock.setX(cx);
        curBlock.setZ(cz);
        for (int k = lowest.getBlockY(); k <= highest.getBlockY(); k++) {
            curBlock.setY(k);
            mgm.getBlockRecorder().addBlock(curBlock.getBlock(), null);
            curBlock.getBlock().setType(Material.AIR);
        }
    }
    radiusModifier++;
    if (middledist == radiusModifier) {
        stopDegenerator();
    }
}
Also used : Location(org.bukkit.Location)

Example 50 with Location

use of org.bukkit.Location in project Minigames by AddstarMC.

the class TreasureHuntMechanic method timerExpire.

@EventHandler
private void timerExpire(TimerExpireEvent event) {
    if (event.getMinigame().getType() != MinigameType.GLOBAL && !event.getMinigame().getMechanicName().equals(getMechanic()))
        return;
    Minigame mgm = event.getMinigame();
    TreasureHuntModule thm = TreasureHuntModule.getMinigameModule(mgm);
    if (thm.hasTreasureLocation()) {
        mgm.setMinigameTimer(new MinigameTimer(mgm, thm.getTreasureWaitTime()));
        Location old = thm.getTreasureLocation();
        removeTreasure(mgm);
        if (!thm.isTreasureFound()) {
            MinigameUtils.broadcast(MinigameUtils.formStr("minigame.treasurehunt.plyDespawn", mgm.getName(true)) + "\n" + ChatColor.GRAY + MinigameUtils.formStr("minigame.treasurehunt.plyDespawnCoords", old.getBlockX(), old.getBlockY(), old.getBlockZ()), mgm, "minigame.treasure.announce");
        }
        thm.setTreasureFound(false);
    } else {
        spawnTreasure(mgm);
    }
}
Also used : TreasureHuntModule(au.com.mineauz.minigames.minigame.modules.TreasureHuntModule) MinigameTimer(au.com.mineauz.minigames.MinigameTimer) Minigame(au.com.mineauz.minigames.minigame.Minigame) Location(org.bukkit.Location) EventHandler(org.bukkit.event.EventHandler)

Aggregations

Location (org.bukkit.Location)470 Player (org.bukkit.entity.Player)120 World (org.bukkit.World)63 EventHandler (org.bukkit.event.EventHandler)54 Vector (org.bukkit.util.Vector)45 Test (org.junit.Test)43 ArrayList (java.util.ArrayList)36 Block (org.bukkit.block.Block)31 Entity (org.bukkit.entity.Entity)28 UUID (java.util.UUID)27 ItemStack (org.bukkit.inventory.ItemStack)22 LivingEntity (org.bukkit.entity.LivingEntity)20 PotionEffect (org.bukkit.potion.PotionEffect)17 User (com.earth2me.essentials.User)16 List (java.util.List)16 IOException (java.io.IOException)15 PlayerAuth (fr.xephi.authme.data.auth.PlayerAuth)14 LimboPlayer (fr.xephi.authme.data.limbo.LimboPlayer)14 net.aufdemrand.denizen.objects.dLocation (net.aufdemrand.denizen.objects.dLocation)14 Island (com.wasteofplastic.acidisland.Island)12