Changes from testing

This commit is contained in:
Sam 2017-11-03 12:26:53 +00:00 committed by Alexander Meech
parent 7f05ec0ecc
commit 9c7e83d5af
9 changed files with 48 additions and 31 deletions

View File

@ -251,6 +251,7 @@ public enum AchievementCategory
StatDisplay.fromGame("Games Play", GameDisplay.CakeWars4, "Wins", "Losses"), StatDisplay.fromGame("Games Play", GameDisplay.CakeWars4, "Wins", "Losses"),
StatDisplay.fromGame("Best Win Streak", GameDisplay.CakeWars4, "BestWinStreak"), StatDisplay.fromGame("Best Win Streak", GameDisplay.CakeWars4, "BestWinStreak"),
StatDisplay.fromGame("Kills", GameDisplay.CakeWars4, "Kills"), StatDisplay.fromGame("Kills", GameDisplay.CakeWars4, "Kills"),
StatDisplay.fromGame("Elimination Kills", GameDisplay.CakeWars4, "FinalKills"),
StatDisplay.fromGame("Deaths", GameDisplay.CakeWars4, "Deaths"), StatDisplay.fromGame("Deaths", GameDisplay.CakeWars4, "Deaths"),
StatDisplay.fromGame("Cake Bites", GameDisplay.CakeWars4, "Bites"), StatDisplay.fromGame("Cake Bites", GameDisplay.CakeWars4, "Bites"),
StatDisplay.fromGame("Whole Cakes", GameDisplay.CakeWars4, "EatWholeCake"), StatDisplay.fromGame("Whole Cakes", GameDisplay.CakeWars4, "EatWholeCake"),
@ -260,6 +261,7 @@ public enum AchievementCategory
StatDisplay.fromGame("Games Play", GameDisplay.CakeWarsDuos, "Wins", "Losses"), StatDisplay.fromGame("Games Play", GameDisplay.CakeWarsDuos, "Wins", "Losses"),
StatDisplay.fromGame("Best Win Streak", GameDisplay.CakeWarsDuos, "BestWinStreak"), StatDisplay.fromGame("Best Win Streak", GameDisplay.CakeWarsDuos, "BestWinStreak"),
StatDisplay.fromGame("Kills", GameDisplay.CakeWarsDuos, "Kills"), StatDisplay.fromGame("Kills", GameDisplay.CakeWarsDuos, "Kills"),
StatDisplay.fromGame("Elimination Kills", GameDisplay.CakeWarsDuos, "FinalKills"),
StatDisplay.fromGame("Deaths", GameDisplay.CakeWarsDuos, "Deaths"), StatDisplay.fromGame("Deaths", GameDisplay.CakeWarsDuos, "Deaths"),
StatDisplay.fromGame("Cake Bites", GameDisplay.CakeWarsDuos, "Bites"), StatDisplay.fromGame("Cake Bites", GameDisplay.CakeWarsDuos, "Bites"),
StatDisplay.fromGame("Whole Cakes", GameDisplay.CakeWarsDuos, "EatWholeCake"), StatDisplay.fromGame("Whole Cakes", GameDisplay.CakeWarsDuos, "EatWholeCake"),

View File

@ -46,11 +46,7 @@ public class StaticLeaderboard extends LeaderboardDisplay
text.addAll(_leaderboard.getFormattedEntries()); text.addAll(_leaderboard.getFormattedEntries());
_hologram.setText(text.toArray(new String[0])); _hologram.setText(text.toArray(new String[0]));
_hologram.start();
if (!_hologram.isInUse())
{
_hologram.start();
}
} }
@Override @Override

View File

