More gems for bridges/sg kills
Changed Al'Jaha MS name to Bombers Added Reporting functionality to Builders Nerfed Iron Hook Allowed longer AFk during games
This commit is contained in:
parent
7d43b146b7
commit
f9b49caeed
|
@ -98,7 +98,7 @@ public class UtilTime
|
||||||
if (type == TimeUnit.DAYS) text = (num = UtilMath.trim(trim, time / 86400000d)) + " Day";
|
if (type == TimeUnit.DAYS) text = (num = UtilMath.trim(trim, time / 86400000d)) + " Day";
|
||||||
else if (type == TimeUnit.HOURS) text = (num = UtilMath.trim(trim, time / 3600000d)) + " Hour";
|
else if (type == TimeUnit.HOURS) text = (num = UtilMath.trim(trim, time / 3600000d)) + " Hour";
|
||||||
else if (type == TimeUnit.MINUTES) text = (num = UtilMath.trim(trim, time / 60000d)) + " Minute";
|
else if (type == TimeUnit.MINUTES) text = (num = UtilMath.trim(trim, time / 60000d)) + " Minute";
|
||||||
else if (type == TimeUnit.SECONDS) text = (int) (num = (int) UtilMath.trim(0, time / 1000d)) + " Second";
|
else if (type == TimeUnit.SECONDS) text = (num = UtilMath.trim(trim, time / 1000d)) + " Second";
|
||||||
else text = (int) (num = (int) UtilMath.trim(0, time)) + " Millisecond";
|
else text = (int) (num = (int) UtilMath.trim(0, time)) + " Millisecond";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -417,7 +417,7 @@ public class CombatManager extends MiniPlugin
|
||||||
CombatDeathEvent deathEvent = new CombatDeathEvent(event, Get(event.getEntity().getName()), log);
|
CombatDeathEvent deathEvent = new CombatDeathEvent(event, Get(event.getEntity().getName()), log);
|
||||||
UtilServer.getServer().getPluginManager().callEvent(deathEvent);
|
UtilServer.getServer().getPluginManager().callEvent(deathEvent);
|
||||||
|
|
||||||
|
//XXX Death MSG
|
||||||
if (deathEvent.GetBroadcastType() == DeathMessageType.Detailed || deathEvent.GetBroadcastType() == DeathMessageType.Absolute)
|
if (deathEvent.GetBroadcastType() == DeathMessageType.Detailed || deathEvent.GetBroadcastType() == DeathMessageType.Absolute)
|
||||||
{
|
{
|
||||||
//Display Simple
|
//Display Simple
|
||||||
|
|
|
@ -31,6 +31,7 @@ import org.bukkit.event.entity.EntityExplodeEvent;
|
||||||
import org.bukkit.event.entity.ItemSpawnEvent;
|
import org.bukkit.event.entity.ItemSpawnEvent;
|
||||||
import org.bukkit.event.inventory.PrepareItemCraftEvent;
|
import org.bukkit.event.inventory.PrepareItemCraftEvent;
|
||||||
import org.bukkit.event.player.PlayerBucketEmptyEvent;
|
import org.bukkit.event.player.PlayerBucketEmptyEvent;
|
||||||
|
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
|
||||||
import org.bukkit.event.player.PlayerInteractEvent;
|
import org.bukkit.event.player.PlayerInteractEvent;
|
||||||
import org.bukkit.event.player.PlayerPickupItemEvent;
|
import org.bukkit.event.player.PlayerPickupItemEvent;
|
||||||
import org.bukkit.inventory.CraftingInventory;
|
import org.bukkit.inventory.CraftingInventory;
|
||||||
|
@ -1626,4 +1627,20 @@ public class Bridge extends TeamGame implements OreObsfucation
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double GetKillsGems(Player killer, Player killed, boolean assist)
|
||||||
|
{
|
||||||
|
if (assist)
|
||||||
|
return 3;
|
||||||
|
else
|
||||||
|
return 12;
|
||||||
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void toggleOre(PlayerCommandPreprocessEvent event)
|
||||||
|
{
|
||||||
|
if (event.getPlayer().isOp() && event.getMessage().contains("/oretoggle"))
|
||||||
|
_ore.ToggleVisibility();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,6 +63,7 @@ import org.bukkit.event.vehicle.VehicleCreateEvent;
|
||||||
import org.bukkit.event.vehicle.VehicleDamageEvent;
|
import org.bukkit.event.vehicle.VehicleDamageEvent;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
|
import mineplex.core.common.Rank;
|
||||||
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.NautHashMap;
|
import mineplex.core.common.util.NautHashMap;
|
||||||
|
@ -91,6 +92,7 @@ import nautilus.game.arcade.GameType;
|
||||||
import nautilus.game.arcade.events.GameStateChangeEvent;
|
import nautilus.game.arcade.events.GameStateChangeEvent;
|
||||||
import nautilus.game.arcade.events.PlayerPrepareTeleportEvent;
|
import nautilus.game.arcade.events.PlayerPrepareTeleportEvent;
|
||||||
import nautilus.game.arcade.game.SoloGame;
|
import nautilus.game.arcade.game.SoloGame;
|
||||||
|
import nautilus.game.arcade.game.Game.GameState;
|
||||||
import nautilus.game.arcade.game.games.build.gui.MobShop;
|
import nautilus.game.arcade.game.games.build.gui.MobShop;
|
||||||
import nautilus.game.arcade.game.games.build.gui.OptionsShop;
|
import nautilus.game.arcade.game.games.build.gui.OptionsShop;
|
||||||
import nautilus.game.arcade.game.games.build.kits.KitBuilder;
|
import nautilus.game.arcade.game.games.build.kits.KitBuilder;
|
||||||
|
@ -107,8 +109,8 @@ public class Build extends SoloGame
|
||||||
private int _buildGameState = 0;
|
private int _buildGameState = 0;
|
||||||
private long _buildStateTime = 0;
|
private long _buildStateTime = 0;
|
||||||
private long _buildTime = 300000;
|
private long _buildTime = 300000;
|
||||||
private long _voteTime = 12000;
|
private long _voteTime = 14000;
|
||||||
private long _viewTime = 16000;
|
private long _viewTime = 18000;
|
||||||
private BuildData _viewData = null;
|
private BuildData _viewData = null;
|
||||||
|
|
||||||
private int _countdownTimerState = 0;
|
private int _countdownTimerState = 0;
|
||||||
|
@ -372,7 +374,27 @@ public class Build extends SoloGame
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hasDecentVote)
|
String result = null;
|
||||||
|
|
||||||
|
//More than half think its abusive
|
||||||
|
if (GetPlayers(true).size() >= 4 && _viewData.AbuseVotes.size() >= (double)(GetPlayers(true).size() - 1) / 2d)
|
||||||
|
{
|
||||||
|
result = C.cWhite + "Inappropriate Build";
|
||||||
|
_viewData.setAbusive();
|
||||||
|
|
||||||
|
//Record Abuse
|
||||||
|
AddStat(_viewData.Player, "Build Draw Abuse", 1, false, true);
|
||||||
|
|
||||||
|
//Announce
|
||||||
|
Announce(C.cWhite + C.Bold + _viewData.Player.getName() + " has been reported for an inappropriate build.", false);
|
||||||
|
_viewData.Spawn.getWorld().playSound(_viewData.Spawn, Sound.ENDERDRAGON_GROWL, 10f, 1f);
|
||||||
|
|
||||||
|
UtilPlayer.message(_viewData.Player, C.cWhite + C.Bold + "Inappropriate Builds can result in a Master Buildres ban.");
|
||||||
|
|
||||||
|
//Return to Hub
|
||||||
|
getArcadeManager().GetPortal().sendPlayerToServer(_viewData.Player, "Lobby");
|
||||||
|
}
|
||||||
|
else if (!hasDecentVote)
|
||||||
{
|
{
|
||||||
Manager.GetExplosion().BlockExplosion(_viewData.Blocks, _viewData.Spawn, false);
|
Manager.GetExplosion().BlockExplosion(_viewData.Blocks, _viewData.Spawn, false);
|
||||||
|
|
||||||
|
@ -380,10 +402,12 @@ public class Build extends SoloGame
|
||||||
_viewData.Spawn.getWorld().playSound(_viewData.Spawn, Sound.EXPLODE, 3f, 1f);
|
_viewData.Spawn.getWorld().playSound(_viewData.Spawn, Sound.EXPLODE, 3f, 1f);
|
||||||
UtilParticle.PlayParticle(ParticleType.HUGE_EXPLOSION, _viewData.Spawn, 4f, 4f, 4f, 0, 10,
|
UtilParticle.PlayParticle(ParticleType.HUGE_EXPLOSION, _viewData.Spawn, 4f, 4f, 4f, 0, 10,
|
||||||
ViewDist.MAX, UtilServer.getPlayers());
|
ViewDist.MAX, UtilServer.getPlayers());
|
||||||
|
|
||||||
|
result = C.cRed + "Failure";
|
||||||
}
|
}
|
||||||
|
|
||||||
//Announce Builder
|
//Announce Builder
|
||||||
UtilTextMiddle.display(hasDecentVote ? null : C.cRed + "Failure", "Built by: " + C.Bold + _viewData.Player.getName(), 0, 80, 5);
|
UtilTextMiddle.display(result, "Built by: " + C.Bold + _viewData.Player.getName(), 0, 80, 5);
|
||||||
}
|
}
|
||||||
|
|
||||||
_viewData.Judged = true;
|
_viewData.Judged = true;
|
||||||
|
@ -431,6 +455,8 @@ public class Build extends SoloGame
|
||||||
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(160, (byte)3, 1, C.cAqua + C.Bold + "Amazing"));
|
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(160, (byte)3, 1, C.cAqua + C.Bold + "Amazing"));
|
||||||
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(160, (byte)10, 1, C.cPurple + C.Bold + "WOW! EVERYTHING IS AWESOME!"));
|
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(160, (byte)10, 1, C.cPurple + C.Bold + "WOW! EVERYTHING IS AWESOME!"));
|
||||||
|
|
||||||
|
player.getInventory().setItem(8, ItemStackFactory.Instance.CreateStack(Material.BOOK, (byte)0, 1, C.cWhite + C.Bold + "Report Inappropriate Build"));
|
||||||
|
|
||||||
UtilTextMiddle.display(null, C.cYellow + "Click to Vote", 0, 60, 5, player);
|
UtilTextMiddle.display(null, C.cYellow + "Click to Vote", 0, 60, 5, player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -711,9 +737,6 @@ public class Build extends SoloGame
|
||||||
if (!IsAlive(event.getPlayer()))
|
if (!IsAlive(event.getPlayer()))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!UtilGear.isMat(event.getPlayer().getItemInHand(), Material.STAINED_GLASS_PANE))
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (!UtilEvent.isAction(event, ActionType.R) && !UtilEvent.isAction(event, ActionType.L))
|
if (!UtilEvent.isAction(event, ActionType.R) && !UtilEvent.isAction(event, ActionType.L))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -726,6 +749,19 @@ public class Build extends SoloGame
|
||||||
if (!UtilTime.elapsed(_buildStateTime, 1500))
|
if (!UtilTime.elapsed(_buildStateTime, 1500))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
//Vote Abuse
|
||||||
|
if (UtilGear.isMat(event.getPlayer().getItemInHand(), Material.BOOK))
|
||||||
|
{
|
||||||
|
_viewData.addAbuseVote(event.getPlayer());
|
||||||
|
UtilTextMiddle.display(null, C.cWhite + C.Bold + "Inappropriate Build", 0, 40, 5, event.getPlayer());
|
||||||
|
UtilPlayer.message(event.getPlayer(), C.cWhite + C.Bold + "You reported " + _viewData.Player.getName() + " for inappropriate build!");
|
||||||
|
UtilPlayer.message(event.getPlayer(), C.cWhite + C.Bold + "Thanks for helping us keep Master Builders clean!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!UtilGear.isMat(event.getPlayer().getItemInHand(), Material.STAINED_GLASS_PANE))
|
||||||
|
return;
|
||||||
|
|
||||||
if (!_votes.containsKey(event.getPlayer()))
|
if (!_votes.containsKey(event.getPlayer()))
|
||||||
_votes.put(event.getPlayer(), new NautHashMap<Player, Integer>());
|
_votes.put(event.getPlayer(), new NautHashMap<Player, Integer>());
|
||||||
|
|
||||||
|
@ -1179,12 +1215,12 @@ public class Build extends SoloGame
|
||||||
if (_buildGameState == 0)
|
if (_buildGameState == 0)
|
||||||
{
|
{
|
||||||
Scoreboard.Write(C.cYellow + C.Bold + "Build Time");
|
Scoreboard.Write(C.cYellow + C.Bold + "Build Time");
|
||||||
Scoreboard.Write(UtilTime.MakeStr(Math.max(0, _buildTime - (System.currentTimeMillis() - this.GetStateTime())), 1));
|
Scoreboard.Write(UtilTime.MakeStr(Math.max(0, _buildTime - (System.currentTimeMillis() - this.GetStateTime())), 0));
|
||||||
}
|
}
|
||||||
else if (_buildGameState == 2)
|
else if (_buildGameState == 2)
|
||||||
{
|
{
|
||||||
Scoreboard.Write(C.cYellow + C.Bold + "Vote Time");
|
Scoreboard.Write(C.cYellow + C.Bold + "Vote Time");
|
||||||
Scoreboard.Write(UtilTime.MakeStr(Math.max(0, _voteTime - (System.currentTimeMillis() - _buildStateTime)), 1));
|
Scoreboard.Write(UtilTime.MakeStr(Math.max(0, _voteTime - (System.currentTimeMillis() - _buildStateTime)), 0));
|
||||||
|
|
||||||
// if (_viewData != null)
|
// if (_viewData != null)
|
||||||
// {
|
// {
|
||||||
|
@ -1441,4 +1477,22 @@ public class Build extends SoloGame
|
||||||
|
|
||||||
return GetTeamList().get(0).GetSpawn();
|
return GetTeamList().get(0).GetSpawn();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void kickAbusers(UpdateEvent event)
|
||||||
|
{
|
||||||
|
if (event.getType() != UpdateType.SLOW)
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (Player player : UtilServer.getPlayers())
|
||||||
|
{
|
||||||
|
if (Manager.GetStatsManager().Get(player).getStat("Global.Build Draw Abuse") >= 3)
|
||||||
|
{
|
||||||
|
UtilPlayer.message(player, C.cRed + C.Bold + "You have been flagged as an Inappropriate Builder!");
|
||||||
|
UtilPlayer.message(player, C.cRed + C.Bold + "As a result, you are banned from this game.");
|
||||||
|
player.playSound(player.getLocation(), Sound.ENDERDRAGON_GROWL, 10f, 1f);
|
||||||
|
getArcadeManager().GetPortal().sendPlayerToServer(player, "Lobby");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,6 +52,9 @@ public class BuildData
|
||||||
|
|
||||||
public int Time = 6000;
|
public int Time = 6000;
|
||||||
|
|
||||||
|
public HashSet<String> AbuseVotes = new HashSet<String>();
|
||||||
|
public boolean IsAbusive = false;
|
||||||
|
|
||||||
// This is used to show the player to use their inventory to grab items
|
// This is used to show the player to use their inventory to grab items
|
||||||
public boolean ClickedInventory = false;
|
public boolean ClickedInventory = false;
|
||||||
|
|
||||||
|
@ -307,6 +310,9 @@ public class BuildData
|
||||||
|
|
||||||
public void addPoints(double d)
|
public void addPoints(double d)
|
||||||
{
|
{
|
||||||
|
if (IsAbusive)
|
||||||
|
return;
|
||||||
|
|
||||||
_totalPoints += d;
|
_totalPoints += d;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -319,4 +325,14 @@ public class BuildData
|
||||||
{
|
{
|
||||||
_totalPoints = 0;
|
_totalPoints = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void addAbuseVote(Player voter)
|
||||||
|
{
|
||||||
|
AbuseVotes.add(voter.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAbusive()
|
||||||
|
{
|
||||||
|
IsAbusive = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,6 +11,7 @@ import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.block.BlockBreakEvent;
|
import org.bukkit.event.block.BlockBreakEvent;
|
||||||
import org.bukkit.event.block.BlockPlaceEvent;
|
import org.bukkit.event.block.BlockPlaceEvent;
|
||||||
|
|
||||||
|
import mineplex.core.common.util.MapUtil;
|
||||||
import mineplex.core.common.util.UtilMath;
|
import mineplex.core.common.util.UtilMath;
|
||||||
import mineplex.core.common.util.UtilTime;
|
import mineplex.core.common.util.UtilTime;
|
||||||
import mineplex.core.updater.UpdateType;
|
import mineplex.core.updater.UpdateType;
|
||||||
|
@ -178,7 +179,7 @@ public class Micro extends TeamGame
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for (Block block : _glass)
|
for (Block block : _glass)
|
||||||
block.setType(Material.AIR);
|
MapUtil.QuickChangeBlockAt(block.getLocation(), Material.AIR);
|
||||||
|
|
||||||
_glass.clear();
|
_glass.clear();
|
||||||
}
|
}
|
||||||
|
|
|
@ -245,8 +245,8 @@ public class MineStrike extends TeamGame
|
||||||
C.cAqua + "SWAT" + C.cWhite + " Defend the Bomb Sites",
|
C.cAqua + "SWAT" + C.cWhite + " Defend the Bomb Sites",
|
||||||
C.cAqua + "SWAT" + C.cWhite + " Kill the Terrorists",
|
C.cAqua + "SWAT" + C.cWhite + " Kill the Terrorists",
|
||||||
" ",
|
" ",
|
||||||
C.cRed + "Al'Jaha" + C.cWhite + " Plant the Bomb at Bomb Site",
|
C.cRed + "Bombers" + C.cWhite + " Plant the Bomb at Bomb Site",
|
||||||
C.cRed + "Al'Jaha" + C.cWhite + " Kill the Counter-Terrorists",
|
C.cRed + "Bombers" + C.cWhite + " Kill the Counter-Terrorists",
|
||||||
});
|
});
|
||||||
|
|
||||||
_shopManager = new ShopManager(this);
|
_shopManager = new ShopManager(this);
|
||||||
|
@ -313,7 +313,7 @@ public class MineStrike extends TeamGame
|
||||||
this.GetTeamList().get(0).SetName("SWAT");
|
this.GetTeamList().get(0).SetName("SWAT");
|
||||||
|
|
||||||
this.GetTeamList().get(1).SetColor(ChatColor.RED);
|
this.GetTeamList().get(1).SetColor(ChatColor.RED);
|
||||||
this.GetTeamList().get(1).SetName("Al'Jaha");
|
this.GetTeamList().get(1).SetName("Bombers");
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
|
|
|
@ -1037,7 +1037,10 @@ public class SurvivalGames extends SoloGame
|
||||||
@Override
|
@Override
|
||||||
public double GetKillsGems(Player killer, Player killed, boolean assist)
|
public double GetKillsGems(Player killer, Player killed, boolean assist)
|
||||||
{
|
{
|
||||||
return 4;
|
if (assist)
|
||||||
|
return 3;
|
||||||
|
else
|
||||||
|
return 12;
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
|
@ -2272,5 +2275,4 @@ public class SurvivalGames extends SoloGame
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -98,7 +98,7 @@ public class PerkIronHook extends Perk implements IThrown
|
||||||
|
|
||||||
//Damage Event
|
//Damage Event
|
||||||
Manager.GetDamage().NewDamageEvent(target, player, null,
|
Manager.GetDamage().NewDamageEvent(target, player, null,
|
||||||
DamageCause.CUSTOM, velocity * 8, false, true, false,
|
DamageCause.CUSTOM, velocity * 4, false, true, false,
|
||||||
player.getName(), GetName());
|
player.getName(), GetName());
|
||||||
|
|
||||||
//Inform
|
//Inform
|
||||||
|
|
|
@ -73,7 +73,7 @@ public class IdleManager implements Listener
|
||||||
|
|
||||||
if (_yaw.get(player) == player.getLocation().getYaw())
|
if (_yaw.get(player) == player.getLocation().getYaw())
|
||||||
{
|
{
|
||||||
if (UtilTime.elapsed(_idle.get(player), 120000))
|
if (UtilTime.elapsed(_idle.get(player), getArcadeManager().GetGame().IsLive() ? 240000 : 120000))
|
||||||
{
|
{
|
||||||
if (getArcadeManager().GetGame().GetState() != GameState.Recruit && !getArcadeManager().GetGame().IsAlive(player))
|
if (getArcadeManager().GetGame().GetState() != GameState.Recruit && !getArcadeManager().GetGame().IsAlive(player))
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Reference in New Issue