Доброго времени суток. В этом мануале я научу вас делать бесконечные соски/стрелы (Выводим в конфиг).
Буду показывать на сборке a-Cis.
Бесконечные соски:
Ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: BeastSoulShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSoulShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(item.getItemId()))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS_FOR_PET);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSoulShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(item.getItemId()))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS_FOR_PET);return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: BeastSpiritShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSpiritShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(itemId))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS_FOR_PET);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSpiritShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(itemId))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS_FOR_PET);return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: BlessedSpiritShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: SoulShots.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), ssCount,null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), ssCount,null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS);
return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: SpiritShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}}
Далее ищем класс по пути net\sf\l2j: Config.java
Ищем:
/** Buffs */publicstaticboolean STORE_SKILL_COOLTIME;publicstaticint BUFFS_MAX_AMOUNT;
Добавляем ниже:
/** Custom */publicstaticboolean DONT_DESTROY_SS;
Ищем:
BUFFS_MAX_AMOUNT = players.getProperty("MaxBuffsAmount",20);
STORE_SKILL_COOLTIME = players.getProperty("StoreSkillCooltime",true);
Добавляем ниже:
DONT_DESTROY_SS = players.getProperty("DontDestroySS",true);
Далее ищем конфиг по пути gameserver\config: players.properties
В любое место добавляем следующие параметры:
#=============================================================# Custom#=============================================================
# Не использовать соски ?
DontDestroySS=true
Бесконечные стрелы:
Ищем класс по пути net\sf\l2j\gameserver\model\actor: L2Character.java
Ищем:
reduceArrowCount();
Меняем на:
if(!Config.DONT_DESTROY_ARROWS){
reduceArrowCount();}
Далее ищем класс по пути net\sf\l2j: Config.java
Ищем:
/** Buffs */publicstaticboolean STORE_SKILL_COOLTIME;publicstaticint BUFFS_MAX_AMOUNT;
Добавляем ниже:
/** Custom */publicstaticboolean DONT_DESTROY_ARROWS;
Ищем:
BUFFS_MAX_AMOUNT = players.getProperty("MaxBuffsAmount",20);
STORE_SKILL_COOLTIME = players.getProperty("StoreSkillCooltime",true);
Добавляем ниже:
DONT_DESTROY_ARROWS = players.getProperty("DontDestroyArrows",true);
Далее ищем конфиг по пути gameserver\config: players.properties
В любое место добавляем следующие параметры:
#=============================================================# Custom#=============================================================
# Не использовать стрелы ?
DontDestroyArrows=true
Буду показывать на сборке a-Cis.
Бесконечные соски:
Ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: BeastSoulShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSoulShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(item.getItemId()))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS_FOR_PET);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSoulShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(item.getItemId()))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS_FOR_PET);return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: BeastSpiritShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSpiritShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(itemId))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS_FOR_PET);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), activePet.getSpiritShotsPerHit(),null,false)){if(!activeOwner.disableAutoShot(itemId))
activeOwner.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS_FOR_PET);return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: BlessedSpiritShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: SoulShots.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), ssCount,null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), ssCount,null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SOULSHOTS);
return;}}
Далее ищем класс по пути net\sf\l2j\gameserver\handler\itemhandlers: SpiritShot.java
Добавляем следующий импорт:
import net.sf.l2j.Config;
Далее ищем:
if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}
Меняем на:
if(!Config.DONT_DESTROY_SS){if(!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(),null,false)){if(!activeChar.disableAutoShot(itemId))
activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS);return;}}
Далее ищем класс по пути net\sf\l2j: Config.java
Ищем:
/** Buffs */publicstaticboolean STORE_SKILL_COOLTIME;publicstaticint BUFFS_MAX_AMOUNT;
Добавляем ниже:
/** Custom */publicstaticboolean DONT_DESTROY_SS;
Ищем:
BUFFS_MAX_AMOUNT = players.getProperty("MaxBuffsAmount",20);
STORE_SKILL_COOLTIME = players.getProperty("StoreSkillCooltime",true);
Добавляем ниже:
DONT_DESTROY_SS = players.getProperty("DontDestroySS",true);
Далее ищем конфиг по пути gameserver\config: players.properties
В любое место добавляем следующие параметры:
#=============================================================# Custom#=============================================================
# Не использовать соски ?
DontDestroySS=true
Бесконечные стрелы:
Ищем класс по пути net\sf\l2j\gameserver\model\actor: L2Character.java
Ищем:
reduceArrowCount();
Меняем на:
if(!Config.DONT_DESTROY_ARROWS){
reduceArrowCount();}
Далее ищем класс по пути net\sf\l2j: Config.java
Ищем:
/** Buffs */publicstaticboolean STORE_SKILL_COOLTIME;publicstaticint BUFFS_MAX_AMOUNT;
Добавляем ниже:
/** Custom */publicstaticboolean DONT_DESTROY_ARROWS;
Ищем:
BUFFS_MAX_AMOUNT = players.getProperty("MaxBuffsAmount",20);
STORE_SKILL_COOLTIME = players.getProperty("StoreSkillCooltime",true);
Добавляем ниже:
DONT_DESTROY_ARROWS = players.getProperty("DontDestroyArrows",true);
Далее ищем конфиг по пути gameserver\config: players.properties
В любое место добавляем следующие параметры:
#=============================================================# Custom#=============================================================
# Не использовать стрелы ?
DontDestroyArrows=true