From b4cd5591865930b89a5d10d5a8f9365032bf6388 Mon Sep 17 00:00:00 2001 From: Nicholas Hastings Date: Tue, 29 Oct 2013 19:00:21 -0400 Subject: [PATCH] Fix GetEngineVersion ret values for MM:S 1.9.x on orangebox (bug 5967, r=asherkin). --- core/smn_halflife.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/core/smn_halflife.cpp b/core/smn_halflife.cpp index 722564aa..ba668cc7 100644 --- a/core/smn_halflife.cpp +++ b/core/smn_halflife.cpp @@ -509,7 +509,23 @@ static cell_t GuessSDKVersion(IPluginContext *pContext, const cell_t *params) static cell_t GetEngineVersion(IPluginContext *pContext, const cell_t *params) { - return g_SMAPI->GetSourceEngineBuild(); + int engineVer = g_SMAPI->GetSourceEngineBuild(); +#if defined METAMOD_PLAPI_VERSION + if (engineVer == SOURCE_ENGINE_ORANGEBOXVALVE_DEPRECATED) + { + const char *gamedir = g_SourceMod.GetGameFolderName(); + if (strcmp(gamedir, "tf") == 0) + return SOURCE_ENGINE_TF2; + else if (strcmp(gamedir, "cstrike") == 0) + return SOURCE_ENGINE_CSS; + else if (strcmp(gamedir, "dod") == 0) + return SOURCE_ENGINE_DODS; + else if (strcmp(gamedir, "hl2mp") == 0) + return SOURCE_ENGINE_HL2DM; + } +#endif + + return engineVer; } static cell_t IndexToReference(IPluginContext *pContext, const cell_t *params)