diff --git a/core/ExtensionSys.cpp b/core/ExtensionSys.cpp index 6adbb554..c4b09daa 100644 --- a/core/ExtensionSys.cpp +++ b/core/ExtensionSys.cpp @@ -84,6 +84,8 @@ CRemoteExtension::CRemoteExtension(IExtensionInterface *pAPI, const char *filena #define GAMEFIX "2.portal2" #elif SOURCE_ENGINE == SE_CSGO #define GAMEFIX "2.csgo" +#elif SOURCE_ENGINE == SE_DOTA +#define GAMEFIX "2.dota" #else #define GAMEFIX "2.ep1" #endif //(SOURCE_ENGINE == SE_LEFT4DEAD) || (SOURCE_ENGINE == SE_LEFT4DEAD2) diff --git a/core/HalfLife2.h b/core/HalfLife2.h index 33792dc0..3c9eb4e0 100644 --- a/core/HalfLife2.h +++ b/core/HalfLife2.h @@ -99,7 +99,7 @@ public: int m_SerialNumber; CEntInfo *m_pPrev; CEntInfo *m_pNext; -#if SOURCE_ENGINE >= SE_PORTAL2 +#if (SOURCE_ENGINE >= SE_PORTAL2) && (SOURCE_ENGINE != SE_DOTA) string_t m_iName; string_t m_iClassName; #endif diff --git a/core/logic_bridge.cpp b/core/logic_bridge.cpp index 94d2b4ab..9a605014 100644 --- a/core/logic_bridge.cpp +++ b/core/logic_bridge.cpp @@ -189,12 +189,14 @@ static const char *get_source_engine_name() return "portal2"; #elif SOURCE_ENGINE == SE_CSGO return "csgo"; +#elif SOURCE_ENGINE == SE_DOTA + return "dota"; #endif } static bool symbols_are_hidden() { -#if (SOURCE_ENGINE == SE_CSS) || (SOURCE_ENGINE == SE_ORANGEBOXVALVE) || (SOURCE_ENGINE == SE_LEFT4DEAD) || (SOURCE_ENGINE == SE_LEFT4DEAD2) || (SOURCE_ENGINE == SE_CSGO) +#if (SOURCE_ENGINE == SE_CSS) || (SOURCE_ENGINE == SE_ORANGEBOXVALVE) || (SOURCE_ENGINE == SE_LEFT4DEAD) || (SOURCE_ENGINE == SE_LEFT4DEAD2) || (SOURCE_ENGINE == SE_CSGO) || (SOURCE_ENGINE == SE_DOTA) return true; #else return false; diff --git a/core/smn_halflife.cpp b/core/smn_halflife.cpp index a6884f94..96ad9d46 100644 --- a/core/smn_halflife.cpp +++ b/core/smn_halflife.cpp @@ -487,6 +487,8 @@ static cell_t GuessSDKVersion(IPluginContext *pContext, const cell_t *params) return 70; case SOURCE_ENGINE_CSGO: return 80; + case SOURCE_ENGINE_DOTA: + return 90; # endif } #else diff --git a/extensions/sdkhooks/takedamageinfohack.cpp b/extensions/sdkhooks/takedamageinfohack.cpp index 0598c478..a3a1ec8f 100644 --- a/extensions/sdkhooks/takedamageinfohack.cpp +++ b/extensions/sdkhooks/takedamageinfohack.cpp @@ -72,7 +72,7 @@ CTakeDamageInfoHack::CTakeDamageInfoHack( CBaseEntity *pInflictor, CBaseEntity * m_flRadius = 0.0f; #endif -#if SOURCE_ENGINE >= SE_CSGO +#if SOURCE_ENGINE == SE_CSGO m_iDamagedOtherPlayers = 0; m_iObjectsPenetrated = 0; m_uiBulletID = 0; diff --git a/loader/loader.cpp b/loader/loader.cpp index fe9f25d8..7fa002f8 100644 --- a/loader/loader.cpp +++ b/loader/loader.cpp @@ -79,6 +79,7 @@ #define FILENAME_1_6_PORTAL2 "sourcemod.2.portal2" PLATFORM_EXT #define FILENAME_1_6_CSGO "sourcemod.2.csgo" PLATFORM_EXT #define FILENAME_1_6_CSS "sourcemod.2.css" PLATFORM_EXT +#define FILENAME_1_6_DOTA "sourcemod.2.dota" PLATFORM_EXT HINSTANCE g_hCore = NULL; bool load_attempted = false; @@ -275,6 +276,11 @@ DLL_EXPORT METAMOD_PLUGIN *CreateInterface_MMS(const MetamodVersionInfo *mvi, co filename = FILENAME_1_6_CSS; break; } + case SOURCE_ENGINE_DOTA: + { + filename = FILENAME_1_6_DOTA; + break; + } default: { return NULL; diff --git a/plugins/include/halflife.inc b/plugins/include/halflife.inc index 75db9661..bbda0d5d 100644 --- a/plugins/include/halflife.inc +++ b/plugins/include/halflife.inc @@ -48,6 +48,7 @@ #define SOURCE_SDK_LEFT4DEAD2 50 /**< Engine released after Left 4 Dead 2 (no SDK yet) */ #define SOURCE_SDK_ALIENSWARM 60 /**< SDK+Engine released after Alien Swarm */ #define SOURCE_SDK_CSGO 80 /**< Engine released after CS:GO (no SDK yet) */ +#define SOURCE_SDK_DOTA 90 /**< Engine released after Dota 2 (no SDK) */ #define MOTDPANEL_TYPE_TEXT 0 /**< Treat msg as plain text */ #define MOTDPANEL_TYPE_INDEX 1 /**< Msg is auto determined by the engine */