Fix: 보스 레이드 입장 실패 시 구체적 사유 전달
IntoBossRaidPacket에 Reason 필드 추가. 파티 없음, 파티장 아님, API 실패 등 실패 사유를 클라이언트에 전달하여 유저에게 안내. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1269,7 +1269,7 @@ public class GameServer : ServerBase
|
|||||||
{
|
{
|
||||||
Log.Warning("[GameServer] INTO_BOSS_RAID 파티 없음 HashKey={Key}", hashKey);
|
Log.Warning("[GameServer] INTO_BOSS_RAID 파티 없음 HashKey={Key}", hashKey);
|
||||||
SendTo(peer, PacketSerializer.Serialize((ushort)PacketCode.INTO_BOSS_RAID,
|
SendTo(peer, PacketSerializer.Serialize((ushort)PacketCode.INTO_BOSS_RAID,
|
||||||
new IntoBossRaidPacket { RaidId = packet.RaidId, IsSuccess = false }));
|
new IntoBossRaidPacket { RaidId = packet.RaidId, IsSuccess = false, Reason = "파티에 속해있지 않습니다." }));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1278,7 +1278,7 @@ public class GameServer : ServerBase
|
|||||||
{
|
{
|
||||||
Log.Warning("[GameServer] INTO_BOSS_RAID 파티장 아님 HashKey={Key} LeaderId={LeaderId}", hashKey, party.LeaderId);
|
Log.Warning("[GameServer] INTO_BOSS_RAID 파티장 아님 HashKey={Key} LeaderId={LeaderId}", hashKey, party.LeaderId);
|
||||||
SendTo(peer, PacketSerializer.Serialize((ushort)PacketCode.INTO_BOSS_RAID,
|
SendTo(peer, PacketSerializer.Serialize((ushort)PacketCode.INTO_BOSS_RAID,
|
||||||
new IntoBossRaidPacket { RaidId = packet.RaidId, IsSuccess = false }));
|
new IntoBossRaidPacket { RaidId = packet.RaidId, IsSuccess = false, Reason = "파티장만 보스 레이드를 시작할 수 있습니다." }));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1303,7 +1303,7 @@ public class GameServer : ServerBase
|
|||||||
{
|
{
|
||||||
SendTo(peer,
|
SendTo(peer,
|
||||||
PacketSerializer.Serialize((ushort)PacketCode.INTO_BOSS_RAID,
|
PacketSerializer.Serialize((ushort)PacketCode.INTO_BOSS_RAID,
|
||||||
new IntoBossRaidPacket { RaidId = -1, IsSuccess = false }));
|
new IntoBossRaidPacket { RaidId = -1, IsSuccess = false, Reason = "보스 레이드 방을 배정받지 못했습니다. 잠시 후 다시 시도해주세요." }));
|
||||||
|
|
||||||
Log.Debug("[GameServer] INTO_BOSS_RAID HashKey={Key} PartyId={PartyId} AssignedRaidMapId={RaidId} Failed", hashKey,
|
Log.Debug("[GameServer] INTO_BOSS_RAID HashKey={Key} PartyId={PartyId} AssignedRaidMapId={RaidId} Failed", hashKey,
|
||||||
party.PartyId, -1);
|
party.PartyId, -1);
|
||||||
|
|||||||
@@ -827,6 +827,14 @@ public class IntoBossRaidPacket
|
|||||||
get;
|
get;
|
||||||
set;
|
set;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 실패 사유 (서버 -> 클라, IsSuccess == false 시)
|
||||||
|
[ProtoMember(5)]
|
||||||
|
public string Reason
|
||||||
|
{
|
||||||
|
get;
|
||||||
|
set;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// PARTY_CHANGE_MAP (클라 -> 서버 전용)
|
// PARTY_CHANGE_MAP (클라 -> 서버 전용)
|
||||||
|
|||||||
Reference in New Issue
Block a user