Jump to content

styler

Resident
  • Content Count

    483
  • Joined

  • Last visited

  • Days Won

    2
  • Feedback

    0%

styler last won the day on July 24 2018

styler had the most liked content!

Community Reputation

103

About styler

  • Rank
    Построил домик

Recent Profile Visitors

4521 profile views
  1. Есть же модуль который подтягивает всё это на стороне сервера и не нужно делать пердолиться с заливкой текстур в клиент
  2. styler

    Lineage 2 CMS

    Там вроде всё и так написано. Поднять ASP сервер. Реализовать xmlrpc в ява сервере согласно примеру
  3. Ты идиот? Тебе последовательность действий разжевали, дальше сам думай что и где менять
  4. if (!activeChar.isGM() && (merchant == null || !isValidMerchant || !activeChar.isInRangeZ(merchant, activeChar.getInteractDistance(merchant)))) { Log.audit("[SellItem]", "Player(ID:" + activeChar.getObjectId() + ") name: " + activeChar.getName() + " isInRange > 200 || null"); activeChar.sendActionFailed(); return; } Всё верно проверка происходит в пакете RequestSellItem. Вопрос закрыт.
  5. Пакет работает корректно под админом, так же через этот пакет работают обычные магазины в городах. При нажатии на кнопку продать ничего не происходит, окно не закрывается, предмет не продается. http://prntscr.com/kdawu6
  6. Пытаюсь вывести продажу в комьюнити. Прикол в том, что окно продажи открывается, но продать туда ничего не получается. Под админом всё работает. Не могу понять в чем проблема. Обработка байпасса: public void onBypassCommand(Player player, String bypass) { switch (bypass) { case "_bbssell": case "_bbs_itemsell": if (!check(player)) return; player.sendPacket(new ExBuyList(null, player), new ExBuySellList(player, false)); break; } } Пакет ExBuyList package org.mmocore.gameserver.network.lineage.serverpackets; import org.mmocore.gameserver.model.buylist.BuyList; import org.mmocore.gameserver.object.Player; import java.util.Optional; public class ExBuyList extends L2GameServerPacket { private final int listId; private final Optional<BuyList> buyList; private final long adena; public ExBuyList(final BuyList tradeList, final Player activeChar) { adena = activeChar.getAdena(); if (tradeList != null) { listId = tradeList.getListId(); buyList = Optional.of(tradeList); activeChar.setBuyListId(listId); } else { listId = 0; buyList = Optional.empty(); activeChar.setBuyListId(0); } } @Override protected void writeImpl() { writeEx(0xB7); writeD(0x00); writeQ(adena); // current money writeD(listId); writeH(buyList.isPresent() ? buyList.get().getProducts().size() : 0); if (buyList.isPresent()) { buyList.get().getProducts().stream().filter(item -> item.getCount() > 0 || !item.hasLimitedStock()).forEach(item -> { writeItemInfo(item); writeQ(item.getPrice()); }); } } } Пакет ExBuySellList package org.mmocore.gameserver.network.lineage.serverpackets; import org.mmocore.gameserver.object.Player; import org.mmocore.gameserver.object.components.items.ItemInstance; import org.mmocore.gameserver.object.components.items.TradeItem; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class ExBuySellList extends L2GameServerPacket { private final List<TradeItem> sellList; private final List<TradeItem> refundList; private final int done; public ExBuySellList(final Player activeChar, final boolean done) { this.done = done ? 1 : 0; if (done) { refundList = Collections.emptyList(); sellList = Collections.emptyList(); } else { ItemInstance[] items = activeChar.getRefund().getItems(); refundList = new ArrayList<>(items.length); for (final ItemInstance item : items) { refundList.add(new TradeItem(item)); } items = activeChar.getInventory().getItems(); sellList = new ArrayList<>(items.length); for (final ItemInstance item : items) { if (item.canBeSold(activeChar)) { sellList.add(new TradeItem(item)); } } } } @Override protected void writeImpl() { writeEx(0xB7); writeD(0x01); writeH(sellList.size()); for (final TradeItem item : sellList) { writeItemInfo(item); writeQ(item.getReferencePrice() / 2); } writeH(refundList.size()); for (final TradeItem item : refundList) { writeItemInfo(item); writeD(item.getObjectId()); writeQ(item.getCount() * item.getReferencePrice() / 2); } writeC(done); } }
  7. Ты разрешение спрашиваешь?
  8. Не вижу необходимости, всё что нужно уже давно в шаре. Всё чего нету можно заказать.
  9. не чем а как, чтобы залить бд, навикат ненужен
  10. В чем сложность слияния двух бд? Выгружаем нужные таблицы и загружаем в нужную бд. Ловим ошибки и фиксим их.
  11. JTS так-то пофиг на его убытки, это JTS лоханулись с продажей сорсов непонятно кому
  12. Открываешь базу для доступа из вне указываешь, сайт заливаешь на хост, в настройках сайта указываешь айпи своей базы
×
×
  • Create New...