@ -394,10 +394,10 @@ public class CakeWars extends TeamGame
String two = "Cake Wars Duos."; String two = "Cake Wars Duos.";
String four = "Cake Wars Standard."; String four = "Cake Wars Standard.";
String bestStreakDuos = two + WinStreakModule.BEST_STREAK_STAT; String bestStreakDuos = two + WinStreakModule.BEST_STREAK_STAT;
String killsDuos = two + "Kills"; String killsDuos = two + "FinalKills";
String winsDuos = two + "Wins"; String winsDuos = two + "Wins";
String bestStreak4 = four + WinStreakModule.BEST_STREAK_STAT; String bestStreak4 = four + WinStreakModule.BEST_STREAK_STAT;
String kills4 = four + "Kills"; String kills4 = four + "FinalKills";
String wins4 = four + "Wins"; String wins4 = four + "Wins";
LEADERBOARD_MANAGER.registerIfNotExists("CAKE_WARS", LEADERBOARD_MANAGER.registerIfNotExists("CAKE_WARS",
@ -427,15 +427,15 @@ public class CakeWars extends TeamGame
)), )),
new DynamicLeaderboard(LEADERBOARD_MANAGER, Arrays.asList( new DynamicLeaderboard(LEADERBOARD_MANAGER, Arrays.asList(
new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Kills", new Leaderboard( new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Elimination Kills", new Leaderboard(
LeaderboardSQLType.ALL, LeaderboardSQLType.ALL,
kills4 kills4
), topKills), ), topKills),
new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Weekly Kills", new Leaderboard( new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Weekly Elimination Kills", new Leaderboard(
LeaderboardSQLType.WEEKLY, LeaderboardSQLType.WEEKLY,
kills4 kills4
), topKills), ), topKills),
new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Daily Kills", new Leaderboard( new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Daily Elimination Kills", new Leaderboard(
LeaderboardSQLType.DAILY, LeaderboardSQLType.DAILY,
kills4 kills4
), topKills) ), topKills)
@ -466,15 +466,15 @@ public class CakeWars extends TeamGame
)), )),
new DynamicLeaderboard(LEADERBOARD_MANAGER, Arrays.asList( new DynamicLeaderboard(LEADERBOARD_MANAGER, Arrays.asList(
new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Kills", new Leaderboard( new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Elimination Kills", new Leaderboard(
LeaderboardSQLType.ALL, LeaderboardSQLType.ALL,
killsDuos killsDuos
), topKills), ), topKills),
new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Weekly Kills", new Leaderboard( new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Weekly Elimination Kills", new Leaderboard(
LeaderboardSQLType.WEEKLY, LeaderboardSQLType.WEEKLY,
killsDuos killsDuos
), topKills), ), topKills),
new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Daily Kills", new Leaderboard( new StaticLeaderboard(LEADERBOARD_MANAGER, "Top Daily Elimination Kills", new Leaderboard(
LeaderboardSQLType.DAILY, LeaderboardSQLType.DAILY,
killsDuos killsDuos
), topKills) ), topKills)

View File

