[Friends] Better toasts
This commit is contained in:
parent
c51b14a0f2
commit
e6fb206d21
@ -197,17 +197,10 @@ namespace Components
|
||||
void ConnectProtocol::Invocation()
|
||||
{
|
||||
if (ConnectProtocol::Used())
|
||||
{
|
||||
if (!FastFiles::Ready())
|
||||
{
|
||||
QuickPatch::Once(ConnectProtocol::Invocation);
|
||||
}
|
||||
else
|
||||
{
|
||||
Command::Execute(Utils::String::VA("connect %s", ConnectProtocol::ConnectString.data()), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ConnectProtocol::ConnectProtocol()
|
||||
{
|
||||
@ -218,7 +211,7 @@ namespace Components
|
||||
});
|
||||
|
||||
// Invocation handler
|
||||
QuickPatch::Once(ConnectProtocol::Invocation);
|
||||
QuickPatch::OnReady(ConnectProtocol::Invocation);
|
||||
|
||||
ConnectProtocol::InstallProtocol();
|
||||
ConnectProtocol::EvaluateProtocol();
|
||||
|
@ -113,7 +113,8 @@ namespace Components
|
||||
|
||||
Friends::SortList();
|
||||
|
||||
if(Dvar::Var("cl_notifyFriendState").get<bool>() && gotOnline)
|
||||
int notify = Dvar::Var("cl_notifyFriendState").get<int>();
|
||||
if(gotOnline && (notify == -1 || (notify == 1 && !Game::CL_IsCgameInitialized())))
|
||||
{
|
||||
Toast::Show("cardicon_weed", entry->name, "Is playing IW4x", 3000);
|
||||
}
|
||||
@ -417,7 +418,7 @@ namespace Components
|
||||
{
|
||||
if (Dedicated::IsEnabled() ||ZoneBuilder::IsEnabled()) return;
|
||||
Dvar::Register<bool>("cl_anonymous", false, Game::DVAR_FLAG_SAVED, "");
|
||||
Dvar::Register<bool>("cl_notifyFriendState", false, Game::DVAR_FLAG_SAVED, ""); // False by default, might set default to true and add that to the options!
|
||||
Dvar::Register<int>("cl_notifyFriendState", 1, -1, 1, Game::DVAR_FLAG_SAVED, "");
|
||||
|
||||
// Hook Live_ShowFriendsList
|
||||
Utils::Hook(0x4D6C70, []()
|
||||
|
@ -2,6 +2,8 @@
|
||||
|
||||
namespace Components
|
||||
{
|
||||
bool QuickPatch::ReadyPassed = false;
|
||||
Utils::Signal<QuickPatch::Callback> QuickPatch::ReadySignal;
|
||||
Utils::Signal<QuickPatch::Callback> QuickPatch::ShutdownSignal;
|
||||
|
||||
int64_t* QuickPatch::GetStatsID()
|
||||
@ -10,6 +12,23 @@ namespace Components
|
||||
return &id;
|
||||
}
|
||||
|
||||
void QuickPatch::OnReady(Utils::Slot<QuickPatch::Callback> callback)
|
||||
{
|
||||
if(QuickPatch::ReadyPassed) QuickPatch::Once(callback);
|
||||
else QuickPatch::ReadySignal.connect(callback);
|
||||
}
|
||||
|
||||
void QuickPatch::ReadyHandler()
|
||||
{
|
||||
if (!FastFiles::Ready()) QuickPatch::Once(QuickPatch::ReadyHandler);
|
||||
else
|
||||
{
|
||||
QuickPatch::ReadyPassed = true;
|
||||
QuickPatch::ReadySignal();
|
||||
QuickPatch::ReadySignal.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void QuickPatch::OnShutdown(Utils::Slot<QuickPatch::Callback> callback)
|
||||
{
|
||||
QuickPatch::ShutdownSignal.connect(callback);
|
||||
@ -174,6 +193,9 @@ namespace Components
|
||||
|
||||
QuickPatch::QuickPatch()
|
||||
{
|
||||
QuickPatch::ReadyPassed = false;
|
||||
QuickPatch::Once(QuickPatch::ReadyHandler);
|
||||
|
||||
// Make sure preDestroy is called when the game shuts down
|
||||
QuickPatch::OnShutdown(Loader::PreDestroy);
|
||||
|
||||
@ -485,6 +507,7 @@ namespace Components
|
||||
|
||||
QuickPatch::~QuickPatch()
|
||||
{
|
||||
QuickPatch::ReadySignal.clear();
|
||||
QuickPatch::ShutdownSignal.clear();
|
||||
}
|
||||
|
||||
|
@ -18,16 +18,20 @@ namespace Components
|
||||
|
||||
static void UnlockStats();
|
||||
static void OnShutdown(Utils::Slot<Callback> callback);
|
||||
|
||||
static void OnFrame(Utils::Slot<Callback> callback);
|
||||
static void OnReady(Utils::Slot<Callback> callback);
|
||||
static void Once(Utils::Slot<Callback> callback);
|
||||
|
||||
private:
|
||||
static bool ReadyPassed;
|
||||
static Utils::Signal<Callback> ReadySignal;
|
||||
static Utils::Signal<Callback> ShutdownSignal;
|
||||
|
||||
static int64_t* GetStatsID();
|
||||
static void ShutdownStub(int num);
|
||||
|
||||
static void ReadyHandler();
|
||||
|
||||
static void SelectStringTableEntryInDvarStub();
|
||||
|
||||
static int MsgReadBitsCompressCheckSV(const char *from, char *to, int size);
|
||||
|
@ -124,8 +124,11 @@ namespace Components
|
||||
}
|
||||
|
||||
Toast::Toast()
|
||||
{
|
||||
QuickPatch::OnReady([]()
|
||||
{
|
||||
Renderer::OnFrame(Toast::Handler);
|
||||
});
|
||||
|
||||
Command::Add("testtoast", [] (Command::Params*)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user