rendered paste bodyIndex: C:/eclipse/workspace/L2_GameServer/java/net/sf/l2j/gameserver/model/L2PcInstance.java
===================================================================
--- C:/eclipse/workspace/L2_GameServer/java/net/sf/l2j/gameserver/model/L2PcInstance.java (revision 1479)
+++ C:/eclipse/workspace/L2_GameServer/java/net/sf/l2j/gameserver/model/L2PcInstance.java (working copy)
@@ -58,7 +58,6 @@
import net.sf.l2j.gameserver.ai.L2PlayerAI;
import net.sf.l2j.gameserver.handler.IItemHandler;
import net.sf.l2j.gameserver.handler.ItemHandler;
-import net.sf.l2j.gameserver.lib.JBForth;
import net.sf.l2j.gameserver.model.L2Skill.SkillTargetType;
import net.sf.l2j.gameserver.model.L2Skill.SkillType;
import net.sf.l2j.gameserver.model.quest.Quest;
@@ -221,7 +220,7 @@
/** JBForth instance associated to this L2Character */
- public JBForth jbf;
+ //public JBForth jbf;
/** True if the L2PcInstance is sitting */
private boolean _waitTypeSitting;
@@ -3839,16 +3838,16 @@
// jbf.setPlayer(this);
- jbf = new JBForth(this);
+ //jbf = new JBForth(this);
SystemMessage sm = new SystemMessage(614);
- sm.addString(jbf.exec("on-player-start"));
+ //sm.addString(jbf.exec("on-player-start"));
sendPacket(sm);
}
else
{
SystemMessage sm = new SystemMessage(614);
- sm.addString(jbf.exec("on-player-exit"));
+ //sm.addString(jbf.exec("on-player-exit"));
sendPacket(sm);
GmListTable.getInstance().deleteGm(this);
@@ -5956,4 +5955,27 @@
{
return _wantsPeace;
}
+
+ public void doAttack(L2Character target)
+ {
+ if (
+ target != null
+ && !(target instanceof L2MonsterInstance) // Target is not a monster
+ && (getAccessLevel() < Config.GM_PEACEATTACK) // Player cannot attack in peace
+ && (withinZones(L2World.zonePeace) || target.withinZones(L2World.zonePeace)) // Target or player is in peace zone
+ && (
+ !(target instanceof L2PcInstance) // Target is not a player
+ || (!Config.ALT_GAME_KARMAPLAYERCANBEKILLEDINPEACEZONE) // Or Target is a player and killable in peace zone is false
+ || (((L2PcInstance)target).getKarma() < Config.KARMA_MAX_KARMA) // Or Target is a player, killable in peace zone is true, and has karma
+ )
+ )
+ {
+ sendPacket(new SystemMessage(SystemMessage.TARGET_IN_PEACEZONE));
+ ActionFailed af = new ActionFailed();
+ sendPacket(af);
+ return;
+ }
+
+ super.doAttack(target);
+ }
}