Fix recent regression with finding engine ptr on CS:S, DoD:S, HL2:DM.

They are still only have engine v21, not yet v22 (let alone v23).
This commit is contained in:
Nicholas Hastings 2015-09-14 09:56:06 -04:00
parent 7d2c0bd962
commit 44bacdc067
2 changed files with 14 additions and 6 deletions

View File

@ -78,11 +78,15 @@ bool SourceMod_Core::Load(PluginId id, ISmmAPI *ismm, char *error, size_t maxlen
engine = (IVEngineServer *)ismm->GetEngineFactory()("VEngineServer022", nullptr);
if (!engine)
{
if (error && maxlen)
engine = (IVEngineServer *)ismm->GetEngineFactory()("VEngineServer021", nullptr);
if (!engine)
{
ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022");
if (error && maxlen)
{
ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022");
}
return false;
}
return false;
}
}
#else

View File

@ -348,11 +348,15 @@ bool SDKExtension::Load(PluginId id, ISmmAPI *ismm, char *error, size_t maxlen,
engine = (IVEngineServer *) ismm->GetEngineFactory()("VEngineServer022", nullptr);
if (!engine)
{
if (error && maxlen)
engine = (IVEngineServer *) ismm->GetEngineFactory()("VEngineServer021", nullptr);
if (!engine)
{
ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022");
if (error && maxlen)
{
ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022");
}
return false;
}
return false;
}
}
#else