This commit is contained in:
143
trunk/dist/game/data/scripts/hellbound/HellboundLoader.java
vendored
Normal file
143
trunk/dist/game/data/scripts/hellbound/HellboundLoader.java
vendored
Normal file
@@ -0,0 +1,143 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2014 L2J DataPack
|
||||
*
|
||||
* This file is part of L2J DataPack.
|
||||
*
|
||||
* L2J DataPack 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.
|
||||
*
|
||||
* L2J DataPack 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 hellbound;
|
||||
|
||||
import handlers.admincommandhandlers.AdminHellbound;
|
||||
import handlers.voicedcommandhandlers.Hellbound;
|
||||
import hellbound.AI.Amaskari;
|
||||
import hellbound.AI.Chimeras;
|
||||
import hellbound.AI.DemonPrince;
|
||||
import hellbound.AI.HellboundCore;
|
||||
import hellbound.AI.Keltas;
|
||||
import hellbound.AI.NaiaLock;
|
||||
import hellbound.AI.OutpostCaptain;
|
||||
import hellbound.AI.Ranku;
|
||||
import hellbound.AI.Slaves;
|
||||
import hellbound.AI.Typhoon;
|
||||
import hellbound.AI.NPC.Bernarde.Bernarde;
|
||||
import hellbound.AI.NPC.Budenka.Budenka;
|
||||
import hellbound.AI.NPC.Buron.Buron;
|
||||
import hellbound.AI.NPC.Deltuva.Deltuva;
|
||||
import hellbound.AI.NPC.Falk.Falk;
|
||||
import hellbound.AI.NPC.Hude.Hude;
|
||||
import hellbound.AI.NPC.Jude.Jude;
|
||||
import hellbound.AI.NPC.Kanaf.Kanaf;
|
||||
import hellbound.AI.NPC.Kief.Kief;
|
||||
import hellbound.AI.NPC.Natives.Natives;
|
||||
import hellbound.AI.NPC.Quarry.Quarry;
|
||||
import hellbound.AI.NPC.Shadai.Shadai;
|
||||
import hellbound.AI.NPC.Solomon.Solomon;
|
||||
import hellbound.AI.NPC.Warpgate.Warpgate;
|
||||
import hellbound.AI.Zones.AnomicFoundry.AnomicFoundry;
|
||||
import hellbound.AI.Zones.BaseTower.BaseTower;
|
||||
import hellbound.AI.Zones.TowerOfInfinitum.TowerOfInfinitum;
|
||||
import hellbound.AI.Zones.TowerOfNaia.TowerOfNaia;
|
||||
import hellbound.AI.Zones.TullyWorkshop.TullyWorkshop;
|
||||
import hellbound.Instances.DemonPrinceFloor.DemonPrinceFloor;
|
||||
import hellbound.Instances.RankuFloor.RankuFloor;
|
||||
import hellbound.Instances.UrbanArea.UrbanArea;
|
||||
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.l2jserver.Config;
|
||||
import com.l2jserver.gameserver.handler.AdminCommandHandler;
|
||||
import com.l2jserver.gameserver.handler.IAdminCommandHandler;
|
||||
import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
|
||||
import com.l2jserver.gameserver.handler.VoicedCommandHandler;
|
||||
|
||||
/**
|
||||
* Hellbound class-loader.
|
||||
* @author Zoey76
|
||||
*/
|
||||
public final class HellboundLoader
|
||||
{
|
||||
private static final Logger _log = Logger.getLogger(HellboundLoader.class.getName());
|
||||
|
||||
private static final Class<?>[] SCRIPTS =
|
||||
{
|
||||
// Commands
|
||||
AdminHellbound.class,
|
||||
Hellbound.class,
|
||||
// AIs
|
||||
Amaskari.class,
|
||||
Chimeras.class,
|
||||
DemonPrince.class,
|
||||
HellboundCore.class,
|
||||
Keltas.class,
|
||||
NaiaLock.class,
|
||||
OutpostCaptain.class,
|
||||
Ranku.class,
|
||||
Slaves.class,
|
||||
Typhoon.class,
|
||||
// NPCs
|
||||
Bernarde.class,
|
||||
Budenka.class,
|
||||
Buron.class,
|
||||
Deltuva.class,
|
||||
Falk.class,
|
||||
Hude.class,
|
||||
Jude.class,
|
||||
Kanaf.class,
|
||||
Kief.class,
|
||||
Natives.class,
|
||||
Quarry.class,
|
||||
Shadai.class,
|
||||
Solomon.class,
|
||||
Warpgate.class,
|
||||
// Zones
|
||||
AnomicFoundry.class,
|
||||
BaseTower.class,
|
||||
TowerOfInfinitum.class,
|
||||
TowerOfNaia.class,
|
||||
TullyWorkshop.class,
|
||||
// Instances
|
||||
DemonPrinceFloor.class,
|
||||
UrbanArea.class,
|
||||
RankuFloor.class,
|
||||
};
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
_log.info(HellboundLoader.class.getSimpleName() + ": Loading Hellbound related scripts:");
|
||||
// Data
|
||||
HellboundPointData.getInstance();
|
||||
HellboundSpawns.getInstance();
|
||||
// Engine
|
||||
HellboundEngine.getInstance();
|
||||
for (Class<?> script : SCRIPTS)
|
||||
{
|
||||
try
|
||||
{
|
||||
final Object instance = script.newInstance();
|
||||
if (instance instanceof IAdminCommandHandler)
|
||||
{
|
||||
AdminCommandHandler.getInstance().registerHandler((IAdminCommandHandler) instance);
|
||||
}
|
||||
else if (Config.L2JMOD_HELLBOUND_STATUS && (instance instanceof IVoicedCommandHandler))
|
||||
{
|
||||
VoicedCommandHandler.getInstance().registerHandler((IVoicedCommandHandler) instance);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_log.severe(HellboundLoader.class.getSimpleName() + ": Failed loading " + script.getSimpleName() + ":" + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user