Jump to content

Recommended Posts

Posted

.levelup and .leveldown command for players.

 

I created for L2J server.

 

GameServer/data/scripts/handlers/voicedcommandhandlers/LevelCommands.java

/*
* This program 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.
*
* This program 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 handlers.voicedcommandhandlers;

import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.serverpackets.InventoryUpdate;
import net.sf.l2j.gameserver.model.base.Experience;

/**
* @author Mentor
* @date 2009.09.05
*/
public class LevelCommands implements IVoicedCommandHandler
{
private static final String[] _voicedCommands =		{	"levelup", "leveldown"	};
public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
{
	if (command.equalsIgnoreCase("levelup"))
	{
		if (activeChar.getInventory().getInventoryItemCount(57, 0) >= 10000000)
		{
			InventoryUpdate iu = new InventoryUpdate();
			activeChar.getInventory().destroyItemByItemId("Adena", 57, 10000000, activeChar, null);
			activeChar.getInventory().updateDatabase();
			activeChar.sendPacket(iu);
			activeChar.addExpAndSp(Experience.LEVEL[activeChar.getStat().getLevel() + 1] - Experience.LEVEL[activeChar.getStat().getLevel()], 0);
			activeChar.sendMessage("+1 Level");
		}
		else
		{
			activeChar.sendMessage("Havent enought adena.");
		}
	}
	else if (command.equalsIgnoreCase("leveldown"))
	{
		if (activeChar.getInventory().getInventoryItemCount(57, 0) >= 10000000 && activeChar.getStat().getLevel() >= 60)
		{
			InventoryUpdate iu = new InventoryUpdate();
			activeChar.getInventory().destroyItemByItemId("Adena", 57, 10000000, activeChar, null);
			activeChar.getInventory().updateDatabase();
			activeChar.sendPacket(iu);
			activeChar.getStat().removeExpAndSp((activeChar.getExp() - Experience.LEVEL[activeChar.getStat().getLevel() - 1]), 0);
			activeChar.sendMessage("-1 Level");
		}
		else
		{
			activeChar.sendMessage("Havent enought adena.");
		}
	}
	return true;
}

public String[] getVoicedCommandList()
{
	return _voicedCommands;
}
}

 

GameServer/data/scripts/handlers/MasterHandler.java

VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new LevelCommands());

  • 1 year later...
Posted

i try to edit something code for l2jserver. Hope it work.

 

Create java file: LevelCommands.java in voicedcommand folder

/*
* This program 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.
*
* This program 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 handlers.voicedcommandhandlers;

import com.l2jserver.gameserver.handler.IVoicedCommandHandler;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.network.serverpackets.InventoryUpdate;
import com.l2jserver.gameserver.model.base.Experience;

/**
* @author Mentor
* @date 2009.09.05
*/
public class LevelCommands implements IVoicedCommandHandler
{
private static final String[] _voicedCommands =		{	"levelup", "leveldown" , "downlevel" , "uplevel" };
public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
{
	int itemID = 57;
	int itemCountUp = 1000000;
	int itemCountDown = 200000;
	if (command.equalsIgnoreCase("levelup") || command.equalsIgnoreCase("uplevel"))
	{
		if (activeChar.getInventory().getInventoryItemCount(itemID, 0) >= itemCountUp && activeChar.getStat().getLevel() < 85)
		{
			InventoryUpdate iu = new InventoryUpdate();
			activeChar.getInventory().destroyItemByItemId("Adena", itemID, itemCountUp, activeChar, null);
			activeChar.getInventory().updateDatabase();
			activeChar.sendPacket(iu);
			activeChar.addExpAndSp(Experience.LEVEL[activeChar.getStat().getLevel() + 1] - Experience.LEVEL[activeChar.getStat().getLevel()], 0);
			activeChar.sendMessage("Level UP.");
		}
		else if(activeChar.getInventory().getInventoryItemCount(itemID, 0) >= 1000 && activeChar.getStat().getLevel() == 85){
				activeChar.sendMessage("Sorry. You get maximum lv.");
		}
		else
		{
			activeChar.sendMessage("Havent enought item.");
		}
	}
	else if (command.equalsIgnoreCase("leveldown") || command.equalsIgnoreCase("downlevel"))
	{
		if (activeChar.getInventory().getInventoryItemCount(itemID, 0) >= itemCountDown && activeChar.getStat().getLevel() > 1)
		{
			InventoryUpdate iu = new InventoryUpdate();
			activeChar.getInventory().destroyItemByItemId("Event Medal", itemID, itemCountDown, activeChar, null);
			activeChar.getInventory().updateDatabase();
			activeChar.sendPacket(iu);
			activeChar.getStat().removeExpAndSp((activeChar.getExp() - Experience.LEVEL[activeChar.getStat().getLevel() - 1]), 0);
			activeChar.sendMessage("Level DOWN");
		}
		else if(activeChar.getInventory().getInventoryItemCount(itemID, 0) >= itemCountDown && activeChar.getStat().getLevel() == 1){				
				activeChar.sendMessage("Sorry. You get lowest lv.");
		}
		else
		{
			activeChar.sendMessage("Havent enought item.");
		}
	}
	return true;
}

public String[] getVoicedCommandList()
{
	return _voicedCommands;
}
}

 

Register in MasterHandler.java

VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new LevelCommands());

  • 3 months later...
Posted

sorry but i have a question on registering this on masterhandler.java

 

is missing a part like this

 

" if (Config.L2JMOD_CHAT_ADMIN)"

 

VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new LevelCommands());

 

every vocehandler has a  " if (config.l2j) "

Posted

Well it didn't worked for me. Damn.

Actually when i registered this on masterhandler.java none of the commands was working..

I think i've done something wrong.. any help on Where exactly to put this one:

VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new LevelCommands());

Thnx.

 

Posted

sorry but i have a question on registering this on masterhandler.java

 

is missing a part like this

 

" if (Config.L2JMOD_CHAT_ADMIN)"

 

VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new LevelCommands());

 

every vocehandler has a  " if (config.l2j) "

coz there is no config for it, this thing: if (config.l2j), mean if config is true then this command will work, and if u are applying this share to your pack, that mean you probably want to have it on your server or just to check if it work so there is no sense to make False, and if you want to delete this command, just delete VoicedCommandHandler.getInstance().registerVoicedCommandHandler(new LevelCommands());

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...