Перейти к содержанию
Авторизация  

Работа с исходниками l2j. Добавляем команды .expon .expoff


Описание

Добавляем команды .expon .expoff. Позволит остановить получение опыта персонажем.

Для начала работы у Вас должны быть исходники любого сервера на базе l2j.
1. Открываем класс L2PcInstance.java. В конец файлы добавляем строки:

private boolean _stopexp = false;public void setStopExp(boolean mode){   _stopexp = mode;}public boolean getStopExp(){    return _stopexp;}


Далее находим функцию:

public void addExpAndSp(long addToExp, int addToSp)


И заменяем :

getStat().addExpAndSp(addToExp, addToSp);


На:

if (!getStopExp()){   getStat().addExpAndSp(addToExp, addToSp);}else{   getStat().addExpAndSp(0, 0);}


2. Создаем новый класс:

public class Exp implements IVoicedCommandHandler{	private final String[] _voicedCommands =	{		"expon",		"expoff",					};	@Override	public String[] getVoicedCommandList()	{		return _voicedCommands;	}		@Override	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String params)	{		// TODO Auto-generated method stub		if(command.equalsIgnoreCase("expoff"))		{			activeChar.setStopExp(true);			activeChar.sendMessage("Опыт выключен.");		}		else if(command.equalsIgnoreCase("expon"))		{		   activeChar.setStopExp(false);		   activeChar.sendMessage("Опыт включен.");		}		return true;	}}


3. Добавляем в класс VoicedCommandHandler.java в конструктор:

protected VoicedCommandHandler()	{				registerHandler(new Exp());	// эту строку добавляем                         }


Готово, делаем ребилд, заходим на сервер и пишем в чат ".expoff" - остановить получение опыта. ".expon" - возобновить получение опыта. Появились вопросы пишите.

 


Если Вас заинтересовала эта тема, ставьте +, сделаю еще.



Рекомендуемые комментарии

Комментариев нет

×
×
  • Создать...