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...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock