Cosmetic Update

* Redid the Reward manager
	Added new rewards to the chest and changed some values
* Fixed some MineStrike skin bugs
* Removed particles/death effects from Minestrike
* Removed old test minestrike skins
* Moved minestrike skins to correct package
* Changed the illuminated chest animation a bit
* Fixed other minor bugs
This commit is contained in:
xGamingDudex 2016-05-12 23:42:37 +02:00
parent 276f572009
commit 2db98613ab
47 changed files with 670 additions and 358 deletions

View File

@ -193,6 +193,13 @@ public class UtilGear
return item.getType() == mat; return item.getType() == mat;
} }
public static boolean isMatAndData(ItemStack item, Material mat, byte data)
{
if (item == null) return false;
return item.getType() == mat && item.getData().getData() == data;
}
public static boolean isRepairable(ItemStack item) public static boolean isRepairable(ItemStack item)
{ {
return (item.getType().getMaxDurability() > 0); return (item.getType().getMaxDurability() > 0);

View File

@ -285,12 +285,7 @@ public class UtilText
public static String[] splitLineToArray(String string, LineFormat lineFormat) public static String[] splitLineToArray(String string, LineFormat lineFormat)
{ {
ArrayList<String> lineList = splitLine(string, lineFormat); return splitLinesToArray(string.split("\n"), lineFormat);
String[] lineArray = new String[lineList.size()];
lineArray = lineList.toArray(lineArray);
return lineArray;
} }
public static ArrayList<String> splitLine(String string, LineFormat lineFormat) public static ArrayList<String> splitLine(String string, LineFormat lineFormat)
@ -307,7 +302,7 @@ public class UtilText
// Empty // Empty
if (string.equals("") || string.equals(" ")) if (string.equals("") || string.equals(" "))
{ {
strings.add(string); strings.add(" ");
return strings; return strings;
} }

View File

@ -31,6 +31,7 @@ import mineplex.serverdata.database.DBPool;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.donation.GiveDonorData; import mineplex.core.donation.GiveDonorData;
import mineplex.core.facebook.FacebookManager; import mineplex.core.facebook.FacebookManager;
import mineplex.core.gadget.GadgetManager;
import mineplex.core.hologram.Hologram; import mineplex.core.hologram.Hologram;
import mineplex.core.hologram.HologramManager; import mineplex.core.hologram.HologramManager;
import mineplex.core.inventory.ClientItem; import mineplex.core.inventory.ClientItem;
@ -169,7 +170,7 @@ public class BonusManager extends MiniClientPlugin<BonusClientData> implements I
updateOffSet(); updateOffSet();
} }
public BonusManager(JavaPlugin plugin, CoreClientManager clientManager, ServerStatusManager statusManager, DonationManager donationManager, PollManager pollManager, NpcManager npcManager, HologramManager hologramManager, StatsManager statsManager, InventoryManager inventoryManager, PetManager petManager, FacebookManager facebookManager) public BonusManager(JavaPlugin plugin, CoreClientManager clientManager, ServerStatusManager statusManager, DonationManager donationManager, PollManager pollManager, NpcManager npcManager, HologramManager hologramManager, StatsManager statsManager, InventoryManager inventoryManager, PetManager petManager, FacebookManager facebookManager, GadgetManager gadgetManager)
{ {
super("Bonus", plugin); super("Bonus", plugin);
_repository = new BonusRepository(plugin, this, donationManager); _repository = new BonusRepository(plugin, this, donationManager);
@ -179,12 +180,7 @@ public class BonusManager extends MiniClientPlugin<BonusClientData> implements I
_hologramManager = hologramManager; _hologramManager = hologramManager;
_inventoryManager = inventoryManager; _inventoryManager = inventoryManager;
_rewardManager = new RewardManager(clientManager, statusManager, donationManager, inventoryManager, petManager, statsManager, _rewardManager = new RewardManager(_clientManager, _donationManager, _inventoryManager, petManager, statsManager, gadgetManager, 1);
100, 250,
500, 1000,
4000, 6000,
12000, 32000,
true, true);
_pollManager = pollManager; _pollManager = pollManager;
_statsManager = statsManager; _statsManager = statsManager;

View File

@ -12,6 +12,7 @@ import mineplex.core.itemstack.ItemStackFactory;
import mineplex.core.reward.Reward; import mineplex.core.reward.Reward;
import mineplex.core.reward.RewardData; import mineplex.core.reward.RewardData;
import mineplex.core.reward.RewardManager; import mineplex.core.reward.RewardManager;
import mineplex.core.reward.RewardPool.Type;
import mineplex.core.reward.RewardRarity; import mineplex.core.reward.RewardRarity;
import mineplex.core.reward.RewardType; import mineplex.core.reward.RewardType;
import mineplex.core.shop.item.ShopItem; import mineplex.core.shop.item.ShopItem;
@ -101,11 +102,11 @@ public class SpinGui extends SimpleGui
{ {
if (i != _stopSpinnerAt + 4) if (i != _stopSpinnerAt + 4)
{ {
_rewards[i] = rewardManager.nextReward(player, null, false, RewardType.SpinnerFiller, true); _rewards[i] = rewardManager.nextReward(player, Type.CARL_SPINNER, null, false, RewardType.SpinnerFiller, true);
} }
else else
{ {
_rewards[i] = rewardManager.nextReward(player, null, false, RewardType.SpinnerReal, true); _rewards[i] = rewardManager.nextReward(player, Type.CARL_SPINNER, null, false, RewardType.SpinnerReal, true);
_reward = _rewards[i]; _reward = _rewards[i];
} }
} }

View File

@ -14,8 +14,8 @@ import mineplex.core.common.util.C;
import mineplex.core.cosmetic.CosmeticManager; import mineplex.core.cosmetic.CosmeticManager;
import mineplex.core.cosmetic.ui.CosmeticShop; import mineplex.core.cosmetic.ui.CosmeticShop;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.GadgetGameModifier; import mineplex.core.gadget.types.GadgetGameModifier;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType;
import mineplex.core.shop.item.IButton; import mineplex.core.shop.item.IButton;
import mineplex.core.shop.item.ShopItem; import mineplex.core.shop.item.ShopItem;

View File

@ -1,6 +1,5 @@
package mineplex.core.cosmetic.ui.page; package mineplex.core.cosmetic.ui.page;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.inventory.ClickType; import org.bukkit.event.inventory.ClickType;
@ -10,8 +9,9 @@ import mineplex.core.common.util.C;
import mineplex.core.cosmetic.CosmeticManager; import mineplex.core.cosmetic.CosmeticManager;
import mineplex.core.cosmetic.ui.CosmeticShop; import mineplex.core.cosmetic.ui.CosmeticShop;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import mineplex.core.gadget.types.GadgetGameModifier; import mineplex.core.gadget.types.GadgetGameModifier;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType;
import mineplex.core.shop.item.IButton; import mineplex.core.shop.item.IButton;
import mineplex.core.shop.item.ShopItem; import mineplex.core.shop.item.ShopItem;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;

View File

@ -5,10 +5,10 @@ import mineplex.core.common.util.C;
import mineplex.core.cosmetic.CosmeticManager; import mineplex.core.cosmetic.CosmeticManager;
import mineplex.core.cosmetic.ui.CosmeticShop; import mineplex.core.cosmetic.ui.CosmeticShop;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import mineplex.core.gadget.types.GadgetGameModifier; import mineplex.core.gadget.types.GadgetGameModifier;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType;
import mineplex.core.shop.item.IButton; import mineplex.core.shop.item.IButton;
import mineplex.core.shop.item.ShopItem; import mineplex.core.shop.item.ShopItem;
import org.bukkit.Material; import org.bukkit.Material;

View File

@ -1,36 +1,11 @@
package mineplex.core.gadget; package mineplex.core.gadget;
import java.util.*; import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.function.Predicate; import java.util.function.Predicate;
import mineplex.core.gadget.commands.AmmoCommand;
import mineplex.core.gadget.commands.UnlockCosmeticsCommand;
import mineplex.core.gadget.gadgets.item.*;
import mineplex.core.gadget.gadgets.outfit.*;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitBoots;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitChestplate;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitHelmet;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitLeggings;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitBoots;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitChestplate;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitHelmet;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitLeggings;
import mineplex.core.gadget.gadgets.outfit.windupsuit.*;
import mineplex.core.gadget.gadgets.particle.*;
import mineplex.core.gadget.set.*;
import mineplex.core.gadget.set.suits.SetRaveSuit;
import mineplex.core.gadget.set.suits.SetSpaceSuit;
import mineplex.core.gadget.set.suits.SetWindUpSuit;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.bridges.PotatoKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster.ChickenKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster.MiniGuardianKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster.PigKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster.SquidKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.horseman.MuleKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.horseman.SkeletonHorseKitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.necromancer.WitherSkeletonKitGameModifier;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
@ -56,6 +31,8 @@ import mineplex.core.common.util.UtilServer;
import mineplex.core.common.util.UtilTime; import mineplex.core.common.util.UtilTime;
import mineplex.core.disguise.DisguiseManager; import mineplex.core.disguise.DisguiseManager;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.gadget.commands.AmmoCommand;
import mineplex.core.gadget.commands.UnlockCosmeticsCommand;
import mineplex.core.gadget.event.GadgetCollideEntityEvent; import mineplex.core.gadget.event.GadgetCollideEntityEvent;
import mineplex.core.gadget.event.GadgetEnableEvent; import mineplex.core.gadget.event.GadgetEnableEvent;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailBlood; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailBlood;
@ -75,7 +52,6 @@ import mineplex.core.gadget.gadgets.death.DeathCupidsBrokenHeart;
import mineplex.core.gadget.gadgets.death.DeathEmerald; import mineplex.core.gadget.gadgets.death.DeathEmerald;
import mineplex.core.gadget.gadgets.death.DeathEnchant; import mineplex.core.gadget.gadgets.death.DeathEnchant;
import mineplex.core.gadget.gadgets.death.DeathFrostLord; import mineplex.core.gadget.gadgets.death.DeathFrostLord;
import mineplex.core.gadget.gadgets.death.DeathHearts;
import mineplex.core.gadget.gadgets.death.DeathMusic; import mineplex.core.gadget.gadgets.death.DeathMusic;
import mineplex.core.gadget.gadgets.death.DeathPinataBurst; import mineplex.core.gadget.gadgets.death.DeathPinataBurst;
import mineplex.core.gadget.gadgets.death.DeathShadow; import mineplex.core.gadget.gadgets.death.DeathShadow;
@ -92,6 +68,19 @@ import mineplex.core.gadget.gadgets.doublejump.DoubleJumpMusic;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpShadow; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpShadow;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpStorm; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpStorm;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpTitan; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpTitan;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.bridges.PotatoKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster.ChickenKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster.MiniGuardianKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster.PigKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster.SquidKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.horseman.MuleKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.horseman.SkeletonHorseKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.necromancer.WitherSkeletonKitGameModifier;
import mineplex.core.gadget.gadgets.gamemodifiers.minestrike.GameModifierMineStrikeSkin;
import mineplex.core.gadget.gadgets.gamemodifiers.minestrike.MineStrikeSkin;
import mineplex.core.gadget.gadgets.hat.HatCoal; import mineplex.core.gadget.gadgets.hat.HatCoal;
import mineplex.core.gadget.gadgets.hat.HatCompanionBlock; import mineplex.core.gadget.gadgets.hat.HatCompanionBlock;
import mineplex.core.gadget.gadgets.hat.HatGrinch; import mineplex.core.gadget.gadgets.hat.HatGrinch;
@ -102,6 +91,23 @@ import mineplex.core.gadget.gadgets.hat.HatSanta;
import mineplex.core.gadget.gadgets.hat.HatSecretPackage; import mineplex.core.gadget.gadgets.hat.HatSecretPackage;
import mineplex.core.gadget.gadgets.hat.HatSnowman; import mineplex.core.gadget.gadgets.hat.HatSnowman;
import mineplex.core.gadget.gadgets.hat.HatTeddyBear; import mineplex.core.gadget.gadgets.hat.HatTeddyBear;
import mineplex.core.gadget.gadgets.item.ItemBatGun;
import mineplex.core.gadget.gadgets.item.ItemBow;
import mineplex.core.gadget.gadgets.item.ItemCoal;
import mineplex.core.gadget.gadgets.item.ItemCoinBomb;
import mineplex.core.gadget.gadgets.item.ItemDuelingSword;
import mineplex.core.gadget.gadgets.item.ItemEtherealPearl;
import mineplex.core.gadget.gadgets.item.ItemFirework;
import mineplex.core.gadget.gadgets.item.ItemFleshHook;
import mineplex.core.gadget.gadgets.item.ItemFlowerGift;
import mineplex.core.gadget.gadgets.item.ItemFreezeCannon;
import mineplex.core.gadget.gadgets.item.ItemLovePotion;
import mineplex.core.gadget.gadgets.item.ItemMelonLauncher;
import mineplex.core.gadget.gadgets.item.ItemPaintballGun;
import mineplex.core.gadget.gadgets.item.ItemPaintbrush;
import mineplex.core.gadget.gadgets.item.ItemPartyPopper;
import mineplex.core.gadget.gadgets.item.ItemSnowball;
import mineplex.core.gadget.gadgets.item.ItemTNT;
import mineplex.core.gadget.gadgets.morph.MorphBat; import mineplex.core.gadget.gadgets.morph.MorphBat;
import mineplex.core.gadget.gadgets.morph.MorphBlaze; import mineplex.core.gadget.gadgets.morph.MorphBlaze;
import mineplex.core.gadget.gadgets.morph.MorphBlock; import mineplex.core.gadget.gadgets.morph.MorphBlock;
@ -117,6 +123,40 @@ import mineplex.core.gadget.gadgets.morph.MorphSnowman;
import mineplex.core.gadget.gadgets.morph.MorphTitan; import mineplex.core.gadget.gadgets.morph.MorphTitan;
import mineplex.core.gadget.gadgets.morph.MorphVillager; import mineplex.core.gadget.gadgets.morph.MorphVillager;
import mineplex.core.gadget.gadgets.morph.MorphWither; import mineplex.core.gadget.gadgets.morph.MorphWither;
import mineplex.core.gadget.gadgets.outfit.OutfitTeam;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitBoots;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitChestplate;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitHelmet;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitLeggings;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitBoots;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitChestplate;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitHelmet;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitLeggings;
import mineplex.core.gadget.gadgets.outfit.windupsuit.OutfitWindUpSuitBoosterManager;
import mineplex.core.gadget.gadgets.outfit.windupsuit.OutfitWindUpSuitBoots;
import mineplex.core.gadget.gadgets.outfit.windupsuit.OutfitWindUpSuitChestplate;
import mineplex.core.gadget.gadgets.outfit.windupsuit.OutfitWindUpSuitHelmet;
import mineplex.core.gadget.gadgets.outfit.windupsuit.OutfitWindUpSuitLeggings;
import mineplex.core.gadget.gadgets.particle.ParticleBlood;
import mineplex.core.gadget.gadgets.particle.ParticleCandyCane;
import mineplex.core.gadget.gadgets.particle.ParticleCoalFumes;
import mineplex.core.gadget.gadgets.particle.ParticleEmerald;
import mineplex.core.gadget.gadgets.particle.ParticleEnchant;
import mineplex.core.gadget.gadgets.particle.ParticleFairy;
import mineplex.core.gadget.gadgets.particle.ParticleFireRings;
import mineplex.core.gadget.gadgets.particle.ParticleFoot;
import mineplex.core.gadget.gadgets.particle.ParticleFrostLord;
import mineplex.core.gadget.gadgets.particle.ParticleHeart;
import mineplex.core.gadget.gadgets.particle.ParticleLegend;
import mineplex.core.gadget.gadgets.particle.ParticleMusic;
import mineplex.core.gadget.gadgets.particle.ParticlePartyTime;
import mineplex.core.gadget.gadgets.particle.ParticleRain;
import mineplex.core.gadget.gadgets.particle.ParticleTitan;
import mineplex.core.gadget.gadgets.particle.ParticleWingsAngel;
import mineplex.core.gadget.gadgets.particle.ParticleWingsDemons;
import mineplex.core.gadget.gadgets.particle.ParticleWingsInfernal;
import mineplex.core.gadget.gadgets.particle.ParticleWingsPixie;
import mineplex.core.gadget.gadgets.particle.ParticleYinYang;
import mineplex.core.gadget.gadgets.wineffect.WinEffectBabyChicken; import mineplex.core.gadget.gadgets.wineffect.WinEffectBabyChicken;
import mineplex.core.gadget.gadgets.wineffect.WinEffectDragonRider; import mineplex.core.gadget.gadgets.wineffect.WinEffectDragonRider;
import mineplex.core.gadget.gadgets.wineffect.WinEffectFireworks; import mineplex.core.gadget.gadgets.wineffect.WinEffectFireworks;
@ -127,6 +167,20 @@ import mineplex.core.gadget.gadgets.wineffect.WinEffectMrPunchMan;
import mineplex.core.gadget.gadgets.wineffect.WinEffectPodium; import mineplex.core.gadget.gadgets.wineffect.WinEffectPodium;
import mineplex.core.gadget.gadgets.wineffect.WinEffectRiseOfTheElderGuardian; import mineplex.core.gadget.gadgets.wineffect.WinEffectRiseOfTheElderGuardian;
import mineplex.core.gadget.gadgets.wineffect.WinEffectSnowTrails; import mineplex.core.gadget.gadgets.wineffect.WinEffectSnowTrails;
import mineplex.core.gadget.set.SetCandyCane;
import mineplex.core.gadget.set.SetCupidsLove;
import mineplex.core.gadget.set.SetEmerald;
import mineplex.core.gadget.set.SetFrostLord;
import mineplex.core.gadget.set.SetHowlingWinds;
import mineplex.core.gadget.set.SetMusic;
import mineplex.core.gadget.set.SetParty;
import mineplex.core.gadget.set.SetShadow;
import mineplex.core.gadget.set.SetTitan;
import mineplex.core.gadget.set.SetVampire;
import mineplex.core.gadget.set.SetWisdom;
import mineplex.core.gadget.set.suits.SetRaveSuit;
import mineplex.core.gadget.set.suits.SetSpaceSuit;
import mineplex.core.gadget.set.suits.SetWindUpSuit;
import mineplex.core.gadget.types.ArrowEffectGadget; import mineplex.core.gadget.types.ArrowEffectGadget;
import mineplex.core.gadget.types.DeathEffectGadget; import mineplex.core.gadget.types.DeathEffectGadget;
import mineplex.core.gadget.types.DoubleJumpEffectGadget; import mineplex.core.gadget.types.DoubleJumpEffectGadget;
@ -140,10 +194,6 @@ import mineplex.core.gadget.types.OutfitGadget;
import mineplex.core.gadget.types.OutfitGadget.ArmorSlot; import mineplex.core.gadget.types.OutfitGadget.ArmorSlot;
import mineplex.core.gadget.types.ParticleGadget; import mineplex.core.gadget.types.ParticleGadget;
import mineplex.core.gadget.types.WinEffectGadget; import mineplex.core.gadget.types.WinEffectGadget;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.minestrike.MineStrikeSkinAK47Torch;
import mineplex.core.gadget.types.gamemodifiers.minestrike.MineStrikeSkinDesertEagleSand;
import mineplex.core.gadget.types.gamemodifiers.minestrike.MineStrikeSkinDesertEagleStick;
import mineplex.core.hologram.HologramManager; import mineplex.core.hologram.HologramManager;
import mineplex.core.inventory.InventoryManager; import mineplex.core.inventory.InventoryManager;
import mineplex.core.mount.MountManager; import mineplex.core.mount.MountManager;
@ -383,7 +433,7 @@ public class GadgetManager extends MiniPlugin
addGadget(new WinEffectFireworks(this)); addGadget(new WinEffectFireworks(this));
addGadget(new WinEffectFlames(this)); addGadget(new WinEffectFlames(this));
addGadget(new WinEffectSnowTrails(this)); addGadget(new WinEffectSnowTrails(this));
addGadget(new WinEffectDragonRider(this)); //addGadget(new WinEffectDragonRider(this));
addGadget(new WinEffectBabyChicken(this)); addGadget(new WinEffectBabyChicken(this));
addGadget(new WinEffectLightningStrike(this)); addGadget(new WinEffectLightningStrike(this));
addGadget(new WinEffectRiseOfTheElderGuardian(this)); addGadget(new WinEffectRiseOfTheElderGuardian(this));
@ -406,9 +456,28 @@ public class GadgetManager extends MiniPlugin
// Game Modifiers // Game Modifiers
// MineStrike // MineStrike
addGadget(new MineStrikeSkinDesertEagleStick(this)); addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.P250_Muertos, 1));
addGadget(new MineStrikeSkinDesertEagleSand(this)); addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.CZ75_Auto_Tigris, 1));
addGadget(new MineStrikeSkinAK47Torch(this)); addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.Desert_Eagle_Blaze, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.Nova_Koi, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.XM1014_Tranquility, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.PP_Bizon_Streak, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.P90_Asiimov, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.SSG_08_Blood_in_the_Water, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.AWP_Asiimov, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.Knife_M9_Bayonette_Fade, 1));
//Blue only
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.P2000_Fire_Elemental, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.FAMAS_Pulse, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.M4A4_Howl, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.Steyr_AUG_Torque, 1));
//Red only
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.Glock_18_Fade, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.Galil_AR_Eco, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.AK_47_Vulcan, 1));
addGadget(new GameModifierMineStrikeSkin(this, MineStrikeSkin.SG553_Pulse, 1));
// Survival Games // Survival Games
@ -520,6 +589,16 @@ public class GadgetManager extends MiniPlugin
return list; return list;
} }
public GameModifierMineStrikeSkin getGameModifier(MineStrikeSkin skin)
{
for(GadgetGameModifier g : getGameModifiers(GameModifierType.MineStrike))
{
GameModifierMineStrikeSkin gskin = (GameModifierMineStrikeSkin) g;
if(g.GetName().equals(skin.getSkinName())) return gskin;
}
return null;
}
public List<GadgetGameModifier> getGameModifiers(KitModifierType kitType) public List<GadgetGameModifier> getGameModifiers(KitModifierType kitType)
{ {
List<GadgetGameModifier> list = new ArrayList<>(); List<GadgetGameModifier> list = new ArrayList<>();

View File

@ -1,4 +1,4 @@
package mineplex.core.gadget.types.gamemodifiers; package mineplex.core.gadget.gadgets.gamemodifiers;
import java.util.List; import java.util.List;

View File

@ -1,9 +1,10 @@
package mineplex.core.gadget.types.gamemodifiers.kits; package mineplex.core.gadget.gadgets.gamemodifiers.kits;
import com.sun.org.apache.xalan.internal.xsltc.dom.KeyIndex; import com.sun.org.apache.xalan.internal.xsltc.dom.KeyIndex;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.GadgetGameModifier; import mineplex.core.gadget.types.GadgetGameModifier;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;

View File

@ -1,10 +1,10 @@
package mineplex.core.gadget.types.gamemodifiers.kits; package mineplex.core.gadget.gadgets.gamemodifiers.kits;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.common.util.LineFormat; import mineplex.core.common.util.LineFormat;
import mineplex.core.common.util.UtilEnt; import mineplex.core.common.util.UtilEnt;
import mineplex.core.common.util.UtilText; import mineplex.core.common.util.UtilText;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.itemstack.ItemStackFactory;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;

View File

@ -1,9 +1,10 @@
package mineplex.core.gadget.types.gamemodifiers.kits.bridges; package mineplex.core.gadget.gadgets.gamemodifiers.kits.bridges;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
public class PotatoKitGameModifier extends KitGameModifier public class PotatoKitGameModifier extends KitGameModifier

View File

@ -1,10 +1,11 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster;
import mineplex.core.common.util.UtilEnt; import mineplex.core.common.util.UtilEnt;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;

View File

@ -1,10 +1,11 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster;
import mineplex.core.common.util.UtilEnt; import mineplex.core.common.util.UtilEnt;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;

View File

@ -1,10 +1,11 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster;
import mineplex.core.common.util.UtilEnt; import mineplex.core.common.util.UtilEnt;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;

View File

@ -1,10 +1,11 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.beastmaster; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.beastmaster;
import mineplex.core.common.util.UtilEnt; import mineplex.core.common.util.UtilEnt;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;

View File

@ -1,9 +1,10 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.horseman; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.horseman;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
public class MuleKitGameModifier extends KitGameModifier public class MuleKitGameModifier extends KitGameModifier

View File

@ -1,9 +1,10 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.horseman; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.horseman;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
public class SkeletonHorseKitGameModifier extends KitGameModifier public class SkeletonHorseKitGameModifier extends KitGameModifier

View File

@ -1,9 +1,10 @@
package mineplex.core.gadget.types.gamemodifiers.kits.survivalgames.necromancer; package mineplex.core.gadget.gadgets.gamemodifiers.kits.survivalgames.necromancer;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.kits.KitGameModifier; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitGameModifier;
import mineplex.core.gadget.types.gamemodifiers.kits.KitModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.kits.KitModifierType;
import org.bukkit.Material; import org.bukkit.Material;
public class WitherSkeletonKitGameModifier extends KitGameModifier public class WitherSkeletonKitGameModifier extends KitGameModifier

View File

@ -1,29 +1,44 @@
package mineplex.core.gadget.types.gamemodifiers.minestrike; package mineplex.core.gadget.gadgets.gamemodifiers.minestrike;
import java.util.function.Predicate; import java.util.function.Predicate;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import mineplex.core.common.util.C;
import mineplex.core.common.util.LineFormat; import mineplex.core.common.util.LineFormat;
import mineplex.core.common.util.UtilText; import mineplex.core.common.util.UtilText;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.GadgetGameModifier; import mineplex.core.gadget.types.GadgetGameModifier;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType;
public abstract class GameModifierMineStrikeSkin extends GadgetGameModifier public class GameModifierMineStrikeSkin extends GadgetGameModifier
{ {
private String _weapon; private String _weapon;
private Material _skin; private Material _skinMat;
private byte _skinData;
public GameModifierMineStrikeSkin(GadgetManager manager, String name, String[] lore, String weaponName, Material newSkin, public GameModifierMineStrikeSkin(GadgetManager manager, String name, String[] lore, String weaponName, Material newSkin, byte newSkinData,
int cost, Material displayMat, int displayData) int cost, Material displayMat, int displayData)
{ {
super(manager, GameModifierType.MineStrike, name, super(manager, GameModifierType.MineStrike, name,
UtilText.splitLinesToArray(lore, LineFormat.LORE), cost, displayMat, (byte) displayData); UtilText.splitLinesToArray(lore, LineFormat.LORE), cost, displayMat, (byte) displayData);
_weapon = weaponName; _weapon = weaponName;
_skin = newSkin; _skinMat = newSkin;
_skinData = newSkinData;
}
public GameModifierMineStrikeSkin(GadgetManager manager, MineStrikeSkin skin, int cost)
{
this(manager, skin, UtilText.splitLineToArray(C.cYellow+ skin.getSkinName() + C.cGray + " skin for the " + C.cYellow + skin.getWeaponName(),
LineFormat.LORE), cost);
}
public GameModifierMineStrikeSkin(GadgetManager manager, MineStrikeSkin skin, String[] lore, int cost)
{
this(manager, skin.getSkinName(), lore, skin.getWeaponName(), skin.getSkinMaterial(), skin.getSkinData(), cost,
skin.getSkinMaterial(), skin.getSkinData());
} }
public String getWeaponName() public String getWeaponName()
@ -31,9 +46,14 @@ public abstract class GameModifierMineStrikeSkin extends GadgetGameModifier
return _weapon; return _weapon;
} }
public Material getSkin() public Material getSkinMaterial()
{ {
return _skin; return _skinMat;
}
public byte getSkinData()
{
return _skinData;
} }
@Override @Override

View File

@ -0,0 +1,63 @@
package mineplex.core.gadget.gadgets.gamemodifiers.minestrike;
import org.bukkit.Material;
public enum MineStrikeSkin
{
P250_Muertos( "P250", "Muertos", Material.INK_SACK, (byte) 3),
CZ75_Auto_Tigris( "CZ75-Auto", "Tigris", Material.CLAY_BRICK, (byte) 0),
Desert_Eagle_Blaze( "Desert_Eagle", "Blaze", Material.NETHER_STALK, (byte) 0),
Nova_Koi( "Nova", "Koi", Material.INK_SACK, (byte) 14),
XM1014_Tranquility( "XM1014", "Tranquility", Material.SULPHUR, (byte) 0),
PP_Bizon_Streak( "PP Bizon", "Streak", Material.INK_SACK, (byte) 4),
P90_Asiimov( "P90", "Asiimov", Material.INK_SACK, (byte) 0),
SSG_08_Blood_in_the_Water( "SSG 08", "Blood in the Water", Material.INK_SACK, (byte) 12),
AWP_Asiimov( "AWP", "Asiimov", Material.DIAMOND, (byte) 0),
P2000_Fire_Elemental( "P2000", "Fire Elemental", Material.INK_SACK, (byte) 6),
FAMAS_Pulse( "FAMAS", "Pulse", Material.CLAY_BALL, (byte) 0),
M4A4_Howl( "M4A4", "Howl", Material.INK_SACK, (byte) 11),
Steyr_AUG_Torque( "Steyr_AUG", "Torque", Material.BLAZE_ROD, (byte) 0),
Glock_18_Fade( "Glock 18", "Fade", Material.INK_SACK, (byte) 13),
Galil_AR_Eco( "Galil_AR", "Eco", Material.INK_SACK, (byte) 10),
AK_47_Vulcan( "AK_47", "Vulcan", Material.INK_SACK, (byte) 7),
SG553_Pulse( "SG553", "Pulse", Material.INK_SACK, (byte) 5),
Knife_M9_Bayonette_Fade( "Knife", "M9 Bayonette Fade", Material.DIAMOND_SWORD, (byte) 0);
private String _weaponName;
private String _skinName;
private Material _skinMaterial;
private byte _skinData;
MineStrikeSkin(String weaponName, String skinName, Material newMaterial, byte newData)
{
_weaponName = weaponName;
_skinName = skinName;
_skinMaterial = newMaterial;
_skinData = newData;
}
public String getWeaponName()
{
return _weaponName;
}
public String getSkinName()
{
return _skinName;
}
public Material getSkinMaterial()
{
return _skinMaterial;
}
public byte getSkinData()
{
return _skinData;
}
}

View File

@ -20,7 +20,7 @@ public class WinEffectLightningStrike extends WinEffectGadget
public WinEffectLightningStrike(GadgetManager manager) public WinEffectLightningStrike(GadgetManager manager)
{ {
super(manager, "Lightning Strike", UtilText.splitLineToArray(C.cGray + "They say lightning doesnt strike twice, but they must lose a lot.", LineFormat.LORE), super(manager, "Lightning Strike", UtilText.splitLineToArray(C.cGray + "They say lightning doesn't strike twice, but they must lose a lot.", LineFormat.LORE),
1, Material.DIAMOND_SWORD, (byte) 0); 1, Material.DIAMOND_SWORD, (byte) 0);
} }

View File

@ -29,8 +29,10 @@ public class WinEffectMrPunchMan extends WinEffectGadget
public WinEffectMrPunchMan(GadgetManager manager) public WinEffectMrPunchMan(GadgetManager manager)
{ {
super(manager, "Mr.Punchman", UtilText.splitLineToArray(C.cGray + "Some say hes still punching on that oversized punching bag in the sky.", LineFormat.LORE), super(manager, "Mr.Punchman", UtilText.splitLineToArray(C.cGray + "Some say he's still punching on that oversized punching bag in the sky.", LineFormat.LORE),
1, Material.IRON_AXE, (byte) 0); 1, Material.IRON_AXE, (byte) 0);
_schematicName = "flatPodium";
} }
@Override @Override

View File

@ -4,6 +4,7 @@ import java.util.List;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.WeatherType; import org.bukkit.WeatherType;
import org.bukkit.block.Biome; import org.bukkit.block.Biome;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@ -75,6 +76,8 @@ public class WinEffectSnowTrails extends WinEffectGadget
UtilParticle.PlayParticleToAll(ParticleType.SNOW_SHOVEL, loc.clone().add(0, 1, 0), 0.3f, 1, 0.3f, 0, 20, ViewDist.NORMAL); UtilParticle.PlayParticleToAll(ParticleType.SNOW_SHOVEL, loc.clone().add(0, 1, 0), 0.3f, 1, 0.3f, 0, 20, ViewDist.NORMAL);
UtilParticle.PlayParticleToAll(ParticleType.SNOW_SHOVEL, loc.clone().add(0, 0.2, 0), 0.6f, 0.2f, 0.6f, 0, 20, ViewDist.NORMAL); UtilParticle.PlayParticleToAll(ParticleType.SNOW_SHOVEL, loc.clone().add(0, 0.2, 0), 0.6f, 0.2f, 0.6f, 0, 20, ViewDist.NORMAL);
if(event.getTick()%3 == 0) loc.getWorld().playSound(loc, Sound.STEP_SNOW, 1.25f, 0.75f);
} }
@Override @Override

