Function EventListener

  • A decorator to attach to a method to create a listener for an event that gets emitted on the server or a room.

    Type Parameters

    • EventName extends "component.spawn" | "component.despawn" | "player.checkcolor" | "player.checkmurder" | "player.checkname" | "player.checkprotect" | "player.completetask" | "player.die" | "player.usemovingplatform" | "player.murder" | "player.protect" | "player.removeprotection" | "player.reportbody" | "player.revertshapeshift" | "player.chat" | "player.quickchat" | "player.setcolor" | "player.sethat" | "player.setname" | "player.setnameplate" | "player.setpet" | "player.setrole" | "player.setskin" | "player.setstartcounter" | "player.setvisor" | "player.shapeshift" | "player.startmeeting" | "player.syncsettings" | "player.entervent" | "player.exitvent" | "player.climbladder" | "player.move" | "player.snapto" | "player.ready" | "player.join" | "player.leave" | "player.sethost" | "player.scenechange" | "player.spawn" | "gamedata.addplayer" | "gamedata.removeplayer" | "gamedata.settasks" | "meeting.castvote" | "meeting.clearvote" | "meeting.votingcomplete" | "meeting.close" | "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "decon.doors.close" | "decon.doors.open" | "decon.enter" | "decon.exit" | "hqhud.consoles.reset" | "hqhud.consoles.open" | "hqhud.consoles.close" | "hqhud.consoles.complete" | "heli.consoles.open" | "heli.consoles.reset" | "heli.consoles.close" | "heli.consoles.complete" | "o2.consoles.clear" | "o2.consoles.complete" | "medscan.joinqueue" | "medscan.leavequeue" | "movingplatform.updateplayer" | "reactor.consoles.add" | "reactor.consoles.remove" | "reactor.consoles.reset" | "security.cameras.join" | "security.cameras.leave" | "electrical.switchflip" | "room.assignroles" | "room.endgameintent" | "room.fixedupdate" | "room.gameend" | "room.gamestart" | "room.setprivacy" | "client.broadcast" | "client.leave" | "room.beforedestroy" | "room.create" | "room.destroy" | "room.selecthost" | "client.ban" | "client.connect" | "client.disconnect" | "room.beforecreate" | "worker.beforejoin" | "worker.getgamelist" | "worker.loadplugin"

    Parameters

    • eventName: EventName

      The name of the event to listen for.

    Returns MethodDecorator<((ev: WorkerEvents[EventName]) => any)>

  • A decorator to attach to a method to create a listener for an event that gets emitted on the server or a room.

    Type Parameters

    • EventName extends "component.spawn" | "component.despawn" | "player.checkcolor" | "player.checkmurder" | "player.checkname" | "player.checkprotect" | "player.completetask" | "player.die" | "player.usemovingplatform" | "player.murder" | "player.protect" | "player.removeprotection" | "player.reportbody" | "player.revertshapeshift" | "player.chat" | "player.quickchat" | "player.setcolor" | "player.sethat" | "player.setname" | "player.setnameplate" | "player.setpet" | "player.setrole" | "player.setskin" | "player.setstartcounter" | "player.setvisor" | "player.shapeshift" | "player.startmeeting" | "player.syncsettings" | "player.entervent" | "player.exitvent" | "player.climbladder" | "player.move" | "player.snapto" | "player.ready" | "player.join" | "player.leave" | "player.sethost" | "player.scenechange" | "player.spawn" | "gamedata.addplayer" | "gamedata.removeplayer" | "gamedata.settasks" | "meeting.castvote" | "meeting.clearvote" | "meeting.votingcomplete" | "meeting.close" | "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "decon.doors.close" | "decon.doors.open" | "decon.enter" | "decon.exit" | "hqhud.consoles.reset" | "hqhud.consoles.open" | "hqhud.consoles.close" | "hqhud.consoles.complete" | "heli.consoles.open" | "heli.consoles.reset" | "heli.consoles.close" | "heli.consoles.complete" | "o2.consoles.clear" | "o2.consoles.complete" | "medscan.joinqueue" | "medscan.leavequeue" | "movingplatform.updateplayer" | "reactor.consoles.add" | "reactor.consoles.remove" | "reactor.consoles.reset" | "security.cameras.join" | "security.cameras.leave" | "electrical.switchflip" | "room.assignroles" | "room.endgameintent" | "room.fixedupdate" | "room.gameend" | "room.gamestart" | "room.setprivacy" | "client.broadcast" | "client.leave" | "room.beforedestroy" | "room.create" | "room.destroy" | "room.selecthost" | "client.ban" | "client.connect" | "client.disconnect" | "room.beforecreate" | "worker.beforejoin" | "worker.getgamelist" | "worker.loadplugin"

    Parameters

    • eventTarget: any

      The class of the plugin to create a listener for.

    • eventName: EventName

      The name of the event to listen for.

    Returns MethodDecorator<((ev: WorkerEvents[EventName]) => any)>

  • A decorator to attach to a method to create a listener for an event that gets emitted on the server, a room or another plugin.

    Parameters

    • eventName: string

      The name of the event to listen for.

    Returns MethodDecorator<((ev: any) => any)>

  • A decorator to attach to a method to create a listener for an event that gets emitted on the server, a room or another plugin.

    Parameters

    • eventTarget: any

      The class of the plugin to create a listener for.

    • eventName: string

      The name of the event to listen for.

    Returns MethodDecorator<((ev: any) => any)>

  • A decorator to attach to a method to create a listener for an event that gets emitted on the server, a room or another plugin. This can only be used if you're writing your plugin in TypeScript, where the method this is attached to can emit type metadata, given that you pass in the type of the event to listen for.

    Example

    .@EventListener()
    onPlayerSetColor(ev: PlayerSetColorEvent<Room>) {
    this.logger.info("Player %s set their color to %s",
    ev.player, Color[ev.newColor]);
    }

    Returns MethodDecorator<((ev: any) => any)>

  • A decorator to attach to a method to create a listener for an event that gets emitted on the server, a room or another plugin. This can only be used if you're writing your plugin in TypeScript, where the method this is attached to can emit type metadata, given that you pass in the type of the event to listen for.

    Example

    .@EventListener()
    onPlayerSetColor(FunThingsPlugin, ev: PlayerSetColorEvent<Room>) {
    this.logger.info("Player %s set their color to %s",
    ev.player, Color[ev.newColor]);
    }

    Parameters

    • eventTarget: any

    Returns MethodDecorator<((ev: any) => any)>

Generated using TypeDoc