When I Register an function as an event, the emit inside said function does not get called. The function it self is called (as tested by log). Now when I register the event using method 2, it works. Why is this?
Method 1 (Does not call event):
"use strict";
const EventEmitter = require("events");
class DiscordBot extends EventEmitter{
  constructor(key){
    super();
  }
  startBot(){
    var self = this;
    this.bot.on("ready",self.botReady);
  }
  botReady(){
    var self = this;
    self.emit("Bot_Ready");
    console.log("TESD");
  }
}
Method 2 (works):
"use strict";
const EventEmitter = require("events");
class DiscordBot extends EventEmitter{
  constructor(key){
    super();
  }
  startBot(){
    var self = this;
    this.bot.on("ready",function () {
      self.botReady();
    });
  }
  botReady(){
    var self = this;
    self.emit("Bot_Ready");
    console.log("TESD");
  }
}
Register:
    bot.on("Bot_Ready", function(){
    console.log('this happens ');
});
 
     
    