View File

@ -6,7 +6,7 @@ import org.bukkit.entity.Player;
import mineplex.core.common.util.F; import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilPlayer; import mineplex.core.common.util.UtilPlayer;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
public abstract class GadgetGameModifier extends Gadget public abstract class GadgetGameModifier extends Gadget
{ {

View File

@ -1,19 +0,0 @@
package mineplex.core.gadget.types.gamemodifiers.minestrike;
import org.bukkit.Material;
import mineplex.core.common.util.C;
import mineplex.core.gadget.GadgetManager;
public class MineStrikeSkinAK47Torch extends GameModifierMineStrikeSkin
{
public MineStrikeSkinAK47Torch(GadgetManager manager)
{
super(manager, "AK-47 Torch", new String[] {C.cGray + "Your gun is shooting so fast that it seems to glow"},
"AK-47", Material.TORCH, 1, Material.TORCH, 0);
}
}

View File

@ -1,19 +0,0 @@
package mineplex.core.gadget.types.gamemodifiers.minestrike;
import org.bukkit.Material;
import mineplex.core.common.util.C;
import mineplex.core.gadget.GadgetManager;
public class MineStrikeSkinDesertEagleSand extends GameModifierMineStrikeSkin
{
public MineStrikeSkinDesertEagleSand(GadgetManager manager)
{
super(manager, "Desert Sand", new String[] {C.cGray + "You know what is better than Desert Eagle?", " ", C.cGray + "Desert Sand"},
"Desert Eagle", Material.SAND, 1, Material.SAND, 0);
}
}

View File

@ -1,19 +0,0 @@
package mineplex.core.gadget.types.gamemodifiers.minestrike;
import org.bukkit.Material;
import mineplex.core.common.util.C;
import mineplex.core.gadget.GadgetManager;
public class MineStrikeSkinDesertEagleStick extends GameModifierMineStrikeSkin
{
public MineStrikeSkinDesertEagleStick(GadgetManager manager)
{
super(manager, "Desert Stick", new String[] {C.cGray + "You thought Desert Eagle was badass. You haven't seen my stick yet..."},
"Desert Eagle", Material.STICK, 1, Material.STICK, 0);
}
}

View File

@ -34,7 +34,7 @@ public class GlobalPacketManager extends MiniPlugin
private DonationManager _donationManager; private DonationManager _donationManager;
private RewardManager _rewardManager; private RewardManager _rewardManager;
public GlobalPacketManager(JavaPlugin plugin, CoreClientManager clientManager, ServerStatusManager statusManager, InventoryManager inventoryManager, DonationManager donationManager, PetManager petManager, StatsManager statsManager) public GlobalPacketManager(JavaPlugin plugin, CoreClientManager clientManager, ServerStatusManager statusManager, InventoryManager inventoryManager, DonationManager donationManager, PetManager petManager, StatsManager statsManager, RewardManager rewardmanager)
{ {
super("Global Packet Manager", plugin); super("Global Packet Manager", plugin);
@ -42,13 +42,7 @@ public class GlobalPacketManager extends MiniPlugin
_statusManager = statusManager; _statusManager = statusManager;
_inventoryManager = inventoryManager; _inventoryManager = inventoryManager;
_donationManager = donationManager; _donationManager = donationManager;
_rewardManager = rewardmanager;
_rewardManager = new RewardManager(clientManager, statusManager, donationManager, inventoryManager, petManager, statsManager,
100, 250,
500, 1000,
1500, 2500,
6000, 12000,
false, false);
ServerCommandManager.getInstance().registerCommandType("GlobalPacketMessage", GlobalPacketMessage.class, new GlobalPacketHandler(statusManager)); ServerCommandManager.getInstance().registerCommandType("GlobalPacketMessage", GlobalPacketMessage.class, new GlobalPacketHandler(statusManager));

View File

@ -8,14 +8,12 @@ import java.util.Random;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.java.JavaPlugin;
import mineplex.core.account.CoreClientManager; import mineplex.core.account.CoreClientManager;
import mineplex.core.common.Rank; import mineplex.core.common.Rank;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailBlood; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailBlood;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailCandyCane;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailConfetti; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailConfetti;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailCupid; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailCupid;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailEmerald; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailEmerald;
@ -25,29 +23,45 @@ import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailMusic;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailShadow; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailShadow;
import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailStorm; import mineplex.core.gadget.gadgets.arrowtrail.ArrowTrailStorm;
import mineplex.core.gadget.gadgets.death.DeathBlood; import mineplex.core.gadget.gadgets.death.DeathBlood;
import mineplex.core.gadget.gadgets.death.DeathCandyCane;
import mineplex.core.gadget.gadgets.death.DeathCupidsBrokenHeart;
import mineplex.core.gadget.gadgets.death.DeathEmerald; import mineplex.core.gadget.gadgets.death.DeathEmerald;
import mineplex.core.gadget.gadgets.death.DeathEnchant; import mineplex.core.gadget.gadgets.death.DeathEnchant;
import mineplex.core.gadget.gadgets.death.DeathFrostLord;
import mineplex.core.gadget.gadgets.death.DeathMusic; import mineplex.core.gadget.gadgets.death.DeathMusic;
import mineplex.core.gadget.gadgets.death.DeathPinataBurst; import mineplex.core.gadget.gadgets.death.DeathPinataBurst;
import mineplex.core.gadget.gadgets.death.DeathShadow; import mineplex.core.gadget.gadgets.death.DeathShadow;
import mineplex.core.gadget.gadgets.death.DeathStorm; import mineplex.core.gadget.gadgets.death.DeathStorm;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpBlood; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpBlood;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpCupidsWings;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpEmerald; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpEmerald;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpEnchant; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpEnchant;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpFirecracker; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpFirecracker;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpFrostLord;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpMusic; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpMusic;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpShadow; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpShadow;
import mineplex.core.gadget.gadgets.doublejump.DoubleJumpStorm; import mineplex.core.gadget.gadgets.doublejump.DoubleJumpStorm;
import mineplex.core.gadget.gadgets.gamemodifiers.minestrike.MineStrikeSkin;
import mineplex.core.gadget.gadgets.hat.HatCompanionBlock;
import mineplex.core.gadget.gadgets.hat.HatGrinch;
import mineplex.core.gadget.gadgets.hat.HatLovestruck;
import mineplex.core.gadget.gadgets.hat.HatPresent;
import mineplex.core.gadget.gadgets.hat.HatSecretPackage;
import mineplex.core.gadget.gadgets.hat.HatSnowman;
import mineplex.core.gadget.gadgets.hat.HatTeddyBear;
import mineplex.core.gadget.gadgets.item.ItemBatGun; import mineplex.core.gadget.gadgets.item.ItemBatGun;
import mineplex.core.gadget.gadgets.item.ItemBow;
import mineplex.core.gadget.gadgets.item.ItemCoal; import mineplex.core.gadget.gadgets.item.ItemCoal;
import mineplex.core.gadget.gadgets.item.ItemCoinBomb; import mineplex.core.gadget.gadgets.item.ItemCoinBomb;
import mineplex.core.gadget.gadgets.item.ItemEtherealPearl; import mineplex.core.gadget.gadgets.item.ItemEtherealPearl;
import mineplex.core.gadget.gadgets.item.ItemFirework; import mineplex.core.gadget.gadgets.item.ItemFirework;
import mineplex.core.gadget.gadgets.item.ItemFleshHook; import mineplex.core.gadget.gadgets.item.ItemFleshHook;
import mineplex.core.gadget.gadgets.item.ItemFreezeCannon; import mineplex.core.gadget.gadgets.item.ItemFreezeCannon;
import mineplex.core.gadget.gadgets.item.ItemLovePotion;
import mineplex.core.gadget.gadgets.item.ItemMelonLauncher; import mineplex.core.gadget.gadgets.item.ItemMelonLauncher;
import mineplex.core.gadget.gadgets.item.ItemPaintballGun; import mineplex.core.gadget.gadgets.item.ItemPaintballGun;
import mineplex.core.gadget.gadgets.item.ItemPartyPopper; import mineplex.core.gadget.gadgets.item.ItemPartyPopper;
import mineplex.core.gadget.gadgets.item.ItemSnowball;
import mineplex.core.gadget.gadgets.item.ItemTNT; import mineplex.core.gadget.gadgets.item.ItemTNT;
import mineplex.core.gadget.gadgets.morph.MorphBat; import mineplex.core.gadget.gadgets.morph.MorphBat;
import mineplex.core.gadget.gadgets.morph.MorphBlock; import mineplex.core.gadget.gadgets.morph.MorphBlock;
@ -55,6 +69,7 @@ import mineplex.core.gadget.gadgets.morph.MorphChicken;
import mineplex.core.gadget.gadgets.morph.MorphCow; import mineplex.core.gadget.gadgets.morph.MorphCow;
import mineplex.core.gadget.gadgets.morph.MorphEnderman; import mineplex.core.gadget.gadgets.morph.MorphEnderman;
import mineplex.core.gadget.gadgets.morph.MorphSlime; import mineplex.core.gadget.gadgets.morph.MorphSlime;
import mineplex.core.gadget.gadgets.morph.MorphSnowman;
import mineplex.core.gadget.gadgets.morph.MorphVillager; import mineplex.core.gadget.gadgets.morph.MorphVillager;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitBoots; import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitBoots;
import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitChestplate; import mineplex.core.gadget.gadgets.outfit.ravesuit.OutfitRaveSuitChestplate;
@ -65,11 +80,13 @@ import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitChestplate;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitHelmet; import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitHelmet;
import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitLeggings; import mineplex.core.gadget.gadgets.outfit.spacesuit.OutfitSpaceSuitLeggings;
import mineplex.core.gadget.gadgets.particle.ParticleBlood; import mineplex.core.gadget.gadgets.particle.ParticleBlood;
import mineplex.core.gadget.gadgets.particle.ParticleCandyCane;
import mineplex.core.gadget.gadgets.particle.ParticleEmerald; import mineplex.core.gadget.gadgets.particle.ParticleEmerald;
import mineplex.core.gadget.gadgets.particle.ParticleEnchant; import mineplex.core.gadget.gadgets.particle.ParticleEnchant;
import mineplex.core.gadget.gadgets.particle.ParticleFairy; import mineplex.core.gadget.gadgets.particle.ParticleFairy;
import mineplex.core.gadget.gadgets.particle.ParticleFireRings; import mineplex.core.gadget.gadgets.particle.ParticleFireRings;
import mineplex.core.gadget.gadgets.particle.ParticleFoot; import mineplex.core.gadget.gadgets.particle.ParticleFoot;
import mineplex.core.gadget.gadgets.particle.ParticleFrostLord;
import mineplex.core.gadget.gadgets.particle.ParticleHeart; import mineplex.core.gadget.gadgets.particle.ParticleHeart;
import mineplex.core.gadget.gadgets.particle.ParticleMusic; import mineplex.core.gadget.gadgets.particle.ParticleMusic;
import mineplex.core.gadget.gadgets.particle.ParticleRain; import mineplex.core.gadget.gadgets.particle.ParticleRain;
@ -92,6 +109,7 @@ import mineplex.core.gadget.types.HatGadget;
import mineplex.core.gadget.types.ItemGadget; import mineplex.core.gadget.types.ItemGadget;
import mineplex.core.inventory.InventoryManager; import mineplex.core.inventory.InventoryManager;
import mineplex.core.mount.Mount; import mineplex.core.mount.Mount;
import mineplex.core.mount.types.MountBabyReindeer;
import mineplex.core.mount.types.MountCart; import mineplex.core.mount.types.MountCart;
import mineplex.core.mount.types.MountFrost; import mineplex.core.mount.types.MountFrost;
import mineplex.core.mount.types.MountMule; import mineplex.core.mount.types.MountMule;
@ -100,6 +118,8 @@ import mineplex.core.mount.types.MountUndead;
import mineplex.core.pet.Pet; import mineplex.core.pet.Pet;
import mineplex.core.pet.PetManager; import mineplex.core.pet.PetManager;
import mineplex.core.reward.RewardPool.Type; import mineplex.core.reward.RewardPool.Type;
import mineplex.core.reward.rewards.ExperienceReward;
import mineplex.core.reward.rewards.GemReward;
import mineplex.core.reward.rewards.InventoryReward; import mineplex.core.reward.rewards.InventoryReward;
import mineplex.core.reward.rewards.PetReward; import mineplex.core.reward.rewards.PetReward;
import mineplex.core.reward.rewards.RankReward; import mineplex.core.reward.rewards.RankReward;
@ -110,66 +130,61 @@ import mineplex.core.status.ServerStatusManager;
public class RewardManager public class RewardManager
{ {
private JavaPlugin _plugin;
private EnumMap<RewardPool.Type, RewardPool> _rewardPools; private EnumMap<RewardPool.Type, RewardPool> _rewardPools;
private Random _random; private Random _random;
private boolean _carlSpinner;
private CoreClientManager _clientManager; private CoreClientManager _clientManager;
private DonationManager _donationManager; private DonationManager _donationManager;
private ServerStatusManager _statusManager; private StatsManager _statsManager;
private InventoryManager _iInventoryManager; private InventoryManager _inventoryManager;
private GadgetManager _gadgetManager; private GadgetManager _gadgetManager;
private PetManager _petManager; private PetManager _petManager;
private boolean _doubleGadgetValue; private double _gadgetMultiplier;
private int _commonAmmoMin, _commonAmmoMax, private int _commonAmmoMin = 20, _commonAmmoMax = 50,
_uncommonAmmoMin, _uncommonAmmoMax, _uncommonAmmoMin = 50, _uncommonAmmoMax = 100,
_rareAmmoMin, _rareAmmoMax, _rareAmmoMin = 100, _rareAmmoMax = 200,
_legendAmmoMin, _legendAmmoMax; _legendAmmoMin = 200, _legendAmmoMax = 300;
private int _uncommonShards = 100; private int _uncommonShards = 100;
private int _rareShards = 500; private int _rareShards = 500;
private int _legendaryShards = 5000; private int _legendaryShards = 5000;
public RewardManager(CoreClientManager clientManager, DonationManager donationManager, InventoryManager inventoryManager,
public RewardManager(CoreClientManager clientManager, ServerStatusManager statusManager, DonationManager donationManager, InventoryManager inventoryManager, PetManager petManager, StatsManager statsManager, PetManager petManager, StatsManager statsManager, GadgetManager gadgetManager,
int commonValueMin, int commonValueMax, double gadgetValueMultiplier)
int uncommonValueMin, int uncommonValueMax,
int rareValueMin, int rareValueMax,
int legendValueMin, int legendValueMax,
boolean doubleGadgetValue, boolean carlSpinner)
{ {
_plugin = donationManager.getPlugin();
_rewardPools = new EnumMap<RewardPool.Type, RewardPool>(RewardPool.Type.class); _rewardPools = new EnumMap<RewardPool.Type, RewardPool>(RewardPool.Type.class);
_random = new Random(); _random = new Random();
int mult = _doubleGadgetValue? 2 : 1;
_commonAmmoMin = commonValueMin * mult;
_commonAmmoMax = commonValueMax * mult;
_uncommonAmmoMin = uncommonValueMin * mult;
_uncommonAmmoMax = uncommonValueMax * mult;
_rareAmmoMin = rareValueMin * mult;
_rareAmmoMax = rareValueMax * mult;
_legendAmmoMin = legendValueMin * mult;
_legendAmmoMax = legendValueMax * mult;
for (RewardPool.Type type : RewardPool.Type.values()) for (RewardPool.Type type : RewardPool.Type.values())
{ {
_rewardPools.put(type, new RewardPool()); _rewardPools.put(type, new RewardPool());
} }
_clientManager = clientManager; _clientManager = clientManager;
_statusManager = statusManager;
_donationManager = donationManager; _donationManager = donationManager;
_statsManager = statsManager;
_inventoryManager = inventoryManager;
_gadgetManager = gadgetManager;
_petManager = petManager; _petManager = petManager;
_doubleGadgetValue = doubleGadgetValue; _gadgetMultiplier = gadgetValueMultiplier;
_carlSpinner = carlSpinner;
_commonAmmoMin *= _gadgetMultiplier;
_commonAmmoMax *= _gadgetMultiplier;
_uncommonAmmoMin *= _gadgetMultiplier;
_uncommonAmmoMax *= _gadgetMultiplier;
_rareAmmoMin *= _gadgetMultiplier;
_rareAmmoMax *= _gadgetMultiplier;
_legendAmmoMin *= _gadgetMultiplier;
_legendAmmoMax *= _gadgetMultiplier;
addCommon();
addUncommon();
addRare();
addLegendary();
// addCommon(donationManager, inventoryManager, petManager, statsManager, commonValueMin, commonValueMax); // addCommon(donationManager, inventoryManager, petManager, statsManager, commonValueMin, commonValueMax);
// addUncommon(donationManager, inventoryManager, petManager, statsManager, uncommonValueMin, uncommonValueMax); // addUncommon(donationManager, inventoryManager, petManager, statsManager, uncommonValueMin, uncommonValueMax);
@ -564,89 +579,119 @@ public class RewardManager
{ {
RewardRarity rarity = RewardRarity.COMMON; RewardRarity rarity = RewardRarity.COMMON;
addInventoryReward(Type.NORMAL, getGadget(ItemEtherealPearl.class), rarity, 10, 0); addReward(Type.CARL_SPINNER, new GemReward(_donationManager, getAmmoMin(rarity), getAmmoMax(rarity), 25, 0, rarity));
addInventoryReward(Type.NORMAL, getGadget(ItemFirework.class), rarity, 10, 0); addReward(Type.CARL_SPINNER, new ExperienceReward(_statsManager, getAmmoMin(rarity)*5, getAmmoMax(rarity)*5, 25, 0, rarity));
addInventoryReward(Type.NORMAL, getGadget(ItemTNT.class), rarity, 10, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemMelonLauncher.class), rarity, 10, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemFleshHook.class), rarity, 10, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemPaintballGun.class), rarity, 10, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemBatGun.class), rarity, 10, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemCoinBomb.class), rarity, 10, 0);
//Normal Gadgets
addInventoryReward(Type.NORMAL, getGadget(ItemBatGun.class), rarity, 10, getShards(rarity), 4, 10);
addInventoryReward(Type.NORMAL, getGadget(ItemEtherealPearl.class), rarity, 10, getShards(rarity), 6, 15);
addInventoryReward(Type.NORMAL, getGadget(ItemFirework.class), rarity, 10, getShards(rarity), 10, 25);
addInventoryReward(Type.NORMAL, getGadget(ItemFleshHook.class), rarity, 10, getShards(rarity), 8, 20);
addInventoryReward(Type.NORMAL, getGadget(ItemMelonLauncher.class), rarity, 10, getShards(rarity), 10, 25);
addInventoryReward(Type.NORMAL, getGadget(ItemPaintballGun.class), rarity, 10, getShards(rarity), 20, 50);
addInventoryReward(Type.NORMAL, getGadget(ItemTNT.class), rarity, 10, getShards(rarity), 4, 10);
addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemCoal.class), rarity, 10); //Winter Gadgets
addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemPartyPopper.class), rarity, 10); addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemCoal.class), rarity, 10, 0, 50, 100);
addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemFreezeCannon.class), rarity, 10); addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemSnowball.class), rarity, 10, 0, 5, 20);
addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemTNT.class), rarity, 10); addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemPartyPopper.class), rarity, 10, 0, 5, 10);
addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemFreezeCannon.class), rarity, 10, 0, 5, 10);
addInventoryReward(Type.WINTER_HOLIDAY, getGadget(ItemTNT.class), rarity, 10, 0, 5, 10);
//Valentines
addInventoryReward(Type.VALENTINES_GIFT, getGadget(ItemBow.class), rarity, 300, 0, 1, 5);
} }
public void addUncommon() public void addUncommon()
{ {
RewardRarity rarity = RewardRarity.UNCOMMON; RewardRarity rarity = RewardRarity.UNCOMMON;
addInventoryReward(Type.NORMAL, getGadget(ItemEtherealPearl.class), rarity, 250, 0); addReward(Type.CARL_SPINNER, new GemReward(_donationManager, getAmmoMin(rarity), getAmmoMax(rarity), 1200, 0, rarity));
addInventoryReward(Type.NORMAL, getGadget(ItemFirework.class), rarity, 250, 0); addReward(Type.CARL_SPINNER, new ExperienceReward(_statsManager, getAmmoMin(rarity)*5, getAmmoMax(rarity)*5, 1200, 0, rarity));
addInventoryReward(Type.NORMAL, getGadget(ItemTNT.class), rarity, 250, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemMelonLauncher.class), rarity, 250, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemFleshHook.class), rarity, 250, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemPaintballGun.class), rarity, 250, 0);
addInventoryReward(Type.NORMAL, getGadget(ItemBatGun.class), rarity, 250, 0);
addPetReward(Type.NORMAL, EntityType.PIG, rarity, 200); //Gadgets
addPetReward(Type.NORMAL, EntityType.SHEEP, rarity, 333); addInventoryReward(Type.NORMAL, getGadget(ItemBatGun.class), rarity, 250, 0, 20, 40);
addPetReward(Type.NORMAL, EntityType.COW, rarity, 500); addInventoryReward(Type.NORMAL, getGadget(ItemEtherealPearl.class), rarity, 250, 0, 30, 60);
addInventoryReward(Type.NORMAL, getGadget(ItemFirework.class), rarity, 250, 0, 25, 50);
addInventoryReward(Type.NORMAL, getGadget(ItemFleshHook.class), rarity, 250, 0, 40, 80);
addInventoryReward(Type.NORMAL, getGadget(ItemMelonLauncher.class), rarity, 250, 0, 25, 50);
addInventoryReward(Type.NORMAL, getGadget(ItemPaintballGun.class), rarity, 250, 0, 100, 200);
addInventoryReward(Type.NORMAL, getGadget(ItemTNT.class), rarity, 250, 0, 20, 40);
//Pets
addPetReward(Type.NORMAL, EntityType.CHICKEN, rarity, 143); addPetReward(Type.NORMAL, EntityType.CHICKEN, rarity, 143);
addPetReward(Type.NORMAL, EntityType.WOLF, rarity, 125); addPetReward(Type.NORMAL, EntityType.COW, rarity, 500);
addPetReward(Type.NORMAL, EntityType.MUSHROOM_COW, rarity, 200); addPetReward(Type.NORMAL, EntityType.MUSHROOM_COW, rarity, 200);
addPetReward(Type.NORMAL, EntityType.OCELOT, rarity, 167); addPetReward(Type.NORMAL, EntityType.OCELOT, rarity, 167);
addPetReward(Type.NORMAL, EntityType.PIG, rarity, 200);
addPetReward(Type.NORMAL, EntityType.SHEEP, rarity, 333);
addPetReward(Type.NORMAL, EntityType.WOLF, rarity, 125);
addMusicReward(Type.NORMAL, "Cat Disk", rarity, 25);
//Music Discs
addMusicReward(Type.NORMAL, "Blocks Disk", rarity, 25); addMusicReward(Type.NORMAL, "Blocks Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Cat Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Chirp Disk", rarity, 25); addMusicReward(Type.NORMAL, "Chirp Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Far Disk", rarity, 25); addMusicReward(Type.NORMAL, "Far Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Mall Disk", rarity, 25); addMusicReward(Type.NORMAL, "Mall Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Mellohi Disk", rarity, 25); addMusicReward(Type.NORMAL, "Mellohi Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Stal Disk", rarity, 25); addMusicReward(Type.NORMAL, "Stal Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Strad Disk", rarity, 25); addMusicReward(Type.NORMAL, "Strad Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Ward Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Wait Disk", rarity, 25); addMusicReward(Type.NORMAL, "Wait Disk", rarity, 25);
addMusicReward(Type.NORMAL, "Ward Disk", rarity, 25);
// VALENTINES Gadgets
addInventoryReward(Type.VALENTINES_GIFT, getGadget(ItemLovePotion.class), rarity, 100, 0, 1, 1);
//Only enable on Valentince's Day?
// addInventoryReward(Type.VALENTINES_GIFT, getGadget(ItemFlowerGift.class), rarity, 100, 0, 1, 1);
// WINTER Gadgets
addGadget(Type.WINTER_HOLIDAY, getGadget(HatPresent.class), rarity, 5);
addGadget(Type.WINTER_HOLIDAY, getGadget(HatSnowman.class), rarity, 5);
} }
public void addRare() public void addRare()
{ {
RewardRarity rarity = RewardRarity.RARE; RewardRarity rarity = RewardRarity.RARE;
addReward(Type.CARL_SPINNER, new GemReward(_donationManager, getAmmoMin(rarity), getAmmoMax(rarity), 150, 0, rarity));
addReward(Type.CARL_SPINNER, new ExperienceReward(_statsManager, getAmmoMin(rarity)*5, getAmmoMax(rarity)*5, 150, 0, rarity));
//Morphs
addGadget(Type.NORMAL, getGadget(MorphVillager.class), rarity, 83); addGadget(Type.NORMAL, getGadget(MorphVillager.class), rarity, 83);
addGadget(Type.NORMAL, getGadget(MorphCow.class), rarity, 167); addGadget(Type.NORMAL, getGadget(MorphCow.class), rarity, 167);
addGadget(Type.NORMAL, getGadget(MorphChicken.class), rarity, 50); addGadget(Type.NORMAL, getGadget(MorphChicken.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(MorphEnderman.class), rarity, 33); addGadget(Type.NORMAL, getGadget(MorphEnderman.class), rarity, 33);
//Mounts
addMount(Type.NORMAL, getMount(MountFrost.class), rarity, 50); addMount(Type.NORMAL, getMount(MountFrost.class), rarity, 50);
addMount(Type.NORMAL, getMount(MountSlime.class), rarity, 67); addMount(Type.NORMAL, getMount(MountSlime.class), rarity, 67);
addMount(Type.NORMAL, getMount(MountCart.class), rarity, 100); addMount(Type.NORMAL, getMount(MountCart.class), rarity, 100);
addMount(Type.NORMAL, getMount(MountMule.class), rarity, 200); addMount(Type.NORMAL, getMount(MountMule.class), rarity, 200);
//Outfit Rave
addGadget(Type.NORMAL, getGadget(OutfitRaveSuitHelmet.class), rarity, 30); addGadget(Type.NORMAL, getGadget(OutfitRaveSuitHelmet.class), rarity, 30);
addGadget(Type.NORMAL, getGadget(OutfitRaveSuitChestplate.class), rarity, 30); addGadget(Type.NORMAL, getGadget(OutfitRaveSuitChestplate.class), rarity, 30);
addGadget(Type.NORMAL, getGadget(OutfitRaveSuitLeggings.class), rarity, 30); addGadget(Type.NORMAL, getGadget(OutfitRaveSuitLeggings.class), rarity, 30);
addGadget(Type.NORMAL, getGadget(OutfitRaveSuitBoots.class), rarity, 30); addGadget(Type.NORMAL, getGadget(OutfitRaveSuitBoots.class), rarity, 30);
//Outfit Space
addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitHelmet.class), rarity, 50); addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitHelmet.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitChestplate.class), rarity, 50); addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitChestplate.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitLeggings.class), rarity, 50); addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitLeggings.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitBoots.class), rarity, 50); addGadget(Type.NORMAL, getGadget(OutfitSpaceSuitBoots.class), rarity, 50);
//Arrow Trails
addGadget(Type.NORMAL, getGadget(ArrowTrailConfetti.class), rarity, 27); addGadget(Type.NORMAL, getGadget(ArrowTrailConfetti.class), rarity, 27);
addGadget(Type.NORMAL, getGadget(ArrowTrailBlood.class), rarity, 50); addGadget(Type.NORMAL, getGadget(ArrowTrailBlood.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(ArrowTrailEmerald.class), rarity, 25); addGadget(Type.NORMAL, getGadget(ArrowTrailEmerald.class), rarity, 25);
addGadget(Type.NORMAL, getGadget(ArrowTrailShadow.class), rarity, 15);
addGadget(Type.NORMAL, getGadget(ArrowTrailMusic.class), rarity, 27); addGadget(Type.NORMAL, getGadget(ArrowTrailMusic.class), rarity, 27);
addGadget(Type.NORMAL, getGadget(ArrowTrailStorm.class), rarity, 30); addGadget(Type.NORMAL, getGadget(ArrowTrailStorm.class), rarity, 30);
addGadget(Type.NORMAL, getGadget(ArrowTrailShadow.class), rarity, 15); addGadget(Type.NORMAL, getGadget(ArrowTrailShadow.class), rarity, 15);
//Double Jumps
addGadget(Type.NORMAL, getGadget(DoubleJumpFirecracker.class), rarity, 33); addGadget(Type.NORMAL, getGadget(DoubleJumpFirecracker.class), rarity, 33);
addGadget(Type.NORMAL, getGadget(DoubleJumpEmerald.class), rarity, 25); addGadget(Type.NORMAL, getGadget(DoubleJumpEmerald.class), rarity, 25);
addGadget(Type.NORMAL, getGadget(DoubleJumpShadow.class), rarity, 15); addGadget(Type.NORMAL, getGadget(DoubleJumpShadow.class), rarity, 15);
@ -654,6 +699,7 @@ public class RewardManager
addGadget(Type.NORMAL, getGadget(DoubleJumpBlood.class), rarity, 50); addGadget(Type.NORMAL, getGadget(DoubleJumpBlood.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(DoubleJumpMusic.class), rarity, 20); addGadget(Type.NORMAL, getGadget(DoubleJumpMusic.class), rarity, 20);
//Death Effects
addGadget(Type.NORMAL, getGadget(DeathPinataBurst.class), rarity, 27); addGadget(Type.NORMAL, getGadget(DeathPinataBurst.class), rarity, 27);
addGadget(Type.NORMAL, getGadget(DeathEmerald.class), rarity, 25); addGadget(Type.NORMAL, getGadget(DeathEmerald.class), rarity, 25);
addGadget(Type.NORMAL, getGadget(DeathShadow.class), rarity, 15); addGadget(Type.NORMAL, getGadget(DeathShadow.class), rarity, 15);
@ -661,25 +707,66 @@ public class RewardManager
addGadget(Type.NORMAL, getGadget(DeathBlood.class), rarity, 50); addGadget(Type.NORMAL, getGadget(DeathBlood.class), rarity, 50);
addGadget(Type.NORMAL, getGadget(DeathMusic.class), rarity, 20); addGadget(Type.NORMAL, getGadget(DeathMusic.class), rarity, 20);
addGadget(Type.NORMAL, getGadget(WinEffectFireworks.class), rarity, 100); //Win Effects
addGadget(Type.NORMAL, getGadget(WinEffectFireworks.class), rarity, 200);
addGadget(Type.NORMAL, getGadget(WinEffectFlames.class), rarity, 100); addGadget(Type.NORMAL, getGadget(WinEffectFlames.class), rarity, 100);
addGadget(Type.NORMAL, getGadget(WinEffectSnowTrails.class), rarity, 100); addGadget(Type.NORMAL, getGadget(WinEffectSnowTrails.class), rarity, 100);
//Game Modifiers MineStrike
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.AWP_Asiimov, rarity, 200);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.P90_Asiimov, rarity, 200);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.SSG_08_Blood_in_the_Water, rarity, 50);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.Galil_AR_Eco, rarity, 20);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.P2000_Fire_Elemental, rarity, 200);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.Nova_Koi, rarity, 25);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.FAMAS_Pulse, rarity, 20);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.SG553_Pulse, rarity, 20);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.PP_Bizon_Streak, rarity, 40);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.CZ75_Auto_Tigris, rarity, 100);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.Steyr_AUG_Torque, rarity, 30);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.XM1014_Tranquility, rarity, 30);
// VALENTINES
//Hats
addGadget(Type.VALENTINES_GIFT, getGadget(HatCompanionBlock.class), rarity, 100, 0);
addGadget(Type.VALENTINES_GIFT, getGadget(HatLovestruck.class), rarity, 100, 0);
addGadget(Type.VALENTINES_GIFT, getGadget(HatSecretPackage.class), rarity, 100, 0);
addGadget(Type.VALENTINES_GIFT, getGadget(HatTeddyBear.class), rarity, 100, 0);
// WINTER
//Candy Set
addGadget(Type.WINTER_HOLIDAY, getGadget(ArrowTrailConfetti.class), rarity, 5);
addGadget(Type.WINTER_HOLIDAY, getGadget(DeathCandyCane.class), rarity, 5);
addGadget(Type.WINTER_HOLIDAY, getGadget(DoubleJumpFirecracker.class), rarity, 5);
addGadget(Type.WINTER_HOLIDAY, getGadget(ParticleCandyCane.class), rarity, 5);
} }
public void addLegendary() public void addLegendary()
{ {
RewardRarity rarity = RewardRarity.LEGENDARY; RewardRarity rarity = RewardRarity.LEGENDARY;
addReward(Type.CARL_SPINNER, new GemReward(_donationManager, getAmmoMin(rarity), getAmmoMax(rarity), 10, 0, rarity));
addReward(Type.CARL_SPINNER, new ExperienceReward(_statsManager, getAmmoMin(rarity)*5, getAmmoMax(rarity)*5, 10, 0, rarity));
//REGULAR
//Enchant set
addGadget(Type.NORMAL, getGadget(ArrowTrailEnchant.class), rarity, 10); addGadget(Type.NORMAL, getGadget(ArrowTrailEnchant.class), rarity, 10);
addGadget(Type.NORMAL, getGadget(DeathEnchant.class), rarity, 10); addGadget(Type.NORMAL, getGadget(DeathEnchant.class), rarity, 10);
addGadget(Type.NORMAL, getGadget(DoubleJumpEnchant.class), rarity, 10); addGadget(Type.NORMAL, getGadget(DoubleJumpEnchant.class), rarity, 10);
//Morphs
addGadget(Type.NORMAL, getGadget(MorphSlime.class), rarity, 10); addGadget(Type.NORMAL, getGadget(MorphSlime.class), rarity, 10);
addGadget(Type.NORMAL, getGadget(MorphBat.class), rarity, 25); addGadget(Type.NORMAL, getGadget(MorphBat.class), rarity, 25);
addGadget(Type.NORMAL, getGadget(MorphBlock.class), rarity, 20); addGadget(Type.NORMAL, getGadget(MorphBlock.class), rarity, 20);
//Mounts
addMount(Type.NORMAL, getMount(MountUndead.class), rarity, 33); addMount(Type.NORMAL, getMount(MountUndead.class), rarity, 33);
//Particle Trails
addGadget(Type.NORMAL, getGadget(ParticleWingsAngel.class), rarity, 15); addGadget(Type.NORMAL, getGadget(ParticleWingsAngel.class), rarity, 15);
addGadget(Type.NORMAL, getGadget(ParticleBlood.class), rarity, 10); addGadget(Type.NORMAL, getGadget(ParticleBlood.class), rarity, 10);
addGadget(Type.NORMAL, getGadget(ParticleWingsDemons.class), rarity, 15); addGadget(Type.NORMAL, getGadget(ParticleWingsDemons.class), rarity, 15);
@ -695,19 +782,60 @@ public class RewardManager
addGadget(Type.NORMAL, getGadget(ParticleFoot.class), rarity, 33); addGadget(Type.NORMAL, getGadget(ParticleFoot.class), rarity, 33);
addGadget(Type.NORMAL, getGadget(ParticleYinYang.class), rarity, 20); addGadget(Type.NORMAL, getGadget(ParticleYinYang.class), rarity, 20);
//Win Effects
addGadget(Type.NORMAL, getGadget(WinEffectBabyChicken.class), rarity, 10); addGadget(Type.NORMAL, getGadget(WinEffectBabyChicken.class), rarity, 10);
addGadget(Type.NORMAL, getGadget(WinEffectLavaTrap.class), rarity, 20); addGadget(Type.NORMAL, getGadget(WinEffectLavaTrap.class), rarity, 20);
addGadget(Type.NORMAL, getGadget(WinEffectLightningStrike.class), rarity, 20); addGadget(Type.NORMAL, getGadget(WinEffectLightningStrike.class), rarity, 20);
addGadget(Type.NORMAL, getGadget(WinEffectMrPunchMan.class), rarity, 33); addGadget(Type.NORMAL, getGadget(WinEffectMrPunchMan.class), rarity, 33);
addGadget(Type.NORMAL, getGadget(WinEffectRiseOfTheElderGuardian.class), rarity, 4); addGadget(Type.NORMAL, getGadget(WinEffectRiseOfTheElderGuardian.class), rarity, 4);
//GameModifier MineStrike
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.AWP_Asiimov, rarity, 8);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.P90_Asiimov, rarity, 8);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.Desert_Eagle_Blaze, rarity, 10);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.Glock_18_Fade, rarity, 20);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.M4A4_Howl, rarity, 5);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.Knife_M9_Bayonette_Fade, rarity, 1);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.P250_Muertos, rarity, 20);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.FAMAS_Pulse, rarity, 33);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.SG553_Pulse, rarity, 33);
addMineStrikeSkin(Type.NORMAL, MineStrikeSkin.AK_47_Vulcan, rarity, 5);
//WINTER
//Arrow Trails
addGadget(Type.NORMAL, getGadget(ArrowTrailFrostLord.class), rarity, 5);
addGadget(Type.NORMAL, getGadget(DeathFrostLord.class), rarity, 5);
addGadget(Type.NORMAL, getGadget(DoubleJumpFrostLord.class), rarity, 5);
addGadget(Type.NORMAL, getGadget(ParticleFrostLord.class), rarity, 5);
addGadget(Type.NORMAL, getGadget(HatGrinch.class), rarity, 5);
addGadget(Type.NORMAL, getGadget(MorphSnowman.class), rarity, 5);
addMount( Type.NORMAL, getMount(MountBabyReindeer.class), rarity, 5);
//VALENTINES
//Cupid Set
addGadget(Type.NORMAL, getGadget(ArrowTrailCupid.class), rarity, 100);
addGadget(Type.NORMAL, getGadget(DeathCupidsBrokenHeart.class), rarity, 100);
addGadget(Type.NORMAL, getGadget(DoubleJumpCupidsWings.class), rarity, 100);
addGadget(Type.NORMAL, getGadget(ParticleHeart.class), rarity, 100, 0);
} }
public UnknownPackageReward addMount(Type type, Mount mount, RewardRarity rarity, int weight) public UnknownPackageReward addMount(Type type, Mount<?> mount, RewardRarity rarity, int weight)
{ {
return addMount(type, mount, rarity, weight, getShards(rarity)); return addMount(type, mount, rarity, weight, getShards(rarity));
} }
public UnknownPackageReward addMount(Type type, Mount mount, RewardRarity rarity, int weight, int shards) public UnknownPackageReward addMount(Type type, Mount<?> mount, RewardRarity rarity, int weight, int shards)
{ {
UnknownPackageReward reward = new UnknownPackageReward(_donationManager, "Mount", mount.GetDisplayName(), mount.GetName(), UnknownPackageReward reward = new UnknownPackageReward(_donationManager, "Mount", mount.GetDisplayName(), mount.GetName(),
new ItemStack(mount.GetDisplayMaterial(), 1, (short) 0, (byte) mount.GetDisplayData()), rarity, weight, shards); new ItemStack(mount.GetDisplayMaterial(), 1, (short) 0, (byte) mount.GetDisplayData()), rarity, weight, shards);
@ -756,6 +884,17 @@ public class RewardManager
return reward; return reward;
} }
public UnknownPackageReward addMineStrikeSkin(Type type, MineStrikeSkin skin, RewardRarity rarity, int weight)
{
return addMineStrikeSkin(type, skin, rarity, weight, getShards(rarity));
}
public UnknownPackageReward addMineStrikeSkin(Type type, MineStrikeSkin skin, RewardRarity rarity, int weight, int shards)
{
Gadget gadget = _gadgetManager.getGameModifier(skin);
return addGadget(type, gadget, rarity, weight, shards);
}
public InventoryReward addInventoryReward(RewardPool.Type type, ItemGadget gadget, RewardRarity rarity, int weight) public InventoryReward addInventoryReward(RewardPool.Type type, ItemGadget gadget, RewardRarity rarity, int weight)
{ {
return addInventoryReward(type, gadget, rarity, weight, getShards(rarity), getAmmoMin(rarity), getAmmoMax(rarity)); return addInventoryReward(type, gadget, rarity, weight, getShards(rarity), getAmmoMin(rarity), getAmmoMax(rarity));
@ -769,7 +908,7 @@ public class RewardManager
public InventoryReward addInventoryReward(RewardPool.Type type, ItemGadget gadget, RewardRarity rarity, int weight, int shards, public InventoryReward addInventoryReward(RewardPool.Type type, ItemGadget gadget, RewardRarity rarity, int weight, int shards,
int minAmmo, int maxAmmo) int minAmmo, int maxAmmo)
{ {
InventoryReward reward = new InventoryReward(_iInventoryManager, gadget.GetDisplayName(), InventoryReward reward = new InventoryReward(_inventoryManager, gadget.GetDisplayName(),
gadget.GetName(), minAmmo, maxAmmo, gadget.GetName(), minAmmo, maxAmmo,
new ItemStack(gadget.GetDisplayMaterial(), 1, (short) 0, gadget.GetDisplayData()), rarity, weight, shards); new ItemStack(gadget.GetDisplayMaterial(), 1, (short) 0, gadget.GetDisplayData()), rarity, weight, shards);
addReward(type, reward); addReward(type, reward);
@ -784,7 +923,7 @@ public class RewardManager
public PetReward addPetReward(Type type, EntityType entityType, RewardRarity rarity, int weight, int shards) public PetReward addPetReward(Type type, EntityType entityType, RewardRarity rarity, int weight, int shards)
{ {
Pet pet = _petManager.GetFactory().getPet(entityType); Pet pet = _petManager.GetFactory().getPet(entityType);
PetReward reward = new PetReward(_petManager, _iInventoryManager, _donationManager, PetReward reward = new PetReward(_petManager, _inventoryManager, _donationManager,
pet.GetName() + " Pet", pet.GetName(), entityType, rarity, weight, shards); pet.GetName() + " Pet", pet.GetName(), entityType, rarity, weight, shards);
addReward(type, reward); addReward(type, reward);
return reward; return reward;
@ -854,13 +993,17 @@ public class RewardManager
public void addReward(Reward reward) public void addReward(Reward reward)
{ {
addReward(RewardPool.Type.NORMAL, reward); addReward(RewardPool.Type.NORMAL, reward);
if(!(reward instanceof InventoryReward))
addReward(RewardPool.Type.ILLUMINATED, reward);
} }
public void addReward(RewardPool.Type pool, Reward reward) public void addReward(RewardPool.Type pool, Reward reward)
{ {
if(pool == Type.NORMAL)
{
_rewardPools.get(Type.CARL_SPINNER).add(reward);
if(!(reward instanceof InventoryReward))
_rewardPools.get(Type.ILLUMINATED).add(reward);
}
_rewardPools.get(pool).add(reward); _rewardPools.get(pool).add(reward);
} }

View File

@ -50,7 +50,8 @@ public class RewardPool
NORMAL(true), NORMAL(true),
WINTER_HOLIDAY(true), WINTER_HOLIDAY(true),
VALENTINES_GIFT(false), VALENTINES_GIFT(false),
ILLUMINATED(false); ILLUMINATED(false),
CARL_SPINNER(true);
private boolean _useDuplicates; private boolean _useDuplicates;

View File

@ -108,7 +108,7 @@ public class Treasure
_chestData[i] = new ChestData(chestBlocks[i]); _chestData[i] = new ChestData(chestBlocks[i]);
} }
_animations.add(new BlockChangeAnimation(this, _otherBlockInfo)); _animations.add(new BlockChangeAnimation(this, _otherBlockInfo, chestBlocks));
for (int i = 0; i < _rewards.length; i++) for (int i = 0; i < _rewards.length; i++)
{ {

View File

@ -120,7 +120,7 @@ public class TreasureLocation implements Listener
{ {
player.sendMessage(F.main("Treasure", "You don't have any chests to open!")); player.sendMessage(F.main("Treasure", "You don't have any chests to open!"));
player.sendMessage(F.main("Treasure", "But like, lets just ignore that for now though ;)")); player.sendMessage("But like, lets just ignore that for now though ;)");
// return; // return;
} }
@ -159,6 +159,8 @@ public class TreasureLocation implements Listener
if(r == null) if(r == null)
{ {
reset(); reset();
player.sendMessage(F.main("Treasure", "There are no available items in this"));
player.sendMessage(F.main("Treasure", "chest for you to open"));
return; return;
} }
} }

View File

@ -38,7 +38,7 @@ public class TreasureManager extends MiniPlugin
private StatsManager _statsManager; private StatsManager _statsManager;
private List<TreasureLocation> _treasureLocations; private List<TreasureLocation> _treasureLocations;
public TreasureManager(JavaPlugin plugin, CoreClientManager clientManager, ServerStatusManager statusManager, DonationManager donationManager, InventoryManager inventoryManager, PetManager petManager, BlockRestore blockRestore, HologramManager hologramManager, StatsManager statsManager) public TreasureManager(JavaPlugin plugin, CoreClientManager clientManager, ServerStatusManager statusManager, DonationManager donationManager, InventoryManager inventoryManager, PetManager petManager, BlockRestore blockRestore, HologramManager hologramManager, StatsManager statsManager, RewardManager rewardManager)
{ {
super("Treasure", plugin); super("Treasure", plugin);
@ -47,12 +47,7 @@ public class TreasureManager extends MiniPlugin
_blockRestore = blockRestore; _blockRestore = blockRestore;
_hologramManager = hologramManager; _hologramManager = hologramManager;
_statsManager = statsManager; _statsManager = statsManager;
_rewardManager = new RewardManager(clientManager, statusManager, donationManager, _inventoryManager, petManager, statsManager, _rewardManager = rewardManager;
100, 250,
500, 1000,
4000, 6000,
12000, 22000,
true, false);
World world = Bukkit.getWorlds().get(0); World world = Bukkit.getWorlds().get(0);

View File

@ -2,9 +2,12 @@ package mineplex.core.treasure.animation;
import java.util.List; import java.util.List;
import org.bukkit.Bukkit;
import org.bukkit.Effect;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.block.BlockFace; import org.bukkit.block.BlockFace;
import org.bukkit.entity.Player;
import mineplex.core.treasure.BlockInfo; import mineplex.core.treasure.BlockInfo;
import mineplex.core.treasure.Treasure; import mineplex.core.treasure.Treasure;
@ -16,13 +19,15 @@ public class BlockChangeAnimation extends Animation
private int _currentRadius; private int _currentRadius;
private List<BlockInfo> _blockInfoList; private List<BlockInfo> _blockInfoList;
private Block[] _chests;
public BlockChangeAnimation(Treasure treasure, List<BlockInfo> blockInfoList) public BlockChangeAnimation(Treasure treasure, List<BlockInfo> blockInfoList, Block[] chests)
{ {
super(treasure); super(treasure);
_currentRadius = 0; _currentRadius = 0;
_blockInfoList = blockInfoList; _blockInfoList = blockInfoList;
_chests = chests;
} }
@Override @Override
@ -94,6 +99,19 @@ public class BlockChangeAnimation extends Animation
b.setType(mat); b.setType(mat);
b.setData(data); b.setData(data);
} }
if(getTreasure().getTreasureType() == TreasureType.ILLUMINATED)
{
for(Block c : _chests)
{
if(c.equals(b))
{
_blockInfoList.add(new BlockInfo(b));
b.setType(Material.SEA_LANTERN);
}
}
}
} }
} }
} }

