package services;
import l2.commons.listener.Listener;
import l2.gameserver.listener.inventory.OnEquipListener;
import l2.gameserver.model.Playable;
import l2.gameserver.model.Player;
import l2.gameserver.model.actor.listener.PlayerListenerList;
import l2.gameserver.model.base.Experience;
import l2.gameserver.model.items.ItemInstance;
import l2.gameserver.scripts.ScriptFile;
public class LevelOnEquip implements OnEquipListener, ScriptFile
{
private static final LevelOnEquip EQUIP_LISTENER = new LevelOnEquip();
private static final int ITEM_ID = 99172;
private static final int EQUIP_LEVEL = 80;
private static final int UNEQUIP_LEVEL = 1;
@Override
public void onEquip(int slot, ItemInstance item, Playable playable)
{
if (playable == null || !playable.isPlayer() || item == null || item.getItemId() != ITEM_ID)
return;
setLv((Player) playable, EQUIP_LEVEL);
}
@Override
public void onUnequip(int slot, ItemInstance item, Playable playable)
{
if (playable == null || !playable.isPlayer() || item == null || item.getItemId() != ITEM_ID)
return;
setLv((Player) playable, UNEQUIP_LEVEL);
}
private void setLv(Player player, int level)
{
if (player.getLevel() != level)
{
player.addExpAndSp(Experience.LEVEL[level] - player.getExp(), 0, false, false);
player.broadcastCharInfo();
}
}
@Override
public void onLoad()
{
PlayerListenerList.addGlobal((Listener) EQUIP_LISTENER);
}
@Override
public void onReload()
{
onShutdown();
onLoad();
}
@Override
public void onShutdown()
{
PlayerListenerList.removeGlobal((Listener) EQUIP_LISTENER);
}
}
but if I decompile the server.jar will it break?Like this? More condition checks may be needed.
Java:package services; import l2.commons.listener.Listener; import l2.gameserver.listener.inventory.OnEquipListener; import l2.gameserver.model.Playable; import l2.gameserver.model.Player; import l2.gameserver.model.actor.listener.PlayerListenerList; import l2.gameserver.model.base.Experience; import l2.gameserver.model.items.ItemInstance; import l2.gameserver.scripts.ScriptFile; public class LevelOnEquip implements OnEquipListener, ScriptFile { private static final LevelOnEquip EQUIP_LISTENER = new LevelOnEquip(); private static final int ITEM_ID = 99172; private static final int EQUIP_LEVEL = 80; private static final int UNEQUIP_LEVEL = 1; @Override public void onEquip(int slot, ItemInstance item, Playable playable) { if (playable == null || !playable.isPlayer() || item == null || item.getItemId() != ITEM_ID) return; setLv((Player) playable, EQUIP_LEVEL); } @Override public void onUnequip(int slot, ItemInstance item, Playable playable) { if (playable == null || !playable.isPlayer() || item == null || item.getItemId() != ITEM_ID) return; setLv((Player) playable, UNEQUIP_LEVEL); } private void setLv(Player player, int level) { if (player.getLevel() != level) { player.addExpAndSp(Experience.LEVEL[level] - player.getExp(), 0, false, false); player.broadcastCharInfo(); } } @Override public void onLoad() { PlayerListenerList.addGlobal((Listener) EQUIP_LISTENER); } @Override public void onReload() { onShutdown(); onLoad(); } @Override public void onShutdown() { PlayerListenerList.removeGlobal((Listener) EQUIP_LISTENER); } }
Yes.but if I decompile the server.jar will it break?