diff --git a/L2J_Mobius_Classic/dist/game/config/General.ini b/L2J_Mobius_Classic/dist/game/config/General.ini index 436ae39753..d4c0e52e2f 100644 --- a/L2J_Mobius_Classic/dist/game/config/General.ini +++ b/L2J_Mobius_Classic/dist/game/config/General.ini @@ -357,6 +357,10 @@ GlobalChat = ON # Default: ON TradeChat = ON +# World Chat. +# Default: False +WorldChatEnabled = False + # Minimum level for chat, 0 = disable # Default: 20 MinimumChatLevel = 20 diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java b/L2J_Mobius_Classic/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java index 72dd6c0b0e..2f155fa401 100644 --- a/L2J_Mobius_Classic/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java +++ b/L2J_Mobius_Classic/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java @@ -367,7 +367,10 @@ public class AdminAdmin implements IAdminCommandHandler activeChar.sendMessage(targetPlayer.getName() + ": points changed from " + targetPlayer.getWorldChatPoints() + " to " + valueToken); targetPlayer.setWorldChatPoints(Integer.parseInt(valueToken)); - targetPlayer.sendPacket(new ExWorldChatCnt(targetPlayer)); + if (Config.ENABLE_WORLD_CHAT) + { + targetPlayer.sendPacket(new ExWorldChatCnt(targetPlayer)); + } break; } default: diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java b/L2J_Mobius_Classic/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java index ebc0116405..181dcdfab6 100644 --- a/L2J_Mobius_Classic/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java +++ b/L2J_Mobius_Classic/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java @@ -47,6 +47,11 @@ public final class ChatWorld implements IChatHandler @Override public void handleChat(ChatType type, L2PcInstance activeChar, String target, String text) { + if (!Config.ENABLE_WORLD_CHAT) + { + return; + } + final Instant now = Instant.now(); if (!REUSE.isEmpty()) { diff --git a/L2J_Mobius_Classic/java/com/l2jmobius/Config.java b/L2J_Mobius_Classic/java/com/l2jmobius/Config.java index b177972810..c43696d1e1 100644 --- a/L2J_Mobius_Classic/java/com/l2jmobius/Config.java +++ b/L2J_Mobius_Classic/java/com/l2jmobius/Config.java @@ -471,6 +471,7 @@ public final class Config public static int PEACE_ZONE_MODE; public static String DEFAULT_GLOBAL_CHAT; public static String DEFAULT_TRADE_CHAT; + public static boolean ENABLE_WORLD_CHAT; public static int MINIMUM_CHAT_LEVEL; public static boolean ALLOW_WAREHOUSE; public static boolean WAREHOUSE_CACHE; @@ -1766,6 +1767,7 @@ public final class Config PEACE_ZONE_MODE = General.getInt("PeaceZoneMode", 0); DEFAULT_GLOBAL_CHAT = General.getString("GlobalChat", "ON"); DEFAULT_TRADE_CHAT = General.getString("TradeChat", "ON"); + ENABLE_WORLD_CHAT = General.getBoolean("WorldChatEnabled", false); MINIMUM_CHAT_LEVEL = General.getInt("MinimumChatLevel", 20); ALLOW_WAREHOUSE = General.getBoolean("AllowWarehouse", true); WAREHOUSE_CACHE = General.getBoolean("WarehouseCache", false); diff --git a/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java b/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java index 9d15e669b9..6994171c13 100644 --- a/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java +++ b/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java @@ -188,6 +188,11 @@ public class DailyTaskManager extends AbstractEventManager> private void resetWorldChatPoints() { + if (!Config.ENABLE_WORLD_CHAT) + { + return; + } + // Update data for offline players. try (Connection con = DatabaseFactory.getInstance().getConnection(); PreparedStatement ps = con.prepareStatement("UPDATE character_variables SET val = ? WHERE var = ?")) diff --git a/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java b/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java index b3c685e124..a807430d13 100644 --- a/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java +++ b/L2J_Mobius_Classic/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java @@ -641,7 +641,10 @@ public class EnterWorld implements IClientIncomingPacket } activeChar.sendPacket(new ExAcquireAPSkillList(activeChar)); - activeChar.sendPacket(new ExWorldChatCnt(activeChar)); + if (Config.ENABLE_WORLD_CHAT) + { + activeChar.sendPacket(new ExWorldChatCnt(activeChar)); + } activeChar.sendPacket(new ExOneDayReceiveRewardList(activeChar)); activeChar.sendPacket(ExConnectedTimeAndGettableReward.STATIC_PACKET); diff --git a/L2J_Mobius_Helios/dist/game/config/General.ini b/L2J_Mobius_Helios/dist/game/config/General.ini index 436ae39753..d7736e45a0 100644 --- a/L2J_Mobius_Helios/dist/game/config/General.ini +++ b/L2J_Mobius_Helios/dist/game/config/General.ini @@ -357,6 +357,10 @@ GlobalChat = ON # Default: ON TradeChat = ON +# World Chat. +# Default: True +WorldChatEnabled = True + # Minimum level for chat, 0 = disable # Default: 20 MinimumChatLevel = 20 diff --git a/L2J_Mobius_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java b/L2J_Mobius_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java index 72dd6c0b0e..2f155fa401 100644 --- a/L2J_Mobius_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java +++ b/L2J_Mobius_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java @@ -367,7 +367,10 @@ public class AdminAdmin implements IAdminCommandHandler activeChar.sendMessage(targetPlayer.getName() + ": points changed from " + targetPlayer.getWorldChatPoints() + " to " + valueToken); targetPlayer.setWorldChatPoints(Integer.parseInt(valueToken)); - targetPlayer.sendPacket(new ExWorldChatCnt(targetPlayer)); + if (Config.ENABLE_WORLD_CHAT) + { + targetPlayer.sendPacket(new ExWorldChatCnt(targetPlayer)); + } break; } default: diff --git a/L2J_Mobius_Helios/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java b/L2J_Mobius_Helios/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java index ebc0116405..181dcdfab6 100644 --- a/L2J_Mobius_Helios/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java +++ b/L2J_Mobius_Helios/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java @@ -47,6 +47,11 @@ public final class ChatWorld implements IChatHandler @Override public void handleChat(ChatType type, L2PcInstance activeChar, String target, String text) { + if (!Config.ENABLE_WORLD_CHAT) + { + return; + } + final Instant now = Instant.now(); if (!REUSE.isEmpty()) { diff --git a/L2J_Mobius_Helios/java/com/l2jmobius/Config.java b/L2J_Mobius_Helios/java/com/l2jmobius/Config.java index b177972810..ed4999ff39 100644 --- a/L2J_Mobius_Helios/java/com/l2jmobius/Config.java +++ b/L2J_Mobius_Helios/java/com/l2jmobius/Config.java @@ -471,6 +471,7 @@ public final class Config public static int PEACE_ZONE_MODE; public static String DEFAULT_GLOBAL_CHAT; public static String DEFAULT_TRADE_CHAT; + public static boolean ENABLE_WORLD_CHAT; public static int MINIMUM_CHAT_LEVEL; public static boolean ALLOW_WAREHOUSE; public static boolean WAREHOUSE_CACHE; @@ -1766,6 +1767,7 @@ public final class Config PEACE_ZONE_MODE = General.getInt("PeaceZoneMode", 0); DEFAULT_GLOBAL_CHAT = General.getString("GlobalChat", "ON"); DEFAULT_TRADE_CHAT = General.getString("TradeChat", "ON"); + ENABLE_WORLD_CHAT = General.getBoolean("WorldChatEnabled", true); MINIMUM_CHAT_LEVEL = General.getInt("MinimumChatLevel", 20); ALLOW_WAREHOUSE = General.getBoolean("AllowWarehouse", true); WAREHOUSE_CACHE = General.getBoolean("WarehouseCache", false); diff --git a/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java b/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java index 9d15e669b9..6994171c13 100644 --- a/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java +++ b/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java @@ -188,6 +188,11 @@ public class DailyTaskManager extends AbstractEventManager> private void resetWorldChatPoints() { + if (!Config.ENABLE_WORLD_CHAT) + { + return; + } + // Update data for offline players. try (Connection con = DatabaseFactory.getInstance().getConnection(); PreparedStatement ps = con.prepareStatement("UPDATE character_variables SET val = ? WHERE var = ?")) diff --git a/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java b/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java index b3c685e124..a807430d13 100644 --- a/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java +++ b/L2J_Mobius_Helios/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java @@ -641,7 +641,10 @@ public class EnterWorld implements IClientIncomingPacket } activeChar.sendPacket(new ExAcquireAPSkillList(activeChar)); - activeChar.sendPacket(new ExWorldChatCnt(activeChar)); + if (Config.ENABLE_WORLD_CHAT) + { + activeChar.sendPacket(new ExWorldChatCnt(activeChar)); + } activeChar.sendPacket(new ExOneDayReceiveRewardList(activeChar)); activeChar.sendPacket(ExConnectedTimeAndGettableReward.STATIC_PACKET); diff --git a/L2J_Mobius_Underground/dist/game/config/General.ini b/L2J_Mobius_Underground/dist/game/config/General.ini index 436ae39753..d7736e45a0 100644 --- a/L2J_Mobius_Underground/dist/game/config/General.ini +++ b/L2J_Mobius_Underground/dist/game/config/General.ini @@ -357,6 +357,10 @@ GlobalChat = ON # Default: ON TradeChat = ON +# World Chat. +# Default: True +WorldChatEnabled = True + # Minimum level for chat, 0 = disable # Default: 20 MinimumChatLevel = 20 diff --git a/L2J_Mobius_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java b/L2J_Mobius_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java index 72dd6c0b0e..2f155fa401 100644 --- a/L2J_Mobius_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java +++ b/L2J_Mobius_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminAdmin.java @@ -367,7 +367,10 @@ public class AdminAdmin implements IAdminCommandHandler activeChar.sendMessage(targetPlayer.getName() + ": points changed from " + targetPlayer.getWorldChatPoints() + " to " + valueToken); targetPlayer.setWorldChatPoints(Integer.parseInt(valueToken)); - targetPlayer.sendPacket(new ExWorldChatCnt(targetPlayer)); + if (Config.ENABLE_WORLD_CHAT) + { + targetPlayer.sendPacket(new ExWorldChatCnt(targetPlayer)); + } break; } default: diff --git a/L2J_Mobius_Underground/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java b/L2J_Mobius_Underground/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java index ebc0116405..181dcdfab6 100644 --- a/L2J_Mobius_Underground/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java +++ b/L2J_Mobius_Underground/dist/game/data/scripts/handlers/chathandlers/ChatWorld.java @@ -47,6 +47,11 @@ public final class ChatWorld implements IChatHandler @Override public void handleChat(ChatType type, L2PcInstance activeChar, String target, String text) { + if (!Config.ENABLE_WORLD_CHAT) + { + return; + } + final Instant now = Instant.now(); if (!REUSE.isEmpty()) { diff --git a/L2J_Mobius_Underground/java/com/l2jmobius/Config.java b/L2J_Mobius_Underground/java/com/l2jmobius/Config.java index b177972810..ed4999ff39 100644 --- a/L2J_Mobius_Underground/java/com/l2jmobius/Config.java +++ b/L2J_Mobius_Underground/java/com/l2jmobius/Config.java @@ -471,6 +471,7 @@ public final class Config public static int PEACE_ZONE_MODE; public static String DEFAULT_GLOBAL_CHAT; public static String DEFAULT_TRADE_CHAT; + public static boolean ENABLE_WORLD_CHAT; public static int MINIMUM_CHAT_LEVEL; public static boolean ALLOW_WAREHOUSE; public static boolean WAREHOUSE_CACHE; @@ -1766,6 +1767,7 @@ public final class Config PEACE_ZONE_MODE = General.getInt("PeaceZoneMode", 0); DEFAULT_GLOBAL_CHAT = General.getString("GlobalChat", "ON"); DEFAULT_TRADE_CHAT = General.getString("TradeChat", "ON"); + ENABLE_WORLD_CHAT = General.getBoolean("WorldChatEnabled", true); MINIMUM_CHAT_LEVEL = General.getInt("MinimumChatLevel", 20); ALLOW_WAREHOUSE = General.getBoolean("AllowWarehouse", true); WAREHOUSE_CACHE = General.getBoolean("WarehouseCache", false); diff --git a/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java b/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java index 9d15e669b9..6994171c13 100644 --- a/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java +++ b/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/instancemanager/DailyTaskManager.java @@ -188,6 +188,11 @@ public class DailyTaskManager extends AbstractEventManager> private void resetWorldChatPoints() { + if (!Config.ENABLE_WORLD_CHAT) + { + return; + } + // Update data for offline players. try (Connection con = DatabaseFactory.getInstance().getConnection(); PreparedStatement ps = con.prepareStatement("UPDATE character_variables SET val = ? WHERE var = ?")) diff --git a/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java b/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java index b3c685e124..a807430d13 100644 --- a/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java +++ b/L2J_Mobius_Underground/java/com/l2jmobius/gameserver/network/clientpackets/EnterWorld.java @@ -641,7 +641,10 @@ public class EnterWorld implements IClientIncomingPacket } activeChar.sendPacket(new ExAcquireAPSkillList(activeChar)); - activeChar.sendPacket(new ExWorldChatCnt(activeChar)); + if (Config.ENABLE_WORLD_CHAT) + { + activeChar.sendPacket(new ExWorldChatCnt(activeChar)); + } activeChar.sendPacket(new ExOneDayReceiveRewardList(activeChar)); activeChar.sendPacket(ExConnectedTimeAndGettableReward.STATIC_PACKET);