DailyMissionHandler NPE fix and cleanups.

This commit is contained in:
MobiusDevelopment
2022-11-08 22:28:09 +00:00
parent db5d726793
commit 15d0e1dc0f
12 changed files with 48 additions and 110 deletions

View File

@@ -99,12 +99,7 @@ public class CeremonyOfChaosDailyMissionHandler extends AbstractDailyMissionHand
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -141,12 +141,7 @@ public class CombinationDailyMissionHandler extends AbstractDailyMissionHandler
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -102,12 +102,10 @@ public class EnchantDailyMissionHandler extends AbstractDailyMissionHandler
{ {
return; return;
} }
if (((_requiredMissionCompleteId != 0) && checkRequiredMission(player)) || (_requiredMissionCompleteId == 0)) if ((((_requiredMissionCompleteId != 0) && checkRequiredMission(player)) || (_requiredMissionCompleteId == 0)) //
&& _itemIds.contains(event.getItem().getId()) && (player.getInventory().getItemByObjectId(event.getItem().getObjectId()).getEnchantLevel() >= _targetValue))
{ {
if (_itemIds.contains(event.getItem().getId()) && (player.getInventory().getItemByObjectId(event.getItem().getObjectId()).getEnchantLevel() >= _targetValue)) processPlayerProgress(player);
{
processPlayerProgress(player);
}
} }
} }
@@ -126,12 +124,7 @@ public class EnchantDailyMissionHandler extends AbstractDailyMissionHandler
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -182,7 +182,6 @@ public class MonsterDailyMissionHandler extends AbstractDailyMissionHandler
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionId = missionEntry != null ? missionEntry.getRewardId() : 0; return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
return (missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
} }
} }

View File

@@ -82,13 +82,11 @@ public class NoblesseDailyMissionHandler extends AbstractDailyMissionHandler
{ {
return; return;
} }
// Check if player is belonging to a clan and is noble
if ((player.getClan() != null) && (player.getNobleLevel() > 0)) // Check if player is belonging to a clan and is noble.
if ((player.getClan() != null) && (player.getNobleLevel() > 0) && (player.getNobleLevel() == 1))
{ {
if (player.getNobleLevel() == 1) processPlayerProgress(player);
{
processPlayerProgress(player);
}
} }
} }

View File

@@ -80,44 +80,33 @@ public class OlympiadDailyMissionHandler extends AbstractDailyMissionHandler
if (event.getWinner() != null) if (event.getWinner() != null)
{ {
final DailyMissionPlayerEntry winnerEntry = getPlayerEntry(event.getWinner().getObjectId(), true); final DailyMissionPlayerEntry winnerEntry = getPlayerEntry(event.getWinner().getObjectId(), true);
if (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getWinner().getPlayer())) || (_requiredMissionCompleteId == 0)) if ((winnerEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) && (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getWinner().getPlayer())) || (_requiredMissionCompleteId == 0)))
{ {
if (winnerEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) if (winnerEntry.increaseProgress() >= _amount)
{ {
if (winnerEntry.increaseProgress() >= _amount) winnerEntry.setStatus(DailyMissionStatus.AVAILABLE);
{
winnerEntry.setStatus(DailyMissionStatus.AVAILABLE);
}
storePlayerEntry(winnerEntry);
} }
storePlayerEntry(winnerEntry);
} }
} }
if (!_winOnly && (event.getLoser() != null)) if (!_winOnly && (event.getLoser() != null))
{ {
final DailyMissionPlayerEntry loseEntry = getPlayerEntry(event.getLoser().getObjectId(), true); final DailyMissionPlayerEntry loseEntry = getPlayerEntry(event.getLoser().getObjectId(), true);
if (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getLoser().getPlayer())) || (_requiredMissionCompleteId == 0)) if ((loseEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) && (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getLoser().getPlayer())) || (_requiredMissionCompleteId == 0)))
{ {
if (loseEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) if (loseEntry.increaseProgress() >= _amount)
{ {
if (loseEntry.increaseProgress() >= _amount) loseEntry.setStatus(DailyMissionStatus.AVAILABLE);
{
loseEntry.setStatus(DailyMissionStatus.AVAILABLE);
}
storePlayerEntry(loseEntry);
} }
storePlayerEntry(loseEntry);
} }
} }
} }
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -99,12 +99,7 @@ public class CeremonyOfChaosDailyMissionHandler extends AbstractDailyMissionHand
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -141,12 +141,7 @@ public class CombinationDailyMissionHandler extends AbstractDailyMissionHandler
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -102,12 +102,10 @@ public class EnchantDailyMissionHandler extends AbstractDailyMissionHandler
{ {
return; return;
} }
if (((_requiredMissionCompleteId != 0) && checkRequiredMission(player)) || (_requiredMissionCompleteId == 0)) if ((((_requiredMissionCompleteId != 0) && checkRequiredMission(player)) || (_requiredMissionCompleteId == 0)) //
&& _itemIds.contains(event.getItem().getId()) && (player.getInventory().getItemByObjectId(event.getItem().getObjectId()).getEnchantLevel() >= _targetValue))
{ {
if (_itemIds.contains(event.getItem().getId()) && (player.getInventory().getItemByObjectId(event.getItem().getObjectId()).getEnchantLevel() >= _targetValue)) processPlayerProgress(player);
{
processPlayerProgress(player);
}
} }
} }
@@ -126,12 +124,7 @@ public class EnchantDailyMissionHandler extends AbstractDailyMissionHandler
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }

View File

@@ -182,7 +182,6 @@ public class MonsterDailyMissionHandler extends AbstractDailyMissionHandler
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionId = missionEntry != null ? missionEntry.getRewardId() : 0; return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
return (missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
} }
} }

View File

@@ -82,13 +82,11 @@ public class NoblesseDailyMissionHandler extends AbstractDailyMissionHandler
{ {
return; return;
} }
// Check if player is belonging to a clan and is noble
if ((player.getClan() != null) && (player.getNobleLevel() > 0)) // Check if player is belonging to a clan and is noble.
if ((player.getClan() != null) && (player.getNobleLevel() > 0) && (player.getNobleLevel() == 1))
{ {
if (player.getNobleLevel() == 1) processPlayerProgress(player);
{
processPlayerProgress(player);
}
} }
} }

View File

@@ -80,44 +80,33 @@ public class OlympiadDailyMissionHandler extends AbstractDailyMissionHandler
if (event.getWinner() != null) if (event.getWinner() != null)
{ {
final DailyMissionPlayerEntry winnerEntry = getPlayerEntry(event.getWinner().getObjectId(), true); final DailyMissionPlayerEntry winnerEntry = getPlayerEntry(event.getWinner().getObjectId(), true);
if (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getWinner().getPlayer())) || (_requiredMissionCompleteId == 0)) if ((winnerEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) && (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getWinner().getPlayer())) || (_requiredMissionCompleteId == 0)))
{ {
if (winnerEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) if (winnerEntry.increaseProgress() >= _amount)
{ {
if (winnerEntry.increaseProgress() >= _amount) winnerEntry.setStatus(DailyMissionStatus.AVAILABLE);
{
winnerEntry.setStatus(DailyMissionStatus.AVAILABLE);
}
storePlayerEntry(winnerEntry);
} }
storePlayerEntry(winnerEntry);
} }
} }
if (!_winOnly && (event.getLoser() != null)) if (!_winOnly && (event.getLoser() != null))
{ {
final DailyMissionPlayerEntry loseEntry = getPlayerEntry(event.getLoser().getObjectId(), true); final DailyMissionPlayerEntry loseEntry = getPlayerEntry(event.getLoser().getObjectId(), true);
if (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getLoser().getPlayer())) || (_requiredMissionCompleteId == 0)) if ((loseEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) && (((_requiredMissionCompleteId != 0) && checkRequiredMission(event.getLoser().getPlayer())) || (_requiredMissionCompleteId == 0)))
{ {
if (loseEntry.getStatus() == DailyMissionStatus.NOT_AVAILABLE) if (loseEntry.increaseProgress() >= _amount)
{ {
if (loseEntry.increaseProgress() >= _amount) loseEntry.setStatus(DailyMissionStatus.AVAILABLE);
{
loseEntry.setStatus(DailyMissionStatus.AVAILABLE);
}
storePlayerEntry(loseEntry);
} }
storePlayerEntry(loseEntry);
} }
} }
} }
private boolean checkRequiredMission(Player player) private boolean checkRequiredMission(Player player)
{ {
final int missionId = getPlayerEntry(player.getObjectId(), false).getRewardId(); final DailyMissionPlayerEntry missionEntry = getPlayerEntry(player.getObjectId(), false);
final int missionStatus = getStatus(player); return (missionEntry != null) && (_requiredMissionCompleteId != 0) && (missionEntry.getRewardId() == _requiredMissionCompleteId) && (getStatus(player) == DailyMissionStatus.COMPLETED.getClientId());
if ((missionId != 0) && (_requiredMissionCompleteId != 0) && (missionId == _requiredMissionCompleteId) && (missionStatus == DailyMissionStatus.COMPLETED.getClientId()))
{
return true;
}
return false;
} }
} }