Fixed ExperienceGain handler.

This commit is contained in:
MobiusDev 2015-05-22 02:54:08 +00:00
parent 8d2b122326
commit 13e5560585
2 changed files with 11 additions and 9 deletions

View File

@ -242,6 +242,7 @@ import handlers.usercommandhandlers.ChannelLeave;
import handlers.usercommandhandlers.ClanPenalty; import handlers.usercommandhandlers.ClanPenalty;
import handlers.usercommandhandlers.ClanWarsList; import handlers.usercommandhandlers.ClanWarsList;
import handlers.usercommandhandlers.Dismount; import handlers.usercommandhandlers.Dismount;
import handlers.usercommandhandlers.ExperienceGain;
import handlers.usercommandhandlers.InstanceZone; import handlers.usercommandhandlers.InstanceZone;
import handlers.usercommandhandlers.Loc; import handlers.usercommandhandlers.Loc;
import handlers.usercommandhandlers.Mount; import handlers.usercommandhandlers.Mount;
@ -513,6 +514,7 @@ public class MasterHandler
ClanPenalty.class, ClanPenalty.class,
ClanWarsList.class, ClanWarsList.class,
Dismount.class, Dismount.class,
ExperienceGain.class,
Unstuck.class, Unstuck.class,
InstanceZone.class, InstanceZone.class,
Loc.class, Loc.class,

View File

@ -16,7 +16,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package custom.listeners.ExperienceGain; package handlers.usercommandhandlers;
import com.l2jserver.gameserver.handler.IVoicedCommandHandler; import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
import com.l2jserver.gameserver.model.actor.L2Playable; import com.l2jserver.gameserver.model.actor.L2Playable;
@ -33,28 +33,28 @@ public final class ExperienceGain implements IVoicedCommandHandler
{ {
private final String[] COMMANDS = new String[] private final String[] COMMANDS = new String[]
{ {
"xpoff", "expoff",
"xpon", "expon",
}; };
@Override @Override
public boolean useVoicedCommand(String command, L2PcInstance activeChar, String params) public boolean useVoicedCommand(String command, L2PcInstance activeChar, String params)
{ {
if (command.equals("xpoff")) if (command.equals("expoff"))
{ {
if (!activeChar.getVariables().getBoolean("XPOFF", false)) if (!activeChar.getVariables().getBoolean("EXPOFF", false))
{ {
activeChar.addListener(new FunctionEventListener(activeChar, EventType.ON_PLAYABLE_EXP_CHANGED, (OnPlayableExpChanged event) -> onExperienceReceived(event.getActiveChar(), event.getNewExp() - event.getOldExp()), this)); activeChar.addListener(new FunctionEventListener(activeChar, EventType.ON_PLAYABLE_EXP_CHANGED, (OnPlayableExpChanged event) -> onExperienceReceived(event.getActiveChar(), event.getNewExp() - event.getOldExp()), this));
activeChar.getVariables().set("XPOFF", true); activeChar.getVariables().set("EXPOFF", true);
activeChar.sendMessage("Experience gain is disabled."); activeChar.sendMessage("Experience gain is disabled.");
} }
} }
else if (command.equals("xpon")) else if (command.equals("expon"))
{ {
if (activeChar.getVariables().getBoolean("XPOFF", false)) if (activeChar.getVariables().getBoolean("EXPOFF", false))
{ {
activeChar.removeListenerIf(EventType.ON_PLAYABLE_EXP_CHANGED, listener -> listener.getOwner() == this); activeChar.removeListenerIf(EventType.ON_PLAYABLE_EXP_CHANGED, listener -> listener.getOwner() == this);
activeChar.getVariables().set("XPOFF", false); activeChar.getVariables().set("EXPOFF", false);
activeChar.sendMessage("Experience gain is enabled."); activeChar.sendMessage("Experience gain is enabled.");
} }
} }