Skip to content

event handler

mtanksl edited this page Apr 17, 2023 · 9 revisions

Introduction

Commands may generate events, which can be listened by Event Handlers.

Example

Let's listen to the PlayerLoginEventArgs, which occurs when any player logs in the game.

public class PlayerLoginScripts : Script
{
    private Guid token;

    public override void Start(Server server)
    {
        token = server.EventHandlers.Subscribe<PlayerLoginEventArgs>( (context, e) =>
        {
            server.Logger.WriteLine(e.Player.Name + " login.", LogLevel.Information);

            return Promise.Completed;
        } );
    }

    public override void Stop(Server server)
    {
        server.EventHandlers.Unsubscribe<PlayerLoginEventArgs>(token);
    }
}
Clone this wiki locally