Load booster groups for arcade
This commit is contained in:
parent
0a204a3b90
commit
ceb4de8b35
@ -98,19 +98,19 @@ public class BoosterManager extends MiniPlugin
|
|||||||
_boosterCache.entrySet().stream()
|
_boosterCache.entrySet().stream()
|
||||||
.filter(entry -> entry.getValue().size() > 0)
|
.filter(entry -> entry.getValue().size() > 0)
|
||||||
.filter(entry -> boosterMap.get(entry.getKey()) == null)
|
.filter(entry -> boosterMap.get(entry.getKey()) == null)
|
||||||
.forEach(entry -> callNextTick(new BoosterDeactivateEvent(entry.getValue().get(0))));
|
.forEach(entry -> callNextTick(new BoosterDeactivateEvent(entry.getKey(), entry.getValue().get(0))));
|
||||||
|
|
||||||
for (Map.Entry<String, List<Booster>> entry : boosterMap.entrySet())
|
for (Map.Entry<String, List<Booster>> entry : boosterMap.entrySet())
|
||||||
{
|
{
|
||||||
List<Booster> current = _boosterCache.get(entry.getKey());
|
List<Booster> current = _boosterCache.get(entry.getKey());
|
||||||
if (current == null || current.get(0) == null)
|
if (current == null || current.get(0) == null)
|
||||||
{
|
{
|
||||||
callNextTick(new BoosterActivateEvent(entry.getValue().get(0)));
|
callNextTick(new BoosterActivateEvent(entry.getKey(), entry.getValue().get(0)));
|
||||||
}
|
}
|
||||||
else if (!current.get(0).equals(entry.getValue().get(0)))
|
else if (!current.get(0).equals(entry.getValue().get(0)))
|
||||||
{
|
{
|
||||||
callNextTick(new BoosterDeactivateEvent(current.get(0)));
|
callNextTick(new BoosterDeactivateEvent(entry.getKey(), current.get(0)));
|
||||||
callNextTick(new BoosterActivateEvent(entry.getValue().get(0)));
|
callNextTick(new BoosterActivateEvent(entry.getKey(), entry.getValue().get(0)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -120,9 +120,9 @@ public class BoosterManager extends MiniPlugin
|
|||||||
|
|
||||||
private void tickBoosterCache()
|
private void tickBoosterCache()
|
||||||
{
|
{
|
||||||
for (List<Booster> boosters : _boosterCache.values())
|
for (Map.Entry<String, List<Booster>> entry : _boosterCache.entrySet())
|
||||||
{
|
{
|
||||||
Iterator<Booster> iterator = boosters.iterator();
|
Iterator<Booster> iterator = entry.getValue().iterator();
|
||||||
boolean removedOne = false;
|
boolean removedOne = false;
|
||||||
while (iterator.hasNext())
|
while (iterator.hasNext())
|
||||||
{
|
{
|
||||||
@ -132,11 +132,11 @@ public class BoosterManager extends MiniPlugin
|
|||||||
iterator.remove();
|
iterator.remove();
|
||||||
removedOne = true;
|
removedOne = true;
|
||||||
System.out.println("booster removed from tick");
|
System.out.println("booster removed from tick");
|
||||||
Bukkit.getPluginManager().callEvent(new BoosterDeactivateEvent(booster));
|
Bukkit.getPluginManager().callEvent(new BoosterDeactivateEvent(entry.getKey(), booster));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (removedOne) Bukkit.getPluginManager().callEvent(new BoosterActivateEvent(booster));
|
if (removedOne) Bukkit.getPluginManager().callEvent(new BoosterActivateEvent(entry.getKey(), booster));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -152,9 +152,9 @@ public class BoosterManager extends MiniPlugin
|
|||||||
tickBoosterCache();
|
tickBoosterCache();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Booster getActiveBoosterFromCache(String serverGroup)
|
public Booster getActiveBoosterFromCache(String boosterGroup)
|
||||||
{
|
{
|
||||||
List<Booster> boosters = _boosterCache.get(serverGroup);
|
List<Booster> boosters = _boosterCache.get(boosterGroup);
|
||||||
if (boosters != null)
|
if (boosters != null)
|
||||||
{
|
{
|
||||||
for (Booster booster : boosters)
|
for (Booster booster : boosters)
|
||||||
|
@ -9,13 +9,20 @@ import org.bukkit.event.HandlerList;
|
|||||||
*/
|
*/
|
||||||
public class BoosterActivateEvent extends Event
|
public class BoosterActivateEvent extends Event
|
||||||
{
|
{
|
||||||
|
private String _boosterGroup;
|
||||||
private Booster _booster;
|
private Booster _booster;
|
||||||
|
|
||||||
public BoosterActivateEvent(Booster booster)
|
public BoosterActivateEvent(String boosterGroup, Booster booster)
|
||||||
{
|
{
|
||||||
|
_boosterGroup = boosterGroup;
|
||||||
_booster = booster;
|
_booster = booster;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getBoosterGroup()
|
||||||
|
{
|
||||||
|
return _boosterGroup;
|
||||||
|
}
|
||||||
|
|
||||||
public Booster getBooster()
|
public Booster getBooster()
|
||||||
{
|
{
|
||||||
return _booster;
|
return _booster;
|
||||||
|
@ -9,13 +9,20 @@ import org.bukkit.event.HandlerList;
|
|||||||
*/
|
*/
|
||||||
public class BoosterDeactivateEvent extends Event
|
public class BoosterDeactivateEvent extends Event
|
||||||
{
|
{
|
||||||
|
private String _boosterGroup;
|
||||||
private Booster _booster;
|
private Booster _booster;
|
||||||
|
|
||||||
public BoosterDeactivateEvent(Booster booster)
|
public BoosterDeactivateEvent(String boosterGroup, Booster booster)
|
||||||
{
|
{
|
||||||
|
_boosterGroup = boosterGroup;
|
||||||
_booster = booster;
|
_booster = booster;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getBoosterGroup()
|
||||||
|
{
|
||||||
|
return _boosterGroup;
|
||||||
|
}
|
||||||
|
|
||||||
public Booster getBooster()
|
public Booster getBooster()
|
||||||
{
|
{
|
||||||
return _booster;
|
return _booster;
|
||||||
|
@ -160,7 +160,7 @@ public class PersonalServerManager extends MiniPlugin
|
|||||||
}
|
}
|
||||||
|
|
||||||
final ServerGroup serverGroup = new ServerGroup(serverName, serverName, host.getName(), ram, cpu, 1, 0, UtilMath.random.nextInt(250) + 19999, true, "arcade.zip", "Arcade.jar", "plugins/Arcade/", minPlayers, maxPlayers,
|
final ServerGroup serverGroup = new ServerGroup(serverName, serverName, host.getName(), ram, cpu, 1, 0, UtilMath.random.nextInt(250) + 19999, true, "arcade.zip", "Arcade.jar", "plugins/Arcade/", minPlayers, maxPlayers,
|
||||||
true, false, false, games, "", "Player", true, event, false, true, false, true, true, false, false, false, false, true, true, true, false, false, "", _us ? Region.US : Region.EU, "", "", "", "");
|
true, false, false, games, "", "", "Player", true, event, false, true, false, true, true, false, false, false, false, true, true, true, false, false, "", _us ? Region.US : Region.EU, "", "", "", "");
|
||||||
|
|
||||||
getPlugin().getServer().getScheduler().runTaskAsynchronously(getPlugin(), new Runnable()
|
getPlugin().getServer().getScheduler().runTaskAsynchronously(getPlugin(), new Runnable()
|
||||||
{
|
{
|
||||||
|
@ -51,6 +51,7 @@ public class ServerGroup
|
|||||||
|
|
||||||
private String _games;
|
private String _games;
|
||||||
private String _modes;
|
private String _modes;
|
||||||
|
private String _boosterGroup;
|
||||||
private String _serverType;
|
private String _serverType;
|
||||||
private boolean _addNoCheat;
|
private boolean _addNoCheat;
|
||||||
private boolean _addWorldEdit;
|
private boolean _addWorldEdit;
|
||||||
@ -89,6 +90,7 @@ public class ServerGroup
|
|||||||
_generateFreeVersions = Boolean.valueOf(data.get("generateFreeVersions"));
|
_generateFreeVersions = Boolean.valueOf(data.get("generateFreeVersions"));
|
||||||
_games = data.get("games");
|
_games = data.get("games");
|
||||||
_modes = data.get("modes");
|
_modes = data.get("modes");
|
||||||
|
_boosterGroup = data.get("boosterGroup");
|
||||||
_serverType = data.get("serverType");
|
_serverType = data.get("serverType");
|
||||||
_addNoCheat = Boolean.valueOf(data.get("addNoCheat"));
|
_addNoCheat = Boolean.valueOf(data.get("addNoCheat"));
|
||||||
_addWorldEdit = Boolean.valueOf(data.get("addWorldEdit"));
|
_addWorldEdit = Boolean.valueOf(data.get("addWorldEdit"));
|
||||||
@ -119,7 +121,7 @@ public class ServerGroup
|
|||||||
}
|
}
|
||||||
|
|
||||||
public ServerGroup(String name, String prefix, String host, int ram, int cpu, int totalServers, int joinable, int portSection, boolean arcade, String worldZip, String plugin, String configPath
|
public ServerGroup(String name, String prefix, String host, int ram, int cpu, int totalServers, int joinable, int portSection, boolean arcade, String worldZip, String plugin, String configPath
|
||||||
, int minPlayers, int maxPlayers, boolean pvp, boolean tournament, boolean tournamentPoints, String games, String modes, String serverType, boolean noCheat, boolean worldEdit, boolean teamRejoin
|
, int minPlayers, int maxPlayers, boolean pvp, boolean tournament, boolean tournamentPoints, String games, String modes, String boosterGroup, String serverType, boolean noCheat, boolean worldEdit, boolean teamRejoin
|
||||||
, boolean teamAutoJoin, boolean teamForceBalance, boolean gameAutoStart, boolean gameTimeout, boolean rewardGems, boolean rewardItems, boolean rewardStats
|
, boolean teamAutoJoin, boolean teamForceBalance, boolean gameAutoStart, boolean gameTimeout, boolean rewardGems, boolean rewardItems, boolean rewardStats
|
||||||
, boolean rewardAchievements, boolean hotbarInventory, boolean hotbarHubClock, boolean playerKickIdle, boolean staffOnly, boolean whitelist, String resourcePack, Region region
|
, boolean rewardAchievements, boolean hotbarInventory, boolean hotbarHubClock, boolean playerKickIdle, boolean staffOnly, boolean whitelist, String resourcePack, Region region
|
||||||
, String teamServerKey, String portalBottomCornerLocation, String portalTopCornerLocation, String npcName)
|
, String teamServerKey, String portalBottomCornerLocation, String portalTopCornerLocation, String npcName)
|
||||||
@ -143,6 +145,7 @@ public class ServerGroup
|
|||||||
_tournamentPoints = tournamentPoints;
|
_tournamentPoints = tournamentPoints;
|
||||||
_games = games;
|
_games = games;
|
||||||
_modes = modes;
|
_modes = modes;
|
||||||
|
_boosterGroup = boosterGroup;
|
||||||
_serverType = serverType;
|
_serverType = serverType;
|
||||||
_addNoCheat = noCheat;
|
_addNoCheat = noCheat;
|
||||||
_addWorldEdit = worldEdit;
|
_addWorldEdit = worldEdit;
|
||||||
@ -214,6 +217,8 @@ public class ServerGroup
|
|||||||
|
|
||||||
public String getGames() { return _games; }
|
public String getGames() { return _games; }
|
||||||
public String getModes() { return _modes; }
|
public String getModes() { return _modes; }
|
||||||
|
public String getBoosterGroup() { return _boosterGroup; }
|
||||||
|
|
||||||
public String getServerType() { return _serverType; }
|
public String getServerType() { return _serverType; }
|
||||||
public boolean getAddNoCheat() { return _addNoCheat; }
|
public boolean getAddNoCheat() { return _addNoCheat; }
|
||||||
public boolean getAddWorldEdit() { return _addWorldEdit; }
|
public boolean getAddWorldEdit() { return _addWorldEdit; }
|
||||||
|
@ -219,6 +219,7 @@ public class Arcade extends JavaPlugin
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
config.ServerGroup = _serverConfiguration.getServerGroup().getName();
|
config.ServerGroup = _serverConfiguration.getServerGroup().getName();
|
||||||
|
config.BoosterGroup = _serverConfiguration.getServerGroup().getBoosterGroup();
|
||||||
config.HostName = _serverConfiguration.getServerGroup().getHost();
|
config.HostName = _serverConfiguration.getServerGroup().getHost();
|
||||||
config.ServerType = _serverConfiguration.getServerGroup().getServerType();
|
config.ServerType = _serverConfiguration.getServerGroup().getServerType();
|
||||||
config.MinPlayers = _serverConfiguration.getServerGroup().getMinPlayers();
|
config.MinPlayers = _serverConfiguration.getServerGroup().getMinPlayers();
|
||||||
|
@ -319,7 +319,7 @@ public class ArcadeManager extends MiniPlugin implements IRelation
|
|||||||
new ValentinesGiftManager(plugin, clientManager, _bonusManager.getRewardManager(), inventoryManager, _cosmeticManager.getGadgetManager(), statsManager);
|
new ValentinesGiftManager(plugin, clientManager, _bonusManager.getRewardManager(), inventoryManager, _cosmeticManager.getGadgetManager(), statsManager);
|
||||||
new GameTestingManager(this);
|
new GameTestingManager(this);
|
||||||
new PlayerDisguiseManager(plugin, _clientManager);
|
new PlayerDisguiseManager(plugin, _clientManager);
|
||||||
new GameBoosterManager(plugin, boosterManager, disguiseManager, hologramManager, serverConfig);
|
new GameBoosterManager(plugin, boosterManager, disguiseManager, hologramManager, serverConfig.BoosterGroup);
|
||||||
|
|
||||||
// Game Addons
|
// Game Addons
|
||||||
new CompassAddon(plugin, this);
|
new CompassAddon(plugin, this);
|
||||||
|
@ -56,9 +56,7 @@ public class BoosterPodium extends MiniPlugin
|
|||||||
|
|
||||||
public void updateNpcs()
|
public void updateNpcs()
|
||||||
{
|
{
|
||||||
System.out.println("Updating Npcs.");
|
|
||||||
Booster activeBooster = _gameBoosterManager.getActiveBooster();
|
Booster activeBooster = _gameBoosterManager.getActiveBooster();
|
||||||
System.out.println("Active booster: " + activeBooster);
|
|
||||||
if (activeBooster != null)
|
if (activeBooster != null)
|
||||||
{
|
{
|
||||||
if (_activeArmorStand != null)
|
if (_activeArmorStand != null)
|
||||||
|
@ -27,24 +27,27 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class GameBoosterManager extends MiniPlugin
|
public class GameBoosterManager extends MiniPlugin
|
||||||
{
|
{
|
||||||
private GameServerConfig _gameServerConfig;
|
private String _boosterGroup;
|
||||||
|
|
||||||
private BoosterManager _boosterManager;
|
private BoosterManager _boosterManager;
|
||||||
private BoosterPodium _boosterPodium;
|
private BoosterPodium _boosterPodium;
|
||||||
|
|
||||||
public GameBoosterManager(JavaPlugin plugin, BoosterManager boosterManager, DisguiseManager disguiseManager, HologramManager hologramManager, GameServerConfig gameServerConfig)
|
public GameBoosterManager(JavaPlugin plugin, BoosterManager boosterManager, DisguiseManager disguiseManager, HologramManager hologramManager, String boosterGroup)
|
||||||
{
|
{
|
||||||
super("Arcade Boosters", plugin);
|
super("Arcade Boosters", plugin);
|
||||||
|
|
||||||
_gameServerConfig = gameServerConfig;
|
_boosterGroup = boosterGroup;
|
||||||
_boosterManager = boosterManager;
|
_boosterManager = boosterManager;
|
||||||
|
|
||||||
|
if (boosterGroup != null && boosterGroup.length() > 0)
|
||||||
|
{
|
||||||
_boosterPodium = new BoosterPodium(plugin, this, disguiseManager, hologramManager, new Location(UtilWorld.getWorld("world"), 0, 101.5, -12));
|
_boosterPodium = new BoosterPodium(plugin, this, disguiseManager, hologramManager, new Location(UtilWorld.getWorld("world"), 0, 101.5, -12));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public Booster getActiveBooster()
|
public Booster getActiveBooster()
|
||||||
{
|
{
|
||||||
return _boosterManager.getActiveBoosterFromCache(_gameServerConfig.ServerGroup);
|
return _boosterManager.getActiveBoosterFromCache(_boosterGroup);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void attemptTip(Player player)
|
public void attemptTip(Player player)
|
||||||
@ -76,10 +79,16 @@ public class GameBoosterManager extends MiniPlugin
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onActivate(BoosterActivateEvent event)
|
public void onActivate(BoosterActivateEvent event)
|
||||||
{
|
{
|
||||||
System.out.println("booster activate: " + event.getBooster());
|
|
||||||
Booster booster = event.getBooster();
|
Booster booster = event.getBooster();
|
||||||
|
if (event.getBoosterGroup().equals(_boosterGroup))
|
||||||
|
{
|
||||||
Bukkit.broadcastMessage(F.main("Booster", F.name(booster.getPlayerName()) + " has activated a booster for " + booster.getMultiplier() + "x Gems!" ));
|
Bukkit.broadcastMessage(F.main("Booster", F.name(booster.getPlayerName()) + " has activated a booster for " + booster.getMultiplier() + "x Gems!" ));
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Bukkit.broadcastMessage(F.main("Booster", F.name(booster.getPlayerName()) + " has activated a booster on " + F.elem(event.getBoosterGroup())));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onDeactivate(BoosterDeactivateEvent event)
|
public void onDeactivate(BoosterDeactivateEvent event)
|
||||||
|
@ -9,6 +9,7 @@ public class GameServerConfig
|
|||||||
{
|
{
|
||||||
public String ServerGroup = null;
|
public String ServerGroup = null;
|
||||||
public String ServerType = null;
|
public String ServerType = null;
|
||||||
|
public String BoosterGroup = null;
|
||||||
public int MinPlayers = -1;
|
public int MinPlayers = -1;
|
||||||
public int MaxPlayers = -1;
|
public int MaxPlayers = -1;
|
||||||
public ArrayList<GameType> GameList = new ArrayList<GameType>();
|
public ArrayList<GameType> GameList = new ArrayList<GameType>();
|
||||||
|
Loading…
Reference in New Issue
Block a user