From df1d57add700fcf2c6c868f98e3fdfd4c9ae16b5 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 10 Jan 2016 12:50:17 +0000 Subject: [PATCH] Config to prohibit flagged players using gatekeepers. --- trunk/dist/game/config/Character.ini | 4 ++++ trunk/java/com/l2jmobius/Config.java | 2 ++ .../model/actor/instance/L2TeleporterInstance.java | 12 +++++++++++- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/trunk/dist/game/config/Character.ini b/trunk/dist/game/config/Character.ini index 7517d2250d..a4d424f817 100644 --- a/trunk/dist/game/config/Character.ini +++ b/trunk/dist/game/config/Character.ini @@ -501,6 +501,10 @@ AltKarmaPlayerCanBeKilledInPeaceZone = False # Default: False AltKarmaPlayerCanUseGK = False +# Flagged player can use GateKeeper. +# Default: True +AltFlaggedPlayerCanUseGK = True + # Karma player can use escape and recall skills. # Default: True AltKarmaPlayerCanTeleport = True diff --git a/trunk/java/com/l2jmobius/Config.java b/trunk/java/com/l2jmobius/Config.java index 99829b9ba5..9835ae9f6f 100644 --- a/trunk/java/com/l2jmobius/Config.java +++ b/trunk/java/com/l2jmobius/Config.java @@ -196,6 +196,7 @@ public final class Config public static boolean ALT_GAME_KARMA_PLAYER_CAN_SHOP; public static boolean ALT_GAME_KARMA_PLAYER_CAN_TELEPORT; public static boolean ALT_GAME_KARMA_PLAYER_CAN_USE_GK; + public static boolean ALT_GAME_FLAGGED_PLAYER_CAN_USE_GK; public static boolean ALT_GAME_KARMA_PLAYER_CAN_TRADE; public static boolean ALT_GAME_KARMA_PLAYER_CAN_USE_WAREHOUSE; public static int MAX_PERSONAL_FAME_POINTS; @@ -1618,6 +1619,7 @@ public final class Config ALT_GAME_KARMA_PLAYER_CAN_SHOP = character.getBoolean("AltKarmaPlayerCanShop", true); ALT_GAME_KARMA_PLAYER_CAN_TELEPORT = character.getBoolean("AltKarmaPlayerCanTeleport", true); ALT_GAME_KARMA_PLAYER_CAN_USE_GK = character.getBoolean("AltKarmaPlayerCanUseGK", false); + ALT_GAME_FLAGGED_PLAYER_CAN_USE_GK = character.getBoolean("AltFlaggedPlayerCanUseGK", true); ALT_GAME_KARMA_PLAYER_CAN_TRADE = character.getBoolean("AltKarmaPlayerCanTrade", true); ALT_GAME_KARMA_PLAYER_CAN_USE_WAREHOUSE = character.getBoolean("AltKarmaPlayerCanUseWareHouse", true); MAX_PERSONAL_FAME_POINTS = character.getInt("MaxPersonalFamePoints", 100000); diff --git a/trunk/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java b/trunk/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java index e5a1f36530..308eab5b1c 100644 --- a/trunk/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java +++ b/trunk/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java @@ -186,6 +186,11 @@ public final class L2TeleporterInstance extends L2Npc { player.sendMessage("Go away, you're not welcome here."); } + else if (!Config.ALT_GAME_FLAGGED_PLAYER_CAN_USE_GK && (player.getPvpFlag() > 0)) + { + player.sendMessage("I don't speak with angry people."); + return; + } else if (player.isCombatFlagEquipped()) { player.sendPacket(SystemMessageId.YOU_CANNOT_TELEPORT_WHILE_IN_POSSESSION_OF_A_WARD); @@ -522,11 +527,16 @@ public final class L2TeleporterInstance extends L2Npc player.sendPacket(SystemMessageId.YOU_CANNOT_TELEPORT_TO_A_VILLAGE_THAT_IS_IN_A_SIEGE); return; } - else if (!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && (player.getReputation() < 0)) // karma + else if (!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_GK && (player.getReputation() < 0)) { player.sendMessage("Go away, you're not welcome here."); return; } + else if (!Config.ALT_GAME_FLAGGED_PLAYER_CAN_USE_GK && (player.getPvpFlag() > 0)) + { + player.sendMessage("I don't speak with angry people."); + return; + } else if (player.isCombatFlagEquipped()) { player.sendPacket(SystemMessageId.YOU_CANNOT_TELEPORT_WHILE_IN_POSSESSION_OF_A_WARD);