Fix Challenge Boss Exception when no lightcone

This commit is contained in:
Somebody
2024-09-15 18:53:30 +08:00
parent c918b14b04
commit f2af54e254
2 changed files with 9 additions and 3 deletions

View File

@@ -182,7 +182,10 @@ public class ChallengeInstance
var avatar = Player.AvatarManager?.GetAvatar(lineupAvatar.BaseAvatarId);
if (avatar == null) continue;
proto.BossInfo.FirstLineup.Add((uint)avatar.GetAvatarId());
proto.BossInfo.ChallengeAvatarEquipmentMap.Add((uint)avatar.GetAvatarId(), Player.InventoryManager?.GetItem(0, avatar.GetCurPathInfo().EquipId, ItemMainTypeEnum.Equipment)?.ToChallengeEquipmentProto()); // it wont be null
var equip = Player.InventoryManager?.GetItem(0, avatar.GetCurPathInfo().EquipId,
ItemMainTypeEnum.Equipment);
if (equip != null)
proto.BossInfo.ChallengeAvatarEquipmentMap.Add((uint)avatar.GetAvatarId(), equip.ToChallengeEquipmentProto());
var relicProto = new ChallengeBossAvatarRelicInfo();
@@ -200,7 +203,10 @@ public class ChallengeInstance
var avatar = Player.AvatarManager?.GetAvatar(lineupAvatar.BaseAvatarId);
if (avatar == null) continue;
proto.BossInfo.FirstLineup.Add((uint)avatar.GetAvatarId());
proto.BossInfo.ChallengeAvatarEquipmentMap.Add((uint)avatar.GetAvatarId(), Player.InventoryManager?.GetItem(0, avatar.GetCurPathInfo().EquipId, ItemMainTypeEnum.Equipment)?.ToChallengeEquipmentProto()); // it wont be null
var equip = Player.InventoryManager?.GetItem(0, avatar.GetCurPathInfo().EquipId,
ItemMainTypeEnum.Equipment);
if (equip != null)
proto.BossInfo.ChallengeAvatarEquipmentMap.Add((uint)avatar.GetAvatarId(), equip.ToChallengeEquipmentProto());
var relicProto = new ChallengeBossAvatarRelicInfo();

View File

@@ -347,7 +347,7 @@ public class InventoryManager(PlayerInstance player) : BasePlayerManager(player)
case ItemMainTypeEnum.Relic:
return uniqueId > 0 ? Data.RelicItems.Find(x => x.UniqueId == uniqueId) : Data.RelicItems.Find(x => x.ItemId == itemId);
case ItemMainTypeEnum.Virtual:
switch (itemConfig.ID)
switch (itemConfig?.ID ?? 0)
{
case 1:
return new ItemData