Jump to content

Recommended Posts

Posted

Hello , it's this code  http://maxcheaters.com/forum/index.php?topic=180578.0

modified and adapted for L2JFrozen.

 

Core

### Eclipse Workspace Patch 1.0
#P L2JFrozen_Gameserver
Index: head-src/com/l2jfrozen/gameserver/handler/skillhandlers/Continuous.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/handler/skillhandlers/Continuous.java	(revision 601)
+++ head-src/com/l2jfrozen/gameserver/handler/skillhandlers/Continuous.java	(working copy)
@@ -128,6 +128,16 @@
			// Walls and Door should not be buffed
			if(target instanceof L2DoorInstance && (skill.getSkillType() == L2Skill.SkillType.BUFF || skill.getSkillType() == L2Skill.SkillType.HOT))
				continue;
+			
+			// Anti-Buff Protection prevents you from getting buffs by other players
+			if (activeChar instanceof L2PlayableInstance && target != activeChar && target.isBuffProtected() && !skill.isHeroSkill()
+			    && (skill.getSkillType() == L2Skill.SkillType.BUFF
+			|| skill.getSkillType() == L2Skill.SkillType.HEAL_PERCENT
+			|| skill.getSkillType() == L2Skill.SkillType.FORCE_BUFF
+			|| skill.getSkillType() == L2Skill.SkillType.MANAHEAL_PERCENT
+			|| skill.getSkillType() == L2Skill.SkillType.COMBATPOINTHEAL
+			|| skill.getSkillType() == L2Skill.SkillType.REFLECT))
+			continue;

			// Player holding a cursed weapon can't be buffed and can't buff
			if(skill.getSkillType() == L2Skill.SkillType.BUFF)
Index: head-src/com/l2jfrozen/gameserver/model/L2Character.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/model/L2Character.java	(revision 601)
+++ head-src/com/l2jfrozen/gameserver/model/L2Character.java	(working copy)
@@ -158,6 +158,7 @@
	private L2Skill _lastPotionCast;

	private boolean _isAfraid = false; // Flee in a random direction
+	private boolean _isBuffProtected = false; //Protect From Debuffs
	private boolean _isConfused = false; // Attack anyone randomly
	private boolean _isFakeDeath = false; // Fake death
	private boolean _isFlying = false; // Is flying Wyvern?
@@ -2177,6 +2178,16 @@
		_isAfraid = value;
	}

+
+	public final void setIsBuffProtected(boolean value)
+	{
+	    _isBuffProtected = value;
+	}
+	
+	public boolean isBuffProtected()
+	{
+	    return _isBuffProtected;	
+	}
	/** Return True if the L2Character is dead or use fake death. */
	public final boolean isAlikeDead()
	{
Index: head-src/com/l2jfrozen/gameserver/skills/effects/EffectDeflectBuff.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/skills/effects/EffectDeflectBuff.java	(revision 0)
+++ head-src/com/l2jfrozen/gameserver/skills/effects/EffectDeflectBuff.java	(revision 0)
@@ -0,0 +1,82 @@
+package com.l2jfrozen.gameserver.skills.effects;
+
+import com.l2jfrozen.gameserver.model.L2Effect;
+import com.l2jfrozen.gameserver.model.L2Effect.EffectType;
+import com.l2jfrozen.gameserver.model.L2Skill.SkillType;
+import com.l2jfrozen.gameserver.network.SystemMessageId;
+import com.l2jfrozen.gameserver.network.serverpackets.SystemMessage;
+import com.l2jfrozen.gameserver.skills.Env;
+
+/**
+ * @author Lineal
+ */
+public final class EffectDeflectBuff extends L2Effect
+{
+	/**
+	 * @param env
+	 * @param template
+	 */
+	public EffectDeflectBuff(Env env, EffectTemplate template)
+	{
+		super(env, template);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see com.l2jfrozen.gameserver.model.L2Effect#getEffectType()
+	 */
+	@Override
+	public EffectType getEffectType()
+	{
+		return EffectType.PREVENT_BUFF;
+	}
+	
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see com.l2jfrozen.gameserver.model.L2Effect#onActionTime()
+	 */
+	@Override
+	public boolean onActionTime()
+	{
+		// Only cont skills shouldn't end
+		if(getSkill().getSkillType() != SkillType.CONT)
+			return false;
+
+		double manaDam = calc();
+
+		if(manaDam > getEffected().getCurrentMp())
+		{
+			SystemMessage sm = new SystemMessage(SystemMessageId.SKILL_REMOVED_DUE_LACK_MP);
+			getEffected().sendPacket(sm);
+			return false;
+		}
+
+		getEffected().reduceCurrentMp(manaDam);
+		return true;
+	}
+	
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see com.l2jfrozen.gameserver.model.L2Effect#onStart()
+	 */
+	@Override
+	public void onStart()
+	{
+		getEffected().setIsBuffProtected(true);
+		return;
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see com.l2jfrozen.gameserver.model.L2Effect#onExit()
+	 */
+	@Override
+	public void onExit()
+	{
+		getEffected().setIsBuffProtected(false);
+	}
+}
\ No newline at end of file
Index: head-src/com/l2jfrozen/gameserver/model/L2Effect.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/model/L2Effect.java	(revision 601)
+++ head-src/com/l2jfrozen/gameserver/model/L2Effect.java	(working copy)
@@ -105,7 +105,8 @@
		FUSION,
		CANCEL,
		BLOCK_BUFF,
-		BLOCK_DEBUFF
+		BLOCK_DEBUFF,
+		PREVENT_BUFF
	}

	private static final Func[] _emptyFunctionSet = new Func[0];

 

Datapack

<skill id="add the skill id here" levels="1" name="AntiBuff-Shield">
  <set name="target" val="TARGET_SELF"/>
  <set name="skillType" val="CONT"/>
  <set name="operateType" val="OP_TOGGLE"/>
  <set name="castRange" val="-1"/>
  <set name="effectRange" val="-1"/>
  <for>
    <effect count="0x7fffffff" name="DeflectBuff" time="3" val="0"/>
  </for>
</skill>

 

That's all...And for those who don't know what is it  = you can select by yourself a skill which forbid to take buffs from others.

PS:You can just apply the core side , it will work for sure

 

Credits:Officialy parizakis for his code and me for adaption(?).

  • 2 months later...
Guest
This topic is now closed to further replies.


×
×
  • Create New...