This commit is contained in:
2022-06-23 20:45:41 +04:00
parent 04b1b16b11
commit 05c8904601
47 changed files with 781 additions and 715 deletions
@@ -0,0 +1,29 @@
using System;
using System.Threading.Tasks;
using Ragon.Core;
namespace Game.Source;
public class AuthorizationProviderByKey: IAuthorizationProvider
{
private Configuration _configuration;
public AuthorizationProviderByKey(Configuration configuration)
{
_configuration = configuration;
}
public async Task OnAuthorizationRequest(string key, string name, byte protocol, byte[] additionalData, Action<string, string> accept, Action<uint> reject)
{
if (key == _configuration.Key)
{
var playerId = Guid.NewGuid().ToString();
var playerName = name;
accept(playerId, playerName);
}
else
{
reject(0);
}
}
}
+28
View File
@@ -0,0 +1,28 @@
using Ragon.Core;
namespace Game.Source
{
public class SimplePlugin: PluginBase
{
public override void OnStart()
{
_logger.Info("Plugin started");
}
public override void OnStop()
{
_logger.Info("Plugin stopped");
}
public override void OnPlayerJoined(Player player)
{
_logger.Info($"Player({player.PlayerName}) joined to Room({GameRoom.Id})");
}
public override void OnPlayerLeaved(Player player)
{
_logger.Info($"Player({player.PlayerName}) left from Room({GameRoom.Id})");
}
}
}
@@ -0,0 +1,18 @@
using System.Runtime.InteropServices;
using Ragon.Core;
namespace Game.Source
{
public class SimplePluginFactory : PluginFactory
{
public PluginBase CreatePlugin(string map)
{
return new SimplePlugin();
}
public IAuthorizationProvider CreateAuthorizationProvider(Configuration configuration)
{
return new AuthorizationProviderByKey(configuration);
}
}
}