27-09-2010, 07:13 PM
|
#7 (permalink)
|
|
Membro - Veterano
Registrado em: Dec 2009
Posts: 1,335
Agradecido 803 Vezes em 427 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Rate
Designer:
Meu Estado:
|
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package net.sf.l2j.gameserver;
import java.util.logging.Level;
import java.util.logging.Logger;
import net.sf.l2j.Config;
import net.sf.l2j.L2DatabaseFactory;
import net.sf.l2j.gameserver.gameserverpackets.ServerStatus;
import net.sf.l2j.gameserver.instancemanager.CastleManorManager;
import net.sf.l2j.gameserver.instancemanager.CursedWeaponsManager;
import net.sf.l2j.gameserver.instancemanager.ItemsOnGroundManager;
import net.sf.l2j.gameserver.instancemanager.RaidBossSpawnManager;
import net.sf.l2j.gameserver.instancemanager.QuestManager;
import net.sf.l2j.gameserver.model.L2World;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.L2GameClient;
import net.sf.l2j.gameserver.serverpackets.ServerClose;
/**
*
* This class provides the functions for shutting down and restarting the server
* It closes all open clientconnections and saves all data.
*
* @version $Revision: 1.2.4.5 $ $Date: 2005/03/27 15:29:09 $
*/
public class Shutdown extends Thread
{
private static Logger _log = Logger.getLogger(Shutdown.class.getName());
private static Shutdown _instance;
private static Shutdown _counterInstance = null;
private int _secondsShut;
private int _shutdownMode;
public static final int SIGTERM = 0;
public static final int GM_SHUTDOWN = 1;
public static final int GM_RESTART = 2;
public static final int ABORT = 3;
private static final String[] MODE_TEXT = {"SIGTERM", "shutting down", "restarting", "aborting"};
/**
* This function starts a shutdown countdown from Telnet (Copied from Function startShutdown())
*
* @param ip IP Which Issued shutdown command
* @param seconds seconds untill shutdown
* @param restart true if the server will restart after shutdown
*/
public void startTelnetShutdown(String IP, int seconds, boolean restart)
{
Announcements _an = Announcements.getInstance();
_log.warning("IP: " + IP + " issued shutdown command. " + MODE_TEXT[_shutdownMode] + " in "+seconds+ " seconds!");
//_an.announceToAll("Server is " + _modeText[shutdownMode] + " in "+seconds+ " seconds!");
if (restart) {
_shutdownMode = GM_RESTART;
} else {
_shutdownMode = GM_SHUTDOWN;
}
if(_shutdownMode > 0)
{
_an.announceToAll("Attention players!");
_an.announceToAll("Server is " + MODE_TEXT[_shutdownMode] + " in "+seconds+ " seconds!");
if(_shutdownMode == 1 || _shutdownMode == 2)
{
_an.announceToAll("Please, avoid to use Gatekeepers/SoE");
_an.announceToAll("during server " + MODE_TEXT[_shutdownMode] + " procedure.");
}
}
if (_counterInstance != null) {
_counterInstance._abort();
}
_counterInstance = new Shutdown(seconds, restart);
_counterInstance.start();
}
Caso nao Tenha Esse Mod ja Existe em Sua Pack
|
|
|