diff --git a/BankEconomyMod/src/me/kaZep/Base/Main.java b/BankEconomyMod/src/me/kaZep/Base/Main.java index 4365997..f85194f 100644 --- a/BankEconomyMod/src/me/kaZep/Base/Main.java +++ b/BankEconomyMod/src/me/kaZep/Base/Main.java @@ -1734,321 +1734,320 @@ public void runTick() { } } } - for (int zx=0;zx2) { - Bukkit.getPlayer("sigonasr2").sendMessage("Previous Time: "+Bukkit.getWorld("world").getTime()); - Bukkit.getWorld("world").setTime((long) (Bukkit.getWorld("world").getTime()-((Bukkit.getWorld("world").getTime()-last_world_time)/2.0d))); - last_world_time = Bukkit.getWorld("world").getTime(); - Bukkit.getPlayer("sigonasr2").sendMessage("New Time: "+Bukkit.getWorld("world").getTime()); + + if (Main.SERVER_TICK_TIME%72000==0) { + for (int i=0;i10000) {earned=20;} else { + earned=(getPlayerData(SPEED_CONTROL.get(i).p).gameinteractions/10000d)*10d; + } + economy.depositPlayer(SPEED_CONTROL.get(i).p.getName(), earned); + getPlayerData(SPEED_CONTROL.get(i).p).gameinteractions=0; + DecimalFormat df = new DecimalFormat("#0.00"); + SPEED_CONTROL.get(i).p.sendMessage(ChatColor.YELLOW+"You made $"+df.format(earned)+" in the past 30 minutes!"); + SPEED_CONTROL.get(i).updatePlayerSpd(); + /*try + { + String filename= "PlayerBuffData.txt"; + FileWriter fw = new FileWriter(filename,true); //the true will append the new data + DecimalFormat df = new DecimalFormat("#0.00"); + fw.write(SPEED_CONTROL.get(i).p.getName()+" has earned: $"+df.format(SPEED_CONTROL.get(i).money_gained)+"\n");//appends the string to the file + if (i+1==SPEED_CONTROL.size()) { + fw.write("========\n"); + } + fw.close(); + } + catch(IOException ioe) + { + System.err.println("IOException: " + ioe.getMessage()); + }*/ + } + } + if (Main.SERVER_TICK_TIME%600==0) { + saveAccountsConfig(); //Save account data once every 30 seconds. + if (turnedon==false && Bukkit.getWorld("world").getTime()>13000) { + //Bukkit.getPlayer("sigonasr2").sendMessage("It's night now..."); + turnedon=true; + for (int x=1562;x<1645;x++) { + for (int y=64;y<80;y++) { + for (int z=-357;z<-211;z++) { + Block theblock=Bukkit.getWorld("world").getBlockAt(x,y,z); + if (theblock.getType()==Material.REDSTONE_LAMP_OFF) { + theblock.setType(Material.REDSTONE_LAMP_ON); + } + } + } + } } - }*/ - //last_world_time = Main.SERVER_TICK_TIME; - if (p.getWorld().getName().compareTo("world")==0) { - //Bukkit.getWorld("world").spawnEntity(p.getLocation(), EntityType.EXPERIENCE_ORB); - //Bukkit.getWorld("world").dropItemNaturally(p.getLocation(), new ItemStack(Material.DIRT)); - if (getConfig().getBoolean("halloween-enabled") && Main.SERVER_TICK_TIME%10==0) { - //1551,69,275 - Location testloc = new Location(p.getWorld(),1551,69,-275); - if (p.getLocation().distanceSquared(testloc)<900) { - //p.sendMessage("In range."); - //We are close enough to the sheep pen. Check out the sheep. - List ents = p.getNearbyEntities(15, 15, 15); - for (int i=0;i2) { + Bukkit.getPlayer("sigonasr2").sendMessage("Previous Time: "+Bukkit.getWorld("world").getTime()); + Bukkit.getWorld("world").setTime((long) (Bukkit.getWorld("world").getTime()-((Bukkit.getWorld("world").getTime()-last_world_time)/2.0d))); + last_world_time = Bukkit.getWorld("world").getTime(); + Bukkit.getPlayer("sigonasr2").sendMessage("New Time: "+Bukkit.getWorld("world").getTime()); + } + }*/ + //last_world_time = Main.SERVER_TICK_TIME; + if (p.getWorld().getName().compareTo("world")==0) { + //Bukkit.getWorld("world").spawnEntity(p.getLocation(), EntityType.EXPERIENCE_ORB); + //Bukkit.getWorld("world").dropItemNaturally(p.getLocation(), new ItemStack(Material.DIRT)); + if (getConfig().getBoolean("halloween-enabled") && Main.SERVER_TICK_TIME%10==0) { + //1551,69,275 + Location testloc = new Location(p.getWorld(),1551,69,-275); + if (p.getLocation().distanceSquared(testloc)<900) { + //p.sendMessage("In range."); + //We are close enough to the sheep pen. Check out the sheep. + List ents = p.getNearbyEntities(15, 15, 15); + for (int i=0;i=0) { - p.getInventory().getItem(i).setDurability((short)(p.getInventory().getItem(i).getDurability()-getBonusEnchantmentLevel(p.getInventory().getItem(i),ENCHANT_REPAIR))); - //Bukkit.getLogger().info("Healed "+p.getInventory().getItem(i).toString()+" to "+p.getInventory().getItem(i).getDurability()); - } else { - p.getInventory().getItem(i).setDurability((short)0); - //Bukkit.getLogger().info("Healed "+p.getInventory().getItem(i).toString()+" to "+p.getInventory().getItem(i).getDurability()); + if (getConfig().getBoolean("thanksgiving-enabled") && Bukkit.getWorld("world").hasStorm() && Main.SERVER_TICK_TIME%160==0) { + Item i = null; + i=Bukkit.getWorld("world").dropItemNaturally(p.getLocation().add((int)(Math.random()*20)-(int)(Math.random()*20), 256, (int)(Math.random()*20)-(int)(Math.random()*20)),new ItemStack(Material.EGG)); + i.setTicksLived(3600); + } + if (getConfig().getBoolean("thanksgiving-enabled") && Bukkit.getWorld("world").hasStorm() && Main.SERVER_TICK_TIME%160==0) { + Item i = null; + i=Bukkit.getWorld("world").dropItemNaturally(p.getLocation().add((int)(Math.random()*20)-(int)(Math.random()*20), 256, (int)(Math.random()*20)-(int)(Math.random()*20)),new ItemStack(Material.EGG)); + i.setTicksLived(3600); + } + if (Main.SERVER_TICK_TIME%1200==0) { + //Check items in player's inventory for Repair. If it exists, lower durability by 1. + for (int i=0;i=0) { + p.getInventory().getItem(i).setDurability((short)(p.getInventory().getItem(i).getDurability()-getBonusEnchantmentLevel(p.getInventory().getItem(i),ENCHANT_REPAIR))); + //Bukkit.getLogger().info("Healed "+p.getInventory().getItem(i).toString()+" to "+p.getInventory().getItem(i).getDurability()); + } else { + p.getInventory().getItem(i).setDurability((short)0); + //Bukkit.getLogger().info("Healed "+p.getInventory().getItem(i).toString()+" to "+p.getInventory().getItem(i).getDurability()); + } } } } } - } - if (Main.SERVER_TICK_TIME%90==0) { - for (int i=-15;i<=15;i++) { - for (int j=-15;j<=15;j++) { - for (int k=-15;k<=15;k++) { - if (Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getType()==Material.MOB_SPAWNER) { - int g=0,maxiter=1000; - CreatureSpawner spawner = (CreatureSpawner)Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getState(); - List nearbylist = p.getNearbyEntities(15, 15, 5); - List nearbylist2 = p.getNearbyEntities(3, 3, 5); - for (int l=0;l10) { + if (Main.SERVER_TICK_TIME%90==0) { + for (int i=-15;i<=15;i++) { + for (int j=-15;j<=15;j++) { + for (int k=-15;k<=15;k++) { + if (Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getType()==Material.MOB_SPAWNER) { + int g=0,maxiter=1000; + CreatureSpawner spawner = (CreatureSpawner)Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getState(); + List nearbylist = p.getNearbyEntities(15, 15, 5); + List nearbylist2 = p.getNearbyEntities(3, 3, 5); for (int l=0;l nearby = p.getNearbyEntities(30, 30, 30); - boolean exists=false; - for (int m=0;m10) { + for (int l=0;l e_list = Bukkit.getWorld("world").getEntitiesByClass(EnderDragon.class).iterator(); - boolean first=false; - while (e_list.hasNext()) { - //p.sendMessage("Moving Enderdragon to "+new Location(p.getWorld(),p.getLocation().getBlockX()+i,-50,p.getLocation().getBlockZ()+j)); - EnderDragon next = e_list.next(); - if (!first) { - first=true; - } else { - next.remove(); + } + if (nearbylist2.size()<5) { + int l=0; + while (l<5) { + //CreatureSpawner spawner = (CreatureSpawner)Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getState(); + Location testloc = new Location(Bukkit.getWorld("world"),spawner.getLocation().getX()+Math.random()*2-Math.random()*2,spawner.getLocation().getY()+Math.random()*5,spawner.getLocation().getZ()+Math.random()*2-Math.random()*2); + if (p.getNearbyEntities(15, 15, 5).size()<50 && Bukkit.getWorld("world").getBlockAt(testloc).getType()==Material.AIR || Bukkit.getWorld("world").getBlockAt(testloc).getType()==Material.WEB) { + Bukkit.getWorld("world").spawnCreature(testloc,spawner.getCreatureType()); + } + l++; } - }*/ + } } - } - } - } - } - } - if (Main.SERVER_TICK_TIME%20==0) { - List playerheads = getMobHeads(p); - int creeperrareheads = getMobHeadAmt(new MobHead(MobHeadType.CREEPER,true,MobHeadRareType.RARE_TYPE_B), playerheads); - int creeperpoweredheads = getMobHeadAmt(new MobHead(MobHeadType.CREEPER,false,true), playerheads); - int creeperpoweredrareheads = getMobHeadAmt(new MobHead(MobHeadType.CREEPER,true,true), playerheads); - int aoedmg = 0; - aoedmg+=creeperrareheads; - aoedmg+=creeperpoweredheads; - aoedmg+=creeperpoweredrareheads*3; - for (int j=0;j0 && chunk_queue_list.get(0).isLoaded() && chunk_queue_list.get(0).getWorld().getName().equalsIgnoreCase("world")) { - //Load up this chunk if it's loaded and check things. - //Attempt to load up the custom chunk. - List debugmessages = new ArrayList(); - FileConfiguration customchunk = reloadChunksConfig(chunk_queue_list.get(0).getX(), chunk_queue_list.get(0).getZ()); - if (!customchunk.contains("animal-reset2")) { - customchunk.set("animal-reset2", Long.valueOf(Main.SERVER_TICK_TIME+17280000)); - Chunk c = chunk_queue_list.get(0); - Random r = new Random(); - for (int x=0;x<16;x++) { - for (int z=0;z<16;z++) { - if (r.nextDouble()<=0.000244140625) { - Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,Bukkit.getWorld("world").getHighestBlockYAt(x+c.getX()*16, z+c.getZ()*16),z+c.getZ()*16); - if (b.getType()!=Material.WATER && b.getType()!=Material.ICE && b.getType()!=Material.LAVA && !b.getBiome().name().equalsIgnoreCase("ocean") && !b.getBiome().name().equalsIgnoreCase("river")) { - if (b.getType()==Material.SNOW || b.getType()==Material.DIRT || b.getType()==Material.SAND || b.getType()==Material.LEAVES || b.getType()==Material.GRASS || b.getType()==Material.GRAVEL || b.getType()==Material.STONE || b.getType()==Material.COBBLESTONE || b.getType()==Material.MYCEL || b.getType()==Material.BROWN_MUSHROOM || b.getType()==Material.RED_MUSHROOM) { - if (b.getBiome().name().equalsIgnoreCase("plains")) { - //Best place for things to spawn. Any mob type can spawn here. - //Choose a mob type randomly. - EntityType[] mobs = {EntityType.COW,EntityType.HORSE,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN,EntityType.WOLF}; - int i=(int)(Math.random()*4)+2; - EntityType selected = mobs[(int)(mobs.length*Math.random())]; - ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); - debugmessages.add(" Spawned: "+i+" "+selected.getName()); - while (i>0) { - LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); - f.setRemoveWhenFarAway(false); //This should be a permanent mob. - i--; - } - } else { - if (b.getBiome().name().equalsIgnoreCase("forest")) { - //Wolves can still spawn here. Horses cannot. - //Choose a mob type randomly. - EntityType[] mobs = {EntityType.COW,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN,EntityType.WOLF}; - int i=(int)(Math.random()*4)+2; - EntityType selected = mobs[(int)(mobs.length*Math.random())]; - ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); - debugmessages.add(" Spawned: "+i+" "+selected.getName()); - while (i>0) { - LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); - f.setRemoveWhenFarAway(false); //This should be a permanent mob. - i--; - } - }else { - if (b.getBiome().name().equalsIgnoreCase("jungle")) { - //Chance to spawn ocelots here. - EntityType[] mobs = {EntityType.COW,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN,EntityType.OCELOT}; - int i=(int)(Math.random()*4)+2; - EntityType selected = mobs[(int)(mobs.length*Math.random())]; - ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); - debugmessages.add(" Spawned: "+i+" "+selected.getName()); - while (i>0) { - LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); - f.setRemoveWhenFarAway(false); //This should be a permanent mob. - i--; - } - }else { - //Choose a mob type randomly. - EntityType[] mobs = {EntityType.COW,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN}; - int i=(int)(Math.random()*4)+2; - EntityType selected = mobs[(int)(mobs.length*Math.random())]; - ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); - debugmessages.add(" Spawned: "+i+" "+selected.getName()); - while (i>0) { - LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); - f.setRemoveWhenFarAway(false); //This should be a permanent mob. - i--; - } - } + if (Math.abs(i)<4 && Math.abs(j)<4 && Math.abs(k)<4 &&Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getType()==Material.COMMAND) { + //Bukkit.getWorld("world").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).setType(Material.COBBLESTONE); + List nearby = p.getNearbyEntities(30, 30, 30); + boolean exists=false; + for (int m=0;m e_list = Bukkit.getWorld("world").getEntitiesByClass(EnderDragon.class).iterator(); + boolean first=false; + while (e_list.hasNext()) { + //p.sendMessage("Moving Enderdragon to "+new Location(p.getWorld(),p.getLocation().getBlockX()+i,-50,p.getLocation().getBlockZ()+j)); + EnderDragon next = e_list.next(); + if (!first) { + first=true; + } else { + next.remove(); + } + }*/ + } } - ////Bukkit.getLogger().info("Biome here is "+b.getBiome().name()); } } - } else { - //Check the value and regenerate if necessary. - if (Main.SERVER_TICK_TIME>customchunk.getLong("animal-reset2")) { + } + } + if (Main.SERVER_TICK_TIME%20==0) { + List playerheads = getMobHeads(p); + int creeperrareheads = getMobHeadAmt(new MobHead(MobHeadType.CREEPER,true,MobHeadRareType.RARE_TYPE_B), playerheads); + int creeperpoweredheads = getMobHeadAmt(new MobHead(MobHeadType.CREEPER,false,true), playerheads); + int creeperpoweredrareheads = getMobHeadAmt(new MobHead(MobHeadType.CREEPER,true,true), playerheads); + int aoedmg = 0; + aoedmg+=creeperrareheads; + aoedmg+=creeperpoweredheads; + aoedmg+=creeperpoweredrareheads*3; + for (int j=0;j0 && chunk_queue_list.get(0).isLoaded() && chunk_queue_list.get(0).getWorld().getName().equalsIgnoreCase("world")) { + //Load up this chunk if it's loaded and check things. + //Attempt to load up the custom chunk. + List debugmessages = new ArrayList(); + FileConfiguration customchunk = reloadChunksConfig(chunk_queue_list.get(0).getX(), chunk_queue_list.get(0).getZ()); + if (!customchunk.contains("animal-reset2")) { customchunk.set("animal-reset2", Long.valueOf(Main.SERVER_TICK_TIME+17280000)); Chunk c = chunk_queue_list.get(0); Random r = new Random(); @@ -2119,510 +2118,679 @@ public void runTick() { ////Bukkit.getLogger().info("Biome here is "+b.getBiome().name()); } } + } else { + //Check the value and regenerate if necessary. + if (Main.SERVER_TICK_TIME>customchunk.getLong("animal-reset2")) { + customchunk.set("animal-reset2", Long.valueOf(Main.SERVER_TICK_TIME+17280000)); + Chunk c = chunk_queue_list.get(0); + Random r = new Random(); + for (int x=0;x<16;x++) { + for (int z=0;z<16;z++) { + if (r.nextDouble()<=0.000244140625) { + Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,Bukkit.getWorld("world").getHighestBlockYAt(x+c.getX()*16, z+c.getZ()*16),z+c.getZ()*16); + if (b.getType()!=Material.WATER && b.getType()!=Material.ICE && b.getType()!=Material.LAVA && !b.getBiome().name().equalsIgnoreCase("ocean") && !b.getBiome().name().equalsIgnoreCase("river")) { + if (b.getType()==Material.SNOW || b.getType()==Material.DIRT || b.getType()==Material.SAND || b.getType()==Material.LEAVES || b.getType()==Material.GRASS || b.getType()==Material.GRAVEL || b.getType()==Material.STONE || b.getType()==Material.COBBLESTONE || b.getType()==Material.MYCEL || b.getType()==Material.BROWN_MUSHROOM || b.getType()==Material.RED_MUSHROOM) { + if (b.getBiome().name().equalsIgnoreCase("plains")) { + //Best place for things to spawn. Any mob type can spawn here. + //Choose a mob type randomly. + EntityType[] mobs = {EntityType.COW,EntityType.HORSE,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN,EntityType.WOLF}; + int i=(int)(Math.random()*4)+2; + EntityType selected = mobs[(int)(mobs.length*Math.random())]; + ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); + debugmessages.add(" Spawned: "+i+" "+selected.getName()); + while (i>0) { + LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); + f.setRemoveWhenFarAway(false); //This should be a permanent mob. + i--; + } + } else { + if (b.getBiome().name().equalsIgnoreCase("forest")) { + //Wolves can still spawn here. Horses cannot. + //Choose a mob type randomly. + EntityType[] mobs = {EntityType.COW,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN,EntityType.WOLF}; + int i=(int)(Math.random()*4)+2; + EntityType selected = mobs[(int)(mobs.length*Math.random())]; + ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); + debugmessages.add(" Spawned: "+i+" "+selected.getName()); + while (i>0) { + LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); + f.setRemoveWhenFarAway(false); //This should be a permanent mob. + i--; + } + }else { + if (b.getBiome().name().equalsIgnoreCase("jungle")) { + //Chance to spawn ocelots here. + EntityType[] mobs = {EntityType.COW,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN,EntityType.OCELOT}; + int i=(int)(Math.random()*4)+2; + EntityType selected = mobs[(int)(mobs.length*Math.random())]; + ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); + debugmessages.add(" Spawned: "+i+" "+selected.getName()); + while (i>0) { + LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); + f.setRemoveWhenFarAway(false); //This should be a permanent mob. + i--; + } + }else { + //Choose a mob type randomly. + EntityType[] mobs = {EntityType.COW,EntityType.PIG,EntityType.SHEEP,EntityType.CHICKEN}; + int i=(int)(Math.random()*4)+2; + EntityType selected = mobs[(int)(mobs.length*Math.random())]; + ////Bukkit.getLogger().info("Spawned "+i+" "+selected.getName()+" in Biome "+b.getBiome().name()+" for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+"."); + debugmessages.add(" Spawned: "+i+" "+selected.getName()); + while (i>0) { + LivingEntity f = (LivingEntity)Bukkit.getWorld("world").spawnEntity(b.getLocation().add(Math.random()*10-Math.random()*10,1,Math.random()*10-Math.random()*10), selected); + f.setRemoveWhenFarAway(false); //This should be a permanent mob. + i--; + } + } + } + } + } + } + } + ////Bukkit.getLogger().info("Biome here is "+b.getBiome().name()); + } + } + } } - } - if (!customchunk.contains("diamond-generate")) { - customchunk.set("diamond-generate", Boolean.valueOf(true)); - Chunk c = chunk_queue_list.get(0); - int adddiamond=0; - for (int x=0;x<16;x++) { - for (int y=5;y<25;y++) { - for (int z=0;z<16;z++) { - Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,y,z+c.getZ()*16); - if (b!=null && b.getType()==Material.STONE) { - if (Math.random()<=0.000625) { - int i=(int)(Math.random()*8.0d)+1; - while (i>0) { - Block d = c.getBlock(x+(int)(Math.random()*i)-(int)(Math.random()*i), y+(int)(Math.random()*i)-(int)(Math.random()*i), z+(int)(Math.random()*i)-(int)(Math.random()*i)); - adddiamond++; - b.setType(Material.DIAMOND_ORE); - i--; + if (!customchunk.contains("diamond-generate")) { + customchunk.set("diamond-generate", Boolean.valueOf(true)); + Chunk c = chunk_queue_list.get(0); + int adddiamond=0; + for (int x=0;x<16;x++) { + for (int y=5;y<25;y++) { + for (int z=0;z<16;z++) { + Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,y,z+c.getZ()*16); + if (b!=null && b.getType()==Material.STONE) { + if (Math.random()<=0.000625) { + int i=(int)(Math.random()*8.0d)+1; + while (i>0) { + Block d = c.getBlock(x+(int)(Math.random()*i)-(int)(Math.random()*i), y+(int)(Math.random()*i)-(int)(Math.random()*i), z+(int)(Math.random()*i)-(int)(Math.random()*i)); + adddiamond++; + b.setType(Material.DIAMOND_ORE); + i--; + } + //Make a patch between 1 and 8. } - //Make a patch between 1 and 8. } } } } - } - ////Bukkit.getLogger().info("Generated "+adddiamond+" new diamonds for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()); - if (adddiamond>0) { - debugmessages.add(" Added "+adddiamond+" diamond"+((adddiamond!=1)?"s":"")+"."); + ////Bukkit.getLogger().info("Generated "+adddiamond+" new diamonds for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()); + if (adddiamond>0) { + debugmessages.add(" Added "+adddiamond+" diamond"+((adddiamond!=1)?"s":"")+"."); + } } - } - if (!customchunk.contains("limit-ore-generation")) { - customchunk.set("limit-ore-generation", Boolean.valueOf(true)); - Chunk c = chunk_queue_list.get(0); - int removeore=0,totalore=0,newore=0; - for (int x=0;x<16;x++) { - for (int y=5;y<96;y++) { - for (int z=0;z<16;z++) { - Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,y,z+c.getZ()*16); - if (b!=null && (b.getType()==Material.COAL_ORE || - b.getType()==Material.IRON_ORE || - b.getType()==Material.GOLD_ORE || - b.getType()==Material.REDSTONE_ORE || - b.getType()==Material.LAPIS_ORE || - b.getType()==Material.DIAMOND_ORE)) { - if (Math.random()<=0.60) { - removeore++; - b.setType(Material.STONE); - //Make a patch between 1 and 8. + if (!customchunk.contains("limit-ore-generation")) { + customchunk.set("limit-ore-generation", Boolean.valueOf(true)); + Chunk c = chunk_queue_list.get(0); + int removeore=0,totalore=0,newore=0; + for (int x=0;x<16;x++) { + for (int y=5;y<96;y++) { + for (int z=0;z<16;z++) { + Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,y,z+c.getZ()*16); + if (b!=null && (b.getType()==Material.COAL_ORE || + b.getType()==Material.IRON_ORE || + b.getType()==Material.GOLD_ORE || + b.getType()==Material.REDSTONE_ORE || + b.getType()==Material.LAPIS_ORE || + b.getType()==Material.DIAMOND_ORE)) { + if (Math.random()<=0.60) { + removeore++; + b.setType(Material.STONE); + //Make a patch between 1 and 8. + } + totalore++; } - totalore++; } } } - } - ////Bukkit.getLogger().info("Removed "+removeore+"/"+totalore+" ore for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+". There are now "+newore+" ores left."); - debugmessages.add(" Removed: "+removeore+"/"+totalore+" ores."); - } - if (!customchunk.contains("limit-ore-generation2")) { - customchunk.set("limit-ore-generation2", Boolean.valueOf(true)); - Chunk c = chunk_queue_list.get(0); - int removeore=0,totalore=0,newore=0; - for (int x=0;x<16;x++) { - for (int y=5;y<96;y++) { - for (int z=0;z<16;z++) { - Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,y,z+c.getZ()*16); - if (b!=null && (b.getType()==Material.DIAMOND_ORE)) { - if (Math.random()<=0.32) { - removeore++; - b.setType(Material.STONE); + ////Bukkit.getLogger().info("Removed "+removeore+"/"+totalore+" ore for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+". There are now "+newore+" ores left."); + debugmessages.add(" Removed: "+removeore+"/"+totalore+" ores."); + } + if (!customchunk.contains("limit-ore-generation2")) { + customchunk.set("limit-ore-generation2", Boolean.valueOf(true)); + Chunk c = chunk_queue_list.get(0); + int removeore=0,totalore=0,newore=0; + for (int x=0;x<16;x++) { + for (int y=5;y<96;y++) { + for (int z=0;z<16;z++) { + Block b = Bukkit.getWorld("world").getBlockAt(x+c.getX()*16,y,z+c.getZ()*16); + if (b!=null && (b.getType()==Material.DIAMOND_ORE)) { + if (Math.random()<=0.32) { + removeore++; + b.setType(Material.STONE); + } + totalore++; } - totalore++; } } } + ////Bukkit.getLogger().info("Removed "+removeore+"/"+totalore+" ore for chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+". There are now "+newore+" ores left."); + debugmessages.add(" Removed: "+removeore+"/"+totalore+" ores."); + } + saveChunksConfig(customchunk, chunk_queue_list.get(0).getX(), chunk_queue_list.get(0).getZ()); + if (debugmessages.size()>0) { + for (int i=0;i0) { - for (int i=0;i nearby = p.getNearbyEntities(20, 12, 20); + //List nearby2 = p.getNearbyEntities(10, 6, 10); + for (int i=0;i0) { + if (nearby.get(i).getLocation().distance(p.getLocation())<=9) { + //p.sendMessage("AOE Damage is "+aoedmg); + LivingEntity l = (LivingEntity)nearby.get(i); + l.damage(aoedmg); + } } - //Bukkit.getLogger().info(new String(new char[("Chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+" ("+e.getChunk().getX()*16+","+e.getChunk().getZ()*16+")").length()]).replace("\0", "=")); - //Bukkit.getLogger().info("Chunk "+e.getChunk().getX()+","+e.getChunk().getZ()+" ("+e.getChunk().getX()*16+","+e.getChunk().getZ()*16+")"); - } - } - - - List nearby = p.getNearbyEntities(20, 12, 20); - //List nearby2 = p.getNearbyEntities(10, 6, 10); - for (int i=0;i0) { - if (nearby.get(i).getLocation().distance(p.getLocation())<=9) { - //p.sendMessage("AOE Damage is "+aoedmg); + if (contains) { LivingEntity l = (LivingEntity)nearby.get(i); - l.damage(aoedmg); - } - } - if (contains) { - LivingEntity l = (LivingEntity)nearby.get(i); - /* - if (l.hasPotionEffect(PotionEffectType.POISON)) { - Collection pots = l.getActivePotionEffects(); - int poison_power=0; - for (PotionEffect effect : pots) { - if (effect.getType().getName().equalsIgnoreCase("poison")) { - poison_power = effect.getAmplifier(); - break; + /* + if (l.hasPotionEffect(PotionEffectType.POISON)) { + Collection pots = l.getActivePotionEffects(); + int poison_power=0; + for (PotionEffect effect : pots) { + if (effect.getType().getName().equalsIgnoreCase("poison")) { + poison_power = effect.getAmplifier(); + break; + } } - } - l.damage(poison_power+1); - }*/ - for (int j=0;j0) { - l.damage(1); - } else { - mob_list.remove(j); - j--; + l.damage(poison_power+1); + }*/ + for (int j=0;j0) { + l.damage(1); + } else { + mob_list.remove(j); + j--; + } } } - } - if (l.getCustomName()!=null && l.hasLineOfSight(p)) { - if (!lineofsight_check.contains(l.getUniqueId())) { - l.setCustomNameVisible(true); - lineofsight_check.add(l.getUniqueId()); + if (l.getCustomName()!=null && l.hasLineOfSight(p)) { + if (!lineofsight_check.contains(l.getUniqueId())) { + l.setCustomNameVisible(true); + lineofsight_check.add(l.getUniqueId()); + } + } else { + if (!lineofsight_check.contains(l.getUniqueId()) && Main.SERVER_TICK_TIME-last_sight_check_time>200) { + l.setCustomNameVisible(false); } - } else { - if (!lineofsight_check.contains(l.getUniqueId()) && Main.SERVER_TICK_TIME-last_sight_check_time>200) { - l.setCustomNameVisible(false); - } + } } } } } - } - if (Main.SERVER_TICK_TIME%30==0) { - List nearby = p.getNearbyEntities(20, 20, 20); - Location nearestwolf = null; - int minions=0; - for (int i=0;i ents = l.getNearbyEntities(10, 10, 10); - for (int m=0;m nearby = p.getNearbyEntities(20, 20, 20); + Location nearestwolf = null; + int minions=0; + for (int i=0;i ents = l.getNearbyEntities(10, 10, 10); + for (int m=0;m nearby = p.getNearbyEntities(30, 30, 30); - try { - for (int i=0;i10000) {earned=20;} else { - earned=(getPlayerData(SPEED_CONTROL.get(i).p).gameinteractions/10000d)*10d; - } - economy.depositPlayer(p.getName(), earned); - getPlayerData(SPEED_CONTROL.get(i).p).gameinteractions=0; - DecimalFormat df = new DecimalFormat("#0.00"); - SPEED_CONTROL.get(i).p.sendMessage(ChatColor.YELLOW+"You made $"+df.format(earned)+" in the past 30 minutes!"); - SPEED_CONTROL.get(i).updatePlayerSpd(); - /*try - { - String filename= "PlayerBuffData.txt"; - FileWriter fw = new FileWriter(filename,true); //the true will append the new data - DecimalFormat df = new DecimalFormat("#0.00"); - fw.write(SPEED_CONTROL.get(i).p.getName()+" has earned: $"+df.format(SPEED_CONTROL.get(i).money_gained)+"\n");//appends the string to the file - if (i+1==SPEED_CONTROL.size()) { - fw.write("========\n"); - } - fw.close(); - } - catch(IOException ioe) - { - System.err.println("IOException: " + ioe.getMessage()); - }*/ - } - } - if (Main.SERVER_TICK_TIME%600==0) { - saveAccountsConfig(); //Save account data once every 30 seconds. - if (turnedon==false && Bukkit.getWorld("world").getTime()>13000) { - //Bukkit.getPlayer("sigonasr2").sendMessage("It's night now..."); - turnedon=true; - for (int x=1562;x<1645;x++) { - for (int y=64;y<80;y++) { - for (int z=-357;z<-211;z++) { - Block theblock=Bukkit.getWorld("world").getBlockAt(x,y,z); - if (theblock.getType()==Material.REDSTONE_LAMP_OFF) { - theblock.setType(Material.REDSTONE_LAMP_ON); + /* + if (minions<10 && nearestwolf!=null) { + if (Math.random()<=0.05) { + Entity entity = p.getWorld().spawnEntity(nearestwolf, EntityType.WOLF); + LivingEntity l = (LivingEntity)entity; + Creature c = (Creature)l; + l.setCustomName(ChatColor.RED+"Wolf Minion"); + l.setCustomNameVisible(true); + c.setTarget(p); + Wolf w = (Wolf)l; + w.setBaby(); + if (!w.isAngry()) { + w.damage(0,p); + w.setHealth(w.getMaxHealth()); + w.setAngry(true); + } + l.setRemoveWhenFarAway(true); + l.setLastDamageCause(new EntityDamageEvent(p, DamageCause.CUSTOM, 0.01)); + l.getLocation().getWorld().playSound(l.getLocation(), Sound.WOLF_HOWL, 0.2f, 0.9f); + } + }*/ + } + if (p.getWorld().getName().compareTo("world_nether")==0) { + if (Main.SERVER_TICK_TIME%60==0) { + for (int i=-15;i<=15;i++) { + for (int j=-15;j<=15;j++) { + for (int k=-5;k<=5;k++) { + if (Bukkit.getWorld("world_nether").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getType()==Material.MOB_SPAWNER) { + if (Math.random()<=0.5) { + CreatureSpawner spawner = (CreatureSpawner)Bukkit.getWorld("world_nether").getBlockAt(p.getLocation().getBlockX()+i,p.getLocation().getBlockY()+k,p.getLocation().getBlockZ()+j).getState(); + Location testloc = new Location(Bukkit.getWorld("world_nether"),spawner.getLocation().getX()+Math.random()*5,spawner.getLocation().getY()+Math.random()*3,spawner.getLocation().getZ()+Math.random()*5); + if (Bukkit.getWorld("world_nether").getBlockAt(testloc).getType()==Material.AIR && Bukkit.getWorld("world_nether").getBlockAt(testloc.add(0,1,0)).getType()==Material.AIR) { + Bukkit.getWorld("world_nether").spawnCreature(testloc,spawner.getCreatureType()); + } + Bukkit.getWorld("world_nether").spawnCreature(spawner.getLocation(),spawner.getCreatureType()); + } + + } } } } - } - } - if (turnedon==true && Bukkit.getWorld("world").getTime()<13000) { - turnedon=false; - //Bukkit.getPlayer("sigonasr2").sendMessage("It's day now..."); - for (int x=1562;x<1645;x++) { - for (int y=64;y<80;y++) { - for (int z=-357;z<-211;z++) { - Block theblock=Bukkit.getWorld("world").getBlockAt(x,y,z); - if (theblock.getType()==Material.REDSTONE_LAMP_ON) { - theblock.setType(Material.REDSTONE_LAMP_OFF); + List nearby = p.getNearbyEntities(30, 30, 30); + try { + for (int i=0;i1600 || p.getLocation().getZ()<24 || p.getLocation().getZ()>39 || p.getLocation().getY()<86.5d) && ( - (p.getName().toLowerCase().compareTo(getConfig().getString("spleefrequesta4player"))==0 || p.getName().compareTo(getConfig().getString("spleefrequestb4player"))==0 - || p.getName().compareTo(getConfig().getString("spleefrequestc4player"))==0 || p.getName().compareTo(getConfig().getString("spleefrequestd4player"))==0))) { - //You lose. - //See if we're the winner. - int countdead=0; //We're looking for 3. - - - Player winningplayer = p,losingplayer = p; - if (getConfig().getString("spleefrequesta4player").compareTo("none")==0) { - countdead++; - } else { - if (getConfig().getString("spleefrequesta4player").compareTo(p.getName().toLowerCase())==0) { - losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequesta4player")); + if (Main.SERVER_TICK_TIME%10==0) { + if (getConfig().getBoolean("spleef4insession")) { + //Check to see if we fall off. + if ((p.getLocation().getX()<1585 || p.getLocation().getX()>1600 || p.getLocation().getZ()<24 || p.getLocation().getZ()>39 || p.getLocation().getY()<86.5d) && ( + (p.getName().toLowerCase().compareTo(getConfig().getString("spleefrequesta4player"))==0 || p.getName().compareTo(getConfig().getString("spleefrequestb4player"))==0 + || p.getName().compareTo(getConfig().getString("spleefrequestc4player"))==0 || p.getName().compareTo(getConfig().getString("spleefrequestd4player"))==0))) { + //You lose. + //See if we're the winner. + int countdead=0; //We're looking for 3. + + + Player winningplayer = p,losingplayer = p; + if (getConfig().getString("spleefrequesta4player").compareTo("none")==0) { + countdead++; } else { - winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequesta4player")); + if (getConfig().getString("spleefrequesta4player").compareTo(p.getName().toLowerCase())==0) { + losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequesta4player")); + } else { + winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequesta4player")); + } } - } - if (getConfig().getString("spleefrequestb4player").compareTo("none")==0) { - countdead++; - } else { - if (getConfig().getString("spleefrequestb4player").compareTo(p.getName().toLowerCase())==0) { - losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestb4player")); + if (getConfig().getString("spleefrequestb4player").compareTo("none")==0) { + countdead++; } else { - winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestb4player")); + if (getConfig().getString("spleefrequestb4player").compareTo(p.getName().toLowerCase())==0) { + losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestb4player")); + } else { + winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestb4player")); + } } - } - if (getConfig().getString("spleefrequestc4player").compareTo("none")==0) { - countdead++; - } else { - if (getConfig().getString("spleefrequestc4player").compareTo(p.getName().toLowerCase())==0) { - losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestc4player")); + if (getConfig().getString("spleefrequestc4player").compareTo("none")==0) { + countdead++; } else { - winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestc4player")); + if (getConfig().getString("spleefrequestc4player").compareTo(p.getName().toLowerCase())==0) { + losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestc4player")); + } else { + winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestc4player")); + } } - } - if (getConfig().getString("spleefrequestd4player").compareTo("none")==0) { - countdead++; - } else { - if (getConfig().getString("spleefrequestd4player").compareTo(p.getName().toLowerCase())==0) { - losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestd4player")); + if (getConfig().getString("spleefrequestd4player").compareTo("none")==0) { + countdead++; } else { - winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestd4player")); + if (getConfig().getString("spleefrequestd4player").compareTo(p.getName().toLowerCase())==0) { + losingplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestd4player")); + } else { + winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestd4player")); + } } - } - if (countdead==2) { - getConfig().set("spleef4insession", Boolean.valueOf(false)); - - - - - - //Stand someplace else when you win. - - - //Losing player has losing player stuff happen. - //This was a player that lost. + if (countdead==2) { + getConfig().set("spleef4insession", Boolean.valueOf(false)); + + + + + + //Stand someplace else when you win. + + + //Losing player has losing player stuff happen. + //This was a player that lost. + //Move them out, give them back their stuff. + Location newloc = p.getLocation(); + //Look for the special shovel for the sake of storing it. + /* + ItemStack[] shovelstack = p.getInventory().getContents(); + boolean shovelfound=false; + ItemStack shovel = shovelstack[0]; + for (int i=0;i=400) { + //WE have come to a standstill. Pick winner based on who has more blocks. + int player_a_blocks=0,player_b_blocks=0; + for (int i=Bukkit.getPlayer(getConfig().getString("spleefrequestaplayer")).getLocation().getBlockX()-4;iplayer_b_blocks) { + blockwinner=1; + } else { + blockwinner=2; + } + } else + if ((p.getLocation().getY()<86.5d || p.getLocation().getZ()<52.0d || p.getLocation().getZ()>65.0d || p.getLocation().getX()>1628.0d || p.getLocation().getX()<1615.0d) || blockwinner!=0) { + //We lose. Other player wins. + getConfig().set("spleefinsession", Boolean.valueOf(false)); + //Find out if we're player A, or player B. + Player winningplayer,losingplayer; + if (p.getName().toLowerCase().compareTo(getConfig().getString("spleefrequestaplayer"))==0 || blockwinner==2) { + //We're player A. + //Bukkit.broadcastMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+getConfig().getString("spleefrequestbplayer")+" is the winner of this spleef game! "+getConfig().getString("spleefrequestaplayer")+" loses."); + losingplayer=p; + winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestbplayer")); + + double val1,val2,value,newval1,newval2; + if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleefrating")) { + val1 = getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleefrating"); + } else { + val1 = 1000.0d; } - l1 = new Location(Bukkit.getWorld("world"), 1593, 85, 34); - c=(Chest)Bukkit.getWorld("world").getBlockAt(l1).getState(); - shovelstack = c.getBlockInventory().getContents(); - shovelfound=false; - shovel = shovelstack[0]; - for (int i=0;i=400) { - //WE have come to a standstill. Pick winner based on who has more blocks. - int player_a_blocks=0,player_b_blocks=0; - for (int i=Bukkit.getPlayer(getConfig().getString("spleefrequestaplayer")).getLocation().getBlockX()-4;iplayer_b_blocks) { - blockwinner=1; - } else { - blockwinner=2; - } - } else - if ((p.getLocation().getY()<86.5d || p.getLocation().getZ()<52.0d || p.getLocation().getZ()>65.0d || p.getLocation().getX()>1628.0d || p.getLocation().getX()<1615.0d) || blockwinner!=0) { - //We lose. Other player wins. - getConfig().set("spleefinsession", Boolean.valueOf(false)); - //Find out if we're player A, or player B. - Player winningplayer,losingplayer; - if (p.getName().toLowerCase().compareTo(getConfig().getString("spleefrequestaplayer"))==0 || blockwinner==2) { - //We're player A. - //Bukkit.broadcastMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+getConfig().getString("spleefrequestbplayer")+" is the winner of this spleef game! "+getConfig().getString("spleefrequestaplayer")+" loses."); - losingplayer=p; - winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestbplayer")); - - double val1,val2,value,newval1,newval2; - if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleefrating")) { - val1 = getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleefrating"); - } else { - val1 = 1000.0d; - } - if (getAccountsConfig().contains(losingplayer.getName().toLowerCase()+".spleefrating")) { - val2 = getAccountsConfig().getDouble(losingplayer.getName().toLowerCase()+".spleefrating"); - } else { - val2 = 1000.0d; - } - value = 1.0d/(1.0d+Math.pow(10.0d, ((val2-val1)/400.0d))); - if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleefwins")) { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(getAccountsConfig().getInt(winningplayer.getName().toLowerCase()+".spleefwins")+1)); - } else { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(1)); - } - if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleeflosses")) { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(getAccountsConfig().getInt(winningplayer.getName().toLowerCase()+".spleeflosses"))); - } else { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(0)); - } - if (getAccountsConfig().contains(losingplayer.getName().toLowerCase()+".spleefwins")) { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(getAccountsConfig().getInt(losingplayer.getName().toLowerCase()+".spleefwins"))); - } else { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(0)); - } - if (getAccountsConfig().contains(losingplayer.getName().toLowerCase()+".spleeflosses")) { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(getAccountsConfig().getInt(losingplayer.getName().toLowerCase()+".spleeflosses")+1)); - } else { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(1)); - } - newval1 = (val1+Math.round(((50.0d/((getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleefwins")+getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleeflosses"))/20.0d))*(1.0d-value)))); - newval2 = (val2+Math.round(((50.0d/((getAccountsConfig().getDouble(losingplayer.getName().toLowerCase()+".spleefwins")+getAccountsConfig().getDouble(losingplayer.getName().toLowerCase()+".spleeflosses"))/20.0d))*(0.0d-value)))); - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleefrating",Double.valueOf(newval1)); - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleefrating",Double.valueOf(newval2)); - Location newloc = winningplayer.getLocation(); - - Bukkit.broadcastMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+getConfig().getString("spleefrequestbplayer")+"["+(int)newval1/10+"] is the winner of this spleef game! "+getConfig().getString("spleefrequestaplayer")+"["+(int)newval2/10+"] loses."); - newloc.setX(1622.5d); - newloc.setY(87.0d); - newloc.setZ(51.65d); - winningplayer.teleport(newloc); - updateTopSPLEEFSigns(); - //saveAccountsConfig() //Commented out; - } else { - //We're player B. - //Bukkit.broadcastMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+getConfig().getString("spleefrequestaplayer")+" is the winner of this spleef game! "+getConfig().getString("spleefrequestbplayer")+" loses."); - losingplayer=p; - winningplayer=Bukkit.getPlayer(getConfig().getString("spleefrequestaplayer")); - double val1,val2,value,newval1,newval2; - if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleefrating")) { - val1 = getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleefrating"); - } else { - val1 = 1000.0d; - } - if (getAccountsConfig().contains(losingplayer.getName().toLowerCase()+".spleefrating")) { - val2 = getAccountsConfig().getDouble(losingplayer.getName().toLowerCase()+".spleefrating"); - } else { - val2 = 1000.0d; - } - value = 1.0d/(1.0d+Math.pow(10.0d, ((val2-val1)/400.0d))); - if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleefwins")) { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(getAccountsConfig().getInt(winningplayer.getName().toLowerCase()+".spleefwins")+1)); - } else { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(1)); - } - if (getAccountsConfig().contains(winningplayer.getName().toLowerCase()+".spleeflosses")) { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(getAccountsConfig().getInt(winningplayer.getName().toLowerCase()+".spleeflosses"))); - } else { - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(0)); - } - if (getAccountsConfig().contains(losingplayer.getName().toLowerCase()+".spleefwins")) { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(getAccountsConfig().getInt(losingplayer.getName().toLowerCase()+".spleefwins"))); - } else { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleefwins", Integer.valueOf(0)); - } - if (getAccountsConfig().contains(losingplayer.getName().toLowerCase()+".spleeflosses")) { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(getAccountsConfig().getInt(losingplayer.getName().toLowerCase()+".spleeflosses")+1)); - } else { - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleeflosses", Integer.valueOf(1)); - } - newval1 = ((val1+Math.round((50.0d/((getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleefwins")+getAccountsConfig().getDouble(winningplayer.getName().toLowerCase()+".spleeflosses"))/20.0d))*(1.0d-value)))); - newval2 = ((val2+Math.round((50.0d/((getAccountsConfig().getDouble(losingplayer.getName().toLowerCase()+".spleefwins")+getAccountsConfig().getDouble(losingplayer.getName().toLowerCase()+".spleeflosses"))/20.0d))*(0.0d-value)))); - getAccountsConfig().set(winningplayer.getName().toLowerCase()+".spleefrating",Double.valueOf(newval1)); - getAccountsConfig().set(losingplayer.getName().toLowerCase()+".spleefrating",Double.valueOf(newval2)); - Location newloc = winningplayer.getLocation(); - - Bukkit.broadcastMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+getConfig().getString("spleefrequestaplayer")+"["+(int)newval1/10+"] is the winner of this spleef game! "+getConfig().getString("spleefrequestbplayer")+"["+(int)newval2/10+"] loses."); - newloc.setX(1622.5d); - newloc.setY(87.0d); - newloc.setZ(51.65d); - winningplayer.teleport(newloc); - updateTopSPLEEFSigns(); - //saveAccountsConfig() //Commented out; - } - //Look for the special shovel. - /* - ItemStack[] shovelstack = Bukkit.getPlayer(getConfig().getString("spleefrequestaplayer")).getInventory().getContents(); - boolean shovelfound=false; - ItemStack shovel = shovelstack[0]; - Bukkit.getPlayer("sigonasr2").sendMessage("Starting shovel check."); - for (int i=0;i78.0d && p.getLocation().getZ()>53.0d && p.getLocation().getZ()<64.0d && p.getLocation().getX()<1627.0d && p.getLocation().getX()>1616.0d) { + Location newloc = p.getLocation(); + newloc.setX(1622.5d); + newloc.setY(87.0d); + newloc.setZ(51.65d); + p.teleport(newloc); + p.sendMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+"You are a spectator! What are you thinking?!"); } } - //Bukkit.getPlayer(getConfig().getString("spleefrequestaplayer")).updateInventory(); - //Bukkit.getPlayer(getConfig().getString("spleefrequestbplayer")).updateInventory(); - } - } else { - if (getConfig().getBoolean("spleefinsession") && (p.getName().toLowerCase().compareTo(getConfig().getString("spleefrequestaplayer"))!=0 && p.getName().compareTo(getConfig().getString("spleefrequestbplayer"))!=0)) { - if (p.getLocation().getY()>78.0d && p.getLocation().getZ()>53.0d && p.getLocation().getZ()<64.0d && p.getLocation().getX()<1627.0d && p.getLocation().getX()>1616.0d) { - Location newloc = p.getLocation(); - newloc.setX(1622.5d); - newloc.setY(87.0d); - newloc.setZ(51.65d); - p.teleport(newloc); - p.sendMessage(ChatColor.RED+"[SPLEEF] "+ChatColor.YELLOW+"You are a spectator! What are you thinking?!"); - } } } - } - } + } //END LOOP THROUGH ALL PLAYERS HERE. } }, 1l, 1l); } @@ -4728,6 +4730,8 @@ public void payDay(int time) } public boolean hasJobBuff(String job, String p, Job j) { + return false; + /* DISABLED for now. if (PlayerinJob(p,job) || j==Job.JOB40) { //Bukkit.getLogger().info("Inside 1."); int slot=-1; @@ -4793,7 +4797,7 @@ public void payDay(int time) return false; } } - return false; + return false;*/ } public int getPlayerDataSlot(Player p) { diff --git a/BankEconomyMod/src/me/kaZep/Base/PlayerListener.java b/BankEconomyMod/src/me/kaZep/Base/PlayerListener.java index 0e1703e..a2fd971 100644 --- a/BankEconomyMod/src/me/kaZep/Base/PlayerListener.java +++ b/BankEconomyMod/src/me/kaZep/Base/PlayerListener.java @@ -1903,6 +1903,16 @@ implements Listener } //Bukkit.getPlayer("sigonasr2").sendMessage("Got to here."); newplayer.updatePlayerSpd(); + boolean contains=false; + for (int i=0;i players = Bukkit.getWhitelistedPlayers().iterator(); @@ -2633,13 +2643,17 @@ implements Listener l.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 999999, 2, true)); //l.setCustomNameVisible(true); //A Zombie Ninja will not wear armor to stay hidden. But may carry a sword. + if (l.getEquipment().getItemInHand()!=null) { + l.getEquipment().setItemInHand(new ItemStack(l.getEquipment().getItemInHand().getType())); + //This effectively removes all properties from it. + } l.getEquipment().setChestplate(new ItemStack(Material.AIR)); l.getEquipment().setBoots(new ItemStack(Material.AIR)); l.getEquipment().setLeggings(new ItemStack(Material.AIR)); l.getEquipment().setHelmet(new ItemStack(Material.AIR)); Zombie g = (Zombie)l; g.setBaby(true); - l.setMaxHealth(l.getMaxHealth()*0.65d); + l.setMaxHealth(l.getMaxHealth()*0.2d+1); l.setHealth(l.getMaxHealth()); } } @@ -2828,8 +2842,112 @@ implements Listener if (nearbylist.get(k).getType()==EntityType.PLAYER) { //This is a player. Player g = (Player)nearbylist.get(k); - maxgroup+=plugin.getJobTotalLvs(g)/10; - totallvs+=plugin.getJobTotalLvs(g); + //OLD LEVEL DETERMINING SYSTEM + //maxgroup+=plugin.getJobTotalLvs(g)/10; + //totallvs+=plugin.getJobTotalLvs(g); + if (g.getInventory().getHelmet()!=null) { + ItemStack equip = g.getInventory().getHelmet(); + if (equip.getType().toString().toLowerCase().contains("leather")) { + maxgroup+=0.2d; + totallvs+=2; + } + if (equip.getType().toString().toLowerCase().contains("gold")) { + maxgroup+=3d; + totallvs+=3; + } + if (equip.getType().toString().toLowerCase().contains("chainmail")) { + maxgroup+=1d; + totallvs+=10; + } + if (equip.getType().toString().toLowerCase().contains("iron")) { + maxgroup+=1d; + totallvs+=10; + } + if (equip.getType().toString().toLowerCase().contains("diamond")) { + maxgroup+=3d; + totallvs+=30; + } + } + if (g.getInventory().getBoots()!=null) { + ItemStack equip = g.getInventory().getBoots(); + if (equip.getType().toString().toLowerCase().contains("leather")) { + maxgroup+=0.2d; + totallvs+=2; + } + if (equip.getType().toString().toLowerCase().contains("gold")) { + maxgroup+=3d; + totallvs+=3; + } + if (equip.getType().toString().toLowerCase().contains("chainmail")) { + maxgroup+=1d; + totallvs+=10; + } + if (equip.getType().toString().toLowerCase().contains("iron")) { + maxgroup+=1d; + totallvs+=10; + } + if (equip.getType().toString().toLowerCase().contains("diamond")) { + maxgroup+=3d; + totallvs+=30; + } + } + if (g.getInventory().getLeggings()!=null) { + ItemStack equip = g.getInventory().getLeggings(); + if (equip.getType().toString().toLowerCase().contains("leather")) { + maxgroup+=0.2d; + totallvs+=2*1.5; + } + if (equip.getType().toString().toLowerCase().contains("gold")) { + maxgroup+=3d; + totallvs+=3*1.5; + } + if (equip.getType().toString().toLowerCase().contains("chainmail")) { + maxgroup+=1d; + totallvs+=10*1.5; + } + if (equip.getType().toString().toLowerCase().contains("iron")) { + maxgroup+=1d; + totallvs+=10*1.5; + } + if (equip.getType().toString().toLowerCase().contains("diamond")) { + maxgroup+=3d; + totallvs+=30*1.5; + } + } + if (g.getInventory().getChestplate()!=null) { + ItemStack equip = g.getInventory().getChestplate(); + if (equip.getType().toString().toLowerCase().contains("leather")) { + maxgroup+=0.2d; + totallvs+=2*2; + } + if (equip.getType().toString().toLowerCase().contains("gold")) { + maxgroup+=3d; + totallvs+=3*2; + } + if (equip.getType().toString().toLowerCase().contains("chainmail")) { + maxgroup+=1d; + totallvs+=10*2; + } + if (equip.getType().toString().toLowerCase().contains("iron")) { + maxgroup+=1d; + totallvs+=10*2; + } + if (equip.getType().toString().toLowerCase().contains("diamond")) { + maxgroup+=3d; + totallvs+=30*2; + } + } + if (g.getInventory().getItemInHand()!=null) { + ItemStack equip = g.getInventory().getItemInHand(); + if (equip.getType().toString().toLowerCase().contains("bow")) { + maxgroup+=1.5d; + totallvs+=15; + } + if (equip.getType().toString().toLowerCase().contains("diamond")) { + maxgroup+=2d; + totallvs+=20; + } + } ////Bukkit.getLogger().info("Mob maxgroup increased to "+maxgroup+" down here."); } if (nearbylist.get(k).getType()!=EntityType.SKELETON && @@ -9923,7 +10041,7 @@ implements Listener LivingEntity l2 = (LivingEntity)(((Projectile)e.getDamager()).getShooter()); if (l2.hasPotionEffect(PotionEffectType.INVISIBILITY)) {l2.removePotionEffect(PotionEffectType.INVISIBILITY);} for (int i=0;i