Addition of Primeval Isle Sayha buff.

Contributed by petryxa.
This commit is contained in:
MobiusDevelopment
2022-10-17 21:25:50 +00:00
parent 1191af4d9d
commit c409621c1e
6 changed files with 243 additions and 0 deletions

View File

@@ -0,0 +1,70 @@
/*
* 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.areas.PrimevalIsle;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.holders.SkillHolder;
import ai.AbstractNpcAI;
/**
* @author petryxa
*/
public class SayhaBuff extends AbstractNpcAI
{
// NPCs
private static final int[] MONSTERS =
{
21962, // Wild Strider
21963, // Elroki
21964, // Pachycephalosaurus
21966, // Ornithomimus
21968, // Ornithomimus
21969, // Deinonychus
21971, // Velociraptor
21974, // Ornithomimus
21976, // Deinonychus
21978, // Tyrannosaurus
22056, // Pachycephalosaurus
22057, // Strider
22058, // Ornithomimus
22059, // Pterosaur
};
// Skill
private static final SkillHolder BENEFACTION_OF_BLUE_HAWK = new SkillHolder(50123, 1);
private SayhaBuff()
{
addKillId(MONSTERS);
}
@Override
public String onKill(Npc npc, Player attacker, boolean isSummon)
{
if (!attacker.isAffectedBySkill(BENEFACTION_OF_BLUE_HAWK))
{
BENEFACTION_OF_BLUE_HAWK.getSkill().applyEffects(attacker, attacker);
}
return super.onKill(npc, attacker, isSummon);
}
public static void main(String[] args)
{
new SayhaBuff();
}
}

View File

@@ -182,8 +182,19 @@
<skill id="50123" toLevel="1" name="Benefaction of Blue Hawk">
<!-- Sayha's Grace Consumption -50%. -->
<icon>icon.ev_10th_present1</icon>
<abnormalTime>300</abnormalTime>
<operateType>A2</operateType>
<isMagic>4</isMagic>
<magicLevel>1</magicLevel>
<stayAfterDeath>true</stayAfterDeath>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="VitalityPointsRate">
<amount>-50</amount>
<mode>PER</mode>
</effect>
</effects>
</skill>
<skill id="50124" toLevel="1" name="Lord Ishka's Assassin">
<!-- Combat characteristics of the player who killed Lord Ishka are increased. -->

View File

@@ -0,0 +1,70 @@
/*
* 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.areas.PrimevalIsle;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.holders.SkillHolder;
import ai.AbstractNpcAI;
/**
* @author petryxa
*/
public class SayhaBuff extends AbstractNpcAI
{
// NPCs
private static final int[] MONSTERS =
{
21962, // Wild Strider
21963, // Elroki
21964, // Pachycephalosaurus
21966, // Ornithomimus
21968, // Ornithomimus
21969, // Deinonychus
21971, // Velociraptor
21974, // Ornithomimus
21976, // Deinonychus
21978, // Tyrannosaurus
22056, // Pachycephalosaurus
22057, // Strider
22058, // Ornithomimus
22059, // Pterosaur
};
// Skill
private static final SkillHolder BENEFACTION_OF_BLUE_HAWK = new SkillHolder(50123, 1);
private SayhaBuff()
{
addKillId(MONSTERS);
}
@Override
public String onKill(Npc npc, Player attacker, boolean isSummon)
{
if (!attacker.isAffectedBySkill(BENEFACTION_OF_BLUE_HAWK))
{
BENEFACTION_OF_BLUE_HAWK.getSkill().applyEffects(attacker, attacker);
}
return super.onKill(npc, attacker, isSummon);
}
public static void main(String[] args)
{
new SayhaBuff();
}
}

View File

@@ -182,8 +182,19 @@
<skill id="50123" toLevel="1" name="Benefaction of Blue Hawk">
<!-- Sayha's Grace Consumption -50%. -->
<icon>icon.ev_10th_present1</icon>
<abnormalTime>300</abnormalTime>
<operateType>A2</operateType>
<isMagic>4</isMagic>
<magicLevel>1</magicLevel>
<stayAfterDeath>true</stayAfterDeath>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="VitalityPointsRate">
<amount>-50</amount>
<mode>PER</mode>
</effect>
</effects>
</skill>
<skill id="50124" toLevel="1" name="Lord Ishka's Assassin">
<!-- Combat characteristics of the player who killed Lord Ishka are increased. -->

View File

@@ -0,0 +1,70 @@
/*
* 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.areas.PrimevalIsle;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.holders.SkillHolder;
import ai.AbstractNpcAI;
/**
* @author petryxa
*/
public class SayhaBuff extends AbstractNpcAI
{
// NPCs
private static final int[] MONSTERS =
{
21962, // Wild Strider
21963, // Elroki
21964, // Pachycephalosaurus
21966, // Ornithomimus
21968, // Ornithomimus
21969, // Deinonychus
21971, // Velociraptor
21974, // Ornithomimus
21976, // Deinonychus
21978, // Tyrannosaurus
22056, // Pachycephalosaurus
22057, // Strider
22058, // Ornithomimus
22059, // Pterosaur
};
// Skill
private static final SkillHolder BENEFACTION_OF_BLUE_HAWK = new SkillHolder(50123, 1);
private SayhaBuff()
{
addKillId(MONSTERS);
}
@Override
public String onKill(Npc npc, Player attacker, boolean isSummon)
{
if (!attacker.isAffectedBySkill(BENEFACTION_OF_BLUE_HAWK))
{
BENEFACTION_OF_BLUE_HAWK.getSkill().applyEffects(attacker, attacker);
}
return super.onKill(npc, attacker, isSummon);
}
public static void main(String[] args)
{
new SayhaBuff();
}
}

View File

@@ -182,8 +182,19 @@
<skill id="50123" toLevel="1" name="Benefaction of Blue Hawk">
<!-- Sayha's Grace Consumption -50%. -->
<icon>icon.ev_10th_present1</icon>
<abnormalTime>300</abnormalTime>
<operateType>A2</operateType>
<isMagic>4</isMagic>
<magicLevel>1</magicLevel>
<stayAfterDeath>true</stayAfterDeath>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="VitalityPointsRate">
<amount>-50</amount>
<mode>PER</mode>
</effect>
</effects>
</skill>
<skill id="50124" toLevel="1" name="Lord Ishka's Assassin">
<!-- Combat characteristics of the player who killed Lord Ishka are increased. -->