View File

@ -2,6 +2,7 @@ package mineplex.core.treasure.animation;
import java.util.List; import java.util.List;
import org.bukkit.Bukkit;
import org.bukkit.Effect; import org.bukkit.Effect;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
@ -14,6 +15,7 @@ import org.bukkit.util.Vector;
import net.minecraft.server.v1_8_R3.BlockPosition; import net.minecraft.server.v1_8_R3.BlockPosition;
import net.minecraft.server.v1_8_R3.MathHelper; import net.minecraft.server.v1_8_R3.MathHelper;
import mineplex.core.common.util.UtilAlg; import mineplex.core.common.util.UtilAlg;
import mineplex.core.common.util.UtilBlock;
import mineplex.core.common.util.UtilMath; import mineplex.core.common.util.UtilMath;
import mineplex.core.common.util.UtilParticle; import mineplex.core.common.util.UtilParticle;
import mineplex.core.common.util.UtilParticle.ParticleType; import mineplex.core.common.util.UtilParticle.ParticleType;
@ -135,23 +137,37 @@ public class ChestSpawnAnimation extends Animation
{ {
loc = _centerLocation.clone().subtract(0, 0.5, 0); loc = _centerLocation.clone().subtract(0, 0.5, 0);
UtilParticle.PlayParticleToAll(ParticleType.PORTAL, loc, null, 0.45f, 10, ViewDist.NORMAL); UtilParticle.PlayParticleToAll(ParticleType.PORTAL, loc, null, 0.55f, 20, ViewDist.NORMAL);
} }
} }
//Spawn Chest //Spawn Chest
if (getTicks() >= ANIMATION_DURATION) if (getTicks() >= ANIMATION_DURATION)
{ {
if(getTreasure().getTreasureType() == TreasureType.ILLUMINATED)
{
UtilBlock.setQuick(_block.getWorld(), _block.getX(), _block.getY(), _block.getZ(), 0, (byte) 0);
}
_chestBlockInfo.add(new BlockInfo(_block)); _chestBlockInfo.add(new BlockInfo(_block));
getTreasure().setBlock(_block, getTreasure().getTreasureType().getMaterial(), _direction); getTreasure().setBlock(_block, getTreasure().getTreasureType().getMaterial(), _direction);
_block.getLocation().getWorld().playSound(_centerLocation, getTreasure().getTreasureType().getStyle().getChestSpawnSound(), 0.5f, 1f); _block.getLocation().getWorld().playSound(_centerLocation, getTreasure().getTreasureType().getStyle().getChestSpawnSound(), 0.5f, 1f);
if(getTreasure().getTreasureType() == TreasureType.ILLUMINATED)
{
Location loc = _block.getLocation().add(0.5, 0.2, 0.5);
UtilParticle.PlayParticle(getTreasure().getTreasureType().getStyle().getSecondaryParticle(), loc, 0.7f, 0.7f, 0.7f, 1, 50,
ViewDist.NORMAL, UtilServer.getPlayers());
}
UtilParticle.ParticleType particleType = getTreasure().getTreasureType().getStyle().getChestSpawnParticle(); UtilParticle.ParticleType particleType = getTreasure().getTreasureType().getStyle().getChestSpawnParticle();
if (particleType != null) if (particleType != null)
{ {
UtilParticle.PlayParticle(particleType, _centerLocation, 0.2f, 0.2f, 0.2f, 0, 50, UtilParticle.PlayParticle(particleType, _centerLocation, 0.2f, 0.2f, 0.2f, 0, 50,
ViewDist.NORMAL, UtilServer.getPlayers()); ViewDist.NORMAL, UtilServer.getPlayers());
} }
else else
{ {

View File

@ -157,7 +157,7 @@ public class Hub extends JavaPlugin implements IRelation
new CustomTagFix(this, packetHandler); new CustomTagFix(this, packetHandler);
new PacketsInteractionFix(this, packetHandler); new PacketsInteractionFix(this, packetHandler);
new ResourcePackManager(this, portal); new ResourcePackManager(this, portal);
new GlobalPacketManager(this, clientManager, serverStatusManager, inventoryManager, donationManager, petManager, statsManager); new GlobalPacketManager(this, clientManager, serverStatusManager, inventoryManager, donationManager, petManager, statsManager, hubManager.getBonusManager().getRewardManager());
//new Replay(this, packetHandler); //new Replay(this, packetHandler);
AprilFoolsManager.Initialize(this, clientManager, disguiseManager); AprilFoolsManager.Initialize(this, clientManager, disguiseManager);

View File

@ -95,7 +95,6 @@ import mineplex.core.portal.Portal;
import mineplex.core.preferences.PreferencesManager; import mineplex.core.preferences.PreferencesManager;
import mineplex.core.projectile.ProjectileManager; import mineplex.core.projectile.ProjectileManager;
import mineplex.core.punish.Punish; import mineplex.core.punish.Punish;
import mineplex.core.reward.RewardManager;
import mineplex.core.stats.StatsManager; import mineplex.core.stats.StatsManager;
import mineplex.core.status.ServerStatusManager; import mineplex.core.status.ServerStatusManager;
import mineplex.core.task.TaskManager; import mineplex.core.task.TaskManager;
@ -165,6 +164,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
private CustomDataManager _customDataManager; private CustomDataManager _customDataManager;
private Punish _punishManager; private Punish _punishManager;
private ValentinesManager _valentinesManager; private ValentinesManager _valentinesManager;
private BonusManager _bonusManager;
// private HalloweenSpookinessManager _halloweenManager; // private HalloweenSpookinessManager _halloweenManager;
// private TrickOrTreatManager _trickOrTreatManager; // private TrickOrTreatManager _trickOrTreatManager;
@ -220,7 +220,10 @@ public class HubManager extends MiniClientPlugin<HubClient>
new BenefitManager(plugin, clientManager, _inventoryManager); new BenefitManager(plugin, clientManager, _inventoryManager);
_gadgetManager = new GadgetManager(_plugin, clientManager, donationManager, _inventoryManager, _mountManager, petManager, preferences, disguiseManager, blockRestore, new ProjectileManager(plugin), achievementManager, packetHandler, hologramManager); _gadgetManager = new GadgetManager(_plugin, clientManager, donationManager, _inventoryManager, _mountManager, petManager, preferences, disguiseManager, blockRestore, new ProjectileManager(plugin), achievementManager, packetHandler, hologramManager);
_treasureManager = new TreasureManager(_plugin, clientManager, serverStatusManager, donationManager, _inventoryManager, petManager, _blockRestore, hologramManager, statsManager); FacebookManager facebookManager = new FacebookManager(plugin, clientManager, donationManager, inventoryManager);
_bonusManager = new BonusManager(plugin, clientManager, serverStatusManager, donationManager, pollManager , npcManager, hologramManager, statsManager, _inventoryManager, petManager, facebookManager, _gadgetManager);
_treasureManager = new TreasureManager(_plugin, clientManager, serverStatusManager, donationManager, _inventoryManager, petManager, _blockRestore, hologramManager, statsManager, _bonusManager.getRewardManager());
new CosmeticManager(_plugin, clientManager, donationManager, _inventoryManager, _gadgetManager, _mountManager, petManager, _treasureManager); new CosmeticManager(_plugin, clientManager, donationManager, _inventoryManager, _gadgetManager, _mountManager, petManager, _treasureManager);
new SoccerManager(this, _gadgetManager); new SoccerManager(this, _gadgetManager);
@ -247,21 +250,13 @@ public class HubManager extends MiniClientPlugin<HubClient>
((CraftWorld)Bukkit.getWorlds().get(0)).getHandle().pvpMode = true; ((CraftWorld)Bukkit.getWorlds().get(0)).getHandle().pvpMode = true;
FacebookManager facebookManager = new FacebookManager(plugin, clientManager, donationManager, inventoryManager);
new BonusManager(plugin, clientManager, serverStatusManager, donationManager, pollManager , npcManager, hologramManager, statsManager, _inventoryManager, petManager, facebookManager);
// _halloweenManager = new HalloweenSpookinessManager(this); // _halloweenManager = new HalloweenSpookinessManager(this);
// new HolidayGiftManager(plugin, clientManager, donationManager, inventoryManager, taskManager); // new HolidayGiftManager(plugin, clientManager, donationManager, inventoryManager, taskManager);
new PlayerDisguiseManager(plugin, _clientManager); new PlayerDisguiseManager(plugin, _clientManager);
// NotificationManager notificationManager = new NotificationManager(plugin, clientManager, donationManager); // NotificationManager notificationManager = new NotificationManager(plugin, clientManager, donationManager);
// new MailManager(_plugin, notificationManager); // new MailManager(_plugin, notificationManager);
new ValentinesGiftManager(plugin, clientManager, new RewardManager(clientManager, serverStatusManager, donationManager, _inventoryManager, petManager, statsManager, new ValentinesGiftManager(plugin, clientManager, _bonusManager.getRewardManager(), inventoryManager, _gadgetManager, statsManager);
100, 250,
500, 1000,
4000, 6000,
12000, 22000,
true, false), inventoryManager, _gadgetManager, statsManager);
_playerCountManager = new PlayerCountManager(plugin); _playerCountManager = new PlayerCountManager(plugin);
@ -892,6 +887,11 @@ public class HubManager extends MiniClientPlugin<HubClient>
return _petManager; return _petManager;
} }
public BonusManager getBonusManager()
{
return _bonusManager;
}
public TutorialManager GetTutorial() public TutorialManager GetTutorial()
{ {
return _tutorialManager; return _tutorialManager;

View File

@ -158,12 +158,12 @@ public class Arcade extends JavaPlugin
CustomDataManager customDataManager = new CustomDataManager(this, _clientManager); CustomDataManager customDataManager = new CustomDataManager(this, _clientManager);
new GlobalPacketManager(this, _clientManager, serverStatusManager, inventoryManager, _donationManager, petManager, statsManager);
//Arcade Manager //Arcade Manager
PollManager pollManager = new PollManager(this, _clientManager, _donationManager); PollManager pollManager = new PollManager(this, _clientManager, _donationManager);
_gameManager = new ArcadeManager(this, serverStatusManager, ReadServerConfig(), _clientManager, _donationManager, _damageManager, statsManager, incognito, achievementManager, disguiseManager, creature, teleport, new Blood(this), chat, portal, preferenceManager, inventoryManager, packetHandler, cosmeticManager, projectileManager, petManager, hologramManager, webServerAddress, pollManager, npcmanager, customDataManager, punish, eloManager); _gameManager = new ArcadeManager(this, serverStatusManager, ReadServerConfig(), _clientManager, _donationManager, _damageManager, statsManager, incognito, achievementManager, disguiseManager, creature, teleport, new Blood(this), chat, portal, preferenceManager, inventoryManager, packetHandler, cosmeticManager, projectileManager, petManager, hologramManager, webServerAddress, pollManager, npcmanager, customDataManager, punish, eloManager);
new GlobalPacketManager(this, _clientManager, serverStatusManager, inventoryManager, _donationManager, petManager, statsManager, _gameManager.getBonusManager().getRewardManager());
//new BroadcastManager(this, _gameManager); //new BroadcastManager(this, _gameManager);
new MemoryFix(this); new MemoryFix(this);

View File

@ -4,6 +4,34 @@ import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashSet; import java.util.HashSet;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.Material;
import org.bukkit.OfflinePlayer;
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftEntity;
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.HandlerList;
import org.bukkit.event.block.BlockBurnEvent;
import org.bukkit.event.block.BlockFadeEvent;
import org.bukkit.event.block.BlockSpreadEvent;
import org.bukkit.event.block.LeavesDecayEvent;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.inventory.InventoryType;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.server.ServerListPingEvent;
import org.bukkit.potion.PotionEffect;
import org.bukkit.util.Vector;
import mineplex.core.MiniPlugin; import mineplex.core.MiniPlugin;
import mineplex.core.account.CoreClientManager; import mineplex.core.account.CoreClientManager;
import mineplex.core.achievement.AchievementManager; import mineplex.core.achievement.AchievementManager;
@ -50,7 +78,6 @@ import mineplex.core.projectile.ProjectileManager;
import mineplex.core.punish.Punish; import mineplex.core.punish.Punish;
import mineplex.core.resourcepack.ResourcePackManager; import mineplex.core.resourcepack.ResourcePackManager;
import mineplex.core.reward.RewardData; import mineplex.core.reward.RewardData;
import mineplex.core.reward.RewardManager;
import mineplex.core.reward.RewardRarity; import mineplex.core.reward.RewardRarity;
import mineplex.core.reward.rewards.PetReward; import mineplex.core.reward.rewards.PetReward;
import mineplex.core.sponsorbranding.BrandingManager; import mineplex.core.sponsorbranding.BrandingManager;
@ -110,34 +137,6 @@ import nautilus.game.arcade.player.ArcadePlayer;
import nautilus.game.arcade.shop.ArcadeShop; import nautilus.game.arcade.shop.ArcadeShop;
import net.minecraft.server.v1_8_R3.EntityLiving; import net.minecraft.server.v1_8_R3.EntityLiving;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.Material;
import org.bukkit.OfflinePlayer;
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftEntity;
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.HandlerList;
import org.bukkit.event.block.BlockBurnEvent;
import org.bukkit.event.block.BlockFadeEvent;
import org.bukkit.event.block.BlockSpreadEvent;
import org.bukkit.event.block.LeavesDecayEvent;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.inventory.InventoryType;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.server.ServerListPingEvent;
import org.bukkit.potion.PotionEffect;
import org.bukkit.util.Vector;
public class ArcadeManager extends MiniPlugin implements IRelation public class ArcadeManager extends MiniPlugin implements IRelation
{ {
// Modules // Modules
@ -193,6 +192,7 @@ public class ArcadeManager extends MiniPlugin implements IRelation
private CustomDataManager _customDataManager; private CustomDataManager _customDataManager;
private Punish _punishmentManager; private Punish _punishmentManager;
private BrandingManager _brandingManager; private BrandingManager _brandingManager;
private BonusManager _bonusManager;
private IncognitoManager _incognitoManager; private IncognitoManager _incognitoManager;
@ -305,7 +305,9 @@ public class ArcadeManager extends MiniPlugin implements IRelation
new GameAchievementManager(this); new GameAchievementManager(this);
_gameTournamentManager = new GameTournamentManager(this); _gameTournamentManager = new GameTournamentManager(this);
new GameStatManager(this); new GameStatManager(this);
new GameLootManager(this, petManager); FacebookManager facebookManager = new FacebookManager(plugin, clientManager, donationManager, inventoryManager);
_bonusManager = new BonusManager(plugin, clientManager, serverStatusManager, donationManager, pollManager , npcManager, hologramManager, statsManager, _inventoryManager, petManager, facebookManager, _cosmeticManager.getGadgetManager());
new GameLootManager(this, petManager, _bonusManager.getRewardManager());
new GameSpectatorManager(this); new GameSpectatorManager(this);
_gameWorldManager = new GameWorldManager(this); _gameWorldManager = new GameWorldManager(this);
new MiscManager(this); new MiscManager(this);
@ -313,12 +315,7 @@ public class ArcadeManager extends MiniPlugin implements IRelation
_idleManager = new IdleManager(this); _idleManager = new IdleManager(this);
TitanGiveawayManager titanGiveaway = new TitanGiveawayManager(getPlugin(), clientManager, serverStatusManager); TitanGiveawayManager titanGiveaway = new TitanGiveawayManager(getPlugin(), clientManager, serverStatusManager);
// new HolidayManager(this, titanGiveaway); // new HolidayManager(this, titanGiveaway);
new ValentinesGiftManager(plugin, clientManager, new RewardManager(clientManager, serverStatusManager, donationManager, _inventoryManager, petManager, statsManager, new ValentinesGiftManager(plugin, clientManager, _bonusManager.getRewardManager(), inventoryManager, _cosmeticManager.getGadgetManager(), statsManager);
100, 250,
500, 1000,
4000, 6000,
12000, 22000,
true, false), inventoryManager, _cosmeticManager.getGadgetManager(), statsManager);
new GameTestingManager(this); new GameTestingManager(this);
new PlayerDisguiseManager(plugin, _clientManager); new PlayerDisguiseManager(plugin, _clientManager);
@ -327,9 +324,6 @@ public class ArcadeManager extends MiniPlugin implements IRelation
new SoupAddon(plugin, this); new SoupAddon(plugin, this);
new TeamArmorAddon(plugin, this); new TeamArmorAddon(plugin, this);
FacebookManager facebookManager = new FacebookManager(plugin, clientManager, donationManager, inventoryManager);
new BonusManager(plugin, clientManager, serverStatusManager, donationManager, pollManager , npcManager, hologramManager, statsManager, _inventoryManager, petManager, facebookManager);
//Champions Modules //Champions Modules
_energy = new Energy(plugin); _energy = new Energy(plugin);
@ -383,6 +377,11 @@ public class ArcadeManager extends MiniPlugin implements IRelation
return _gameChatManager; return _gameChatManager;
} }
public BonusManager getBonusManager()
{
return _bonusManager;
}
public GameServerConfig GetServerConfig() public GameServerConfig GetServerConfig()
{ {
return _serverConfig; return _serverConfig;

View File

@ -77,6 +77,9 @@ import mineplex.core.common.util.UtilParticle.ParticleType;
import mineplex.core.common.util.UtilParticle.ViewDist; import mineplex.core.common.util.UtilParticle.ViewDist;
import mineplex.core.common.util.UtilTime; import mineplex.core.common.util.UtilTime;
import mineplex.core.disguise.disguises.DisguisePlayer; import mineplex.core.disguise.disguises.DisguisePlayer;
import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.gadgets.gamemodifiers.minestrike.GameModifierMineStrikeSkin;
import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.itemstack.ItemStackFactory;
import mineplex.core.recharge.Recharge; import mineplex.core.recharge.Recharge;
import mineplex.core.recharge.RechargedEvent; import mineplex.core.recharge.RechargedEvent;
@ -311,6 +314,7 @@ public class MineStrike extends TeamGame
}); });
_shopManager = new ShopManager(this); _shopManager = new ShopManager(this);
Manager.getCosmeticManager().setHideParticles(true);
this.StrictAntiHack = true; this.StrictAntiHack = true;
@ -415,6 +419,18 @@ public class MineStrike extends TeamGame
if (team == null) if (team == null)
return; return;
GadgetManager gadgetManager = Manager.getCosmeticManager().getGadgetManager();
GameModifierMineStrikeSkin knifeSkin = (GameModifierMineStrikeSkin) gadgetManager.getActiveGameModifier(event.getPlayer(),
GameModifierType.MineStrike, GameModifierMineStrikeSkin.getWeaponFilter("Knife"));
ItemStack knife = ItemStackFactory.Instance.CreateStack(Material.IRON_AXE, (byte)0, 1, "Knife");
if(knifeSkin != null)
{
knife.setType(knifeSkin.getSkinMaterial());
knife.getData().setData(knifeSkin.getSkinData());
}
if (team.GetColor() == ChatColor.RED) if (team.GetColor() == ChatColor.RED)
{ {
if (IsAlive(event.getPlayer())) if (IsAlive(event.getPlayer()))
@ -427,7 +443,9 @@ public class MineStrike extends TeamGame
gun.updateWeaponName(event.getPlayer(), this); gun.updateWeaponName(event.getPlayer(), this);
//Knife //Knife
event.getPlayer().getInventory().setItem(2, ItemStackFactory.Instance.CreateStack(Material.IRON_AXE, (byte)0, 1, "Knife")); if(knifeSkin == null) knife.setType(Material.IRON_AXE);
event.getPlayer().getInventory().setItem(2, knife);
//Armor //Armor
giveTeamArmor(event.getPlayer(), Color.fromRGB(255, 75, 75)); giveTeamArmor(event.getPlayer(), Color.fromRGB(255, 75, 75));
@ -445,7 +463,9 @@ public class MineStrike extends TeamGame
gun.updateSkin(event.getPlayer(), getArcadeManager().getCosmeticManager().getGadgetManager()); gun.updateSkin(event.getPlayer(), getArcadeManager().getCosmeticManager().getGadgetManager());
//Knife //Knife
event.getPlayer().getInventory().setItem(2, ItemStackFactory.Instance.CreateStack(Material.IRON_AXE, (byte)0, 1, "Knife")); if(knifeSkin == null) knife.setType(Material.IRON_SWORD);
event.getPlayer().getInventory().setItem(2, knife);
//Armor //Armor
giveTeamArmor(event.getPlayer(), Color.fromRGB(125, 200, 255)); giveTeamArmor(event.getPlayer(), Color.fromRGB(125, 200, 255));

View File

@ -111,13 +111,13 @@ public class ShopManager
for (int i=0 ; i<9 ; i++) for (int i=0 ; i<9 ; i++)
{ {
if (UtilGear.isMat(player.getInventory().getItem(i), item.getSkin())) if (UtilGear.isMatAndData(player.getInventory().getItem(i), item.getSkinMaterial(), item.getSkinData()))
count++; count++;
if (UtilGear.isMat(player.getInventory().getHelmet(), item.getSkin())) if (UtilGear.isMatAndData(player.getInventory().getHelmet(), item.getSkinMaterial(), item.getSkinData()))
count++; count++;
if (UtilGear.isMat(player.getInventory().getChestplate(), item.getSkin())) if (UtilGear.isMatAndData(player.getInventory().getChestplate(), item.getSkinMaterial(), item.getSkinData()))
count++; count++;
} }

View File

@ -2,6 +2,14 @@ package nautilus.game.arcade.game.games.minestrike.items;
import java.util.ArrayList; import java.util.ArrayList;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.common.util.F; import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilAction; import mineplex.core.common.util.UtilAction;
@ -13,15 +21,6 @@ import nautilus.game.arcade.game.games.minestrike.MineStrike;
import nautilus.game.arcade.game.games.minestrike.items.grenades.Grenade; import nautilus.game.arcade.game.games.minestrike.items.grenades.Grenade;
import nautilus.game.arcade.game.games.minestrike.items.guns.Gun; import nautilus.game.arcade.game.games.minestrike.items.guns.Gun;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
public abstract class StrikeItem public abstract class StrikeItem
{ {
private StrikeItemType _type; private StrikeItemType _type;
@ -29,7 +28,8 @@ public abstract class StrikeItem
private String[] _desc; private String[] _desc;
private int _cost; private int _cost;
private int _gemCost; private int _gemCost;
private Material _skin; private Material _skinMaterial;
private byte _skinData;
private String _ownerName; private String _ownerName;
@ -42,7 +42,7 @@ public abstract class StrikeItem
_desc = desc; _desc = desc;
_cost = cost; _cost = cost;
_gemCost = gemCost; _gemCost = gemCost;
_skin = skin; _skinMaterial = skin;
//Make Stack //Make Stack
_stack = new ItemStack(skin); _stack = new ItemStack(skin);
@ -74,15 +74,23 @@ public abstract class StrikeItem
return _gemCost; return _gemCost;
} }
public Material getSkin() public Material getSkinMaterial()
{ {
return _skin; return _skinMaterial;
} }
public void setSkin(Material skin) public byte getSkinData()
{ {
_skin = skin; return _skinData;
_stack.setType(skin); }
public void setSkin(Material skinMaterial, byte skinData)
{
_skinMaterial = skinMaterial;
_stack.setType(skinMaterial);
_skinData = skinData;
_stack.getData().setData(skinData);
} }
public String getOwnerName() public String getOwnerName()
@ -146,12 +154,12 @@ public abstract class StrikeItem
public boolean isHolding(Player player) public boolean isHolding(Player player)
{ {
return UtilGear.isMat(player.getItemInHand(), _skin); return UtilGear.isMat(player.getItemInHand(), _skinMaterial);
} }
public boolean isStack(ItemStack stack) public boolean isStack(ItemStack stack)
{ {
return UtilGear.isMat(stack, _skin); return UtilGear.isMat(stack, _skinMaterial);
} }
public void giveToPlayer(Player player, int slot, boolean setOwnerName) public void giveToPlayer(Player player, int slot, boolean setOwnerName)
@ -213,7 +221,7 @@ public abstract class StrikeItem
String name = getShopItemType() + " " + C.cGreen + getName(); String name = getShopItemType() + " " + C.cGreen + getName();
ItemStack item = ItemStackFactory.Instance.CreateStack(_skin, (byte)0, 1, name, loreArray); ItemStack item = ItemStackFactory.Instance.CreateStack(_skinMaterial, (byte)0, 1, name, loreArray);
if (alreadyHas) if (alreadyHas)
UtilInv.addDullEnchantment(item); UtilInv.addDullEnchantment(item);

View File

@ -30,13 +30,13 @@ public class Armor extends StrikeItem
public void giveToPlayer(Player player, Color color) public void giveToPlayer(Player player, Color color)
{ {
ItemStack armor = new ItemStack(getSkin()); ItemStack armor = new ItemStack(getSkinMaterial(), 1, (short) 0, getSkinData());
LeatherArmorMeta meta = (LeatherArmorMeta)armor.getItemMeta(); LeatherArmorMeta meta = (LeatherArmorMeta)armor.getItemMeta();
meta.setColor(color); meta.setColor(color);
meta.setDisplayName(getName()); meta.setDisplayName(getName());
armor.setItemMeta(meta); armor.setItemMeta(meta);
if (getSkin() == Material.LEATHER_CHESTPLATE) if (getSkinMaterial() == Material.LEATHER_CHESTPLATE)
player.getInventory().setChestplate(armor); player.getInventory().setChestplate(armor);
else else
player.getInventory().setHelmet(armor); player.getInventory().setHelmet(armor);

View File

@ -92,7 +92,7 @@ public abstract class Grenade extends StrikeItem
for (int i = 6 ; i >= 3 ; i--) for (int i = 6 ; i >= 3 ; i--)
{ {
if (UtilInv.IsItem(player.getInventory().getItem(i), getSkin(), (byte) -1)) if (UtilInv.IsItem(player.getInventory().getItem(i), getSkinMaterial(), getSkinData()))
alreadyHas++; alreadyHas++;
if (alreadyHas >= _limit) if (alreadyHas >= _limit)
@ -116,7 +116,7 @@ public abstract class Grenade extends StrikeItem
for (int i = 3 ; i < 7 ; i++) for (int i = 3 ; i < 7 ; i++)
{ {
if (UtilInv.IsItem(player.getInventory().getItem(i), getSkin(), (byte) -1)) if (UtilInv.IsItem(player.getInventory().getItem(i), getSkinMaterial(), getSkinData()))
alreadyHas++; alreadyHas++;
if (alreadyHas >= _limit) if (alreadyHas >= _limit)

View File

@ -30,8 +30,8 @@ import mineplex.core.common.util.UtilServer;
import mineplex.core.common.util.UtilTextBottom; import mineplex.core.common.util.UtilTextBottom;
import mineplex.core.common.util.UtilTime; import mineplex.core.common.util.UtilTime;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.gamemodifiers.GameModifierType; import mineplex.core.gadget.gadgets.gamemodifiers.GameModifierType;
import mineplex.core.gadget.types.gamemodifiers.minestrike.GameModifierMineStrikeSkin; import mineplex.core.gadget.gadgets.gamemodifiers.minestrike.GameModifierMineStrikeSkin;
import mineplex.core.recharge.Recharge; import mineplex.core.recharge.Recharge;
import mineplex.core.recharge.RechargedEvent; import mineplex.core.recharge.RechargedEvent;
import mineplex.core.stats.PlayerStats; import mineplex.core.stats.PlayerStats;
@ -357,6 +357,10 @@ public class Gun extends StrikeItem
String owner = C.Reset + (getOwnerName() == null ? "" : getOwnerName() + "'s "); String owner = C.Reset + (getOwnerName() == null ? "" : getOwnerName() + "'s ");
String reload = C.Bold + getChatName() + (_reloadTick ? ChatColor.RED : ChatColor.WHITE); String reload = C.Bold + getChatName() + (_reloadTick ? ChatColor.RED : ChatColor.WHITE);
String kills = C.cYellow + " " + kls + " kills"; String kills = C.cYellow + " " + kls + " kills";
if(!hasCustomSkin())
{
kills = "";
}
ItemMeta meta = getStack().getItemMeta(); ItemMeta meta = getStack().getItemMeta();
meta.setDisplayName(owner + reload + kills); meta.setDisplayName(owner + reload + kills);
@ -448,7 +452,7 @@ public class Gun extends StrikeItem
if(skin == null) return; if(skin == null) return;
setSkin(skin.getSkin()); setSkin(skin.getSkinMaterial(), skin.getSkinData());
_activeSkinName = skin.GetName(); _activeSkinName = skin.GetName();
owner.getInventory().setItem(_slot, getStack()); owner.getInventory().setItem(_slot, getStack());

View File

@ -24,7 +24,6 @@ import mineplex.core.common.util.UtilAlg;
import mineplex.core.common.util.UtilFirework; import mineplex.core.common.util.UtilFirework;
import mineplex.core.common.util.UtilServer; import mineplex.core.common.util.UtilServer;
import mineplex.core.common.util.UtilTextMiddle; import mineplex.core.common.util.UtilTextMiddle;
import mineplex.core.giveaway.GiveawayManager;
import mineplex.core.pet.PetManager; import mineplex.core.pet.PetManager;
import mineplex.core.reward.Reward; import mineplex.core.reward.Reward;
import mineplex.core.reward.RewardData; import mineplex.core.reward.RewardData;
@ -46,18 +45,13 @@ public class GameLootManager implements Listener
private long _startTime = 0; private long _startTime = 0;
public GameLootManager(ArcadeManager manager, PetManager petManager) public GameLootManager(ArcadeManager manager, PetManager petManager, RewardManager rewardManager)
{ {
Manager = manager; Manager = manager;
Manager.getPluginManager().registerEvents(this, Manager.getPlugin()); Manager.getPluginManager().registerEvents(this, Manager.getPlugin());
_rewardManager = new RewardManager(Manager.GetClients(), Manager.GetServerStatusManager(), Manager.GetDonation(), Manager.getInventoryManager(), petManager, Manager.GetStatsManager(), _rewardManager = rewardManager;
100, 250,
500, 1000,
1500, 2500,
6000, 12000,
false, false);
//Chest //Chest
_rewardManager.addReward(new InventoryReward(Manager.getInventoryManager(), "Old Chest", "Old Chest", 1, 1, _rewardManager.addReward(new InventoryReward(Manager.getInventoryManager(), "Old Chest", "Old Chest", 1, 1,