Updated Lionel Hunter AI.
Contributed by CostyKiller.
This commit is contained in:
parent
6a959e9f20
commit
fb4ceae55d
@ -30,14 +30,14 @@ import ai.AbstractNpcAI;
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
@ -62,6 +62,6 @@ public class LionelHunter extends AbstractNpcAI
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -30,14 +30,14 @@ import ai.AbstractNpcAI;
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
@ -62,6 +62,6 @@ public class LionelHunter extends AbstractNpcAI
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -30,14 +30,14 @@ import ai.AbstractNpcAI;
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
@ -62,6 +62,6 @@ public class LionelHunter extends AbstractNpcAI
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -30,14 +30,14 @@ import ai.AbstractNpcAI;
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
@ -62,6 +62,6 @@ public class LionelHunter extends AbstractNpcAI
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
67
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
67
L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
}
|
||||
}
|
67
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
67
L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
}
|
||||
}
|
67
L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
67
L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
}
|
||||
}
|
67
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
67
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
}
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book1.htm">"Receive missing books 1st Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book2.htm">"Receive missing books 2nd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book3.htm">"Receive missing books 3rd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book4.htm">"Receive missing books 4th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book5.htm">"Receive missing books 5th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book6.htm">"Receive missing books 6th Exalted quest."</Button>
|
||||
</body></html>
|
@ -1,10 +0,0 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br>
|
||||
A tribe of the strongest monsters of the past, <font color="LEVEL">Krofin</font>, have reawakened after a long slumer. You must defeat these creatures!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 1">"Who are you?"</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 3">Check Fafurion Weapons</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 2">Ask about Eva</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 4"><font color="LEVEL">Change the type of an Exalted equipment.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 6"><font color="LEVEL">Receive missing books.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
|
||||
</body></html>
|
@ -1,5 +1,5 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
I am the ruler of Innadril, including Heine - I am also the knight to Eva, the goddess of water.<br>
|
||||
I see... I seem as an Elf to you. Yes, I have that blood in me. But I have lived as a Human, and I consider myself close to - no, Human.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h npc_%objectId%_Chat 0">Back</Button>
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
I am the ruler of Innadril, including Heine - I am also the knight to Eva, the goddess of water.<br>
|
||||
I see... I seem as an Elf to you. Yes, I have that blood in me. But I have lived as a Human, and I consider myself close to - no, Human.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest LionelHunter 33907.htm">Back</Button>
|
||||
</body></html>
|
@ -1,4 +1,4 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Shilen was once the Goddess of Water. But when she fell into darkness, Eva the Goddess of Music succeeded the role. Have you ever seen her? She is...much like water. Gentle, all-embracing - and yet, her fury will overwhelm you like an unforgiving storm.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h npc_%objectId%_Chat 0">Back</Button>
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Shilen was once the Goddess of Water. But when she fell into darkness, Eva the Goddess of Music succeeded the role. Have you ever seen her? She is...much like water. Gentle, all-embracing - and yet, her fury will overwhelm you like an unforgiving storm.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest LionelHunter 33907.htm">Back</Button>
|
||||
</body></html>
|
@ -1,7 +1,7 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Not just anyone can wield a dragon's weapon. First, you have to be brave enough to kill a dragon, and even then you will need tremendous wealth. Then, you'll need <font color="LEVEL">Dragon Blood</font> to use its skills. But it offers great power, so I can understand why people are compelled to try.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390701">Stage 1</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390702">Stage 2</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390703">Stage 3</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 2038">"I want to purchase Dragon Blood."</Button>
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Not just anyone can wield a dragon's weapon. First, you have to be brave enough to kill a dragon, and even then you will need tremendous wealth. Then, you'll need <font color="LEVEL">Dragon Blood</font> to use its skills. But it offers great power, so I can understand why people are compelled to try.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390701">Stage 1</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390702">Stage 2</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390703">Stage 3</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 2038">"I want to purchase Dragon Blood."</Button>
|
||||
</body></html>
|
9
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/areas/Heine/LionelHunter/33907-05.htm
vendored
Normal file
9
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/areas/Heine/LionelHunter/33907-05.htm
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
<html><body>Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br><br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book1.html">"Receive missing books 1st Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book3.html">"Receive missing books 2nd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book3.html">"Receive missing books 3rd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book4.html">"Receive missing books 4th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book5.html">"Receive missing books 5th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book6.html">"Receive missing books 6th Exalted quest."</Button>
|
||||
</body></html>
|
@ -1,3 +1,3 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
You haven't complete the quest.
|
||||
You haven't completed that quest.
|
||||
</body></html>
|
10
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/areas/Heine/LionelHunter/33907.htm
vendored
Normal file
10
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/areas/Heine/LionelHunter/33907.htm
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br>
|
||||
A tribe of the strongest monsters of the past, <font color="LEVEL">Krofin</font>, have reawakened after a long slumer. You must defeat these creatures!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-01.htm">"Who are you?"</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-03.htm">Check Fafurion Weapons</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-02.htm">Ask about Eva</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-04.htm"><font color="LEVEL">Change the type of an Exalted equipment.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-05.htm"><font color="LEVEL">Receive missing books.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
|
||||
</body></html>
|
@ -29,14 +29,13 @@ import quests.Q10873_ExaltedReachingAnotherLevel.Q10873_ExaltedReachingAnotherLe
|
||||
import quests.Q10879_ExaltedGuideToPower.Q10879_ExaltedGuideToPower;
|
||||
|
||||
/**
|
||||
* Lionel Hunter Exchange AI.
|
||||
* @Note TODO: Merge with default htmls.
|
||||
* @author Sero
|
||||
* Lionel Hunter AI.
|
||||
* @author Sero, CostyKiller
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// NPC
|
||||
private static final int LIONEL_HUNTER = 33907;
|
||||
private static final int LIONEL_HUNTER_HEINE = 33907;
|
||||
// Items
|
||||
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED = 45922;
|
||||
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2 = 45923;
|
||||
@ -57,34 +56,49 @@ public class LionelHunter extends AbstractNpcAI
|
||||
|
||||
private LionelHunter()
|
||||
{
|
||||
addStartNpc(LIONEL_HUNTER);
|
||||
addTalkId(LIONEL_HUNTER);
|
||||
addStartNpc(LIONEL_HUNTER_HEINE);
|
||||
addTalkId(LIONEL_HUNTER_HEINE);
|
||||
addFirstTalkId(LIONEL_HUNTER_HEINE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs1 = player.getQuestState(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName());
|
||||
final QuestState qs2 = player.getQuestState(Q10817_ExaltedOneWhoOvercomesTheLimit.class.getSimpleName());
|
||||
final QuestState qs3 = player.getQuestState(Q10823_ExaltedOneWhoShattersTheLimit.class.getSimpleName());
|
||||
final QuestState qs4 = player.getQuestState(Q10873_ExaltedReachingAnotherLevel.class.getSimpleName());
|
||||
final QuestState qs5 = player.getQuestState(Q10879_ExaltedGuideToPower.class.getSimpleName());
|
||||
final QuestState qs6 = player.getQuestState(Q10507_ObtainingNewPower.class.getSimpleName());
|
||||
switch (event)
|
||||
{
|
||||
case "33907-book1.htm":
|
||||
case "33907.htm":
|
||||
case "33907-01.htm":
|
||||
case "33907-02.htm":
|
||||
case "33907-03.htm":
|
||||
case "33907-04.htm":
|
||||
case "33907-05.htm":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "33907-book1.html":
|
||||
{
|
||||
if ((qs1 != null) && qs1.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book2.htm":
|
||||
case "33907-book2.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10817_ExaltedOneWhoOvercomesTheLimit.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs2 != null) && qs2.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2, 1);
|
||||
giveItems(player, SPELLBOOK_BELIEF_OF_THE_EXALTED, 1);
|
||||
@ -93,14 +107,13 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book3.htm":
|
||||
case "33907-book3.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10823_ExaltedOneWhoShattersTheLimit.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs3 != null) && qs3.isCompleted())
|
||||
{
|
||||
giveItems(player, OBTAIN_EXALTED_STATUS, 1);
|
||||
giveItems(player, EXALTED_TIARA, 1);
|
||||
@ -113,14 +126,13 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book4.htm":
|
||||
case "33907-book4.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10873_ExaltedReachingAnotherLevel.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs4 != null) && qs4.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV4, 1);
|
||||
giveItems(player, VITALITY_OF_THE_EXALTED, 1);
|
||||
@ -128,14 +140,13 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book5.htm":
|
||||
case "33907-book5.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10879_ExaltedGuideToPower.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs5 != null) && qs5.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV5, 1);
|
||||
giveItems(player, VITALITY_OF_THE_EXALTED_LV2, 1);
|
||||
@ -143,21 +154,20 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book6.htm":
|
||||
case "33907-book6.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10507_ObtainingNewPower.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs6 != null) && qs6.isCompleted())
|
||||
{
|
||||
giveItems(player, DIGNITY_OF_THE_EXALTED_LV6, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
|
||||
@ -166,6 +176,12 @@ public class LionelHunter extends AbstractNpcAI
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onFirstTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
return "33907.htm";
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
|
67
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
67
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
}
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book1.htm">"Receive missing books 1st Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book2.htm">"Receive missing books 2nd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book3.htm">"Receive missing books 3rd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book4.htm">"Receive missing books 4th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book5.htm">"Receive missing books 5th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book6.htm">"Receive missing books 6th Exalted quest."</Button>
|
||||
</body></html>
|
@ -1,10 +0,0 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br>
|
||||
A tribe of the strongest monsters of the past, <font color="LEVEL">Krofin</font>, have reawakened after a long slumer. You must defeat these creatures!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 1">"Who are you?"</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 3">Check Fafurion Weapons</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 2">Ask about Eva</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 4"><font color="LEVEL">Change the type of an Exalted equipment.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Chat 6"><font color="LEVEL">Receive missing books.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
|
||||
</body></html>
|
@ -1,5 +1,5 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
I am the ruler of Innadril, including Heine - I am also the knight to Eva, the goddess of water.<br>
|
||||
I see... I seem as an Elf to you. Yes, I have that blood in me. But I have lived as a Human, and I consider myself close to - no, Human.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h npc_%objectId%_Chat 0">Back</Button>
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
I am the ruler of Innadril, including Heine - I am also the knight to Eva, the goddess of water.<br>
|
||||
I see... I seem as an Elf to you. Yes, I have that blood in me. But I have lived as a Human, and I consider myself close to - no, Human.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest LionelHunter 33907.htm">Back</Button>
|
||||
</body></html>
|
@ -1,4 +1,4 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Shilen was once the Goddess of Water. But when she fell into darkness, Eva the Goddess of Music succeeded the role. Have you ever seen her? She is...much like water. Gentle, all-embracing - and yet, her fury will overwhelm you like an unforgiving storm.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h npc_%objectId%_Chat 0">Back</Button>
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Shilen was once the Goddess of Water. But when she fell into darkness, Eva the Goddess of Music succeeded the role. Have you ever seen her? She is...much like water. Gentle, all-embracing - and yet, her fury will overwhelm you like an unforgiving storm.<br>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest LionelHunter 33907.htm">Back</Button>
|
||||
</body></html>
|
@ -1,7 +1,7 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Not just anyone can wield a dragon's weapon. First, you have to be brave enough to kill a dragon, and even then you will need tremendous wealth. Then, you'll need <font color="LEVEL">Dragon Blood</font> to use its skills. But it offers great power, so I can understand why people are compelled to try.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390701">Stage 1</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390702">Stage 2</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390703">Stage 3</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 2038">"I want to purchase Dragon Blood."</Button>
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
Not just anyone can wield a dragon's weapon. First, you have to be brave enough to kill a dragon, and even then you will need tremendous wealth. Then, you'll need <font color="LEVEL">Dragon Blood</font> to use its skills. But it offers great power, so I can understand why people are compelled to try.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390701">Stage 1</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390702">Stage 2</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 3390703">Stage 3</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_multisell 2038">"I want to purchase Dragon Blood."</Button>
|
||||
</body></html>
|
@ -0,0 +1,9 @@
|
||||
<html><body>Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br><br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book1.html">"Receive missing books 1st Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book3.html">"Receive missing books 2nd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book3.html">"Receive missing books 3rd Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book4.html">"Receive missing books 4th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book5.html">"Receive missing books 5th Exalted quest."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-book6.html">"Receive missing books 6th Exalted quest."</Button>
|
||||
</body></html>
|
@ -1,3 +1,3 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
You haven't complete the quest.
|
||||
You haven't completed that quest.
|
||||
</body></html>
|
10
L2J_Mobius_9.0_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/areas/Heine/LionelHunter/33907.htm
vendored
Normal file
10
L2J_Mobius_9.0_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/areas/Heine/LionelHunter/33907.htm
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
<html><body>Eva's Knight Lionel Hunter:<br>
|
||||
May the Goddess of Water protect you.<br>
|
||||
A tribe of the strongest monsters of the past, <font color="LEVEL">Krofin</font>, have reawakened after a long slumer. You must defeat these creatures!<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-01.htm">"Who are you?"</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-03.htm">Check Fafurion Weapons</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-02.htm">Ask about Eva</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-04.htm"><font color="LEVEL">Change the type of an Exalted equipment.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest LionelHunter 33907-05.htm"><font color="LEVEL">Receive missing books.</font></Button>
|
||||
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
|
||||
</body></html>
|
@ -29,14 +29,13 @@ import quests.Q10873_ExaltedReachingAnotherLevel.Q10873_ExaltedReachingAnotherLe
|
||||
import quests.Q10879_ExaltedGuideToPower.Q10879_ExaltedGuideToPower;
|
||||
|
||||
/**
|
||||
* Lionel Hunter Exchange AI.
|
||||
* @Note TODO: Merge with default htmls.
|
||||
* @author Sero
|
||||
* Lionel Hunter AI.
|
||||
* @author Sero, CostyKiller
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// NPC
|
||||
private static final int LIONEL_HUNTER = 33907;
|
||||
private static final int LIONEL_HUNTER_HEINE = 33907;
|
||||
// Items
|
||||
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED = 45922;
|
||||
private static final int SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2 = 45923;
|
||||
@ -57,34 +56,49 @@ public class LionelHunter extends AbstractNpcAI
|
||||
|
||||
private LionelHunter()
|
||||
{
|
||||
addStartNpc(LIONEL_HUNTER);
|
||||
addTalkId(LIONEL_HUNTER);
|
||||
addStartNpc(LIONEL_HUNTER_HEINE);
|
||||
addTalkId(LIONEL_HUNTER_HEINE);
|
||||
addFirstTalkId(LIONEL_HUNTER_HEINE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs1 = player.getQuestState(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName());
|
||||
final QuestState qs2 = player.getQuestState(Q10817_ExaltedOneWhoOvercomesTheLimit.class.getSimpleName());
|
||||
final QuestState qs3 = player.getQuestState(Q10823_ExaltedOneWhoShattersTheLimit.class.getSimpleName());
|
||||
final QuestState qs4 = player.getQuestState(Q10873_ExaltedReachingAnotherLevel.class.getSimpleName());
|
||||
final QuestState qs5 = player.getQuestState(Q10879_ExaltedGuideToPower.class.getSimpleName());
|
||||
final QuestState qs6 = player.getQuestState(Q10507_ObtainingNewPower.class.getSimpleName());
|
||||
switch (event)
|
||||
{
|
||||
case "33907-book1.htm":
|
||||
case "33907.htm":
|
||||
case "33907-01.htm":
|
||||
case "33907-02.htm":
|
||||
case "33907-03.htm":
|
||||
case "33907-04.htm":
|
||||
case "33907-05.htm":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10811_ExaltedOneWhoFacesTheLimit.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "33907-book1.html":
|
||||
{
|
||||
if ((qs1 != null) && qs1.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book2.htm":
|
||||
case "33907-book2.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10817_ExaltedOneWhoOvercomesTheLimit.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs2 != null) && qs2.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV2, 1);
|
||||
giveItems(player, SPELLBOOK_BELIEF_OF_THE_EXALTED, 1);
|
||||
@ -93,14 +107,13 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book3.htm":
|
||||
case "33907-book3.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10823_ExaltedOneWhoShattersTheLimit.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs3 != null) && qs3.isCompleted())
|
||||
{
|
||||
giveItems(player, OBTAIN_EXALTED_STATUS, 1);
|
||||
giveItems(player, EXALTED_TIARA, 1);
|
||||
@ -113,14 +126,13 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book4.htm":
|
||||
case "33907-book4.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10873_ExaltedReachingAnotherLevel.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs4 != null) && qs4.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV4, 1);
|
||||
giveItems(player, VITALITY_OF_THE_EXALTED, 1);
|
||||
@ -128,14 +140,13 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book5.htm":
|
||||
case "33907-book5.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10879_ExaltedGuideToPower.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs5 != null) && qs5.isCompleted())
|
||||
{
|
||||
giveItems(player, SPELLBOOK_DIGNITY_OF_THE_EXALTED_LV5, 1);
|
||||
giveItems(player, VITALITY_OF_THE_EXALTED_LV2, 1);
|
||||
@ -143,21 +154,20 @@ public class LionelHunter extends AbstractNpcAI
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "33907-book6.htm":
|
||||
case "33907-book6.html":
|
||||
{
|
||||
final QuestState qs = player.getQuestState(Q10507_ObtainingNewPower.class.getSimpleName());
|
||||
if ((qs != null) && qs.isCompleted())
|
||||
if ((qs6 != null) && qs6.isCompleted())
|
||||
{
|
||||
giveItems(player, DIGNITY_OF_THE_EXALTED_LV6, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "33907-not-compeleted.html";
|
||||
htmltext = "33907-not-completed.html";
|
||||
}
|
||||
break;
|
||||
|
||||
@ -166,6 +176,12 @@ public class LionelHunter extends AbstractNpcAI
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onFirstTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
return "33907.htm";
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
|
67
L2J_Mobius_9.0_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
67
L2J_Mobius_9.0_ReturnOfTheQueenAnt/dist/game/data/scripts/ai/bosses/Lindvior/LindviorHerald.java
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LindviorHerald extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LindviorHerald()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LindviorHerald();
|
||||
}
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* 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 ai.bosses.Lindvior;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.ChatType;
|
||||
import org.l2jmobius.gameserver.instancemanager.WalkingManager;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
import ai.AbstractNpcAI;
|
||||
|
||||
/**
|
||||
* Lionel Hunter AI
|
||||
* @author Gigi
|
||||
* @date 2017-07-23 - [22:54:59]
|
||||
*/
|
||||
public class LionelHunter extends AbstractNpcAI
|
||||
{
|
||||
// Npc
|
||||
private static final int LIONEL_HUNTER = 33886;
|
||||
// Misc
|
||||
private static final String ROUTE_NAME = "Rune_Lionel";
|
||||
|
||||
public LionelHunter()
|
||||
{
|
||||
addSpawnId(LIONEL_HUNTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTimerEvent(String event, StatSet params, Npc npc, PlayerInstance player)
|
||||
{
|
||||
if (event.equals("NPC_SHOUT") && (npc != null))
|
||||
{
|
||||
npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WE_JUST_LOCATED_LINDVIOR_THOSE_WHO_ARE_WILLING_TO_FIGHT_CAN_DO_SO_AT_ANY_TIME_NOW);
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onSpawn(Npc npc)
|
||||
{
|
||||
getTimers().addTimer("NPC_SHOUT", (10 + getRandom(5)) * 1000, npc, null);
|
||||
WalkingManager.getInstance().startMoving(npc, ROUTE_NAME);
|
||||
return super.onSpawn(npc);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new LionelHunter();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user