Миссии на свержении

  • Автор темы Автор темы Gigi
  • Дата начала Дата начала

Gigi

Прославленный
Проверенный
Легенда Истоков
Старожил I степени
Сообщения
477
Розыгрыши
0
Решения
3
Репутация
219
Реакции
137
Баллы
1 438
Хроники
  1. Master Class
Исходники
Присутствуют
Сборка
Samurai 542 (Main)
При выполнении ежедневных мисси на свержении, при готовности на экране должен всплывать специальный знак,
так вот этого не происходит, ну по интуиции решил что за это должен отвечать пакет EX_DETHRONE_DAILY_MISSION_COMPLETE
Но как не крутил и анализировал результата не получил. при отправке этого пакета, нечего не происходит

Java:
public class ExDethroneDailyMissionAlert extends ServerPacket
{
    private final int _missionId;
    
    public ExDethroneDailyMissionAlert(int missionId)
    {
        _missionId = missionId;
    }
    
    @Override
    public void writeImpl(GameClient client, WritableBuffer buffer)
    {
        ServerPackets.EX_DETHRONE_DAILY_MISSION_COMPLETE.writeId(this, buffer);
        buffer.writeInt(_missionId);
    }
}

Может кто направить на правильный путь :) или это совсем не тот пакет
 
При выполнении ежедневных мисси на свержении, при готовности на экране должен всплывать специальный знак,
так вот этого не происходит, ну по интуиции решил что за это должен отвечать пакет EX_DETHRONE_DAILY_MISSION_COMPLETE
Но как не крутил и анализировал результата не получил. при отправке этого пакета, нечего не происходит

Java:
public class ExDethroneDailyMissionAlert extends ServerPacket
{
    private final int _missionId;
   
    public ExDethroneDailyMissionAlert(int missionId)
    {
        _missionId = missionId;
    }
   
    @Override
    public void writeImpl(GameClient client, WritableBuffer buffer)
    {
        ServerPackets.EX_DETHRONE_DAILY_MISSION_COMPLETE.writeId(this, buffer);
        buffer.writeInt(_missionId);
    }
}

Может кто направить на правильный путь :) или это совсем не тот пакет
System Messages прошерсти по идее там выводится
 
Ну что-то напоминает это больше "чтоб не отправдять инфу обо всех миссиях, которые я выполнил, давайте отправим пакет, который поставит флажок что миссия выплнена".

Попробуйте он S_EX_DETHRONE_DAILY_MISSION_INFO отправить, с полем bHasReward == 1
 
System Messages прошерсти по идее там выводится
Ну там отправка идет здесь CompoundDailyMissionHandler, даже добавил SystemMessage который работает

Java:
    private void processPlayerProgress(Player player)
    {
        final DailyMissionPlayerEntry entry = getPlayerEntry(player.getObjectId(), true);
        if (entry.getStatus() == DailyMissionStatus.NOT_AVAILABLE)
        {
            if (entry.increaseProgress() >= _amount)
            {
                entry.setStatus(DailyMissionStatus.AVAILABLE);
                player.sendPacket(new ExDethroneDailyMissionAlert(getHolder().getId())); // отправка нового пакета
                player.sendPacket(new ExDethroneDailyMissionInfo(player, getHolder()));
             
                final SystemMessage msg = new SystemMessage(SystemMessageId.PERSONAL_CONQUEST_POINTS_S1_SERVER_CONQUEST_POINTS_S2);
                msg.addInt(PERSONAL_POINTS_AMOUNT); // 250
                msg.addInt(SERVER_POINTS_AMOUNT); // 500
                player.sendPacket(msg);
            }
         
            storePlayerEntry(entry);
        }
    }
Сообщение объединено:
Ну что-то напоминает это больше "чтоб не отправдять инфу обо всех миссиях, которые я выполнил, давайте отправим пакет, который поставит флажок что миссия выплнена".

Попробуйте он S_EX_DETHRONE_DAILY_MISSION_INFO отправить, с полем bHasReward == 1
Отправил, но тоже глухо

Java:
       ServerPackets.EX_DETHRONE_DAILY_MISSION_INFO.writeId(this, buffer);
        buffer.writeInt(_rewards.size()); // how many missions have
        for (DailyMissionDataHolder reward : _rewards)
        {
            int progress = reward.getProgress(_player);
            int status = reward.getStatus(_player);
           
            buffer.writeInt(reward.getId());
            buffer.writeInt(progress);
            buffer.writeByte(1);
        }
 
Последнее редактирование:
Ну там отправка идет здесь CompoundDailyMissionHandler, даже добавил SystemMessage который работает

Java:
    private void processPlayerProgress(Player player)
    {
        final DailyMissionPlayerEntry entry = getPlayerEntry(player.getObjectId(), true);
        if (entry.getStatus() == DailyMissionStatus.NOT_AVAILABLE)
        {
            if (entry.increaseProgress() >= _amount)
            {
                entry.setStatus(DailyMissionStatus.AVAILABLE);
                player.sendPacket(new ExDethroneDailyMissionAlert(getHolder().getId())); // отправка нового пакета
                player.sendPacket(new ExDethroneDailyMissionInfo(player, getHolder()));
            
                final SystemMessage msg = new SystemMessage(SystemMessageId.PERSONAL_CONQUEST_POINTS_S1_SERVER_CONQUEST_POINTS_S2);
                msg.addInt(PERSONAL_POINTS_AMOUNT); // 250
                msg.addInt(SERVER_POINTS_AMOUNT); // 500
                player.sendPacket(msg);
            }
        
            storePlayerEntry(entry);
        }
    }
Сообщение объединено:
Отправил, но тоже глухо

Java:
       ServerPackets.EX_DETHRONE_DAILY_MISSION_INFO.writeId(this, buffer);
        buffer.writeInt(_rewards.size()); // how many missions have
        for (DailyMissionDataHolder reward : _rewards)
        {
            int progress = reward.getProgress(_player);
            int status = reward.getStatus(_player);
          
            buffer.writeInt(reward.getId());
            buffer.writeInt(progress);
            buffer.writeByte(1);
        }
А в датниках на клиенте проверил вывод месседжа своего?
 
Та, это я не так понял)
Вопрос в том что в углу снизу появляется я так понял?
 
Та, это я не так понял)
Вопрос в том что в углу снизу появляется я так понял?
Да, с права в углю должно выводить предупреждение что миссия готова для взятии награды, месседжи тут совсем не причем
 
Да, с права в углю должно выводить предупреждение что миссия готова для взятии награды, месседжи тут совсем не причем
Возьми для сравнения, как отправляет пакет о готовности квестов например про фарм мобов в алтаре 800 штук
И сравняй с пакетом в детроне
 

Похожие темы

Назад
Сверху Снизу