Merge remote-tracking branch 'refs/remotes/origin/develop' into feature/leveling
This commit is contained in:
commit
5b77b099b2
@ -1,5 +1,6 @@
|
||||
package mineplex.core.antihack;
|
||||
|
||||
import javax.xml.bind.DatatypeConverter;
|
||||
import java.util.Collections;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
@ -9,7 +10,11 @@ import java.util.concurrent.ThreadLocalRandom;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import javax.xml.bind.DatatypeConverter;
|
||||
import net.md_5.bungee.api.ChatColor;
|
||||
import net.md_5.bungee.api.chat.BaseComponent;
|
||||
import net.md_5.bungee.api.chat.ClickEvent;
|
||||
import net.md_5.bungee.api.chat.ComponentBuilder;
|
||||
import net.md_5.bungee.api.chat.HoverEvent;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.entity.Player;
|
||||
@ -81,11 +86,6 @@ import mineplex.core.punish.PunishClient;
|
||||
import mineplex.core.punish.Punishment;
|
||||
import mineplex.core.punish.PunishmentResponse;
|
||||
import mineplex.serverdata.commands.ServerCommandManager;
|
||||
import net.md_5.bungee.api.ChatColor;
|
||||
import net.md_5.bungee.api.chat.BaseComponent;
|
||||
import net.md_5.bungee.api.chat.ClickEvent;
|
||||
import net.md_5.bungee.api.chat.ComponentBuilder;
|
||||
import net.md_5.bungee.api.chat.HoverEvent;
|
||||
|
||||
@ReflectivelyCreateMiniPlugin
|
||||
public class AntiHack extends MiniPlugin
|
||||
@ -109,13 +109,13 @@ public class AntiHack extends MiniPlugin
|
||||
|
||||
public static final Map<Class<? extends Check>, AntiHackAction> ACTIONS = ImmutableMap.<Class<? extends Check>, AntiHackAction>builder()
|
||||
.put(KillauraTypeA.class, new ImmediateBanAction(200))
|
||||
//.put(KillauraTypeD.class, new BanwaveAction(1500))
|
||||
.put(KillauraTypeD.class, new BanwaveAction(1500))
|
||||
.put(KillauraTypeF.class, new BanwaveAction(600))
|
||||
.put(Glide.class, new ImmediateBanAction(10000))
|
||||
.put(Speed.class, new ImmediateBanAction(10000))
|
||||
.put(Glide.class, new ImmediateBanAction(7500))
|
||||
.put(Speed.class, new ImmediateBanAction(7500))
|
||||
.put(HeadRoll.class, new ImmediateBanAction(2000))
|
||||
.put(Toggle.class, new ImmediateBanAction(500))
|
||||
.put(Timer.class, new ImmediateBanAction(15000))
|
||||
.put(Timer.class, new ImmediateBanAction(10000))
|
||||
.put(BadPackets.class, new GEPBanAction(300))
|
||||
.put(KillauraTypeB.class, new GEPBanAction(100))
|
||||
.build();
|
||||
@ -435,11 +435,6 @@ public class AntiHack extends MiniPlugin
|
||||
@EventHandler
|
||||
public void onHack(PlayerViolationEvent event)
|
||||
{
|
||||
if (event.getCheckClass() == Toggle.class)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (_ignoredChecks.contains(event.getCheckClass()))
|
||||
{
|
||||
return;
|
||||
|
@ -1,5 +1,17 @@
|
||||
package mineplex.core.message;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
import mineplex.core.MiniClientPlugin;
|
||||
import mineplex.core.account.CoreClientManager;
|
||||
import mineplex.core.chat.Chat;
|
||||
@ -33,18 +45,6 @@ import mineplex.core.punish.Punishment;
|
||||
import mineplex.core.punish.PunishmentSentence;
|
||||
import mineplex.serverdata.commands.AnnouncementCommand;
|
||||
import mineplex.serverdata.commands.ServerCommandManager;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
{
|
||||
@ -263,6 +263,10 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
|
||||
// Send
|
||||
UtilPlayer.message(to, C.cGold + "§l" + from.getName() + " > " + to.getName() + C.cYellow + " §l" + message);
|
||||
if (_punish.GetClient(to.getName()).IsMuted() && _preferences.get(to).isActive(Preference.INFORM_MUTED))
|
||||
{
|
||||
UtilPlayer.message(from, F.main(getName(), F.elem(to.getName()) + " is currently muted and cannot reply to you!"));
|
||||
}
|
||||
}
|
||||
|
||||
public void DoMessageAdmin(Player from, Player to, String message)
|
||||
@ -345,7 +349,8 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
"Mmm...Steak!",
|
||||
"Poop! Poop everywhere!",
|
||||
"I'm so forgetful. Like I was going to say somethin...wait what were we talking about?",
|
||||
"Mmm...Steak!"
|
||||
"Mmm...Steak!",
|
||||
"#BlameAlex"
|
||||
);
|
||||
}
|
||||
|
||||
@ -359,7 +364,7 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
if (_randomMessage.isEmpty())
|
||||
return "meow";
|
||||
|
||||
return _randomMessage.get(UtilMath.r(_randomMessage.size()));
|
||||
return UtilMath.randomElement(_randomMessage);
|
||||
}
|
||||
|
||||
public void Help(Player caller)
|
||||
@ -392,7 +397,7 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
// Message the sender
|
||||
RedisMessageCallback message = new RedisMessageCallback(globalMessage, true, to.getName(),
|
||||
|
||||
C.cPurple + "-> " + toRank + " " + to.getName() + " " + C.cPurple + globalMessage.getMessage());
|
||||
C.cPurple + "-> " + toRank + " " + to.getName() + " " + C.cPurple + globalMessage.getMessage(), false);
|
||||
|
||||
// Inform Admins
|
||||
for (Player staff : UtilServer.getPlayers())
|
||||
@ -416,8 +421,7 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
|
||||
if (canMessage != null)
|
||||
{
|
||||
|
||||
RedisMessageCallback message = new RedisMessageCallback(globalMessage, false, null, canMessage);
|
||||
RedisMessageCallback message = new RedisMessageCallback(globalMessage, false, null, canMessage, false);
|
||||
|
||||
message.publish();
|
||||
|
||||
@ -432,8 +436,10 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
|
||||
to.playSound(to.getLocation(), Sound.NOTE_PIANO, 2f, 2f);
|
||||
|
||||
boolean informMuted = _punish.GetClient(to.getName()).IsMuted() && _preferences.get(to).isActive(Preference.INFORM_MUTED);
|
||||
|
||||
// Message the sender
|
||||
RedisMessageCallback redisMessage = new RedisMessageCallback(globalMessage, false, to.getName(), message);
|
||||
RedisMessageCallback redisMessage = new RedisMessageCallback(globalMessage, false, to.getName(), message, informMuted);
|
||||
|
||||
redisMessage.publish();
|
||||
}
|
||||
@ -454,6 +460,11 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
{
|
||||
target.sendMessage(message.getMessage());
|
||||
|
||||
if (message.informMuted())
|
||||
{
|
||||
UtilPlayer.message(target, F.main(getName(), F.elem(message.getLastReplied()) + " is currently muted and cannot reply to you!"));
|
||||
}
|
||||
|
||||
target.playSound(target.getLocation(), Sound.NOTE_PIANO, 2f, 2f);
|
||||
|
||||
if (message.getLastReplied() != null)
|
||||
@ -647,6 +658,6 @@ public class MessageManager extends MiniClientPlugin<ClientMessage>
|
||||
|
||||
public PreferencesManager getPreferences()
|
||||
{
|
||||
return this._preferences;
|
||||
return _preferences;
|
||||
}
|
||||
}
|
@ -12,16 +12,17 @@ public class RedisMessageCallback extends ServerCommand
|
||||
private String _message;
|
||||
private String _setLastMessage;
|
||||
private String _target;
|
||||
private boolean _staffMessage;
|
||||
private boolean _staffMessage, _informMuted;
|
||||
private UUID _uuid;
|
||||
|
||||
public RedisMessageCallback(RedisMessage globalMessage, boolean staffMessage, String receivedPlayer, String message)
|
||||
public RedisMessageCallback(RedisMessage globalMessage, boolean staffMessage, String receivedPlayer, String message, boolean informMuted)
|
||||
{
|
||||
_target = globalMessage.getSender();
|
||||
_message = message;
|
||||
_setLastMessage = receivedPlayer;
|
||||
_uuid = globalMessage.getUUID();
|
||||
_staffMessage = staffMessage;
|
||||
_informMuted = informMuted;
|
||||
|
||||
if (globalMessage.getSendingServer() != null)
|
||||
{
|
||||
@ -34,6 +35,11 @@ public class RedisMessageCallback extends ServerCommand
|
||||
return _staffMessage;
|
||||
}
|
||||
|
||||
public boolean informMuted()
|
||||
{
|
||||
return _informMuted;
|
||||
}
|
||||
|
||||
public String getLastReplied()
|
||||
{
|
||||
return _setLastMessage;
|
||||
|
@ -48,7 +48,9 @@ public enum Preference
|
||||
|
||||
PARTY_DISPLAY_INVENTORY_UI(true, PreferenceCategory.SOCIAL, Material.CHEST, "Display Parties GUI"),
|
||||
|
||||
RANDOM_MESSAGES(true, PreferenceCategory.USER, Material.COMMAND, "Send random messages", "Got nothing to say? We got you covered!")
|
||||
RANDOM_MESSAGES(true, PreferenceCategory.USER, Material.COMMAND, "Send Random Messages", "Got nothing to say? We got you covered!"),
|
||||
|
||||
INFORM_MUTED(false, PreferenceCategory.USER, Material.BARRIER, "Inform When Muted", "Inform people who message you if you are muted!")
|
||||
;
|
||||
|
||||
private static final Map<Integer, Preference> PREFERENCE_MAP = Maps.newHashMap();
|
||||
@ -118,6 +120,4 @@ public enum Preference
|
||||
{
|
||||
return PREFERENCE_MAP.get(id);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -178,7 +178,7 @@ public class ServerGameMenu extends ShopPageBase<ServerManager, QuickShop>
|
||||
{
|
||||
(_extraValue ? C.cAquaB : C.cWhiteB) + "NEW UPDATES",
|
||||
C.Reset + "",
|
||||
C.Reset + "Defenders must protect King Sparklez",
|
||||
C.Reset + "Defenders must protect King Chiss",
|
||||
C.Reset + "from the endless waves of Undead",
|
||||
C.Reset + "until the sun rises!",
|
||||
}, "CS", "Castle_Siege", new SelectCSButton(this));
|
||||
|
@ -66,7 +66,7 @@ public class CastleSiegeHorseManager implements Listener
|
||||
@EventHandler
|
||||
public void horseInteract(PlayerInteractEntityEvent event)
|
||||
{
|
||||
if (!(event.getRightClicked() instanceof Horse))
|
||||
if (!(event.getRightClicked() instanceof Horse) || !_host.IsLive())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -22,11 +22,16 @@ import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.ItemSpawnEvent;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.event.player.PlayerPickupItemEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
import org.bukkit.potion.PotionEffect;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
|
||||
import com.mineplex.anticheat.checks.combat.KillauraTypeD;
|
||||
|
||||
import mineplex.core.Managers;
|
||||
import mineplex.core.achievement.Achievement;
|
||||
import mineplex.core.achievement.AchievementCategory;
|
||||
import mineplex.core.antihack.AntiHack;
|
||||
import mineplex.core.common.util.C;
|
||||
import mineplex.core.common.util.UtilAlg;
|
||||
import mineplex.core.common.util.UtilEnt;
|
||||
@ -170,6 +175,10 @@ public class CastleSiegeNew extends TeamGame
|
||||
|
||||
new CompassModule()
|
||||
.register(this);
|
||||
|
||||
// Disable specific GWEN checks for this game
|
||||
AntiHack antiHack = Managers.get(AntiHack.class);
|
||||
antiHack.addIgnoredCheck(KillauraTypeD.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -371,6 +380,12 @@ public class CastleSiegeNew extends TeamGame
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void playerQuit(PlayerQuitEvent event)
|
||||
{
|
||||
_wolves.remove(event.getPlayer());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void EndCheck()
|
||||
{
|
||||
|
@ -76,6 +76,6 @@ public class KitUndeadZombie extends KitCastleSiege
|
||||
|
||||
int level = getUpgradeLevel(player.getUniqueId());
|
||||
|
||||
player.setMaxHealth(player.getMaxHealth() + level * 2);
|
||||
player.setMaxHealth(20 + level * 2);
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,11 @@ public class DragonEscapeWinQuestTracker extends QuestTracker<DragonEscape>
|
||||
|
||||
public void increment(Player player)
|
||||
{
|
||||
if (!player.isOnline())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
incrementQuests(player, 1, ((Arcade) UtilServer.getPlugin()).getServerConfig().getServerGroup().getPrefix(), getGame().GetKit(player).GetName() + "Kit", "Parkour");
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,32 @@
|
||||
package nautilus.game.arcade.game.games.moba;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.entity.Arrow;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.ProjectileHitEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
import com.mineplex.anticheat.checks.combat.KillauraTypeD;
|
||||
import com.mineplex.anticheat.checks.move.Glide;
|
||||
import com.mineplex.anticheat.checks.move.HeadRoll;
|
||||
import com.mineplex.anticheat.checks.move.Speed;
|
||||
|
||||
import mineplex.core.Managers;
|
||||
import mineplex.core.antihack.AntiHack;
|
||||
import mineplex.core.common.Pair;
|
||||
import mineplex.core.common.Rank;
|
||||
import mineplex.core.common.util.F;
|
||||
@ -16,6 +42,7 @@ import mineplex.core.leaderboard.Leaderboard;
|
||||
import mineplex.core.leaderboard.LeaderboardManager;
|
||||
import mineplex.core.leaderboard.LeaderboardRepository.LeaderboardSQLType;
|
||||
import mineplex.minecraft.game.core.combat.DeathMessageType;
|
||||
|
||||
import nautilus.game.arcade.ArcadeManager;
|
||||
import nautilus.game.arcade.GameType;
|
||||
import nautilus.game.arcade.events.GameStateChangeEvent;
|
||||
@ -56,25 +83,6 @@ import nautilus.game.arcade.game.modules.CustomScoreboardModule;
|
||||
import nautilus.game.arcade.game.modules.compass.CompassModule;
|
||||
import nautilus.game.arcade.kit.Kit;
|
||||
import nautilus.game.arcade.managers.lobby.current.NewGameLobbyManager;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.entity.Arrow;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.ProjectileHitEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
public class Moba extends TeamGame
|
||||
{
|
||||
@ -186,6 +194,13 @@ public class Moba extends TeamGame
|
||||
caller.sendMessage(F.main("Kit", "Sorry that is not a kit!"));
|
||||
}
|
||||
});
|
||||
|
||||
// Disable specific GWEN checks for this game
|
||||
AntiHack antiHack = Managers.get(AntiHack.class);
|
||||
antiHack.addIgnoredCheck(Speed.class);
|
||||
antiHack.addIgnoredCheck(Glide.class);
|
||||
antiHack.addIgnoredCheck(HeadRoll.class);
|
||||
antiHack.addIgnoredCheck(KillauraTypeD.class);
|
||||
}
|
||||
|
||||
protected <T extends Listener> T registerManager(T listener)
|
||||
|
@ -114,7 +114,7 @@ public class GamePlayerManager implements Listener
|
||||
if (kit instanceof ProgressingKit)
|
||||
{
|
||||
ProgressingKit progressingKit = (ProgressingKit) kit;
|
||||
if (progressingKit.isDefault(player.getUniqueId()))
|
||||
if (progressingKit.canEquipKit(player) && progressingKit.isDefault(player.getUniqueId()))
|
||||
{
|
||||
progressingKit.onSelected(player.getUniqueId());
|
||||
return;
|
||||
|
@ -302,13 +302,15 @@ public class ProgressingKitManager implements Listener
|
||||
{
|
||||
UtilServer.getPlayersCollection().forEach(player ->
|
||||
{
|
||||
UUID id = player.getUniqueId();
|
||||
|
||||
for (Kit kit : _manager.GetGame().GetKits())
|
||||
{
|
||||
//Set default kit
|
||||
if (kit instanceof ProgressingKit)
|
||||
{
|
||||
ProgressingKit progressingKit = (ProgressingKit) kit;
|
||||
if (progressingKit.isDefault(player.getUniqueId()))
|
||||
if (progressingKit.canEquipKit(player) && progressingKit.isDefault(id))
|
||||
{
|
||||
progressingKit.onSelected(player.getUniqueId());
|
||||
break;
|
||||
|
@ -1,12 +1,10 @@
|
||||
package nautilus.game.arcade.quest;
|
||||
|
||||
import java.awt.dnd.DragSourceDropEvent;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.Chest;
|
||||
import org.bukkit.block.DoubleChest;
|
||||
import org.bukkit.entity.Player;
|
||||
|
@ -51,8 +51,6 @@ public class HitQuestTracker extends QuestTracker<Game>
|
||||
if (!event.GetReason().contains("Axe Thrower"))
|
||||
return;
|
||||
|
||||
System.out.println("Test2");
|
||||
|
||||
incrementQuests(event.GetDamagerPlayer(true), 1, "Player", "Axe", getGame().GetKit(event.GetDamagerPlayer(true)).GetName() + "Kit");
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user