@ -100,15 +100,21 @@ public class CakePlayerModule extends CakeModule
@EventHandler @EventHandler
public void blockBreak(BlockBreakEvent event) public void blockBreak(BlockBreakEvent event)
{ {
if (UtilBlock.airFoliage(event.getBlock())) if (!_game.IsLive())
{ {
event.getBlock().getDrops().clear();
return; return;
} }
if (!_placedBlocks.contains(event.getBlock())) Block block = event.getBlock();
event.setCancelled(true);
if (UtilBlock.airFoliage(event.getBlock()))
{
block.setType(Material.AIR);
}
else if (!_placedBlocks.contains(block))
{ {
event.setCancelled(true);
event.getPlayer().sendMessage(F.main("Game", "You cannot break blocks that have not been placed by players.")); event.getPlayer().sendMessage(F.main("Game", "You cannot break blocks that have not been placed by players."));
} }
} }
@ -124,7 +130,7 @@ public class CakePlayerModule extends CakeModule
} }
@EventHandler(priority = EventPriority.LOWEST) @EventHandler(priority = EventPriority.LOWEST)
public void damage(CustomDamageEvent event) public void saveInventory(CustomDamageEvent event)
{ {
Player player = event.GetDamageePlayer(); Player player = event.GetDamageePlayer();

View File

@ -84,7 +84,7 @@ public class CakeShopModule extends CakeModule
new CakeShopItem(CakeShopItemType.AXE, new ItemStack(Material.IRON_AXE), 3), new CakeShopItem(CakeShopItemType.AXE, new ItemStack(Material.IRON_AXE), 3),
// Arrow // Arrow
new CakeShopItem(CakeShopItemType.OTHER, new ItemStack(Material.ARROW, 3), 6), new CakeShopItem(CakeShopItemType.OTHER, new ItemStack(Material.ARROW, 3), 18),
// Blocks // Blocks
// Wool // Wool
@ -173,7 +173,7 @@ public class CakeShopModule extends CakeModule
for (CakeResource resource : CakeResource.values()) for (CakeResource resource : CakeResource.values())
{ {
Location location = _game.WorldData.GetCustomLocs("SHOP " + teamName + " " + resource.name()).get(0); Location location = _game.WorldData.GetCustomLocs("SHOP " + teamName + " " + resource.name()).get(0);
location.setYaw(UtilAlg.GetYaw(UtilAlg.getTrajectory2d(location, cakeTeam.getCake()))); location.setYaw(UtilAlg.GetYaw(UtilAlg.getTrajectory2d(location, cakeTeam.getShop())));
NPC npc = new NPC(-1, EntityType.VILLAGER, resource.getChatColor() + C.Bold + resource.getName() + " Shop", location, null, (byte) 0, null, null, null, null, "CAKE_NPC"); NPC npc = new NPC(-1, EntityType.VILLAGER, resource.getChatColor() + C.Bold + resource.getName() + " Shop", location, null, (byte) 0, null, null, null, null, "CAKE_NPC");
_manager.addNPC(npc, false); _manager.addNPC(npc, false);

View File

@ -19,7 +19,8 @@ public enum CakeTeamItem implements CakeItem
"Protection", "Protection",
new ItemStack(Material.DIAMOND_CHESTPLATE), new ItemStack(Material.DIAMOND_CHESTPLATE),
4, 4,
10 10,
18
) )
{ {
@Override @Override
@ -29,7 +30,7 @@ public enum CakeTeamItem implements CakeItem
{ {
if (UtilItem.isArmor(itemStack)) if (UtilItem.isArmor(itemStack))
{ {
itemStack.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, level); itemStack.addUnsafeEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, level);
} }
} }
} }
@ -76,8 +77,7 @@ public enum CakeTeamItem implements CakeItem
REGENERATION( REGENERATION(
"Healing Station", "Healing Station",
new ItemStack(Material.GOLDEN_APPLE), new ItemStack(Material.GOLDEN_APPLE),
4, 4
10
) )
{ {
@Override @Override

View File

@ -41,7 +41,7 @@ public class CakeTeam
private Hologram _cakeHologram; private Hologram _cakeHologram;
public CakeTeam(CakeWars game, GameTeam team, Location edgeHologram, Location shopHologram, Location chest) CakeTeam(CakeWars game, GameTeam team, Location edgeHologram, Location shopHologram, Location chest)
{ {
_game = game; _game = game;
_team = team; _team = team;
@ -90,6 +90,16 @@ public class CakeTeam
return _cake.getBlock().getType() == Material.CAKE_BLOCK; return _cake.getBlock().getType() == Material.CAKE_BLOCK;
} }
public GameTeam getGameTeam()
{
return _team;
}
public Location getShop()
{
return _shop;
}
public Location getChest() public Location getChest()
{ {
return _chest; return _chest;
@ -100,11 +110,6 @@ public class CakeTeam
return _cake; return _cake;
} }
public GameTeam getGameTeam()
{
return _team;
}
public Map<CakeTeamItem, Integer> getUpgrades() public Map<CakeTeamItem, Integer> getUpgrades()
{ {
return _upgrades; return _upgrades;

View File

@ -312,6 +312,13 @@ public class CakeTeamModule extends CakeModule
_game.Announce(F.main("Game", "The " + F.name(team.GetFormattedName()) + " team has been eliminated!")); _game.Announce(F.main("Game", "The " + F.name(team.GetFormattedName()) + " team has been eliminated!"));
} }
Player killer = event.GetPlayer().getKiller();
if (killer != null)
{
_game.AddStat(killer, "FinalKills", 1, false, false);
}
return; return;
} }

View File

@ -212,10 +212,11 @@ public class CapturePoint
else else
{ {
// Point back to a neutral state // Point back to a neutral state
if (_progress == 0) if (_progress <= 0)
{ {
setBeaconColour(null); setBeaconColour(null);
_side = team; _side = team;
_progress = 0;
// Recursively call this method now that the first (same team) condition will be true // Recursively call this method now that the first (same team) condition will be true
capture(team, progress); capture(team, progress);
return; return;