Add PlayerJoined event

This commit is contained in:
Drew DeVault 2015-01-01 19:49:53 -07:00
parent c059b1b847
commit c2b7e4b065
4 changed files with 24 additions and 0 deletions

View File

@ -16,6 +16,7 @@ namespace TrueCraft.API.Server
public interface IMultiplayerServer
{
event EventHandler<ChatMessageEventArgs> ChatMessageReceived;
event EventHandler<PlayerJoinedEventArgs> PlayerJoined;
IPacketReader PacketReader { get; }
IList<IRemoteClient> Clients { get; }

View File

@ -0,0 +1,15 @@
using System;
using TrueCraft.API.Networking;
namespace TrueCraft.API.Server
{
public class PlayerJoinedEventArgs : EventArgs
{
public IRemoteClient Client { get; set; }
public PlayerJoinedEventArgs(IRemoteClient client)
{
Client = client;
}
}
}

View File

@ -74,6 +74,7 @@
<Compile Include="ChatColor.cs" />
<Compile Include="Server\ChatMessageEventArgs.cs" />
<Compile Include="BlockFace.cs" />
<Compile Include="Server\PlayerJoinedEventArgs.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>

View File

@ -16,6 +16,7 @@ namespace TrueCraft
public class MultiplayerServer : IMultiplayerServer
{
public event EventHandler<ChatMessageEventArgs> ChatMessageReceived;
public event EventHandler<PlayerJoinedEventArgs> PlayerJoined;
public IPacketReader PacketReader { get; private set; }
public IList<IRemoteClient> Clients { get; private set; }
@ -125,6 +126,12 @@ namespace TrueCraft
ChatMessageReceived(this, e);
}
protected internal void OnPlayerJoined(PlayerJoinedEventArgs e)
{
if (PlayerJoined != null)
PlayerJoined(this, e);
}
private void DisconnectClient(IRemoteClient _client)
{
var client = (RemoteClient)_client;