Added halloween reward pet

minor bug fixes
This commit is contained in:
Chiss 2014-10-15 15:44:26 +11:00
parent 256df99b7b
commit eb5af41323
14 changed files with 126 additions and 43 deletions

View File

@ -37,6 +37,7 @@
<zipfileset src="../Libraries/commons-codec-1.6.jar" /> <zipfileset src="../Libraries/commons-codec-1.6.jar" />
<zipfileset src="../Libraries/jedis-2.4.2.jar" /> <zipfileset src="../Libraries/jedis-2.4.2.jar" />
<zipfileset src="../Libraries/commons-pool2-2.2.jar" /> <zipfileset src="../Libraries/commons-pool2-2.2.jar" />
<zipfileset src="../Libraries/commons-dbcp2-2.0.1.jar" />
</jar> </jar>
<copy file="../bin/Arcade.jar" todir="../../Testing/Arcade/plugins"/> <copy file="../bin/Arcade.jar" todir="../../Testing/Arcade/plugins"/>
</target> </target>
@ -78,6 +79,7 @@
<zipfileset src="../Libraries/jooq-3.4.2.jar" /> <zipfileset src="../Libraries/jooq-3.4.2.jar" />
<zipfileset src="../Libraries/jedis-2.4.2.jar" /> <zipfileset src="../Libraries/jedis-2.4.2.jar" />
<zipfileset src="../Libraries/commons-pool2-2.2.jar" /> <zipfileset src="../Libraries/commons-pool2-2.2.jar" />
<zipfileset src="../Libraries/commons-dbcp2-2.0.1.jar" />
</jar> </jar>
<copy file="../bin/Hub.jar" todir="../../Testing/Hub/plugins"/> <copy file="../bin/Hub.jar" todir="../../Testing/Hub/plugins"/>
</target> </target>

View File

@ -7,6 +7,7 @@ public class C
public static String Scramble = "§k"; public static String Scramble = "§k";
public static String Bold = "§l"; public static String Bold = "§l";
public static String Strike = "§m"; public static String Strike = "§m";
public static String BoldStrike = "§l§m";
public static String Line = "§n"; public static String Line = "§n";
public static String Italics = "§o"; public static String Italics = "§o";

View File

@ -515,6 +515,7 @@ public class UtilEnt
Material beneath = player.getLocation().add(x, -1.5, z).getBlock().getType(); Material beneath = player.getLocation().add(x, -1.5, z).getBlock().getType();
if (player.getLocation().getY() % 0.5 == 0 && if (player.getLocation().getY() % 0.5 == 0 &&
(beneath == Material.FENCE || (beneath == Material.FENCE ||
beneath == Material.FENCE_GATE ||
beneath == Material.NETHER_FENCE || beneath == Material.NETHER_FENCE ||
beneath == Material.COBBLE_WALL)) beneath == Material.COBBLE_WALL))
return true; return true;

View File

