» Find Revision
L2J Revision Number:
L2JDP Revision Number:
Code: Select all
else if (command.startsWith("Buff")) { String[] buffGroupArray = command.substring(5).split(" "); for (String buffGroupList : buffGroupArray) { if (buffGroupList == null) { _log.warning("NPC Buffer Warning: npcId = " + npcId + " has no buffGroup set in the bypass for the buff selected."); return; } int buffGroup = Integer.parseInt(buffGroupList); int[] npcBuffGroupInfo = NpcBufferTable.getInstance().getSkillInfo(npcId, buffGroup); if (npcBuffGroupInfo == null) [color=#FF0000][b]<------ I THINK RETURNS 0 NOT NULL[/b][/color] { _log.warning("NPC Buffer Warning: npcId = " + npcId + " Location: " + getX() + ", " + getY() + ", " + getZ() + " Player: " + player.getName() + " has tried to use skill group (" + buffGroup + ") not assigned to the NPC Buffer!"); return; } int skillId = npcBuffGroupInfo[0]; int skillLevel = npcBuffGroupInfo[1]; int skillFeeId = npcBuffGroupInfo[2]; int skillFeeAmount = npcBuffGroupInfo[3]; if (skillFeeId != 0) { L2ItemInstance itemInstance = player.getInventory().getItemByItemId(skillFeeId); if (itemInstance == null || (!itemInstance.isStackable() && player.getInventory().getInventoryItemCount(skillFeeId, -1) < skillFeeAmount)) { SystemMessage sm = new SystemMessage(SystemMessageId.THERE_ARE_NOT_ENOUGH_NECESSARY_ITEMS_TO_USE_THE_SKILL); player.sendPacket(sm); continue; } if (itemInstance.isStackable()) { if (!player.destroyItemByItemId("Npc Buffer", skillFeeId, skillFeeAmount, player.getTarget(), true)) { SystemMessage sm = new SystemMessage(SystemMessageId.THERE_ARE_NOT_ENOUGH_NECESSARY_ITEMS_TO_USE_THE_SKILL); player.sendPacket(sm); continue; } } else { for (int i = 0; i < skillFeeAmount; ++i) { player.destroyItemByItemId("Npc Buffer", skillFeeId, 1, player.getTarget(), true); } } } L2Skill skill; skill = SkillTable.getInstance().getInfo(skillId, skillLevel); if (skill != null) skill.getEffects(player, player); } showChatWindow(player, pageVal); }