Jump to content

Question

Posted

This is my cancellation return buffs.
Can anyone help me add a restriction so it doesn't work at the Olympiads?

 

Spoiler

/*
 * Copyright (C) 2004-2018 L2J Server
 * 
 * This file is part of L2J Server.
 * 
 * L2J Server is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * L2J Server is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
package l2r.gameserver.model;

import java.util.Vector;

import l2r.gameserver.model.actor.L2Playable;
import l2r.gameserver.model.effects.L2Effect;

/**
 * @author HARDECORE`
 */
public class RestoreBuff implements Runnable
{
    public static boolean RESTORE_ENABLE = true;
    public static int RESTORE_TIME = 10;
    
    private final L2Playable _actor;
    private final Vector<L2Effect> _buffList;
    
    public RestoreBuff(L2Playable actor, Vector<L2Effect> buffList)
    {
        _actor = actor;
        _buffList = buffList;
    }
    
    @Override
    public void run()
    {
        if ((_actor == null) || _actor.isDead())
        {
            return;
        }
        
        _buffList.forEach(s -> s.getSkill().applyEffects(_actor, _actor));
    }
}
 

 

Recommended Posts

  • 0
Posted
5 minutes ago, L2 TokTil said:

if ((_actor == null) || _actor.isDead() || _actor.isInOlympiadMode())

its an option but not the best. RestoreBuf class shouldn't be called if the player is in oly.. so your restriction must be used in the other file

  • 0
Posted
2 minutes ago, melron said:

its an option but not the best. RestoreBuf class shouldn't be called if the player is in oly.. so your restriction must be used in the other file

help me with this?

  • 0
Posted
4 minutes ago, melron said:

paste the code where the RestoreBuff is taking place

excuse me. I am not a dev. Where can I find the code you asked for?

this is it?

olwzQQn.png

  • 0
Posted (edited)
14 minutes ago, HARDECORE said:

excuse me. I am not a dev. Where can I find the code you asked for?

this is it?

olwzQQn.png

-if (getEffected().isPlayable())
+if (getEffected() instanceof Player && !getEffected().getActingPlayer().isInOlympiadMode())

 

Edited by melron
  • 0
Posted
4 minutes ago, melron said:

-if (getEffected().isPlayable())
+if (getEffected() instanceof Player && !getEffected().getActingPlayer().isInOlympiadMode())

 

now 

 

NZQAFW0.png

  • 0
Posted
17 minutes ago, melron said:

instanceof L2PcInstance

I added, compiled, had no error. Now the buffs are not coming back on olympiad, but I'm getting this error on the game server

pZyi7WW.png

  • 0
Posted

NOTE this code is abusable if not implemented correctly and provides about 5-7 exploits for players i think 2 was important for low rate servers but even for pvp servers is very buggy if you don't add restrictions

Guest
This topic is now closed to further replies.
×
×
  • Create New...