Lineal Posted April 17, 2011 Posted April 17, 2011 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(?).
sokianos Posted April 17, 2011 Posted April 17, 2011 NC share file Kai epsaxna kati tetoio Sunexise etCi
Lineal Posted April 18, 2011 Author Posted April 18, 2011 Can you make it for l2jacis too? Sure , i will share it here.I haven't even worked with aCis but i will try.
SweeTs Posted April 18, 2011 Posted April 18, 2011 Can you make it for l2jacis too? Look at original code.. Original is for l2j and acis is based on.. :) So, I think you dont need any modifications.
Lineal Posted April 18, 2011 Author Posted April 18, 2011 Look at original code.. Original is for l2j and acis is based on.. :) So, I think you dont need any modifications. He is right.Little changes in imports
Lineal Posted April 19, 2011 Author Posted April 19, 2011 Is working perfectly ....nice share keep up Thanx mate
Recommended Posts