Added: a brand-new default dashboard template.
You can now add multiple game/login server builds.
Full support for running both PTS & L2J servers simultaneously, with switching between them.
Payment systems: added OmegaPay and Pally (new PayPal-style API).
Account history now stores everything: donations, items delivered to characters, referrals, transfers between game accounts, and coin transfers to another master account.
Personal Promo Code System: you can create a promo code and assign it to a user or promoter. When donating, a player can enter this promo code to receive bonus coins, and the promo code owner also receives a bonus — all fully configurable in the admin panel.
Look demo site: demo
MoMoProxy has updated more static residential proxies for USA location, anyone interested in can view: https://momoproxy.com/static-residential-proxies
Question
janiko
Can someone help me to fix ai?
i wrote it but npc not casts skill on player.
package ai.individual; import ai.group_template.L2AttackableAIScript; import com.l2jserver.gameserver.model.actor.L2Npc; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.model.effects.L2Effect; import com.l2jserver.gameserver.network.serverpackets.MagicSkillUse; /* * @Author Janiko */ public class ElcardiaAssistant extends L2AttackableAIScript { private static final int ELCARDIA = 32785; public ElcardiaAssistant(int questId, String name, String descr) { super(questId, name, descr); addSpawnId(ELCARDIA); } @Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { if ((event.equalsIgnoreCase("check_buff"))) { cancelQuestTimer("check_buff", npc, null); npc.setTarget(player); if (player.getCurrentHp() < player.getMaxHp() * 0.8D) { npc.broadcastPacket(new MagicSkillUse(npc, player, 6724, 1, 1500, 0)); // heal } if (player.getCurrentMp() < player.getMaxMp() * 0.5D) { npc.broadcastPacket(new MagicSkillUse(npc, player, 6728, 1, 6000, 0)); // recharge } if(player.isInCombat()) { npc.broadcastPacket(new MagicSkillUse(npc, player, 6725, 1, 1000, 0)); // blessBlood } L2Effect vampRage = player.getFirstEffect(6727); if(vampRage == null) { npc.broadcastPacket(new MagicSkillUse(npc, player, 6727, 1, 500, 0)); // vampRage } L2Effect holyResist = player.getFirstEffect(6729); if(holyResist == null) { npc.broadcastPacket(new MagicSkillUse(npc, player, 6729, 1, 500, 0)); // holyResist } startQuestTimer("check_buff", 30000, npc, null); } return super.onAdvEvent(event, npc, player); } @Override public String onSpawn(L2Npc npc) { startQuestTimer("check", 2000, npc, null); return super.onSpawn(npc); } public static void main(String[] args) { new ElcardiaAssistant(-1, ElcardiaAssistant.class.getSimpleName(), "ai"); } }5 answers to this question
Recommended Posts