Skip to content

Instantly share code, notes, and snippets.

@nonom
Created March 22, 2014 10:06
Show Gist options
  • Save nonom/9704088 to your computer and use it in GitHub Desktop.
Save nonom/9704088 to your computer and use it in GitHub Desktop.
Index: dist/game/data/scripts/ai/npc/ZealotOfShilen/ZealotOfShilen.java
===================================================================
--- dist/game/data/scripts/ai/npc/ZealotOfShilen/ZealotOfShilen.java (revision 10247)
+++ dist/game/data/scripts/ai/npc/ZealotOfShilen/ZealotOfShilen.java (working copy)
@@ -38,8 +38,8 @@
private static final int ZEALOT = 18782;
private static final int[] GUARDS =
{
- 32628,
- 32629
+ 32628, // Wharf Patrol
+ 32629, // Wharf Patrol
};
private ZealotOfShilen()
@@ -47,6 +47,7 @@
super(ZealotOfShilen.class.getSimpleName(), "ai/npc");
addSpawnId(ZEALOT);
addFirstTalkId(GUARDS);
+ addSeeCreatureId(GUARDS);
for (int npcId : GUARDS)
{
@@ -55,7 +56,6 @@
L2Npc guard = spawn.getLastSpawn();
guard.setIsInvul(true);
((L2Attackable) guard).setCanReturnToSpawnPoint(false);
- startQuestTimer("WATCHING", 10000, guard, null, true);
}
}
for (L2Spawn spawn : SpawnTable.getInstance().getSpawns(ZEALOT))
@@ -65,24 +65,6 @@
}
@Override
- public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
- {
- if (event.equalsIgnoreCase("WATCHING") && !npc.isAttackingNow())
- {
- for (L2Character character : npc.getKnownList().getKnownCharacters())
- {
- if (character.isMonster() && !character.isDead() && !((L2Attackable) character).isDecayed())
- {
- npc.setRunning();
- ((L2Attackable) npc).addDamageHate(character, 0, 999);
- npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, character, null);
- }
- }
- }
- return null;
- }
-
- @Override
public String onFirstTalk(L2Npc npc, L2PcInstance player)
{
return (npc.isAttackingNow()) ? "32628-01.html" : npc.getId() + ".html";
@@ -95,6 +77,18 @@
return super.onSpawn(npc);
}
+ @Override
+ public String onSeeCreature(L2Npc npc, L2Character creature, boolean isSummon)
+ {
+ if (creature.isMonster() && !creature.isDead() && !((L2Attackable) creature).isDecayed())
+ {
+ npc.setRunning();
+ ((L2Attackable) npc).addDamageHate(creature, 0, 999);
+ npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, creature, null);
+ }
+ return super.onSeeCreature(npc, creature, isSummon);
+ }
+
public static void main(String[] args)
{
new ZealotOfShilen();
Index: dist/game/data/stats/npcs/18700-18800.xml
===================================================================
--- dist/game/data/stats/npcs/18700-18800.xml (revision 10245)
+++ dist/game/data/stats/npcs/18700-18800.xml (working copy)
@@ -3390,7 +3390,12 @@
</skill_list>
<ex_crt_effect>true</ex_crt_effect>
<s_npc_prop_hp_rate>4</s_npc_prop_hp_rate>
- <ai type="BALANCED" aggroRange="300" clanHelpRange="300" isAggressive="false" />
+ <ai type="BALANCED" aggroRange="300" clanHelpRange="300" isAggressive="false">
+ <clan_list>
+ <clan>ZEALOT_CLAN</clan>
+ <enemy_clan>AIRPORT_PATROL</enemy_clan>
+ </clan_list>
+ </ai>
<collision>
<radius normal="19" />
<height normal="44" />
Index: dist/game/data/stats/npcs/32600-32700.xml
===================================================================
--- dist/game/data/stats/npcs/32600-32700.xml (revision 10245)
+++ dist/game/data/stats/npcs/32600-32700.xml (working copy)
@@ -1124,7 +1124,12 @@
<skill id="4416" level="14" /> <!--Humans -->
</skill_list>
<ex_crt_effect>true</ex_crt_effect>
- <ai type="BALANCED" aggroRange="300" isAggressive="false" />
+ <ai type="BALANCED" aggroRange="1500" isAggressive="false">
+ <clan_list>
+ <clan>AIRPORT_PATROL</clan>
+ <enemy_clan>ZEALOT_CLAN</enemy_clan>
+ </clan_list>
+ </ai>
<collision>
<radius normal="8" />
<height normal="24" />
@@ -1161,7 +1166,12 @@
<skill id="4416" level="14" /> <!--Humans -->
</skill_list>
<ex_crt_effect>true</ex_crt_effect>
- <ai type="BALANCED" aggroRange="300" isAggressive="false" />
+ <ai type="BALANCED" aggroRange="1500" isAggressive="false">
+ <clan_list>
+ <clan>AIRPORT_PATROL</clan>
+ <enemy_clan>ZEALOT_CLAN</enemy_clan>
+ </clan_list>
+ </ai>
<collision>
<radius normal="8" />
<height normal="24" />
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment