Fixed non-existent hero legend rank NPE.

This commit is contained in:
MobiusDevelopment
2022-10-19 21:14:52 +00:00
parent fc4ae26cc6
commit 525f7e018a
3 changed files with 48 additions and 30 deletions

View File

@@ -922,7 +922,6 @@ public class Hero
*/
public void claimHero(Player player)
{
final int legendId = RankManager.getInstance().getOlyRankList().get(1).getInt("charId", 0);
StatSet hero = HEROES.get(player.getObjectId());
if (hero == null)
{
@@ -943,19 +942,26 @@ public class Hero
}
player.setHero(true);
if (player.getObjectId() == legendId)
final StatSet legendRank = RankManager.getInstance().getOlyRankList().get(1);
if (legendRank != null)
{
player.setLegend(true);
player.getVariables().set(ALLY_NAME, false);
if ((clan != null) && (clan.getLevel() >= 5))
final int legendId = legendRank.getInt("charId", 0);
if (player.getObjectId() == legendId)
{
clan.addReputationScore(100000);
final SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_MEMBER_C1_WAS_NAMED_A_HERO_S2_POINTS_HAVE_BEEN_ADDED_TO_YOUR_CLAN_REPUTATION);
sm.addString(CharNameTable.getInstance().getNameById(player.getObjectId()));
sm.addInt(Config.HERO_POINTS);
clan.broadcastToOnlineMembers(sm);
player.setLegend(true);
player.getVariables().set(ALLY_NAME, false);
if ((clan != null) && (clan.getLevel() >= 5))
{
clan.addReputationScore(100000);
final SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_MEMBER_C1_WAS_NAMED_A_HERO_S2_POINTS_HAVE_BEEN_ADDED_TO_YOUR_CLAN_REPUTATION);
sm.addString(CharNameTable.getInstance().getNameById(player.getObjectId()));
sm.addInt(Config.HERO_POINTS);
clan.broadcastToOnlineMembers(sm);
}
}
}
player.broadcastPacket(new SocialAction(player.getObjectId(), 20016)); // Hero Animation
player.sendPacket(new UserInfo(player));
player.broadcastUserInfo();

View File

@@ -922,7 +922,6 @@ public class Hero
*/
public void claimHero(Player player)
{
final int legendId = RankManager.getInstance().getOlyRankList().get(1).getInt("charId", 0);
StatSet hero = HEROES.get(player.getObjectId());
if (hero == null)
{
@@ -943,19 +942,26 @@ public class Hero
}
player.setHero(true);
if (player.getObjectId() == legendId)
final StatSet legendRank = RankManager.getInstance().getOlyRankList().get(1);
if (legendRank != null)
{
player.setLegend(true);
player.getVariables().set(ALLY_NAME, false);
if ((clan != null) && (clan.getLevel() >= 5))
final int legendId = legendRank.getInt("charId", 0);
if (player.getObjectId() == legendId)
{
clan.addReputationScore(100000);
final SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_MEMBER_C1_WAS_NAMED_A_HERO_S2_POINTS_HAVE_BEEN_ADDED_TO_YOUR_CLAN_REPUTATION);
sm.addString(CharNameTable.getInstance().getNameById(player.getObjectId()));
sm.addInt(Config.HERO_POINTS);
clan.broadcastToOnlineMembers(sm);
player.setLegend(true);
player.getVariables().set(ALLY_NAME, false);
if ((clan != null) && (clan.getLevel() >= 5))
{
clan.addReputationScore(100000);
final SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_MEMBER_C1_WAS_NAMED_A_HERO_S2_POINTS_HAVE_BEEN_ADDED_TO_YOUR_CLAN_REPUTATION);
sm.addString(CharNameTable.getInstance().getNameById(player.getObjectId()));
sm.addInt(Config.HERO_POINTS);
clan.broadcastToOnlineMembers(sm);
}
}
}
player.broadcastPacket(new SocialAction(player.getObjectId(), 20016)); // Hero Animation
player.sendPacket(new UserInfo(player));
player.broadcastUserInfo();

View File

@@ -922,7 +922,6 @@ public class Hero
*/
public void claimHero(Player player)
{
final int legendId = RankManager.getInstance().getOlyRankList().get(1).getInt("charId", 0);
StatSet hero = HEROES.get(player.getObjectId());
if (hero == null)
{
@@ -943,19 +942,26 @@ public class Hero
}
player.setHero(true);
if (player.getObjectId() == legendId)
final StatSet legendRank = RankManager.getInstance().getOlyRankList().get(1);
if (legendRank != null)
{
player.setLegend(true);
player.getVariables().set(ALLY_NAME, false);
if ((clan != null) && (clan.getLevel() >= 5))
final int legendId = legendRank.getInt("charId", 0);
if (player.getObjectId() == legendId)
{
clan.addReputationScore(100000);
final SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_MEMBER_C1_HAS_BECOME_THE_HERO_CLAN_REPUTATION_POINTS_S2);
sm.addString(CharNameTable.getInstance().getNameById(player.getObjectId()));
sm.addInt(Config.HERO_POINTS);
clan.broadcastToOnlineMembers(sm);
player.setLegend(true);
player.getVariables().set(ALLY_NAME, false);
if ((clan != null) && (clan.getLevel() >= 5))
{
clan.addReputationScore(100000);
final SystemMessage sm = new SystemMessage(SystemMessageId.CLAN_MEMBER_C1_HAS_BECOME_THE_HERO_CLAN_REPUTATION_POINTS_S2);
sm.addString(CharNameTable.getInstance().getNameById(player.getObjectId()));
sm.addInt(Config.HERO_POINTS);
clan.broadcastToOnlineMembers(sm);
}
}
}
player.broadcastPacket(new SocialAction(player.getObjectId(), 20016)); // Hero Animation
player.sendPacket(new UserInfo(player));
player.broadcastUserInfo();