private void TurnOn(Entity entity) { if (!TwitchBridge.On) { entity.RemoveComponent <PlayerInputComponent>(); var id = TwitchBridge.TwitchUsername; sign.GetComponent <DialogComponent>().Start("logging_in"); new Thread(() => { TwitchBridge.TurnOn(GlobalSave.GetString("twitch_username"), (ok) => { if (ok) { base.Interact(entity); } else { sign.GetComponent <DialogComponent>().StartAndClose($"{Locale.Get("failed_to_login")}\n[cl purple]{id}[cl]", 3); entity.AddComponent(new PlayerInputComponent()); } }); }).Start(); } else { base.Interact(entity); } }
protected override bool Interact(Entity entity) { if (TwitchBridge.On && TwitchBridge.LastUsername != GlobalSave.GetString("twitch_username")) { TwitchBridge.TurnOff(() => { TurnOn(entity); }); } else { TurnOn(entity); } return(true); }