Moonbase 64273ab651 Code Cleanup
Rework How Room OPs Are Handled Per Room (if the game server itself isn't handling it, just send it to the room every time)
2026-10-09 14:36:32 -07:00

19 lines
825 B
C#

namespace ReboundEmulator.Core.Rooms
{
public interface IGameRoom
{
Task OnPlayerJoinedAsync(Room room, Player player);
Task OnPlayerLeftAsync(Room room, Player player);
Task<bool> OnMessageAsync(Room room, Player player, string op, Dictionary<string, string> msg);
Task OnGameJoinAsync(Room room, Player player);
}
public sealed class ChatOnlyRoom : IGameRoom
{
public Task<bool> OnMessageAsync(Room room, Player player, string op, Dictionary<string, string> msg) => Task.FromResult(false);
public Task OnPlayerJoinedAsync(Room room, Player player) => Task.CompletedTask;
public Task OnPlayerLeftAsync(Room room, Player player) => Task.CompletedTask;
public Task OnGameJoinAsync(Room room, Player player) => Task.CompletedTask;
}
}