fix: avoid adding invalid avatar

This commit is contained in:
StopWuyu
2025-06-07 16:20:15 +08:00
parent 8476c80d6c
commit 64a06ca2dd
4 changed files with 4 additions and 2 deletions

View File

@@ -20,5 +20,6 @@ public enum ConditionTypeEnum
ReleaseContentPackage = 15,
SubMissionTaken = 16,
HasItemMainType = 17,
FinishSimulatedRogueAreaProgress = 20
FinishSimulatedRogueAreaProgress = 20,
RealFinishSubMission = 21
}

View File

@@ -20,6 +20,7 @@ public class AvatarManager(PlayerInstance player) : BasePlayerManager(player)
{
GameData.AvatarConfigData.TryGetValue(avatarId, out var avatarExcel);
if (avatarExcel == null) return null;
if (avatarExcel.MaxRank < 6) return null;
GameData.MultiplePathAvatarConfigData.TryGetValue(avatarId, out var multiPathAvatar);
if (multiPathAvatar != null && multiPathAvatar.BaseAvatarID != avatarId)

View File

@@ -33,6 +33,7 @@ public class UnlockHandler(PlayerInstance player)
if (Player.Data.Level < int.Parse(condition.Param)) return false;
break;
case ConditionTypeEnum.FinishSubMission:
case ConditionTypeEnum.RealFinishSubMission:
if (Player.MissionManager?.GetSubMissionStatus(int.Parse(condition.Param)) !=
MissionPhaseEnum.Finish) return false;
break;

View File

@@ -18,7 +18,6 @@ using EggLink.DanhengServer.GameServer.Game.Scene.Entity;
using EggLink.DanhengServer.GameServer.Server.Packet.Send.Scene;
using EggLink.DanhengServer.Proto;
using EggLink.DanhengServer.Util;
using System.Management;
namespace EggLink.DanhengServer.GameServer.Game.Scene;