Staff server work to include treasure chests/keys and gem hunter level 8, 12.
This commit is contained in:
parent
552a861c8b
commit
0228ef5921
|
@ -62,12 +62,12 @@ public class FriendRepository extends RepositoryBase
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean removeFriend(Player caller, String name)
|
public boolean removeFriend(String caller, String name)
|
||||||
{
|
{
|
||||||
int rowsAffected = executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, name), new ColumnVarChar("name", 100, caller.getName()));
|
int rowsAffected = executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, name), new ColumnVarChar("name", 100, caller));
|
||||||
|
|
||||||
if (rowsAffected > 0)
|
if (rowsAffected > 0)
|
||||||
return executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, caller.getName()), new ColumnVarChar("uuid", 100, name)) > 0;
|
return executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, caller), new ColumnVarChar("uuid", 100, name)) > 0;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,45 +57,7 @@ public class StatsManager extends MiniClientPlugin<PlayerStats>
|
||||||
|
|
||||||
final String uuidString = player.getUniqueId().toString();
|
final String uuidString = player.getUniqueId().toString();
|
||||||
|
|
||||||
// Verify stat is in our local cache, if not add it remotely.
|
incrementStat(uuidString, statName, value);
|
||||||
if (!_stats.containsKey(statName))
|
|
||||||
{
|
|
||||||
Bukkit.getScheduler().runTaskAsynchronously(GetPlugin(), new Runnable()
|
|
||||||
{
|
|
||||||
public void run()
|
|
||||||
{
|
|
||||||
synchronized (_statSync)
|
|
||||||
{
|
|
||||||
// If many players come in for a new stat, when the first add finishes the others are queued to add again
|
|
||||||
// This makes a second check for the stat name (already added before lock was released)
|
|
||||||
// Then it pops into queue and forgets adding the new stat to db.
|
|
||||||
if (_stats.containsKey(statName))
|
|
||||||
{
|
|
||||||
addToQueue(statName, uuidString, value);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
_repository.addStat(statName);
|
|
||||||
|
|
||||||
_stats.clear();
|
|
||||||
|
|
||||||
for (Stat stat : _repository.retrieveStats())
|
|
||||||
{
|
|
||||||
_stats.put(stat.Name, stat.Id);
|
|
||||||
}
|
|
||||||
|
|
||||||
addToQueue(statName, uuidString, value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
synchronized (_statSync)
|
|
||||||
{
|
|
||||||
addToQueue(statName, uuidString, value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addToQueue(String statName, String uuidString, int value)
|
private void addToQueue(String statName, String uuidString, int value)
|
||||||
|
@ -181,4 +143,47 @@ public class StatsManager extends MiniClientPlugin<PlayerStats>
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void incrementStat(final String uuidString, final String statName, final int value)
|
||||||
|
{
|
||||||
|
// Verify stat is in our local cache, if not add it remotely.
|
||||||
|
if (!_stats.containsKey(statName))
|
||||||
|
{
|
||||||
|
Bukkit.getScheduler().runTaskAsynchronously(GetPlugin(), new Runnable()
|
||||||
|
{
|
||||||
|
public void run()
|
||||||
|
{
|
||||||
|
synchronized (_statSync)
|
||||||
|
{
|
||||||
|
// If many players come in for a new stat, when the first add finishes the others are queued to add again
|
||||||
|
// This makes a second check for the stat name (already added before lock was released)
|
||||||
|
// Then it pops into queue and forgets adding the new stat to db.
|
||||||
|
if (_stats.containsKey(statName))
|
||||||
|
{
|
||||||
|
addToQueue(statName, uuidString, value);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
_repository.addStat(statName);
|
||||||
|
|
||||||
|
_stats.clear();
|
||||||
|
|
||||||
|
for (Stat stat : _repository.retrieveStats())
|
||||||
|
{
|
||||||
|
_stats.put(stat.Name, stat.Id);
|
||||||
|
}
|
||||||
|
|
||||||
|
addToQueue(statName, uuidString, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
synchronized (_statSync)
|
||||||
|
{
|
||||||
|
addToQueue(statName, uuidString, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -102,7 +102,7 @@ public class TreasureManager extends MiniPlugin
|
||||||
{
|
{
|
||||||
// Remove a treasure and a key
|
// Remove a treasure and a key
|
||||||
_inventoryManager.addItemToInventory(player, "Treasure", "Treasure Key", -1);
|
_inventoryManager.addItemToInventory(player, "Treasure", "Treasure Key", -1);
|
||||||
_inventoryManager.addItemToInventory(player, "Treasure", "Treasure Chest", -1);
|
_inventoryManager.addItemToInventory(player, "Utility", "Treasure Chest", -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
Bukkit.broadcastMessage(F.main("Treasure", F.name(player.getName()) + " is opening a " + C.cGreen + "Treasure Chest"));
|
Bukkit.broadcastMessage(F.main("Treasure", F.name(player.getName()) + " is opening a " + C.cGreen + "Treasure Chest"));
|
||||||
|
|
|
@ -13,6 +13,7 @@ import mineplex.core.playerTracker.PlayerTracker;
|
||||||
import mineplex.core.portal.Portal;
|
import mineplex.core.portal.Portal;
|
||||||
import mineplex.core.preferences.PreferencesManager;
|
import mineplex.core.preferences.PreferencesManager;
|
||||||
import mineplex.core.recharge.Recharge;
|
import mineplex.core.recharge.Recharge;
|
||||||
|
import mineplex.core.stats.StatsManager;
|
||||||
import mineplex.core.status.ServerStatusManager;
|
import mineplex.core.status.ServerStatusManager;
|
||||||
import mineplex.core.updater.FileUpdater;
|
import mineplex.core.updater.FileUpdater;
|
||||||
import mineplex.core.updater.Updater;
|
import mineplex.core.updater.Updater;
|
||||||
|
@ -56,7 +57,7 @@ public class StaffServer extends JavaPlugin
|
||||||
new MemoryFix(this);
|
new MemoryFix(this);
|
||||||
new FileUpdater(this, portal);
|
new FileUpdater(this, portal);
|
||||||
|
|
||||||
new CustomerSupport(this, clientManager, donationManager, new SalesPackageManager(this, clientManager, donationManager, new InventoryManager(this)));
|
new CustomerSupport(this, clientManager, donationManager, new SalesPackageManager(this, clientManager, donationManager, new InventoryManager(this), new StatsManager(this)));
|
||||||
new Password(this);
|
new Password(this);
|
||||||
|
|
||||||
//Updates
|
//Updates
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package mineplex.staffServer.salespackage;
|
package mineplex.staffServer.salespackage;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
|
@ -8,12 +7,13 @@ import mineplex.core.MiniPlugin;
|
||||||
import mineplex.core.account.CoreClientManager;
|
import mineplex.core.account.CoreClientManager;
|
||||||
import mineplex.core.common.jsonchat.JsonMessage;
|
import mineplex.core.common.jsonchat.JsonMessage;
|
||||||
import mineplex.core.common.util.NautHashMap;
|
import mineplex.core.common.util.NautHashMap;
|
||||||
import mineplex.core.common.util.UtilServer;
|
|
||||||
import mineplex.core.donation.DonationManager;
|
import mineplex.core.donation.DonationManager;
|
||||||
import mineplex.core.inventory.InventoryManager;
|
import mineplex.core.inventory.InventoryManager;
|
||||||
|
import mineplex.core.stats.StatsManager;
|
||||||
import mineplex.staffServer.salespackage.command.DisplayPackageCommand;
|
import mineplex.staffServer.salespackage.command.DisplayPackageCommand;
|
||||||
import mineplex.staffServer.salespackage.command.Sales;
|
import mineplex.staffServer.salespackage.command.Sales;
|
||||||
import mineplex.staffServer.salespackage.salespackages.Coins;
|
import mineplex.staffServer.salespackage.salespackages.Coins;
|
||||||
|
import mineplex.staffServer.salespackage.salespackages.GemHunter;
|
||||||
import mineplex.staffServer.salespackage.salespackages.LifetimeHero;
|
import mineplex.staffServer.salespackage.salespackages.LifetimeHero;
|
||||||
import mineplex.staffServer.salespackage.salespackages.LifetimeUltra;
|
import mineplex.staffServer.salespackage.salespackages.LifetimeUltra;
|
||||||
import mineplex.staffServer.salespackage.salespackages.MonthlyHero;
|
import mineplex.staffServer.salespackage.salespackages.MonthlyHero;
|
||||||
|
@ -25,16 +25,18 @@ public class SalesPackageManager extends MiniPlugin
|
||||||
private CoreClientManager _clientManager;
|
private CoreClientManager _clientManager;
|
||||||
private DonationManager _donationManager;
|
private DonationManager _donationManager;
|
||||||
private InventoryManager _inventoryManager;
|
private InventoryManager _inventoryManager;
|
||||||
|
private StatsManager _statsManager;
|
||||||
|
|
||||||
private NautHashMap<String, SalesPackageBase> _salesPackages = new NautHashMap<String, SalesPackageBase>();
|
private NautHashMap<String, SalesPackageBase> _salesPackages = new NautHashMap<String, SalesPackageBase>();
|
||||||
|
|
||||||
public SalesPackageManager(JavaPlugin plugin, CoreClientManager clientManager, DonationManager donationManager, InventoryManager inventoryManager)
|
public SalesPackageManager(JavaPlugin plugin, CoreClientManager clientManager, DonationManager donationManager, InventoryManager inventoryManager, StatsManager statsManager)
|
||||||
{
|
{
|
||||||
super("SalesPackageManager", plugin);
|
super("SalesPackageManager", plugin);
|
||||||
|
|
||||||
_clientManager = clientManager;
|
_clientManager = clientManager;
|
||||||
_donationManager = donationManager;
|
_donationManager = donationManager;
|
||||||
_inventoryManager = inventoryManager;
|
_inventoryManager = inventoryManager;
|
||||||
|
_statsManager = statsManager;
|
||||||
|
|
||||||
AddSalesPackage(new Coins(this, 5000));
|
AddSalesPackage(new Coins(this, 5000));
|
||||||
AddSalesPackage(new Coins(this, 25000));
|
AddSalesPackage(new Coins(this, 25000));
|
||||||
|
@ -43,6 +45,8 @@ public class SalesPackageManager extends MiniPlugin
|
||||||
AddSalesPackage(new MonthlyHero(this));
|
AddSalesPackage(new MonthlyHero(this));
|
||||||
AddSalesPackage(new LifetimeUltra(this));
|
AddSalesPackage(new LifetimeUltra(this));
|
||||||
AddSalesPackage(new LifetimeHero(this));
|
AddSalesPackage(new LifetimeHero(this));
|
||||||
|
AddSalesPackage(new GemHunter(this, 8));
|
||||||
|
AddSalesPackage(new GemHunter(this, 12));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void AddSalesPackage(SalesPackageBase salesPackage)
|
private void AddSalesPackage(SalesPackageBase salesPackage)
|
||||||
|
@ -101,4 +105,9 @@ public class SalesPackageManager extends MiniPlugin
|
||||||
coinBuilder.sendToPlayer(caller);
|
coinBuilder.sendToPlayer(caller);
|
||||||
packageBuilder.sendToPlayer(caller);
|
packageBuilder.sendToPlayer(caller);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public StatsManager getStatsManager()
|
||||||
|
{
|
||||||
|
return _statsManager;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
package mineplex.staffServer.salespackage.command;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import mineplex.core.command.CommandBase;
|
||||||
|
import mineplex.core.common.Rank;
|
||||||
|
import mineplex.core.common.util.F;
|
||||||
|
import mineplex.core.common.util.UUIDFetcher;
|
||||||
|
import mineplex.staffServer.salespackage.SalesPackageManager;
|
||||||
|
|
||||||
|
public class GemHunterCommand extends CommandBase<SalesPackageManager>
|
||||||
|
{
|
||||||
|
public GemHunterCommand(SalesPackageManager plugin)
|
||||||
|
{
|
||||||
|
super(plugin, Rank.MODERATOR, "gemhunter");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void Execute(Player caller, String[] args)
|
||||||
|
{
|
||||||
|
if (args == null || args.length != 2)
|
||||||
|
return;
|
||||||
|
|
||||||
|
String playerName = args[0];
|
||||||
|
int amount = Integer.parseInt(args[1]);
|
||||||
|
|
||||||
|
Plugin.getDonationManager().PurchaseUnknownSalesPackage(null, playerName, "Gem Hunter Level " + amount, false, 0, false);
|
||||||
|
Plugin.getStatsManager().incrementStat(UUIDFetcher.getUUIDOf(playerName).toString(), "Global.GemsEarned", amount);
|
||||||
|
caller.sendMessage(F.main(Plugin.GetName(), "Added Level " + amount + " Gem Hunter to " + playerName + "'s account!"));
|
||||||
|
}
|
||||||
|
}
|
|
@ -6,7 +6,6 @@ import org.bukkit.event.player.PlayerCommandPreprocessEvent;
|
||||||
|
|
||||||
import mineplex.core.command.CommandBase;
|
import mineplex.core.command.CommandBase;
|
||||||
import mineplex.core.common.Rank;
|
import mineplex.core.common.Rank;
|
||||||
import mineplex.core.recharge.Recharge;
|
|
||||||
import mineplex.staffServer.salespackage.SalesPackageManager;
|
import mineplex.staffServer.salespackage.SalesPackageManager;
|
||||||
|
|
||||||
public class HeroCommand extends CommandBase<SalesPackageManager>
|
public class HeroCommand extends CommandBase<SalesPackageManager>
|
||||||
|
@ -20,15 +19,18 @@ public class HeroCommand extends CommandBase<SalesPackageManager>
|
||||||
public void Execute(Player caller, String[] args)
|
public void Execute(Player caller, String[] args)
|
||||||
{
|
{
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO false");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO false"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 15000");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 15000"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 90");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 90"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 40"));
|
||||||
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 10"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,15 +19,18 @@ public class LifetimeHeroCommand extends CommandBase<SalesPackageManager>
|
||||||
public void Execute(Player caller, String[] args)
|
public void Execute(Player caller, String[] args)
|
||||||
{
|
{
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO true");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO true"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 40000");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 40000"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 180");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 180"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 40"));
|
||||||
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 10"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,15 +19,18 @@ public class LifetimeUltraCommand extends CommandBase<SalesPackageManager>
|
||||||
public void Execute(Player caller, String[] args)
|
public void Execute(Player caller, String[] args)
|
||||||
{
|
{
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA true");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA true"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 20000");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 20000"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 60");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 60"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 20"));
|
||||||
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 5"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,9 @@ public class Sales extends MultiCommandBase<SalesPackageManager>
|
||||||
AddCommand(new RankCommand(plugin));
|
AddCommand(new RankCommand(plugin));
|
||||||
AddCommand(new CoinCommand(plugin));
|
AddCommand(new CoinCommand(plugin));
|
||||||
AddCommand(new BoosterCommand(plugin));
|
AddCommand(new BoosterCommand(plugin));
|
||||||
|
AddCommand(new TreasureChestCommand(plugin));
|
||||||
|
AddCommand(new TreasureKeyCommand(plugin));
|
||||||
|
AddCommand(new GemHunterCommand(plugin));
|
||||||
AddCommand(new UltraCommand(plugin));
|
AddCommand(new UltraCommand(plugin));
|
||||||
AddCommand(new HeroCommand(plugin));
|
AddCommand(new HeroCommand(plugin));
|
||||||
AddCommand(new LifetimeUltraCommand(plugin));
|
AddCommand(new LifetimeUltraCommand(plugin));
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
package mineplex.staffServer.salespackage.command;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import mineplex.core.command.CommandBase;
|
||||||
|
import mineplex.core.common.Rank;
|
||||||
|
import mineplex.core.common.util.F;
|
||||||
|
import mineplex.core.common.util.UUIDFetcher;
|
||||||
|
import mineplex.staffServer.salespackage.SalesPackageManager;
|
||||||
|
|
||||||
|
public class TreasureChestCommand extends CommandBase<SalesPackageManager>
|
||||||
|
{
|
||||||
|
public TreasureChestCommand(SalesPackageManager plugin)
|
||||||
|
{
|
||||||
|
super(plugin, Rank.MODERATOR, "chest");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void Execute(Player caller, String[] args)
|
||||||
|
{
|
||||||
|
if (args == null || args.length != 2)
|
||||||
|
return;
|
||||||
|
|
||||||
|
String playerName = args[0];
|
||||||
|
int amount = Integer.parseInt(args[1]);
|
||||||
|
|
||||||
|
Plugin.getDonationManager().PurchaseUnknownSalesPackage(null, playerName, "Treasure Chest " + amount, false, 0, false);
|
||||||
|
Plugin.getInventoryManager().addItemToInventoryForOffline(UUIDFetcher.getUUIDOf(playerName).toString(), "Utility", "Treasure Chest", amount);
|
||||||
|
caller.sendMessage(F.main(Plugin.GetName(), "Added " + amount + " treasure chests to " + playerName + "'s account!"));
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,31 @@
|
||||||
|
package mineplex.staffServer.salespackage.command;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import mineplex.core.command.CommandBase;
|
||||||
|
import mineplex.core.common.Rank;
|
||||||
|
import mineplex.core.common.util.F;
|
||||||
|
import mineplex.core.common.util.UUIDFetcher;
|
||||||
|
import mineplex.staffServer.salespackage.SalesPackageManager;
|
||||||
|
|
||||||
|
public class TreasureKeyCommand extends CommandBase<SalesPackageManager>
|
||||||
|
{
|
||||||
|
public TreasureKeyCommand(SalesPackageManager plugin)
|
||||||
|
{
|
||||||
|
super(plugin, Rank.MODERATOR, "key");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void Execute(Player caller, String[] args)
|
||||||
|
{
|
||||||
|
if (args == null || args.length != 2)
|
||||||
|
return;
|
||||||
|
|
||||||
|
String playerName = args[0];
|
||||||
|
int amount = Integer.parseInt(args[1]);
|
||||||
|
|
||||||
|
Plugin.getDonationManager().PurchaseUnknownSalesPackage(null, playerName, "Treasure Key " + amount, false, 0, false);
|
||||||
|
Plugin.getInventoryManager().addItemToInventoryForOffline(UUIDFetcher.getUUIDOf(playerName).toString(), "Treasure", "Treasure Key", amount);
|
||||||
|
caller.sendMessage(F.main(Plugin.GetName(), "Added " + amount + " treasure Keys to " + playerName + "'s account!"));
|
||||||
|
}
|
||||||
|
}
|
|
@ -19,15 +19,18 @@ public class UltraCommand extends CommandBase<SalesPackageManager>
|
||||||
public void Execute(Player caller, String[] args)
|
public void Execute(Player caller, String[] args)
|
||||||
{
|
{
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA false");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA false"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 7500");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 7500"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
|
||||||
resetCommandCharge(caller);
|
resetCommandCharge(caller);
|
||||||
event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 30");
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 30"));
|
||||||
Bukkit.getServer().getPluginManager().callEvent(event);
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 20"));
|
||||||
|
|
||||||
|
resetCommandCharge(caller);
|
||||||
|
Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 5"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
package mineplex.staffServer.salespackage.salespackages;
|
||||||
|
|
||||||
|
import mineplex.staffServer.salespackage.SalesPackageManager;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
public class GemHunter extends SalesPackageBase
|
||||||
|
{
|
||||||
|
private int _level;
|
||||||
|
|
||||||
|
public GemHunter(SalesPackageManager manager, int level)
|
||||||
|
{
|
||||||
|
super(manager, "Level " + level + " Gem Hunter");
|
||||||
|
|
||||||
|
_level = level;
|
||||||
|
}
|
||||||
|
public void displayToAgent(Player agent, String playerName)
|
||||||
|
{
|
||||||
|
addButton(agent, "/sales gemhunter " + playerName + " " + _level, "Level " + _level + " Gem Hunter.");
|
||||||
|
agent.sendMessage(" ");
|
||||||
|
addBackButton(agent, playerName);
|
||||||
|
}
|
||||||
|
}
|
|
@ -15,7 +15,9 @@ public class LifetimeHero extends SalesPackageBase
|
||||||
{
|
{
|
||||||
addButton(agent, "/sales coin " + playerName + " 40000", " 40,000 Coins");
|
addButton(agent, "/sales coin " + playerName + " 40000", " 40,000 Coins");
|
||||||
addButton(agent, "/sales booster " + playerName + " 180", " 180 Gem Boosters");
|
addButton(agent, "/sales booster " + playerName + " 180", " 180 Gem Boosters");
|
||||||
addButton(agent, "/sales rank " + playerName + " HERO true", " Lifetime Hero (Also, unlocks kits).");
|
addButton(agent, "/sales chest " + playerName + " 40", " 40 Treasure Chests");
|
||||||
|
addButton(agent, "/sales key " + playerName + " 10", " 10 Treasure Keys");
|
||||||
|
addButton(agent, "/sales rank " + playerName + " HERO true", " Lifetime Hero.");
|
||||||
addButton(agent, "Apply All", "/sales lifetimehero " + playerName, " Apply all above.");
|
addButton(agent, "Apply All", "/sales lifetimehero " + playerName, " Apply all above.");
|
||||||
agent.sendMessage(" ");
|
agent.sendMessage(" ");
|
||||||
addBackButton(agent, playerName);
|
addBackButton(agent, playerName);
|
||||||
|
|
|
@ -15,7 +15,9 @@ public class LifetimeUltra extends SalesPackageBase
|
||||||
{
|
{
|
||||||
addButton(agent, "/sales coin " + playerName + " 20000", " 20,000 Coins");
|
addButton(agent, "/sales coin " + playerName + " 20000", " 20,000 Coins");
|
||||||
addButton(agent, "/sales booster " + playerName + " 60", " 60 Gem Boosters");
|
addButton(agent, "/sales booster " + playerName + " 60", " 60 Gem Boosters");
|
||||||
addButton(agent, "/sales rank " + playerName + " ULTRA true", " Lifetime Ultra (Also, unlocks kits).");
|
addButton(agent, "/sales chest " + playerName + " 20", " 20 Treasure Chests");
|
||||||
|
addButton(agent, "/sales key " + playerName + " 5", " 5 Treasure Keys");
|
||||||
|
addButton(agent, "/sales rank " + playerName + " ULTRA true", " Lifetime Ultra.");
|
||||||
addButton(agent, "Apply All", "/sales lifetimeultra " + playerName, " Apply all above.");
|
addButton(agent, "Apply All", "/sales lifetimeultra " + playerName, " Apply all above.");
|
||||||
agent.sendMessage(" ");
|
agent.sendMessage(" ");
|
||||||
addBackButton(agent, playerName);
|
addBackButton(agent, playerName);
|
||||||
|
|
|
@ -15,6 +15,8 @@ public class MonthlyHero extends SalesPackageBase
|
||||||
{
|
{
|
||||||
addButton(agent, "/sales coin " + playerName + " 15000", " 15,000 Coins");
|
addButton(agent, "/sales coin " + playerName + " 15000", " 15,000 Coins");
|
||||||
addButton(agent, "/sales booster " + playerName + " 90", " 90 Gem Boosters");
|
addButton(agent, "/sales booster " + playerName + " 90", " 90 Gem Boosters");
|
||||||
|
addButton(agent, "/sales chest " + playerName + " 40", " 40 Treasure Chests");
|
||||||
|
addButton(agent, "/sales key " + playerName + " 10", " 10 Treasure Keys");
|
||||||
addButton(agent, "/sales rank " + playerName + " HERO false", " Monthly Hero.");
|
addButton(agent, "/sales rank " + playerName + " HERO false", " Monthly Hero.");
|
||||||
addButton(agent, "Apply All", "/sales hero " + playerName, " Apply all above.");
|
addButton(agent, "Apply All", "/sales hero " + playerName, " Apply all above.");
|
||||||
agent.sendMessage(" ");
|
agent.sendMessage(" ");
|
||||||
|
|
|
@ -15,6 +15,8 @@ public class MonthlyUltra extends SalesPackageBase
|
||||||
{
|
{
|
||||||
addButton(agent, "/sales coin " + playerName + " 7500", " 7,500 Coins");
|
addButton(agent, "/sales coin " + playerName + " 7500", " 7,500 Coins");
|
||||||
addButton(agent, "/sales booster " + playerName + " 30", " 30 Gem Boosters");
|
addButton(agent, "/sales booster " + playerName + " 30", " 30 Gem Boosters");
|
||||||
|
addButton(agent, "/sales chest " + playerName + " 20", " 20 Treasure Chests");
|
||||||
|
addButton(agent, "/sales key " + playerName + " 5", " 5 Treasure Keys");
|
||||||
addButton(agent, "/sales rank " + playerName + " ULTRA false", " Monthly Ultra.");
|
addButton(agent, "/sales rank " + playerName + " ULTRA false", " Monthly Ultra.");
|
||||||
addButton(agent, "Apply All", "/sales ultra " + playerName, " Apply all above.");
|
addButton(agent, "Apply All", "/sales ultra " + playerName, " Apply all above.");
|
||||||
agent.sendMessage(" ");
|
agent.sendMessage(" ");
|
||||||
|
|
Loading…
Reference in New Issue