### Eclipse Workspace Patch 1.0
#P L2_GameServer_It
Index: java/net/sf/l2j/gameserver/PlayersOnlineAnnouncement.java
===================================================================
--- java/net/sf/l2j/gameserver/PlayersOnlineAnnouncement.java (revision 0)
+++ java/net/sf/l2j/gameserver/PlayersOnlineAnnouncement.java (revision 0)
@@ -0,0 +1,44 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package net.sf.l2j.gameserver;
+
+import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.model.L2World;
+
+/**
+ * @author fanky
+ *
+ */
+public class PlayersOnlineAnnouncement implements Runnable
+{
+
+ @Override
+ public void run()
+ {
+ Announcements.getInstance().announceToAll("There are "+L2World.getInstance().getAllPlayersCount()+" players online");
+ ThreadPoolManager.getInstance().scheduleGeneral(new PlayersOnlineAnnouncement(), Config.ANNOUNCE_ONLINE_PLAYER_EVERY * 1000);
+
+ }
+ public static PlayersOnlineAnnouncement getInstance()
+ {
+ return SingletonHolder._instance;
+ }
+
+ @SuppressWarnings("synthetic-access")
+ private static class SingletonHolder
+ {
+ protected static final PlayersOnlineAnnouncement _instance = new PlayersOnlineAnnouncement();
+ }
+}
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java (revision 5585)
+++ java/net/sf/l2j/gameserver/GameServer.java (working copy)
@@ -350,6 +350,9 @@
CharTemplateTable.getInstance();
NobleSkillTable.getInstance();
HeroSkillTable.getInstance();
+
+ if (Config.ALLOW_ANNOUNCE_ONLINE_PLAYERS)
+ PlayersOnlineAnnouncement.getInstance();
//Call to load caches
HtmCache.getInstance();
Index: java/net/sf/l2j/Config.java
===================================================================
--- java/net/sf/l2j/Config.java (revision 5585)
+++ java/net/sf/l2j/Config.java (working copy)
@@ -882,6 +882,10 @@
public static boolean L2JMOD_WEDDING_SAMESEX;
public static boolean L2JMOD_WEDDING_FORMALWEAR;
public static int L2JMOD_WEDDING_DIVORCE_COSTS;
+
+ // auto announcement online players
+ public static int ANNOUNCE_ONLINE_PLAYER_EVERY;
+ public static boolean ALLOW_ANNOUNCE_ONLINE_PLAYERS;
// Packet information
/** Count the a-beep-t of packets per minute ? */
@@ -1859,7 +1863,8 @@
L2JMOD_WEDDING_SAMESEX = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingAllowSameSex", "False"));
L2JMOD_WEDDING_FORMALWEAR = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingFormalWear", "True"));
L2JMOD_WEDDING_DIVORCE_COSTS = Integer.parseInt(L2JModSettings.getProperty("WeddingDivorceCosts", "20"));
-
+ ANNOUNCE_ONLINE_PLAYER_EVERY = Integer.parseInt(L2JModSettings.getProperty("AnnounceOnlinePlayerEvery","60"));
+ ALLOW_ANNOUNCE_ONLINE_PLAYERS = Boolean.parseBoolean(L2JModSettings.getProperty("AllowAnnounceOnlinePlayers","True"));
if (TVT_EVENT_PARTICIPATION_NPC_ID == 0)
{
TVT_EVENT_ENABLED = false;
Index: java/config/l2jmods.properties
===================================================================
--- java/config/l2jmods.properties (revision 5585)
+++ java/config/l2jmods.properties (working copy)
@@ -132,3 +132,12 @@
# ex.: 1;2;3;4;5;6
# no ";" at the start or end
TvTEventDoorsCloseOpenOnStartEnd =
+
+#---------------------------------------------------------------
+# Auto Announcement Engine by fanky -
+#---------------------------------------------------------------
+# It 'll announce every x(seconds) online players
+# Enable this engine?
+AllowAnnounceOnlinePlayers = True
+# Announcement every ?(Seconds)
+AnnounceOnlinePlayerEvery = [COLOR=#ff0000]60[/COLOR]