mirror of
https://github.com/EpinelPS/EpinelPS.git
synced 2025-12-23 20:34:46 +01:00
- Added new handlers for closing, entering, and opening solo raids and trials, including: - Close - ClosePractice - CloseTrial - Enter - EnterTrial - Open - OpenPractice - OpenTrial - Introduced FastBattle handler for quick battle functionality. - Implemented methods for getting level and badge data, including: - GetLevel - GetLevelPractice - GetLevelTrial - Implemented methods for setting damage, including: - SetDamage - SetDamagePractice - SetDamageTrial - Added logging and error handling for various operations. - Created SoloRaidHelper class to manage solo raid logic, including opening, closing, and setting damage. - Updated database models to include solo raid data structures. - Enhanced user model to store solo raid information.
28 lines
730 B
C#
28 lines
730 B
C#
using EpinelPS.Utils;
|
|
|
|
namespace EpinelPS.LobbyServer.Soloraid;
|
|
|
|
[PacketPath("/soloraid/close")]
|
|
public class Close : LobbyMsgHandler
|
|
{
|
|
protected override async Task HandleAsync()
|
|
{
|
|
// int RaidId, int RaidLevel
|
|
var req = await ReadData<ReqCloseSoloRaid>();
|
|
var user = GetUser();
|
|
ResCloseSoloRaid response = new()
|
|
{
|
|
PeriodResult = SoloRaidPeriodResult.Success
|
|
};
|
|
|
|
try
|
|
{
|
|
SoloRaidHelper.CloseSoloRaid(user, req.RaidId, req.RaidLevel, SoloRaidType.Normal);
|
|
}catch(Exception ex)
|
|
{
|
|
Logging.WriteLine($"CloseSoloRaid Error: {ex.Message}", LogType.Error);
|
|
}
|
|
|
|
await WriteDataAsync(response);
|
|
}
|
|
} |