@ -11,8 +11,8 @@ public enum Achievement
//Bridges //Bridges
BRIDGES_WINS("Bridge Champion", 600, BRIDGES_WINS("Bridge Champion", 600,
new String[]{"The Bridges.Wins"}, new String[]{"The Bridges.Wins"},
new String[]{"Win 50 games of The Bridges"}, new String[]{"Win 30 games of The Bridges"},
new int[]{50}, new int[]{30},
AchievementCategory.BRIDGES), AchievementCategory.BRIDGES),
BRIDGES_FOOD("Food for the Masses", 600, BRIDGES_FOOD("Food for the Masses", 600,
@ -48,8 +48,8 @@ public enum Achievement
//Survival Games //Survival Games
SURVIVAL_GAMES_WINS("Katniss Everdeen", 600, SURVIVAL_GAMES_WINS("Katniss Everdeen", 600,
new String[]{"Survival Games.Wins"}, new String[]{"Survival Games.Wins"},
new String[]{"Win 50 games of Survival Games"}, new String[]{"Win 30 games of Survival Games"},
new int[]{50}, new int[]{30},
AchievementCategory.SURVIVAL_GAMES), AchievementCategory.SURVIVAL_GAMES),
SURVIVAL_GAMES_LIGHT_WEIGHT("Light Weight", 1000, SURVIVAL_GAMES_LIGHT_WEIGHT("Light Weight", 1000,
@ -79,8 +79,8 @@ public enum Achievement
//Survival Games //Survival Games
UHC_WINS("Ultimate Winner", 600, UHC_WINS("Ultimate Winner", 600,
new String[]{"Ultra Hardcore.Wins"}, new String[]{"Ultra Hardcore.Wins"},
new String[]{"Win 20 games of Ultra Hardcore"}, new String[]{"Win 10 games of Ultra Hardcore"},
new int[]{20}, new int[]{10},
AchievementCategory.UHC), AchievementCategory.UHC),
//Smash Mobs //Smash Mobs

View File

@ -9,6 +9,7 @@ import net.minecraft.server.v1_7_R4.Items;
import net.minecraft.server.v1_7_R4.PacketPlayOutOpenWindow; import net.minecraft.server.v1_7_R4.PacketPlayOutOpenWindow;
import net.minecraft.server.v1_7_R4.PacketPlayOutSetSlot; import net.minecraft.server.v1_7_R4.PacketPlayOutSetSlot;
import org.bukkit.ChatColor;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer; import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer;
import org.bukkit.entity.Creature; import org.bukkit.entity.Creature;
@ -54,25 +55,45 @@ public class PetPage extends ShopPageBase<CosmeticManager, CosmeticShop>
{ {
List<String> itemLore = new ArrayList<String>(); List<String> itemLore = new ArrayList<String>();
itemLore.add(C.cYellow + pet.GetCost(CurrencyType.Coins) + " Coins"); //Halloween Name
itemLore.add(C.cBlack); if (pet.GetCost(CurrencyType.Coins) == -1)
{
itemLore.add(C.cBlack);
itemLore.add(ChatColor.RESET + C.cYellow + "Earned by defeating the Pumpkin King");
itemLore.add(ChatColor.RESET + C.cYellow + "in the 2014 Halloween Horror Event.");
}
//Owned
if (DonationManager.Get(Player.getName()).OwnsUnknownPackage(pet.GetPetName())) if (DonationManager.Get(Player.getName()).OwnsUnknownPackage(pet.GetPetName()))
{ {
if (Plugin.getPetManager().hasActivePet(Player.getName()) && Plugin.getPetManager().getActivePet(Player.getName()).getType() == pet.GetPetType()) if (Plugin.getPetManager().hasActivePet(Player.getName()) && Plugin.getPetManager().getActivePet(Player.getName()).getType() == pet.GetPetType())
{ {
AddButton(slot, new ShopItem(Material.MONSTER_EGG, (byte)pet.GetPetType().getTypeId(), "Deactivate " + Plugin.getPetManager().Get(Player).GetPets().get(pet.GetPetType()), new String[] {}, 1, false, false), new DeactivatePetButton(this, Plugin.getPetManager())); AddButton(slot, new ShopItem(Material.MONSTER_EGG, (byte)pet.GetPetType().getTypeId(),
"Deactivate " + pet.GetPetName() + " (" + C.cWhite + Plugin.getPetManager().Get(Player).GetPets().get(pet.GetPetType()) + C.cGreen + ")",
itemLore.toArray(new String[itemLore.size()]), 1, false, false), new DeactivatePetButton(this, Plugin.getPetManager()));
addGlow(slot); addGlow(slot);
} }
else else
{ {
AddButton(slot, new ShopItem(Material.MONSTER_EGG, (byte)pet.GetPetType().getTypeId(), "Activate " + Plugin.getPetManager().Get(Player).GetPets().get(pet.GetPetType()), new String[] {}, 1, false, false), new ActivatePetButton(pet, this)); AddButton(slot, new ShopItem(Material.MONSTER_EGG, (byte)pet.GetPetType().getTypeId(),
"Activate " + pet.GetPetName() + " (" + C.cWhite + Plugin.getPetManager().Get(Player).GetPets().get(pet.GetPetType()) + C.cGreen + ")",
itemLore.toArray(new String[itemLore.size()]), 1, false, false), new ActivatePetButton(pet, this));
} }
} }
//Not Owned
else else
{ {
if (DonationManager.Get(Player.getName()).GetBalance(CurrencyType.Coins) >= pet.GetCost(CurrencyType.Coins)) //Cost Lore
if (pet.GetCost(CurrencyType.Coins) > 0)
{
itemLore.add(C.cYellow + pet.GetCost(CurrencyType.Coins) + " Coins");
itemLore.add(C.cBlack);
}
if (pet.GetCost(CurrencyType.Coins) == -1)
setItem(slot, new ShopItem(Material.INK_SACK, (byte)8, pet.GetPetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false));
else if (DonationManager.Get(Player.getName()).GetBalance(CurrencyType.Coins) >= pet.GetCost(CurrencyType.Coins))
AddButton(slot, new ShopItem(Material.INK_SACK, (byte)8, "Purchase " + pet.GetPetName(), itemLore.toArray(new String[itemLore.size()]), 1, false, false), new PetButton(pet, this)); AddButton(slot, new ShopItem(Material.INK_SACK, (byte)8, "Purchase " + pet.GetPetName(), itemLore.toArray(new String[itemLore.size()]), 1, false, false), new PetButton(pet, this));
else else
setItem(slot, new ShopItem(Material.INK_SACK, (byte)8, "Purchase " + pet.GetPetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false)); setItem(slot, new ShopItem(Material.INK_SACK, (byte)8, "Purchase " + pet.GetPetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false));

View File

@ -5,28 +5,21 @@ import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator; import java.util.Iterator;
import org.bukkit.Bukkit;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.Entity;
import org.bukkit.entity.FallingBlock; import org.bukkit.entity.FallingBlock;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.block.Action;
import org.bukkit.event.entity.EntityChangeBlockEvent; import org.bukkit.event.entity.EntityChangeBlockEvent;
import org.bukkit.event.entity.ItemSpawnEvent; import org.bukkit.event.entity.ItemSpawnEvent;
import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.util.BlockIterator;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.common.util.UtilBlock; import mineplex.core.common.util.UtilBlock;
import mineplex.core.common.util.UtilEvent; import mineplex.core.common.util.UtilEvent;
import mineplex.core.common.util.UtilMath; import mineplex.core.common.util.UtilMath;
import mineplex.core.common.util.UtilEvent.ActionType; import mineplex.core.common.util.UtilEvent.ActionType;
import mineplex.core.disguise.disguises.DisguiseBlock;
import mineplex.core.event.StackerEvent; import mineplex.core.event.StackerEvent;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.event.GadgetActivateEvent;
import mineplex.core.gadget.event.GadgetBlockEvent;
import mineplex.core.gadget.types.MorphGadget; import mineplex.core.gadget.types.MorphGadget;
import mineplex.core.recharge.Recharge; import mineplex.core.recharge.Recharge;
import mineplex.core.updater.UpdateType; import mineplex.core.updater.UpdateType;

View File

@ -55,6 +55,9 @@ public class MorphEnderman extends MorphGadget
{ {
this.RemoveArmor(player); this.RemoveArmor(player);
Manager.getDisguiseManager().undisguise(player); Manager.getDisguiseManager().undisguise(player);
player.setAllowFlight(false);
player.setFlying(false);
} }
@EventHandler @EventHandler

View File

@ -104,7 +104,7 @@ public class NpcManager extends MiniPlugin
_plugin.getServer().getPluginManager().registerEvents(this, _plugin); _plugin.getServer().getPluginManager().registerEvents(this, _plugin);
try try
{ {
loadNpcs(); loadNpcs();
} }
catch (SQLException e) catch (SQLException e)

View File

@ -8,6 +8,7 @@ import mineplex.core.common.util.NautHashMap;
import mineplex.core.pet.repository.PetRepository; import mineplex.core.pet.repository.PetRepository;
import mineplex.core.pet.repository.token.PetExtraToken; import mineplex.core.pet.repository.token.PetExtraToken;
import mineplex.core.pet.repository.token.PetSalesToken; import mineplex.core.pet.repository.token.PetSalesToken;
import mineplex.core.pet.types.Pumpkin;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;
@ -30,13 +31,14 @@ public class PetFactory
private void CreatePets() private void CreatePets()
{ {
_pets.put(EntityType.ZOMBIE, new Pumpkin());
_pets.put(EntityType.PIG, new Pet("Pig", EntityType.PIG, 5000)); _pets.put(EntityType.PIG, new Pet("Pig", EntityType.PIG, 5000));
_pets.put(EntityType.SHEEP, new Pet("Sheep", EntityType.SHEEP, 3000)); _pets.put(EntityType.SHEEP, new Pet("Sheep", EntityType.SHEEP, 3000));
_pets.put(EntityType.COW, new Pet("Cow", EntityType.COW, 2000)); _pets.put(EntityType.COW, new Pet("Cow", EntityType.COW, 2000));
_pets.put(EntityType.CHICKEN, new Pet("Chicken", EntityType.CHICKEN, 7000)); _pets.put(EntityType.CHICKEN, new Pet("Chicken", EntityType.CHICKEN, 7000));
_pets.put(EntityType.WOLF, new Pet("Dog", EntityType.WOLF, 8000)); _pets.put(EntityType.WOLF, new Pet("Dog", EntityType.WOLF, 8000));
_pets.put(EntityType.OCELOT, new Pet("Cat", EntityType.OCELOT, 6000)); _pets.put(EntityType.OCELOT, new Pet("Cat", EntityType.OCELOT, 6000));
_pets.put(EntityType.MUSHROOM_COW, new Pet("Mooshroom", EntityType.MUSHROOM_COW, 5000)); _pets.put(EntityType.MUSHROOM_COW, new Pet("Mooshroom", EntityType.MUSHROOM_COW, 5000));
List<PetSalesToken> petTokens = new ArrayList<PetSalesToken>(); List<PetSalesToken> petTokens = new ArrayList<PetSalesToken>();

View File

@ -14,6 +14,7 @@ import mineplex.core.account.event.ClientWebResponseEvent;
import mineplex.core.account.event.RetrieveClientInformationEvent; import mineplex.core.account.event.RetrieveClientInformationEvent;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.common.util.NautHashMap; import mineplex.core.common.util.NautHashMap;
import mineplex.core.common.util.UtilEnt;
import mineplex.core.common.util.UtilInv; import mineplex.core.common.util.UtilInv;
import mineplex.core.common.util.UtilServer; import mineplex.core.common.util.UtilServer;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
@ -45,6 +46,8 @@ import org.bukkit.entity.Ageable;
import org.bukkit.entity.Creature; import org.bukkit.entity.Creature;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.entity.Skeleton;
import org.bukkit.entity.Zombie;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority; import org.bukkit.event.EventPriority;
import org.bukkit.event.entity.EntityDamageEvent; import org.bukkit.event.entity.EntityDamageEvent;
@ -56,7 +59,10 @@ import org.bukkit.event.player.PlayerInteractEntityEvent;
import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType;
public class PetManager extends MiniClientPlugin<PetClient> public class PetManager extends MiniClientPlugin<PetClient>
{ {
@ -158,6 +164,14 @@ public class PetManager extends MiniClientPlugin<PetClient>
pet.setCustomNameVisible(true); pet.setCustomNameVisible(true);
pet.setCustomName(Get(player).GetPets().get(entityType)); pet.setCustomName(Get(player).GetPets().get(entityType));
if (pet instanceof Zombie)
{
((Zombie) pet).setBaby(true);
pet.getEquipment().setHelmet(new ItemStack(Material.PUMPKIN));
pet.addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, 99999999, 0));
UtilEnt.silence(pet, true);
}
_activePetOwners.put(player.getName(), pet); _activePetOwners.put(player.getName(), pet);
_failedAttempts.put(player.getName(), 0); _failedAttempts.put(player.getName(), 0);
@ -295,7 +309,7 @@ public class PetManager extends MiniClientPlugin<PetClient>
pet.teleport(owner); pet.teleport(owner);
_failedAttempts.put(playerName, 0); _failedAttempts.put(playerName, 0);
} }
else if (!nav.a(targetBlock.getX(), targetBlock.getY() + 1, targetBlock.getZ(), 1.5f)) else if (!nav.a(targetBlock.getX(), targetBlock.getY() + 1, targetBlock.getZ(), 0.9f))
{ {
if (pet.getFallDistance() == 0) if (pet.getFallDistance() == 0)
{ {

View File

@ -62,10 +62,12 @@ import mineplex.core.disguise.DisguiseManager;
import mineplex.core.disguise.disguises.DisguiseSlime; import mineplex.core.disguise.disguises.DisguiseSlime;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.event.GadgetActivateEvent;
import mineplex.core.gadget.event.GadgetCollideEntityEvent; import mineplex.core.gadget.event.GadgetCollideEntityEvent;
import mineplex.core.inventory.InventoryManager; import mineplex.core.inventory.InventoryManager;
import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.itemstack.ItemStackFactory;
import mineplex.core.mount.MountManager; import mineplex.core.mount.MountManager;
import mineplex.core.mount.event.MountActivateEvent;
import mineplex.core.pet.PetManager; import mineplex.core.pet.PetManager;
import mineplex.core.portal.Portal; import mineplex.core.portal.Portal;
import mineplex.core.preferences.PreferencesManager; import mineplex.core.preferences.PreferencesManager;
@ -76,6 +78,7 @@ import mineplex.core.treasure.TreasureManager;
import mineplex.core.updater.UpdateType; import mineplex.core.updater.UpdateType;
import mineplex.core.updater.event.UpdateEvent; import mineplex.core.updater.event.UpdateEvent;
import mineplex.hub.commands.ForcefieldRadius; import mineplex.hub.commands.ForcefieldRadius;
import mineplex.hub.commands.GadgetToggle;
import mineplex.hub.commands.GameModeCommand; import mineplex.hub.commands.GameModeCommand;
import mineplex.hub.commands.NewsCommand; import mineplex.hub.commands.NewsCommand;
import mineplex.hub.modules.ForcefieldManager; import mineplex.hub.modules.ForcefieldManager;
@ -99,7 +102,7 @@ import mineplex.minecraft.game.core.damage.CustomDamageEvent;
public class HubManager extends MiniClientPlugin<HubClient> public class HubManager extends MiniClientPlugin<HubClient>
{ {
public String Mode = "Normal"; public HubType Type = HubType.Halloween;
private BlockRestore _blockRestore; private BlockRestore _blockRestore;
private CoreClientManager _clientManager; private CoreClientManager _clientManager;
@ -107,7 +110,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
private DonationManager _donationManager; private DonationManager _donationManager;
private DisguiseManager _disguiseManager; private DisguiseManager _disguiseManager;
private PartyManager _partyManager; private PartyManager _partyManager;
private ForcefieldManager _forcefieldManager; private ForcefieldManager _forcefieldManager;
private Portal _portal; private Portal _portal;
private StatsManager _statsManager; private StatsManager _statsManager;
private GadgetManager _gadgetManager; private GadgetManager _gadgetManager;
@ -160,7 +163,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
new JumpManager(this); new JumpManager(this);
new UHCManager(this); new UHCManager(this);
//new TournamentInviter(this); //new TournamentInviter(this);
_news = new NewsManager(this); _news = new NewsManager(this);
_mountManager = new MountManager(_plugin, clientManager, donationManager, blockRestore, _disguiseManager); _mountManager = new MountManager(_plugin, clientManager, donationManager, blockRestore, _disguiseManager);
@ -318,6 +321,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
@Override @Override
public void AddCommands() public void AddCommands()
{ {
AddCommand(new GadgetToggle(this));
AddCommand(new NewsCommand(this)); AddCommand(new NewsCommand(this));
AddCommand(new GameModeCommand(this)); AddCommand(new GameModeCommand(this));
} }
@ -325,10 +329,26 @@ public class HubManager extends MiniClientPlugin<HubClient>
@EventHandler(priority = EventPriority.HIGHEST) @EventHandler(priority = EventPriority.HIGHEST)
public void reflectMotd(ServerListPingEvent event) public void reflectMotd(ServerListPingEvent event)
{ {
String jag1 = C.cGold + C.BoldStrike + "╔╦╗" + C.cWhite + C.BoldStrike + "" + C.cGold + C.BoldStrike + "" + C.cWhite + C.BoldStrike + "";
String jag2 = C.cRed + C.BoldStrike + "" + C.cYellow + C.BoldStrike + "" + C.cGreen + C.BoldStrike + "" + C.cAqua + C.BoldStrike + "" + C.cPurple + C.BoldStrike + "";
String jag3 = C.cGold + C.BoldStrike + "" + C.cWhite + C.BoldStrike + "" + C.cGold + C.BoldStrike + "" + C.cWhite + C.BoldStrike + "";
String jag4 = C.cWhite + C.BoldStrike + "" + C.cGold + C.BoldStrike + "" + C.cWhite + C.BoldStrike + "" + C.cGold + C.BoldStrike + "";
if (_shuttingDown) if (_shuttingDown)
{ {
event.setMotd("Restarting soon"); event.setMotd("Restarting soon");
} }
else
{
event.setMotd(C.cGold + C.Bold + "MINEPLEX " + ChatColor.RESET + C.cWhite + C.Bold + "Double Gem Weekend and New Dog"
+ " " +
jag2 + jag2 + jag2 + jag2 + jag2 + jag2 + jag2 );
// event.setMotd(jag1 + C.cGold + C.Bold + " M I N E P L E X " + jag2 + " " +
// jag4 + C.cPurple + C.Bold + " UHC Released & Double Gems " + jag3
// );
}
} }
public boolean BumpDisabled(Entity ent) public boolean BumpDisabled(Entity ent)
@ -348,7 +368,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
@EventHandler @EventHandler
public void SnowballPickup(BlockDamageEvent event) public void SnowballPickup(BlockDamageEvent event)
{ {
if (!Mode.equals("Christmas")) if (Type != HubType.Christmas)
return; return;
if (event.getBlock().getType() != Material.SNOW) if (event.getBlock().getType() != Material.SNOW)
@ -364,7 +384,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
@EventHandler @EventHandler
public void SnowballHit(CustomDamageEvent event) public void SnowballHit(CustomDamageEvent event)
{ {
if (!Mode.equals("Christmas")) if (Type != HubType.Christmas)
return; return;
Projectile proj = event.GetProjectile(); Projectile proj = event.GetProjectile();
@ -940,10 +960,6 @@ public class HubManager extends MiniClientPlugin<HubClient>
return _gadgetsEnabled; return _gadgetsEnabled;
} }
public void SetGadgetEnabled(boolean _enabled)
{
this._gadgetsEnabled = _enabled;
}
public NewsManager GetNewsManager() public NewsManager GetNewsManager()
{ {
@ -964,4 +980,32 @@ public class HubManager extends MiniClientPlugin<HubClient>
event.setCancelled(true); event.setCancelled(true);
} }
} }
public void ToggleGadget(Player caller)
{
_gadgetsEnabled = !_gadgetsEnabled;
if (!_gadgetsEnabled)
{
GetMount().DisableAll();
GetGadget().DisableAll();
}
for (Player player : UtilServer.getPlayers())
player.sendMessage(C.cWhite + C.Bold + "Gadgets/Mounts are now " + F.elem(_gadgetsEnabled ? C.cGreen + C.Bold + "Enabled" : C.cRed + C.Bold + "Disabled"));
}
@EventHandler
public void GadgetActivate(GadgetActivateEvent event)
{
if (!_gadgetsEnabled)
event.setCancelled(true);
}
@EventHandler
public void MountActivate(MountActivateEvent event)
{
if (!_gadgetsEnabled)
event.setCancelled(true);
}
} }

View File

@ -19,6 +19,7 @@ import mineplex.core.itemstack.ItemStackFactory;
import mineplex.core.updater.UpdateType; import mineplex.core.updater.UpdateType;
import mineplex.core.updater.event.UpdateEvent; import mineplex.core.updater.event.UpdateEvent;
import mineplex.hub.HubManager; import mineplex.hub.HubManager;
import mineplex.hub.HubType;
import mineplex.minecraft.game.core.damage.CustomDamageEvent; import mineplex.minecraft.game.core.damage.CustomDamageEvent;
import org.bukkit.GameMode; import org.bukkit.GameMode;
@ -105,7 +106,7 @@ public class WorldManager extends MiniPlugin
else loc = new Location(Manager.GetSpawn().getWorld(), 43, 72, 5); else loc = new Location(Manager.GetSpawn().getWorld(), 43, 72, 5);
//Spawn //Spawn
if (Manager.Mode.equals("Halloween")) if (Manager.Type == HubType.Halloween)
{ {
Skeleton ent = loc.getWorld().spawn(loc, Skeleton.class); Skeleton ent = loc.getWorld().spawn(loc, Skeleton.class);
@ -115,13 +116,14 @@ public class WorldManager extends MiniPlugin
ent.getEquipment().setHelmet(ItemStackFactory.Instance.CreateStack(Material.PUMPKIN)); ent.getEquipment().setHelmet(ItemStackFactory.Instance.CreateStack(Material.PUMPKIN));
ent.setCustomName(C.cYellow + "Pumpkin Minion"); ent.setCustomName(C.cYellow + "Pumpkin Minion");
ent.setCustomNameVisible(false);
_mobs.add(ent); _mobs.add(ent);
Manager.GetCondition().Factory().Invisible("Perm", ent, ent, 999999999, 0, false, false, true); Manager.GetCondition().Factory().Invisible("Perm", ent, ent, 999999999, 0, false, false, true);
Manager.GetCondition().Factory().Slow("Perm", ent, ent, 999999999, 1, false, false, false, true); Manager.GetCondition().Factory().Slow("Perm", ent, ent, 999999999, 1, false, false, false, true);
} }
else if (Manager.Mode.equals("Christmas")) else if (Manager.Type == HubType.Christmas)
{ {
_mobs.add(loc.getWorld().spawn(loc, Snowman.class)); _mobs.add(loc.getWorld().spawn(loc, Snowman.class));
} }
@ -230,7 +232,7 @@ public class WorldManager extends MiniPlugin
World world = UtilWorld.getWorld("world"); World world = UtilWorld.getWorld("world");
if (Manager.Mode.equals("Halloween")) if (Manager.Type == HubType.Halloween)
world.setTime(16000); world.setTime(16000);
else else
world.setTime(6000); world.setTime(6000);
@ -244,7 +246,7 @@ public class WorldManager extends MiniPlugin
if (event.getType() != UpdateType.FAST) if (event.getType() != UpdateType.FAST)
return; return;
if (!Manager.Mode.equals("Halloween")) if (Manager.Type != HubType.Halloween)
return; return;
//Block Lightup //Block Lightup
@ -285,7 +287,7 @@ public class WorldManager extends MiniPlugin
@EventHandler @EventHandler
public void CreatureTarget(EntityTargetEvent event) public void CreatureTarget(EntityTargetEvent event)
{ {
if (Manager.Mode.equals("Christmas")) if (Manager.Type == HubType.Christmas)
{ {
event.setCancelled(true); event.setCancelled(true);
} }

View File

@ -183,7 +183,7 @@ public class Halloween extends SoloGame
if (!IsLive()) if (!IsLive())
return; return;
if (Math.random() > 0.85) if (Math.random() > 0.6)
return; return;
for (Player player : UtilServer.getPlayers()) for (Player player : UtilServer.getPlayers())
@ -321,20 +321,18 @@ public class Halloween extends SoloGame
return; return;
if (_wave >= _waves.size()) if (_wave >= _waves.size())
{ {
for (Player player : GetPlayers(false)) for (Player player : GetPlayers(false))
{ {
Manager.GetDonation().PurchaseUnknownSalesPackage(null, player.getName(), player.getUniqueId(), "Pumpkin Kings Head", false, 0, true); Manager.GetDonation().PurchaseUnknownSalesPackage(null, player.getName(), player.getUniqueId(), "Pumpling", false, 0, true);
Manager.GetGame().AddGems(player, 30, "Killing the Pumpkin King", false); Manager.GetGame().AddGems(player, 30, "Killing the Pumpkin King", false);
Manager.GetGame().AddGems(player, 10, "Participation", false); Manager.GetGame().AddGems(player, 10, "Participation", false);
} }
SetCustomWinLine("You earned Pumpkin Kings Head!"); SetCustomWinLine("You earned Pumpling Pet!");
AnnounceEnd(this.GetTeamList().get(0)); AnnounceEnd(this.GetTeamList().get(0));
SetState(GameState.End); SetState(GameState.End);
} }
else if (GetPlayers(true).size() == 0) else if (GetPlayers(true).size() == 0)

View File

@ -11,6 +11,7 @@ import nautilus.game.arcade.game.games.halloween.Halloween;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.entity.CaveSpider; import org.bukkit.entity.CaveSpider;
import org.bukkit.event.entity.EntityTargetEvent; import org.bukkit.event.entity.EntityTargetEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
public class MobSpiderLeaper extends CreatureBase<CaveSpider> implements InterfaceMove public class MobSpiderLeaper extends CreatureBase<CaveSpider> implements InterfaceMove
{ {
@ -30,7 +31,8 @@ public class MobSpiderLeaper extends CreatureBase<CaveSpider> implements Interfa
@Override @Override
public void Damage(CustomDamageEvent event) public void Damage(CustomDamageEvent event)
{ {
if (event.GetCause() == DamageCause.FALL)
event.SetCancelled("Fall Immunity");
} }
@Override @Override