Separate out DOI build. (#718)
This commit is contained in:
parent
539adcb8a2
commit
95afe72307
@ -31,12 +31,13 @@ PossibleSDKs = {
|
||||
'swarm': SDK('HL2SDK-SWARM', '2.swarm', '16', 'ALIENSWARM', WinOnly, 'swarm'),
|
||||
'bgt': SDK('HL2SDK-BGT', '2.bgt', '4', 'BLOODYGOODTIME', WinOnly, 'bgt'),
|
||||
'eye': SDK('HL2SDK-EYE', '2.eye', '5', 'EYE', WinOnly, 'eye'),
|
||||
'csgo': SDK('HL2SDKCSGO', '2.csgo', '20', 'CSGO', WinLinux, 'csgo'),
|
||||
'csgo': SDK('HL2SDKCSGO', '2.csgo', '21', 'CSGO', WinLinux, 'csgo'),
|
||||
'portal2': SDK('HL2SDKPORTAL2', '2.portal2', '17', 'PORTAL2', [], 'portal2'),
|
||||
'blade': SDK('HL2SDKBLADE', '2.blade', '18', 'BLADE', WinLinux, 'blade'),
|
||||
'insurgency': SDK('HL2SDKINSURGENCY', '2.insurgency', '19', 'INSURGENCY', WinLinuxMac, 'insurgency'),
|
||||
'contagion': SDK('HL2SDKCONTAGION', '2.contagion', '14', 'CONTAGION', WinOnly, 'contagion'),
|
||||
'bms': SDK('HL2SDKBMS', '2.bms', '10', 'BMS', WinLinux, 'bms'),
|
||||
'doi': SDK('HL2SDKDOI', '2.doi', '20', 'DOI', WinLinuxMac, 'doi'),
|
||||
}
|
||||
|
||||
def ResolveEnvPath(env, folder):
|
||||
@ -436,7 +437,7 @@ class SMConfig(object):
|
||||
|
||||
# For everything after Swarm, this needs to be defined for entity networking
|
||||
# to work properly with sendprop value changes.
|
||||
if sdk.name in ['blade', 'insurgency', 'csgo']:
|
||||
if sdk.name in ['blade', 'insurgency', 'doi', 'csgo']:
|
||||
compiler.defines += ['NETWORK_VARS_ENABLED']
|
||||
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'sdk2013', 'bms', 'tf2', 'l4d', 'nucleardawn', 'l4d2']:
|
||||
@ -474,14 +475,14 @@ class SMConfig(object):
|
||||
compiler.Dep(os.path.join(lib_folder, 'mathlib_i486.a'))
|
||||
]
|
||||
|
||||
if sdk.name in ['blade', 'insurgency', 'csgo']:
|
||||
if sdk.name in ['blade', 'insurgency', 'doi', 'csgo']:
|
||||
compiler.postlink += [compiler.Dep(os.path.join(lib_folder, 'interfaces_i486.a'))]
|
||||
|
||||
dynamic_libs = []
|
||||
if builder.target.platform == 'linux':
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'tf2', 'sdk2013', 'bms', 'nucleardawn', 'l4d2', 'insurgency']:
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'tf2', 'sdk2013', 'bms', 'nucleardawn', 'l4d2', 'insurgency', 'doi']:
|
||||
dynamic_libs = ['libtier0_srv.so', 'libvstdlib_srv.so']
|
||||
elif sdk.name in ['l4d', 'blade', 'insurgency', 'csgo']:
|
||||
elif sdk.name in ['l4d', 'blade', 'insurgency', 'doi', 'csgo']:
|
||||
dynamic_libs = ['libtier0.so', 'libvstdlib.so']
|
||||
else:
|
||||
dynamic_libs = ['tier0_i486.so', 'vstdlib_i486.so']
|
||||
@ -490,7 +491,7 @@ class SMConfig(object):
|
||||
dynamic_libs = ['libtier0.dylib', 'libvstdlib.dylib']
|
||||
elif builder.target.platform == 'windows':
|
||||
libs = ['tier0', 'tier1', 'vstdlib', 'mathlib']
|
||||
if sdk.name in ['swarm', 'blade', 'insurgency', 'csgo']:
|
||||
if sdk.name in ['swarm', 'blade', 'insurgency', 'doi', 'csgo']:
|
||||
libs.append('interfaces')
|
||||
for lib in libs:
|
||||
lib_path = os.path.join(sdk.path, 'lib', 'public', lib) + '.lib'
|
||||
|
@ -59,7 +59,7 @@ typedef ICommandLine *(*FakeGetCommandLine)();
|
||||
#elif defined __linux__
|
||||
#if SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_TF2 \
|
||||
|| SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_LEFT4DEAD2 || SOURCE_ENGINE == SE_NUCLEARDAWN \
|
||||
|| SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_INSURGENCY
|
||||
|| SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_INSURGENCY || SOURCE_ENGINE == SE_DOI
|
||||
#define TIER0_NAME "libtier0_srv.so"
|
||||
#define VSTDLIB_NAME "libvstdlib_srv.so"
|
||||
#elif SOURCE_ENGINE >= SE_LEFT4DEAD
|
||||
@ -1348,6 +1348,7 @@ uint64_t CHalfLife2::GetServerSteamId64() const
|
||||
|| SOURCE_ENGINE == SE_EYE \
|
||||
|| SOURCE_ENGINE == SE_HL2DM \
|
||||
|| SOURCE_ENGINE == SE_INSURGENCY \
|
||||
|| SOURCE_ENGINE == SE_DOI \
|
||||
|| SOURCE_ENGINE == SE_SDK2013 \
|
||||
|| SOURCE_ENGINE == SE_ALIENSWARM \
|
||||
|| SOURCE_ENGINE == SE_TF2
|
||||
|
@ -1965,7 +1965,8 @@ void CPlayer::Initialize(const char *name, const char *ip, edict_t *pEntity)
|
||||
|| SOURCE_ENGINE == SE_DODS \
|
||||
|| SOURCE_ENGINE == SE_HL2DM \
|
||||
|| SOURCE_ENGINE == SE_BMS \
|
||||
|| SOURCE_ENGINE == SE_INSURGENCY
|
||||
|| SOURCE_ENGINE == SE_INSURGENCY \
|
||||
|| SOURCE_ENGINE == SE_DOI
|
||||
m_pIClient = engine->GetIServer()->GetClient(m_iIndex - 1);
|
||||
#else
|
||||
#if SOURCE_ENGINE == SE_SDK2013
|
||||
|
@ -515,10 +515,11 @@ private:
|
||||
continue;
|
||||
}
|
||||
|
||||
if (strcmp(bridge->GetSourceEngineName(), "insurgency") == 0)
|
||||
if (strcmp(bridge->GetSourceEngineName(), "insurgency") == 0
|
||||
|| strcmp(bridge->GetSourceEngineName(), "doi") == 0)
|
||||
{
|
||||
// Insurgency (presumably?) doesn't allow spaces in map names
|
||||
// and does use a space to delimit the map name from the map mode
|
||||
// Insurgency and Day of Infamy (presumably?) doesn't allow spaces in map names
|
||||
// and do use a space to delimit the map name from the map mode
|
||||
int i = 0;
|
||||
while (ptr[i] != 0)
|
||||
{
|
||||
|
@ -388,6 +388,8 @@ void UTIL_ConsolePrint(const char *fmt, ...)
|
||||
#define GAMEFIX "2.blade"
|
||||
#elif SOURCE_ENGINE == SE_INSURGENCY
|
||||
#define GAMEFIX "2.insurgency"
|
||||
#elif SOURCE_ENGINE == SE_DOI
|
||||
#define GAMEFIX "2.doi"
|
||||
#elif SOURCE_ENGINE == SE_CSGO
|
||||
#define GAMEFIX "2.csgo"
|
||||
#elif SOURCE_ENGINE == SE_CONTAGION
|
||||
@ -510,6 +512,8 @@ const char *CoreProviderImpl::GetSourceEngineName()
|
||||
return "blade";
|
||||
#elif SOURCE_ENGINE == SE_INSURGENCY
|
||||
return "insurgency";
|
||||
#elif SOURCE_ENGINE == SE_DOI
|
||||
return "doi";
|
||||
#elif SOURCE_ENGINE == SE_CSGO
|
||||
return "csgo";
|
||||
#endif
|
||||
@ -527,6 +531,7 @@ bool CoreProviderImpl::SymbolsAreHidden()
|
||||
|| (SOURCE_ENGINE == SE_NUCLEARDAWN) \
|
||||
|| (SOURCE_ENGINE == SE_LEFT4DEAD2) \
|
||||
|| (SOURCE_ENGINE == SE_INSURGENCY) \
|
||||
|| (SOURCE_ENGINE == SE_DOI) \
|
||||
|| (SOURCE_ENGINE == SE_BLADE) \
|
||||
|| (SOURCE_ENGINE == SE_CSGO)
|
||||
return true;
|
||||
|
@ -88,7 +88,7 @@ CTakeDamageInfoHack::CTakeDamageInfoHack( CBaseEntity *pInflictor, CBaseEntity *
|
||||
m_flRadius = 0.0f;
|
||||
#endif
|
||||
|
||||
#if SOURCE_ENGINE == SE_INSURGENCY || SOURCE_ENGINE == SE_CSGO
|
||||
#if SOURCE_ENGINE == SE_INSURGENCY || SOURCE_ENGINE == SE_DOI || SOURCE_ENGINE == SE_CSGO
|
||||
m_iDamagedOtherPlayers = 0;
|
||||
m_iObjectsPenetrated = 0;
|
||||
m_uiBulletID = 0;
|
||||
|
@ -140,6 +140,7 @@ static cell_t PrepSDKCall_SetSignature(IPluginContext *pContext, const cell_t *p
|
||||
|| SOURCE_ENGINE == SE_NUCLEARDAWN \
|
||||
|| SOURCE_ENGINE == SE_BLADE \
|
||||
|| SOURCE_ENGINE == SE_INSURGENCY \
|
||||
|| SOURCE_ENGINE == SE_DOI \
|
||||
|| SOURCE_ENGINE == SE_CSGO
|
||||
s_call_addr = memutils->ResolveSymbol(handle, &sig[1]);
|
||||
#else
|
||||
|
@ -217,9 +217,10 @@ void GetIServer()
|
||||
|| SOURCE_ENGINE == SE_CSS \
|
||||
|| SOURCE_ENGINE == SE_SDK2013 \
|
||||
|| SOURCE_ENGINE == SE_BMS \
|
||||
|| SOURCE_ENGINE == SE_DOI \
|
||||
|| SOURCE_ENGINE == SE_INSURGENCY
|
||||
|
||||
#if SOURCE_ENGINE != SE_INSURGENCY
|
||||
#if SOURCE_ENGINE != SE_INSURGENCY && SOURCE_ENGINE != SE_DOI
|
||||
if (g_SMAPI->GetEngineFactory(false)("VEngineServer022", nullptr))
|
||||
#endif // !SE_INSURGENCY
|
||||
{
|
||||
|
@ -93,6 +93,7 @@
|
||||
"engine.insurgency.txt"
|
||||
{
|
||||
"engine" "insurgency"
|
||||
"engine" "doi" // #cheating #yolo
|
||||
}
|
||||
|
||||
"game.dinodday.txt"
|
||||
|
@ -59,6 +59,7 @@
|
||||
"engine.insurgency.txt"
|
||||
{
|
||||
"engine" "insurgency"
|
||||
"engine" "doi" // #cheating #yolo
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -88,6 +88,7 @@
|
||||
"engine.insurgency.txt"
|
||||
{
|
||||
"engine" "insurgency"
|
||||
"engine" "doi" // #cheating #yolo
|
||||
}
|
||||
|
||||
"game.tf.txt"
|
||||
|
@ -76,6 +76,7 @@
|
||||
#define FILENAME_1_6_ND "sourcemod.2.nd" PLATFORM_EXT
|
||||
#define FILENAME_1_6_BLADE "sourcemod.2.blade" PLATFORM_EXT
|
||||
#define FILENAME_1_6_INSURGENCY "sourcemod.2.insurgency" PLATFORM_EXT
|
||||
#define FILENAME_1_6_DOI "sourcemod.2.doi" PLATFORM_EXT
|
||||
#define FILENAME_1_6_CONTAGION "sourcemod.2.contagion" PLATFORM_EXT
|
||||
#define FILENAME_1_6_BMS "sourcemod.2.bms" PLATFORM_EXT
|
||||
|
||||
@ -321,6 +322,11 @@ DLL_EXPORT METAMOD_PLUGIN *CreateInterface_MMS(const MetamodVersionInfo *mvi, co
|
||||
filename = FILENAME_1_6_INSURGENCY;
|
||||
break;
|
||||
}
|
||||
case SOURCE_ENGINE_DOI:
|
||||
{
|
||||
filename = FILENAME_1_6_DOI;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
return NULL;
|
||||
|
@ -89,6 +89,7 @@ enum EngineVersion
|
||||
Engine_Insurgency, /**< Insurgency (2013 Retail version)*/
|
||||
Engine_Contagion, /**< Contagion */
|
||||
Engine_BlackMesa, /**< Black Mesa Multiplayer */
|
||||
Engine_DOI, /**< Day of Infamy */
|
||||
};
|
||||
|
||||
enum FindMapResult
|
||||
|
@ -57,6 +57,8 @@ public APLRes AskPluginLoad2(Handle myself, bool late, char[] error, int err_max
|
||||
char game[128];
|
||||
GetGameFolderName(game, sizeof(game));
|
||||
|
||||
EngineVersion engine = GetEngineVersion();
|
||||
|
||||
if (StrEqual(game, "left4dead", false)
|
||||
|| StrEqual(game, "dystopia", false)
|
||||
|| StrEqual(game, "synergy", false)
|
||||
@ -65,7 +67,8 @@ public APLRes AskPluginLoad2(Handle myself, bool late, char[] error, int err_max
|
||||
|| StrEqual(game, "swarm", false)
|
||||
|| StrEqual(game, "bms", false)
|
||||
|| StrEqual(game, "reactivedrop", false)
|
||||
|| GetEngineVersion() == Engine_Insurgency)
|
||||
|| engine == Engine_Insurgency
|
||||
|| engine == Engine_DOI)
|
||||
{
|
||||
strcopy(error, err_max, "Nextmap is incompatible with this game");
|
||||
return APLRes_SilentFailure;
|
||||
|
@ -33,13 +33,13 @@ PossibleSDKs = {
|
||||
'swarm': SDK('HL2SDK-SWARM', '2.swarm', '16', 'ALIENSWARM', WinOnly, 'swarm'),
|
||||
'bgt': SDK('HL2SDK-BGT', '2.bgt', '4', 'BLOODYGOODTIME', WinOnly, 'bgt'),
|
||||
'eye': SDK('HL2SDK-EYE', '2.eye', '5', 'EYE', WinOnly, 'eye'),
|
||||
'csgo': SDK('HL2SDKCSGO', '2.csgo', '20', 'CSGO', WinLinuxMac, 'csgo'),
|
||||
'dota': SDK('HL2SDKDOTA', '2.dota', '21', 'DOTA', [], 'dota'),
|
||||
'csgo': SDK('HL2SDKCSGO', '2.csgo', '21', 'CSGO', WinLinuxMac, 'csgo'),
|
||||
'portal2': SDK('HL2SDKPORTAL2', '2.portal2', '17', 'PORTAL2', [], 'portal2'),
|
||||
'blade': SDK('HL2SDKBLADE', '2.blade', '18', 'BLADE', WinLinux, 'blade'),
|
||||
'insurgency': SDK('HL2SDKINSURGENCY', '2.insurgency', '19', 'INSURGENCY', WinLinuxMac, 'insurgency'),
|
||||
'contagion': SDK('HL2SDKCONTAGION', '2.contagion', '14', 'CONTAGION', WinOnly, 'contagion'),
|
||||
'bms': SDK('HL2SDKBMS', '2.bms', '10', 'BMS', WinLinux, 'bms'),
|
||||
'doi': SDK('HL2SDKDOI', '2.doi', '20', 'DOI', WinLinuxMac, 'doi'),
|
||||
}
|
||||
|
||||
def ResolveEnvPath(env, folder):
|
||||
@ -342,10 +342,10 @@ class ExtensionConfig(object):
|
||||
|
||||
# For everything after Swarm, this needs to be defined for entity networking
|
||||
# to work properly with sendprop value changes.
|
||||
if sdk.name in ['blade', 'insurgency', 'csgo', 'dota']:
|
||||
if sdk.name in ['blade', 'insurgency', 'doi', 'csgo']:
|
||||
compiler.defines += ['NETWORK_VARS_ENABLED']
|
||||
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'sdk2013', 'bms', 'tf2', 'l4d', 'nucleardawn', 'l4d2', 'dota']:
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'sdk2013', 'bms', 'tf2', 'l4d', 'nucleardawn', 'l4d2']:
|
||||
if builder.target_platform in ['linux', 'mac']:
|
||||
compiler.defines += ['NO_HOOK_MALLOC', 'NO_MALLOC_OVERRIDE']
|
||||
|
||||
@ -380,14 +380,14 @@ class ExtensionConfig(object):
|
||||
compiler.Dep(os.path.join(lib_folder, 'mathlib_i486.a'))
|
||||
]
|
||||
|
||||
if sdk.name in ['blade', 'insurgency', 'csgo', 'dota']:
|
||||
if sdk.name in ['blade', 'insurgency', 'doi', 'csgo']:
|
||||
compiler.postlink += [compiler.Dep(os.path.join(lib_folder, 'interfaces_i486.a'))]
|
||||
|
||||
dynamic_libs = []
|
||||
if builder.target_platform == 'linux':
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'tf2', 'sdk2013', 'bms', 'nucleardawn', 'l4d2', 'insurgency']:
|
||||
if sdk.name in ['css', 'hl2dm', 'dods', 'tf2', 'sdk2013', 'bms', 'nucleardawn', 'l4d2', 'insurgency', 'doi']:
|
||||
dynamic_libs = ['libtier0_srv.so', 'libvstdlib_srv.so']
|
||||
elif sdk.name in ['l4d', 'blade', 'insurgency', 'csgo', 'dota']:
|
||||
elif sdk.name in ['l4d', 'blade', 'insurgency', 'doi', 'csgo']:
|
||||
dynamic_libs = ['libtier0.so', 'libvstdlib.so']
|
||||
else:
|
||||
dynamic_libs = ['tier0_i486.so', 'vstdlib_i486.so']
|
||||
@ -396,7 +396,7 @@ class ExtensionConfig(object):
|
||||
dynamic_libs = ['libtier0.dylib', 'libvstdlib.dylib']
|
||||
elif builder.target_platform == 'windows':
|
||||
libs = ['tier0', 'tier1', 'vstdlib', 'mathlib']
|
||||
if sdk.name in ['swarm', 'blade', 'insurgency', 'csgo', 'dota']:
|
||||
if sdk.name in ['swarm', 'blade', 'insurgency', 'doi', 'csgo']:
|
||||
libs.append('interfaces')
|
||||
for lib in libs:
|
||||
lib_path = os.path.join(sdk.path, 'lib', 'public', lib) + '.lib'
|
||||
|
Loading…
Reference in New Issue
Block a user