Цена продажи товаров НПС

Металлург1985

Пляшущий с бубном
Пользователь
Сообщения
38
Розыгрыши
0
Репутация
0
Реакции
2
Баллы
235
Хроники
  1. Grand Cursade
Исходники
Присутствуют
Сборка
Mobius
Всем привет.
Кто может подсказать - где зашит коэффициент к цене продажи в магазин НПС предмета в размере 50% от цены, указанной в xml-файле с описанием предмета?
И если где-то это регулируется - то и возможность увеличения этого коэффициента для заточенной вещи, в зависимости от уровня точки.
Например, неточеная вещь продается за 50% стоимости, точеная на +10 - за 70%, на +16 - 100%.
Примерно как при поломке вещи - в зависимости от уровня ее заточки с нее падает больше кристаллов. Можно ли что-то придумать и для поправки на цену продажи в магазин?
Спасибо.
 
RequestSellItem.java


Java:
// line 142~

    long totalPrice = 0;

        for (UniqueItemHolder i : _items)
        {
            final Item item = player.checkItemManipulation(i.getObjectId(), i.getCount(), "sell");
            if ((item == null) || (!item.isSellable()))
            {
                continue;
            }
            
            final long price = item.getReferencePrice() / 2; //50% от цену
            totalPrice += price * i.getCount();

Так оригинал, а в промени:



Java:
    long totalPrice = 0;

        for (UniqueItemHolder i : _items)
        {
            final Item item = player.checkItemManipulation(i.getObjectId(), i.getCount(), "sell");
            if ((item == null) || (!item.isSellable()))
            {
                continue;
            }

            final int itemEnchantLevel = item.getEnchantLevel(); //взять заточка предметов
            final int maxEnchantLevel = 16; //установить лимит заточки серверов

            long price = 0;

            if (itemEnchantLevel > 0)
            {
                price = (item.getReferencePrice() * ((itemEnchantLevel / maxEnchantLevel) * 100L)) / 100;
            }
            else
            {
                price = item.getReferencePrice() / 2;
            }

            totalPrice += price * i.getCount();
 
Java:
        long totalPrice = 0;
        // Proceed the sell
        for (UniqueItemHolder i : _items)
        {
            final Item item = player.checkItemManipulation(i.getObjectId(), i.getCount(), "sell");
            if ((item == null) || (!item.isSellable()))
            {
                continue;
            }

            final int itemEnchantLevel = item.getEnchantLevel();
            final int maxEnchantLevel = 16;
            
            long price = 0;
            
            if (itemEnchantLevel > 0)
            {
                double enchantContribution = (itemEnchantLevel / (double) maxEnchantLevel) * 50;
                double totalPercentage = 50 + enchantContribution;
                price = Math.round(item.getReferencePrice() * (totalPercentage / 100));
            }
            else
            {
                price = item.getReferencePrice() / 2;
            }

            totalPrice += price * i.getCount();

Я забьл цена надо будет 50% все случеи
 
Файл такой в исходниках нашел.
Но видимо надо с учетом этого измененного файла пересобрать сервер. Я просто сервер не сам собирал, а скачивал уже готовую сборку от monche.org.
Подкиньте пжл ссылку на инструментарий, при помощи которого можно собрать сервер из исходников. Если она тут имеется.
 
Данный сайт использует cookie. Вы должны принять их для продолжения использования. Узнать больше…