Daily Mission packet related improvements.

This commit is contained in:
MobiusDev
2018-03-07 12:55:16 +00:00
parent a0399cb8be
commit b27f27a6d2
17 changed files with 84 additions and 12 deletions

View File

@@ -41,6 +41,7 @@ public class DailyMissionData implements IGameXmlReader
{
private static final Logger LOGGER = Logger.getLogger(DailyMissionData.class.getName());
private final Map<Integer, List<DailyMissionDataHolder>> _dailyMissionRewards = new LinkedHashMap<>();
private boolean _isAvailable;
protected DailyMissionData()
{
@@ -52,6 +53,7 @@ public class DailyMissionData implements IGameXmlReader
{
_dailyMissionRewards.clear();
parseDatapackFile("data/DailyMission.xml");
_isAvailable = !_dailyMissionRewards.isEmpty();
LOGGER.info(getClass().getSimpleName() + ": Loaded " + _dailyMissionRewards.size() + " one day rewards.");
}
@@ -124,6 +126,11 @@ public class DailyMissionData implements IGameXmlReader
return _dailyMissionRewards.get(id);
}
public boolean isAvailable()
{
return _isAvailable;
}
/**
* Gets the single instance of DailyMissionData.
* @return single instance of DailyMissionData

View File

@@ -68,7 +68,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExAutoSoulShot;
import com.l2jmobius.gameserver.network.serverpackets.ExBasicActionList;
import com.l2jmobius.gameserver.network.serverpackets.ExBeautyItemList;
import com.l2jmobius.gameserver.network.serverpackets.ExCastleState;
import com.l2jmobius.gameserver.network.serverpackets.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.ExGetBookMarkInfoPacket;
import com.l2jmobius.gameserver.network.serverpackets.ExNoticePostArrived;
import com.l2jmobius.gameserver.network.serverpackets.ExNotifyPremiumItem;
@@ -100,6 +99,7 @@ import com.l2jmobius.gameserver.network.serverpackets.SkillList;
import com.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import com.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList;
import com.l2jmobius.gameserver.network.serverpackets.attendance.ExVipAttendanceItemList;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExOneDayReceiveRewardList;
import com.l2jmobius.gameserver.network.serverpackets.friend.L2FriendList;

View File

@@ -14,10 +14,12 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jmobius.gameserver.network.serverpackets;
package com.l2jmobius.gameserver.network.serverpackets.dailymission;
import com.l2jmobius.commons.network.PacketWriter;
import com.l2jmobius.gameserver.data.xml.impl.DailyMissionData;
import com.l2jmobius.gameserver.network.OutgoingPackets;
import com.l2jmobius.gameserver.network.serverpackets.IClientOutgoingPacket;
/**
* @author Sdw
@@ -29,6 +31,11 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_CONNECTED_TIME_AND_GETTABLE_REWARD.writeId(packet);
for (int i = 0; i < 16; i++) // TODO : Find what the hell it is
{
@@ -36,5 +43,4 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
}
return true;
}
}

View File

@@ -43,6 +43,11 @@ public class ExOneDayReceiveRewardList implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_ONE_DAY_RECEIVE_REWARD_LIST.writeId(packet);
packet.writeD(_player.getClassId().getId());

View File

@@ -41,6 +41,7 @@ public class DailyMissionData implements IGameXmlReader
{
private static final Logger LOGGER = Logger.getLogger(DailyMissionData.class.getName());
private final Map<Integer, List<DailyMissionDataHolder>> _dailyMissionRewards = new LinkedHashMap<>();
private boolean _isAvailable;
protected DailyMissionData()
{
@@ -52,6 +53,7 @@ public class DailyMissionData implements IGameXmlReader
{
_dailyMissionRewards.clear();
parseDatapackFile("data/DailyMission.xml");
_isAvailable = !_dailyMissionRewards.isEmpty();
LOGGER.info(getClass().getSimpleName() + ": Loaded " + _dailyMissionRewards.size() + " one day rewards.");
}
@@ -124,6 +126,11 @@ public class DailyMissionData implements IGameXmlReader
return _dailyMissionRewards.get(id);
}
public boolean isAvailable()
{
return _isAvailable;
}
/**
* Gets the single instance of DailyMissionData.
* @return single instance of DailyMissionData

View File

@@ -68,7 +68,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExAutoSoulShot;
import com.l2jmobius.gameserver.network.serverpackets.ExBasicActionList;
import com.l2jmobius.gameserver.network.serverpackets.ExBeautyItemList;
import com.l2jmobius.gameserver.network.serverpackets.ExCastleState;
import com.l2jmobius.gameserver.network.serverpackets.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.ExGetBookMarkInfoPacket;
import com.l2jmobius.gameserver.network.serverpackets.ExNoticePostArrived;
import com.l2jmobius.gameserver.network.serverpackets.ExNotifyPremiumItem;
@@ -100,6 +99,7 @@ import com.l2jmobius.gameserver.network.serverpackets.SkillList;
import com.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import com.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList;
import com.l2jmobius.gameserver.network.serverpackets.attendance.ExVipAttendanceItemList;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExOneDayReceiveRewardList;
import com.l2jmobius.gameserver.network.serverpackets.friend.L2FriendList;

View File

@@ -14,10 +14,12 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jmobius.gameserver.network.serverpackets;
package com.l2jmobius.gameserver.network.serverpackets.dailymission;
import com.l2jmobius.commons.network.PacketWriter;
import com.l2jmobius.gameserver.data.xml.impl.DailyMissionData;
import com.l2jmobius.gameserver.network.OutgoingPackets;
import com.l2jmobius.gameserver.network.serverpackets.IClientOutgoingPacket;
/**
* @author Sdw
@@ -29,6 +31,11 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_CONNECTED_TIME_AND_GETTABLE_REWARD.writeId(packet);
for (int i = 0; i < 16; i++) // TODO : Find what the hell it is
{
@@ -36,5 +43,4 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
}
return true;
}
}

View File

@@ -43,6 +43,11 @@ public class ExOneDayReceiveRewardList implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_ONE_DAY_RECEIVE_REWARD_LIST.writeId(packet);
packet.writeC(0x23);

View File

@@ -41,6 +41,7 @@ public class DailyMissionData implements IGameXmlReader
{
private static final Logger LOGGER = Logger.getLogger(DailyMissionData.class.getName());
private final Map<Integer, List<DailyMissionDataHolder>> _dailyMissionRewards = new LinkedHashMap<>();
private boolean _isAvailable;
protected DailyMissionData()
{
@@ -52,6 +53,7 @@ public class DailyMissionData implements IGameXmlReader
{
_dailyMissionRewards.clear();
parseDatapackFile("data/DailyMission.xml");
_isAvailable = !_dailyMissionRewards.isEmpty();
LOGGER.info(getClass().getSimpleName() + ": Loaded " + _dailyMissionRewards.size() + " one day rewards.");
}
@@ -124,6 +126,11 @@ public class DailyMissionData implements IGameXmlReader
return _dailyMissionRewards.get(id);
}
public boolean isAvailable()
{
return _isAvailable;
}
/**
* Gets the single instance of DailyMissionData.
* @return single instance of DailyMissionData

View File

@@ -68,7 +68,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExAutoSoulShot;
import com.l2jmobius.gameserver.network.serverpackets.ExBasicActionList;
import com.l2jmobius.gameserver.network.serverpackets.ExBeautyItemList;
import com.l2jmobius.gameserver.network.serverpackets.ExCastleState;
import com.l2jmobius.gameserver.network.serverpackets.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.ExGetBookMarkInfoPacket;
import com.l2jmobius.gameserver.network.serverpackets.ExNoticePostArrived;
import com.l2jmobius.gameserver.network.serverpackets.ExNotifyPremiumItem;
@@ -100,6 +99,7 @@ import com.l2jmobius.gameserver.network.serverpackets.SkillList;
import com.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import com.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList;
import com.l2jmobius.gameserver.network.serverpackets.attendance.ExVipAttendanceItemList;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExOneDayReceiveRewardList;
import com.l2jmobius.gameserver.network.serverpackets.friend.L2FriendList;

View File

@@ -24,7 +24,7 @@ import com.l2jmobius.gameserver.model.DailyMissionDataHolder;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.network.L2GameClient;
import com.l2jmobius.gameserver.network.clientpackets.IClientIncomingPacket;
import com.l2jmobius.gameserver.network.serverpackets.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExOneDayReceiveRewardList;
/**

View File

@@ -14,12 +14,13 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jmobius.gameserver.network.serverpackets;
package com.l2jmobius.gameserver.network.serverpackets.dailymission;
import com.l2jmobius.commons.network.PacketWriter;
import com.l2jmobius.gameserver.data.xml.impl.DailyMissionData;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.network.OutgoingPackets;
import com.l2jmobius.gameserver.network.serverpackets.IClientOutgoingPacket;
/**
* @author Sdw
@@ -36,6 +37,11 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_CONNECTED_TIME_AND_GETTABLE_REWARD.writeId(packet);
packet.writeD(0x00);
packet.writeD(_oneDayRewardAvailableCount);

View File

@@ -54,6 +54,11 @@ public class ExOneDayReceiveRewardList implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_ONE_DAY_RECEIVE_REWARD_LIST.writeId(packet);
packet.writeD((int) _dayRemainTime);

View File

@@ -41,6 +41,7 @@ public class DailyMissionData implements IGameXmlReader
{
private static final Logger LOGGER = Logger.getLogger(DailyMissionData.class.getName());
private final Map<Integer, List<DailyMissionDataHolder>> _dailyMissionRewards = new LinkedHashMap<>();
private boolean _isAvailable;
protected DailyMissionData()
{
@@ -52,6 +53,7 @@ public class DailyMissionData implements IGameXmlReader
{
_dailyMissionRewards.clear();
parseDatapackFile("data/DailyMission.xml");
_isAvailable = !_dailyMissionRewards.isEmpty();
LOGGER.info(getClass().getSimpleName() + ": Loaded " + _dailyMissionRewards.size() + " one day rewards.");
}
@@ -124,6 +126,11 @@ public class DailyMissionData implements IGameXmlReader
return _dailyMissionRewards.get(id);
}
public boolean isAvailable()
{
return _isAvailable;
}
/**
* Gets the single instance of DailyMissionData.
* @return single instance of DailyMissionData

View File

@@ -68,7 +68,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExAutoSoulShot;
import com.l2jmobius.gameserver.network.serverpackets.ExBasicActionList;
import com.l2jmobius.gameserver.network.serverpackets.ExBeautyItemList;
import com.l2jmobius.gameserver.network.serverpackets.ExCastleState;
import com.l2jmobius.gameserver.network.serverpackets.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.ExGetBookMarkInfoPacket;
import com.l2jmobius.gameserver.network.serverpackets.ExNoticePostArrived;
import com.l2jmobius.gameserver.network.serverpackets.ExNotifyPremiumItem;
@@ -99,6 +98,7 @@ import com.l2jmobius.gameserver.network.serverpackets.SkillCoolTime;
import com.l2jmobius.gameserver.network.serverpackets.SkillList;
import com.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import com.l2jmobius.gameserver.network.serverpackets.attendance.ExVipAttendanceItemList;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExConnectedTimeAndGettableReward;
import com.l2jmobius.gameserver.network.serverpackets.dailymission.ExOneDayReceiveRewardList;
import com.l2jmobius.gameserver.network.serverpackets.friend.L2FriendList;

View File

@@ -14,10 +14,12 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jmobius.gameserver.network.serverpackets;
package com.l2jmobius.gameserver.network.serverpackets.dailymission;
import com.l2jmobius.commons.network.PacketWriter;
import com.l2jmobius.gameserver.data.xml.impl.DailyMissionData;
import com.l2jmobius.gameserver.network.OutgoingPackets;
import com.l2jmobius.gameserver.network.serverpackets.IClientOutgoingPacket;
/**
* @author Sdw
@@ -29,6 +31,11 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_CONNECTED_TIME_AND_GETTABLE_REWARD.writeId(packet);
for (int i = 0; i < 16; i++) // TODO : Find what the hell it is
{
@@ -36,5 +43,4 @@ public class ExConnectedTimeAndGettableReward implements IClientOutgoingPacket
}
return true;
}
}

View File

@@ -43,6 +43,11 @@ public class ExOneDayReceiveRewardList implements IClientOutgoingPacket
@Override
public boolean write(PacketWriter packet)
{
if (!DailyMissionData.getInstance().isAvailable())
{
return true;
}
OutgoingPackets.EX_ONE_DAY_RECEIVE_REWARD_LIST.writeId(packet);
packet.writeC(0x23);