ddon-server/Arrowgene.Ddon.GameServer/Handler/ServerGameTimeGetBaseinfoHandler.cs
Paul Campbell 7c31026f77 feat: Server settings templates and defaults
- Server settings which are read by the C# server software now provide
  defaults in the server code.
- When the server loads, using reflection, it generates a csx setting file
  in a new script_templates directory. The server admin can copy these
  templates into the "settings" module to be loaded and override the
  default settings.
- Server defaults apply first, then settings provided in the script
  override the defaults. The script files only need to provide the
  settings they wish to override. They do not need to provide all
  settings.
- Removed the files GameLogicSettings.csx, SeasonalEvents.csx,
  ChatCommands.csx and PointModifiers.csx.
2025-02-25 20:09:04 -05:00

27 lines
1.2 KiB
C#

using Arrowgene.Ddon.Server;
using Arrowgene.Ddon.Shared.Entity.PacketStructure;
using Arrowgene.Logging;
namespace Arrowgene.Ddon.GameServer.Handler
{
public class ServerGameTimeGetBaseinfoHandler : GameRequestPacketHandler<C2SServerGameTimeGetBaseInfoReq, S2CServerGameTimeGetBaseInfoRes>
{
private static readonly ServerLogger Logger = LogProvider.Logger<ServerLogger>(typeof(ServerGameTimeGetBaseinfoHandler));
public ServerGameTimeGetBaseinfoHandler(DdonGameServer server) : base(server)
{
}
public override S2CServerGameTimeGetBaseInfoRes Handle(GameClient client, C2SServerGameTimeGetBaseInfoReq request)
{
var res = new S2CServerGameTimeGetBaseInfoRes();
res.GameTimeBaseInfo.OriginalGameTimeSec = WeatherManager.OriginalGameTimeSec;
res.GameTimeBaseInfo.OriginalRealTimeSec = WeatherManager.OriginalRealTimeSec;
res.GameTimeBaseInfo.GameTimeOneDayMin = Server.GameSettings.GameServerSettings.GameClockTimescale;
res.WeatherLoop = Server.WeatherManager.WeatherLoopList;
res.MoonAgeLoopSec = WeatherManager.MoonAgeLoopSec;
return res;
}
}
}