Merge remote-tracking branch 'remotes/origin/master' into mapchooser-updates
Conflicts: plugins/nominations.sp plugins/rockthevote.sp
This commit is contained in:
commit
338b4ed5d9
6
.gitmodules
vendored
Normal file
6
.gitmodules
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[submodule "public/amtl"]
|
||||||
|
path = public/amtl
|
||||||
|
url = https://github.com/alliedmodders/amtl
|
||||||
|
[submodule "sourcepawn"]
|
||||||
|
path = sourcepawn
|
||||||
|
url = https://github.com/alliedmodders/sourcepawn
|
14
.travis.yml
14
.travis.yml
@ -3,9 +3,19 @@ compiler:
|
|||||||
- clang
|
- clang
|
||||||
before_script:
|
before_script:
|
||||||
- sudo apt-get update -qq
|
- sudo apt-get update -qq
|
||||||
- sudo apt-get install -y g++-multilib libc6-dev-i386 lib32stdc++6 lib32z1-dev
|
- sudo apt-get install -y python-software-properties
|
||||||
|
- sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/ppa
|
||||||
|
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
||||||
|
- sudo apt-get update -qq
|
||||||
|
- sudo apt-get install -qq g++-4.8
|
||||||
|
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 90
|
||||||
|
- echo "deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main" | sudo tee --append /etc/apt/sources.list
|
||||||
|
- echo "deb-src http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main" | sudo tee --append /etc/apt/sources.list
|
||||||
|
- wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||||
|
- sudo apt-get update -qq
|
||||||
|
- sudo apt-get install -y g++-multilib libc6-dev-i386 lib32stdc++6 lib32z1-dev clang-3.5
|
||||||
- CHECKOUT_DIR=$PWD && cd .. && $CHECKOUT_DIR/tools/checkout-deps.sh && cd $CHECKOUT_DIR
|
- CHECKOUT_DIR=$PWD && cd .. && $CHECKOUT_DIR/tools/checkout-deps.sh && cd $CHECKOUT_DIR
|
||||||
script:
|
script:
|
||||||
- mkdir build && cd build
|
- mkdir build && cd build
|
||||||
- python ../configure.py --enable-optimize --sdks=episode1,tf2,l4d2,csgo,dota
|
- CC=clang-3.5 CXX=clang-3.5 python ../configure.py --enable-optimize --sdks=episode1,tf2,l4d2,csgo,dota
|
||||||
- ambuild
|
- ambuild
|
@ -23,20 +23,21 @@ PossibleSDKs = {
|
|||||||
'hl2dm': SDK('HL2SDKHL2DM', '2.hl2dm', '7', 'HL2DM', WinLinuxMac, 'hl2dm'),
|
'hl2dm': SDK('HL2SDKHL2DM', '2.hl2dm', '7', 'HL2DM', WinLinuxMac, 'hl2dm'),
|
||||||
'dods': SDK('HL2SDKDODS', '2.dods', '8', 'DODS', WinLinuxMac, 'dods'),
|
'dods': SDK('HL2SDKDODS', '2.dods', '8', 'DODS', WinLinuxMac, 'dods'),
|
||||||
'sdk2013': SDK('HL2SDK2013', '2.sdk2013', '9', 'SDK2013', WinLinuxMac, 'sdk2013'),
|
'sdk2013': SDK('HL2SDK2013', '2.sdk2013', '9', 'SDK2013', WinLinuxMac, 'sdk2013'),
|
||||||
'tf2': SDK('HL2SDKTF2', '2.tf2', '10', 'TF2', WinLinuxMac, 'tf2'),
|
'tf2': SDK('HL2SDKTF2', '2.tf2', '11', 'TF2', WinLinuxMac, 'tf2'),
|
||||||
'l4d': SDK('HL2SDKL4D', '2.l4d', '11', 'LEFT4DEAD', WinLinuxMac, 'l4d'),
|
'l4d': SDK('HL2SDKL4D', '2.l4d', '12', 'LEFT4DEAD', WinLinuxMac, 'l4d'),
|
||||||
'nucleardawn': SDK('HL2SDKND', '2.nd', '12', 'NUCLEARDAWN', WinLinuxMac, 'nucleardawn'),
|
'nucleardawn': SDK('HL2SDKND', '2.nd', '13', 'NUCLEARDAWN', WinLinuxMac, 'nucleardawn'),
|
||||||
'l4d2': SDK('HL2SDKL4D2', '2.l4d2', '14', 'LEFT4DEAD2', WinLinuxMac, 'l4d2'),
|
'l4d2': SDK('HL2SDKL4D2', '2.l4d2', '15', 'LEFT4DEAD2', WinLinuxMac, 'l4d2'),
|
||||||
'darkm': SDK('HL2SDK-DARKM', '2.darkm', '2', 'DARKMESSIAH', WinOnly, 'darkm'),
|
'darkm': SDK('HL2SDK-DARKM', '2.darkm', '2', 'DARKMESSIAH', WinOnly, 'darkm'),
|
||||||
'swarm': SDK('HL2SDK-SWARM', '2.swarm', '15', 'ALIENSWARM', WinOnly, 'swarm'),
|
'swarm': SDK('HL2SDK-SWARM', '2.swarm', '16', 'ALIENSWARM', WinOnly, 'swarm'),
|
||||||
'bgt': SDK('HL2SDK-BGT', '2.bgt', '4', 'BLOODYGOODTIME', WinOnly, 'bgt'),
|
'bgt': SDK('HL2SDK-BGT', '2.bgt', '4', 'BLOODYGOODTIME', WinOnly, 'bgt'),
|
||||||
'eye': SDK('HL2SDK-EYE', '2.eye', '5', 'EYE', WinOnly, 'eye'),
|
'eye': SDK('HL2SDK-EYE', '2.eye', '5', 'EYE', WinOnly, 'eye'),
|
||||||
'csgo': SDK('HL2SDKCSGO', '2.csgo', '19', 'CSGO', WinLinuxMac, 'csgo'),
|
'csgo': SDK('HL2SDKCSGO', '2.csgo', '20', 'CSGO', WinLinuxMac, 'csgo'),
|
||||||
'dota': SDK('HL2SDKDOTA', '2.dota', '20', 'DOTA', WinLinuxMac, 'dota'),
|
'dota': SDK('HL2SDKDOTA', '2.dota', '21', 'DOTA', WinLinuxMac, 'dota'),
|
||||||
'portal2': SDK('HL2SDKPORTAL2', '2.portal2', '16', 'PORTAL2', [], 'portal2'),
|
'portal2': SDK('HL2SDKPORTAL2', '2.portal2', '17', 'PORTAL2', [], 'portal2'),
|
||||||
'blade': SDK('HL2SDKBLADE', '2.blade', '17', 'BLADE', WinLinux, 'blade'),
|
'blade': SDK('HL2SDKBLADE', '2.blade', '18', 'BLADE', WinLinux, 'blade'),
|
||||||
'insurgency': SDK('HL2SDKINSURGENCY', '2.insurgency', '18', 'INSURGENCY', WinLinuxMac, 'insurgency'),
|
'insurgency': SDK('HL2SDKINSURGENCY', '2.insurgency', '19', 'INSURGENCY', WinLinuxMac, 'insurgency'),
|
||||||
'contagion': SDK('HL2SDKCONTAGION', '2.contagion', '13', 'CONTAGION', WinOnly, 'contagion'),
|
'contagion': SDK('HL2SDKCONTAGION', '2.contagion', '14', 'CONTAGION', WinOnly, 'contagion'),
|
||||||
|
'bms': SDK('HL2SDKBMS', '2.bms', '10', 'BMS', WinLinux, 'bms'),
|
||||||
}
|
}
|
||||||
|
|
||||||
def ResolveEnvPath(env, folder):
|
def ResolveEnvPath(env, folder):
|
||||||
@ -172,7 +173,7 @@ class SMConfig(object):
|
|||||||
'-m32',
|
'-m32',
|
||||||
]
|
]
|
||||||
cxx.cxxflags += [
|
cxx.cxxflags += [
|
||||||
'-std=c++11',
|
'-std=c++11',
|
||||||
]
|
]
|
||||||
|
|
||||||
have_gcc = cxx.vendor == 'gcc'
|
have_gcc = cxx.vendor == 'gcc'
|
||||||
@ -216,8 +217,6 @@ class SMConfig(object):
|
|||||||
'_CRT_NONSTDC_NO_DEPRECATE',
|
'_CRT_NONSTDC_NO_DEPRECATE',
|
||||||
'_ITERATOR_DEBUG_LEVEL=0',
|
'_ITERATOR_DEBUG_LEVEL=0',
|
||||||
]
|
]
|
||||||
if cxx.version < 1800:
|
|
||||||
cxx.defines += 'strtoull=_strtoui64'
|
|
||||||
cxx.cflags += [
|
cxx.cflags += [
|
||||||
'/W3',
|
'/W3',
|
||||||
]
|
]
|
||||||
@ -228,7 +227,6 @@ class SMConfig(object):
|
|||||||
]
|
]
|
||||||
cxx.linkflags += [
|
cxx.linkflags += [
|
||||||
'/MACHINE:X86',
|
'/MACHINE:X86',
|
||||||
'/SUBSYSTEM:WINDOWS',
|
|
||||||
'kernel32.lib',
|
'kernel32.lib',
|
||||||
'user32.lib',
|
'user32.lib',
|
||||||
'gdi32.lib',
|
'gdi32.lib',
|
||||||
@ -266,6 +264,7 @@ class SMConfig(object):
|
|||||||
# Platform-specifics
|
# Platform-specifics
|
||||||
if builder.target_platform == 'linux':
|
if builder.target_platform == 'linux':
|
||||||
cxx.defines += ['_LINUX', 'POSIX']
|
cxx.defines += ['_LINUX', 'POSIX']
|
||||||
|
cxx.linkflags += ['-lm']
|
||||||
if cxx.vendor == 'gcc':
|
if cxx.vendor == 'gcc':
|
||||||
cxx.linkflags += ['-static-libgcc']
|
cxx.linkflags += ['-static-libgcc']
|
||||||
elif cxx.vendor == 'clang':
|
elif cxx.vendor == 'clang':
|
||||||
@ -288,10 +287,15 @@ class SMConfig(object):
|
|||||||
'SOURCEMOD_BUILD',
|
'SOURCEMOD_BUILD',
|
||||||
'SM_USE_VERSIONLIB',
|
'SM_USE_VERSIONLIB',
|
||||||
]
|
]
|
||||||
|
cxx.includes += [
|
||||||
|
os.path.join(builder.sourcePath, 'public'),
|
||||||
|
]
|
||||||
if self.use_auto_versioning():
|
if self.use_auto_versioning():
|
||||||
cxx.defines += ['SM_GENERATED_BUILD']
|
cxx.defines += ['SM_GENERATED_BUILD']
|
||||||
cxx.includes += [os.path.join(builder.buildPath, 'includes')]
|
cxx.includes += [
|
||||||
cxx.includes += [os.path.join(builder.sourcePath, 'versionlib')]
|
os.path.join(builder.buildPath, 'includes'),
|
||||||
|
os.path.join(builder.sourcePath, 'versionlib'),
|
||||||
|
]
|
||||||
|
|
||||||
def AddVersioning(self, binary):
|
def AddVersioning(self, binary):
|
||||||
if builder.target_platform == 'windows':
|
if builder.target_platform == 'windows':
|
||||||
@ -315,20 +319,23 @@ class SMConfig(object):
|
|||||||
|
|
||||||
def Library(self, context, name):
|
def Library(self, context, name):
|
||||||
binary = context.compiler.Library(name)
|
binary = context.compiler.Library(name)
|
||||||
|
if binary.compiler.like('msvc'):
|
||||||
|
binary.compiler.linkflags += ['/SUBSYSTEM:WINDOWS']
|
||||||
return self.AddVersioning(binary)
|
return self.AddVersioning(binary)
|
||||||
|
|
||||||
def Program(self, context, name):
|
def Program(self, context, name):
|
||||||
binary = context.compiler.Program(name)
|
binary = context.compiler.Program(name)
|
||||||
|
if binary.compiler.like('msvc'):
|
||||||
|
binary.compiler.linkflags += ['/SUBSYSTEM:CONSOLE']
|
||||||
return self.AddVersioning(binary)
|
return self.AddVersioning(binary)
|
||||||
|
|
||||||
def ConfigureForExtension(self, context, compiler):
|
def ConfigureForExtension(self, context, compiler):
|
||||||
compiler.cxxincludes += [
|
compiler.cxxincludes += [
|
||||||
os.path.join(context.currentSourcePath),
|
os.path.join(context.currentSourcePath),
|
||||||
os.path.join(context.currentSourcePath, 'sdk'),
|
os.path.join(context.currentSourcePath, 'sdk'),
|
||||||
os.path.join(builder.sourcePath, 'public'),
|
|
||||||
os.path.join(builder.sourcePath, 'public', 'extensions'),
|
os.path.join(builder.sourcePath, 'public', 'extensions'),
|
||||||
os.path.join(builder.sourcePath, 'public', 'sourcepawn'),
|
os.path.join(builder.sourcePath, 'sourcepawn', 'include'),
|
||||||
os.path.join(builder.sourcePath, 'public', 'amtl'),
|
os.path.join(builder.sourcePath, 'public', 'amtl', 'include'),
|
||||||
]
|
]
|
||||||
return compiler
|
return compiler
|
||||||
|
|
||||||
@ -372,7 +379,7 @@ class SMConfig(object):
|
|||||||
|
|
||||||
compiler.defines += ['SOURCE_ENGINE=' + sdk.code]
|
compiler.defines += ['SOURCE_ENGINE=' + sdk.code]
|
||||||
|
|
||||||
if sdk.name == 'sdk2013' and compiler.like('gcc'):
|
if sdk.name in ['sdk2013', 'bms'] and compiler.like('gcc'):
|
||||||
# The 2013 SDK already has these in public/tier0/basetypes.h
|
# The 2013 SDK already has these in public/tier0/basetypes.h
|
||||||
compiler.defines.remove('stricmp=strcasecmp')
|
compiler.defines.remove('stricmp=strcasecmp')
|
||||||
compiler.defines.remove('_stricmp=strcasecmp')
|
compiler.defines.remove('_stricmp=strcasecmp')
|
||||||
@ -389,7 +396,7 @@ class SMConfig(object):
|
|||||||
if sdk.name in ['blade', 'insurgency', 'csgo', 'dota']:
|
if sdk.name in ['blade', 'insurgency', 'csgo', 'dota']:
|
||||||
compiler.defines += ['NETWORK_VARS_ENABLED']
|
compiler.defines += ['NETWORK_VARS_ENABLED']
|
||||||
|
|
||||||
if sdk.name in ['css', 'hl2dm', 'dods', 'sdk2013', 'tf2', 'l4d', 'nucleardawn', 'l4d2', 'dota']:
|
if sdk.name in ['css', 'hl2dm', 'dods', 'sdk2013', 'bms', 'tf2', 'l4d', 'nucleardawn', 'l4d2', 'dota']:
|
||||||
if builder.target_platform in ['linux', 'mac']:
|
if builder.target_platform in ['linux', 'mac']:
|
||||||
compiler.defines += ['NO_HOOK_MALLOC', 'NO_MALLOC_OVERRIDE']
|
compiler.defines += ['NO_HOOK_MALLOC', 'NO_MALLOC_OVERRIDE']
|
||||||
|
|
||||||
@ -402,18 +409,18 @@ class SMConfig(object):
|
|||||||
if builder.target_platform == 'linux':
|
if builder.target_platform == 'linux':
|
||||||
if sdk.name == 'episode1':
|
if sdk.name == 'episode1':
|
||||||
lib_folder = os.path.join(sdk.path, 'linux_sdk')
|
lib_folder = os.path.join(sdk.path, 'linux_sdk')
|
||||||
elif sdk.name == 'sdk2013':
|
elif sdk.name in ['sdk2013', 'bms']:
|
||||||
lib_folder = os.path.join(sdk.path, 'lib', 'public', 'linux32')
|
lib_folder = os.path.join(sdk.path, 'lib', 'public', 'linux32')
|
||||||
else:
|
else:
|
||||||
lib_folder = os.path.join(sdk.path, 'lib', 'linux')
|
lib_folder = os.path.join(sdk.path, 'lib', 'linux')
|
||||||
elif builder.target_platform == 'mac':
|
elif builder.target_platform == 'mac':
|
||||||
if sdk.name == 'sdk2013':
|
if sdk.name in ['sdk2013', 'bms']:
|
||||||
lib_folder = os.path.join(sdk.path, 'lib', 'public', 'osx32')
|
lib_folder = os.path.join(sdk.path, 'lib', 'public', 'osx32')
|
||||||
else:
|
else:
|
||||||
lib_folder = os.path.join(sdk.path, 'lib', 'mac')
|
lib_folder = os.path.join(sdk.path, 'lib', 'mac')
|
||||||
|
|
||||||
if builder.target_platform in ['linux', 'mac']:
|
if builder.target_platform in ['linux', 'mac']:
|
||||||
if sdk.name == 'sdk2013':
|
if sdk.name in ['sdk2013', 'bms']:
|
||||||
compiler.postlink += [
|
compiler.postlink += [
|
||||||
compiler.Dep(os.path.join(lib_folder, 'tier1.a')),
|
compiler.Dep(os.path.join(lib_folder, 'tier1.a')),
|
||||||
compiler.Dep(os.path.join(lib_folder, 'mathlib.a'))
|
compiler.Dep(os.path.join(lib_folder, 'mathlib.a'))
|
||||||
@ -431,8 +438,7 @@ class SMConfig(object):
|
|||||||
|
|
||||||
dynamic_libs = []
|
dynamic_libs = []
|
||||||
if builder.target_platform == 'linux':
|
if builder.target_platform == 'linux':
|
||||||
compiler.linkflags[0:0] = ['-lm']
|
if sdk.name in ['css', 'hl2dm', 'dods', 'tf2', 'sdk2013', 'bms', 'nucleardawn', 'l4d2']:
|
||||||
if sdk.name in ['css', 'hl2dm', 'dods', 'tf2', 'sdk2013', 'nucleardawn', 'l4d2']:
|
|
||||||
dynamic_libs = ['libtier0_srv.so', 'libvstdlib_srv.so']
|
dynamic_libs = ['libtier0_srv.so', 'libvstdlib_srv.so']
|
||||||
elif sdk.name in ['l4d', 'blade', 'insurgency', 'csgo', 'dota']:
|
elif sdk.name in ['l4d', 'blade', 'insurgency', 'csgo', 'dota']:
|
||||||
dynamic_libs = ['libtier0.so', 'libvstdlib.so']
|
dynamic_libs = ['libtier0.so', 'libvstdlib.so']
|
||||||
@ -493,6 +499,18 @@ if SM.use_auto_versioning():
|
|||||||
{ 'SM': SM }
|
{ 'SM': SM }
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Build SourcePawn externally.
|
||||||
|
SourcePawn = builder.RunScript('sourcepawn/AMBuildScript', {})
|
||||||
|
SP = SourcePawn(
|
||||||
|
root = SM,
|
||||||
|
amtl = os.path.join(builder.sourcePath, 'public', 'amtl'),
|
||||||
|
)
|
||||||
|
SP.BuildCore()
|
||||||
|
SM.spcomp = SP.spcomp
|
||||||
|
SM.binaries += [
|
||||||
|
SP.libsourcepawn
|
||||||
|
]
|
||||||
|
|
||||||
BuildScripts = [
|
BuildScripts = [
|
||||||
'loader/AMBuilder',
|
'loader/AMBuilder',
|
||||||
'core/AMBuilder',
|
'core/AMBuilder',
|
||||||
@ -510,8 +528,6 @@ BuildScripts = [
|
|||||||
'extensions/tf2/AMBuilder',
|
'extensions/tf2/AMBuilder',
|
||||||
'extensions/topmenus/AMBuilder',
|
'extensions/topmenus/AMBuilder',
|
||||||
'extensions/updater/AMBuilder',
|
'extensions/updater/AMBuilder',
|
||||||
'sourcepawn/compiler/AMBuilder',
|
|
||||||
'sourcepawn/jit/AMBuilder',
|
|
||||||
]
|
]
|
||||||
|
|
||||||
if builder.backend == 'amb2':
|
if builder.backend == 'amb2':
|
||||||
|
@ -105,8 +105,8 @@ sm_timeleft_interval 0
|
|||||||
// 1 (Enabled)
|
// 1 (Enabled)
|
||||||
// --
|
// --
|
||||||
// Requires: basetriggers.smx
|
// Requires: basetriggers.smx
|
||||||
// Default: 1
|
// Default: 0
|
||||||
sm_trigger_show 1
|
sm_trigger_show 0
|
||||||
|
|
||||||
// Specifies whether or not to display vote progress to clients in the
|
// Specifies whether or not to display vote progress to clients in the
|
||||||
// "hint" box (near the bottom of the screen in most games).
|
// "hint" box (near the bottom of the screen in most games).
|
||||||
|
@ -59,7 +59,7 @@ for sdk_name in SM.sdks:
|
|||||||
]
|
]
|
||||||
elif sdk.name == 'dota':
|
elif sdk.name == 'dota':
|
||||||
compiler.cxxincludes += [
|
compiler.cxxincludes += [
|
||||||
os.path.join(sdk.path, 'common', 'protobuf-2.5.0', 'src'),
|
os.path.join(sdk.path, 'common', 'protobuf-2.6.1', 'src'),
|
||||||
os.path.join(sdk.path, 'public', 'engine', 'protobuf'),
|
os.path.join(sdk.path, 'public', 'engine', 'protobuf'),
|
||||||
os.path.join(sdk.path, 'public', 'game', 'shared', 'protobuf'),
|
os.path.join(sdk.path, 'public', 'game', 'shared', 'protobuf'),
|
||||||
os.path.join(sdk.path, 'public', 'game', 'shared', 'dota', 'protobuf')
|
os.path.join(sdk.path, 'public', 'game', 'shared', 'dota', 'protobuf')
|
||||||
@ -78,12 +78,8 @@ for sdk_name in SM.sdks:
|
|||||||
vs_year = ''
|
vs_year = ''
|
||||||
if msvc_ver == 1800:
|
if msvc_ver == 1800:
|
||||||
vs_year = '2013'
|
vs_year = '2013'
|
||||||
elif msvc_ver == 1700:
|
|
||||||
vs_year = '2012'
|
|
||||||
elif msvc_ver == 1600:
|
|
||||||
vs_year = '2010'
|
|
||||||
else:
|
else:
|
||||||
raise Exception('Cannot find libprotobuf for MSVC version "' + compiler.version + '"')
|
raise Exception('Cannot find libprotobuf for MSVC version "' + str(compiler.version) + '"')
|
||||||
|
|
||||||
if 'DEBUG' in compiler.defines:
|
if 'DEBUG' in compiler.defines:
|
||||||
lib_path = os.path.join(sdk.path, 'lib', 'win32', 'debug', 'vs' + vs_year, 'libprotobuf.lib')
|
lib_path = os.path.join(sdk.path, 'lib', 'win32', 'debug', 'vs' + vs_year, 'libprotobuf.lib')
|
||||||
|
@ -218,6 +218,7 @@ ResultType ConCmdManager::DispatchClientCommand(int client, const char *cmd, int
|
|||||||
hook->pf->PushCell(args);
|
hook->pf->PushCell(args);
|
||||||
|
|
||||||
cell_t tempres = result;
|
cell_t tempres = result;
|
||||||
|
|
||||||
if (hook->pf->Execute(&tempres) == SP_ERROR_NONE)
|
if (hook->pf->Execute(&tempres) == SP_ERROR_NONE)
|
||||||
{
|
{
|
||||||
if (tempres > result)
|
if (tempres > result)
|
||||||
|
@ -59,7 +59,8 @@ typedef ICommandLine *(*FakeGetCommandLine)();
|
|||||||
#define VSTDLIB_NAME "libvstdlib.dylib"
|
#define VSTDLIB_NAME "libvstdlib.dylib"
|
||||||
#elif defined __linux__
|
#elif defined __linux__
|
||||||
#if SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_TF2 \
|
#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_SDK2013 || SOURCE_ENGINE == SE_LEFT4DEAD2 || SOURCE_ENGINE == SE_NUCLEARDAWN \
|
||||||
|
|| SOURCE_ENGINE == SE_BMS
|
||||||
#define TIER0_NAME "libtier0_srv.so"
|
#define TIER0_NAME "libtier0_srv.so"
|
||||||
#define VSTDLIB_NAME "libvstdlib_srv.so"
|
#define VSTDLIB_NAME "libvstdlib_srv.so"
|
||||||
#elif SOURCE_ENGINE >= SE_LEFT4DEAD
|
#elif SOURCE_ENGINE >= SE_LEFT4DEAD
|
||||||
@ -153,11 +154,12 @@ void CHalfLife2::OnSourceModAllInitialized_Post()
|
|||||||
|
|
||||||
void CHalfLife2::InitLogicalEntData()
|
void CHalfLife2::InitLogicalEntData()
|
||||||
{
|
{
|
||||||
#if SOURCE_ENGINE == SE_TF2 \
|
#if SOURCE_ENGINE == SE_TF2 \
|
||||||
|| SOURCE_ENGINE == SE_DODS \
|
|| SOURCE_ENGINE == SE_DODS \
|
||||||
|| SOURCE_ENGINE == SE_HL2DM \
|
|| SOURCE_ENGINE == SE_HL2DM \
|
||||||
|| SOURCE_ENGINE == SE_CSS \
|
|| SOURCE_ENGINE == SE_CSS \
|
||||||
|| SOURCE_ENGINE == SE_SDK2013
|
|| SOURCE_ENGINE == SE_SDK2013 \
|
||||||
|
|| SOURCE_ENGINE == SE_BMS
|
||||||
|
|
||||||
if (g_SMAPI->GetServerFactory(false)("VSERVERTOOLS003", nullptr))
|
if (g_SMAPI->GetServerFactory(false)("VSERVERTOOLS003", nullptr))
|
||||||
{
|
{
|
||||||
@ -234,7 +236,7 @@ void CHalfLife2::InitLogicalEntData()
|
|||||||
void CHalfLife2::InitCommandLine()
|
void CHalfLife2::InitCommandLine()
|
||||||
{
|
{
|
||||||
char error[256];
|
char error[256];
|
||||||
|
#if SOURCE_ENGINE != SE_DARKMESSIAH
|
||||||
if (!is_original_engine)
|
if (!is_original_engine)
|
||||||
{
|
{
|
||||||
ke::AutoPtr<ILibrary> lib(g_LibSys.OpenLibrary(TIER0_NAME, error, sizeof(error)));
|
ke::AutoPtr<ILibrary> lib(g_LibSys.OpenLibrary(TIER0_NAME, error, sizeof(error)));
|
||||||
@ -253,6 +255,7 @@ void CHalfLife2::InitCommandLine()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
ke::AutoPtr<ILibrary> lib(g_LibSys.OpenLibrary(VSTDLIB_NAME, error, sizeof(error)));
|
ke::AutoPtr<ILibrary> lib(g_LibSys.OpenLibrary(VSTDLIB_NAME, error, sizeof(error)));
|
||||||
if (lib == NULL)
|
if (lib == NULL)
|
||||||
@ -497,7 +500,7 @@ bool CHalfLife2::TextMsg(int client, int dest, const char *msg)
|
|||||||
/* Use SayText user message instead */
|
/* Use SayText user message instead */
|
||||||
if (chat_saytext != NULL && strcmp(chat_saytext, "yes") == 0)
|
if (chat_saytext != NULL && strcmp(chat_saytext, "yes") == 0)
|
||||||
{
|
{
|
||||||
char buffer[192];
|
char buffer[253];
|
||||||
UTIL_Format(buffer, sizeof(buffer), "%s\1\n", msg);
|
UTIL_Format(buffer, sizeof(buffer), "%s\1\n", msg);
|
||||||
|
|
||||||
#if SOURCE_ENGINE == SE_DOTA
|
#if SOURCE_ENGINE == SE_DOTA
|
||||||
|
216
core/Makefile
216
core/Makefile
@ -1,216 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ..
|
|
||||||
HL2SDK_ORIG = ../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../hl2sdk-ob
|
|
||||||
HL2SDK_CSS = ../../hl2sdk-css
|
|
||||||
HL2SDK_OB_VALVE = ../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../hl2sdk-l4d
|
|
||||||
HL2SDK_L4D2 = ../../hl2sdk-l4d2
|
|
||||||
HL2SDK_CSGO = ../../hl2sdk-csgo
|
|
||||||
MMSOURCE = ../../mmsource-central
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
OBJECTS = AdminCache.cpp CDataPack.cpp ConCmdManager.cpp ConVarManager.cpp CoreConfig.cpp \
|
|
||||||
Database.cpp DebugReporter.cpp EventManager.cpp HalfLife2.cpp Logger.cpp \
|
|
||||||
PlayerManager.cpp TimerSys.cpp UserMessages.cpp \
|
|
||||||
sm_autonatives.cpp sm_srvcmds.cpp sm_stringutil.cpp sm_trie.cpp \
|
|
||||||
sourcemm_api.cpp sourcemod.cpp MenuStyle_Base.cpp MenuStyle_Valve.cpp MenuManager.cpp \
|
|
||||||
MenuStyle_Radio.cpp ChatTriggers.cpp ADTFactory.cpp MenuVoting.cpp \
|
|
||||||
frame_hooks.cpp concmd_cleaner.cpp NextMap.cpp \
|
|
||||||
NativeOwner.cpp logic_bridge.cpp ConsoleDetours.cpp
|
|
||||||
OBJECTS += smn_bitbuffer.cpp smn_console.cpp smn_core.cpp \
|
|
||||||
smn_database.cpp smn_entities.cpp smn_events.cpp \
|
|
||||||
smn_fakenatives.cpp smn_filesystem.cpp smn_halflife.cpp \
|
|
||||||
smn_keyvalues.cpp smn_player.cpp \
|
|
||||||
smn_usermsgs.cpp smn_menus.cpp smn_vector.cpp \
|
|
||||||
smn_hudtext.cpp smn_nextmap.cpp
|
|
||||||
OBJECTS += ExtensionSys.cpp \
|
|
||||||
ForwardSys.cpp \
|
|
||||||
HandleSys.cpp \
|
|
||||||
LibrarySys.cpp \
|
|
||||||
PluginInfoDatabase.cpp \
|
|
||||||
PluginSys.cpp \
|
|
||||||
ShareSys.cpp \
|
|
||||||
NativeInvoker.cpp
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
|
|
||||||
ifneq (,$(filter original orangebox css orangeboxvalve left4dead left4dead2 csgo,$(ENGINE)))
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
METAMOD = $(MMSOURCE)/core-legacy
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
BINARY = sourcemod.1.ep1.so
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
METAMOD = $(MMSOURCE)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
BINARY = sourcemod.2.ep2.so
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "css"
|
|
||||||
HL2SDK = $(HL2SDK_CSS)
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=6
|
|
||||||
METAMOD = $(MMSOURCE)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
BINARY = sourcemod.2.css.so
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=7
|
|
||||||
METAMOD = $(MMSOURCE)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
BINARY = sourcemod.2.ep2v.so
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=8
|
|
||||||
METAMOD = $(MMSOURCE)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
BINARY = sourcemod.2.l4d.so
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead2"
|
|
||||||
HL2SDK = $(HL2SDK_L4D2)
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=9
|
|
||||||
METAMOD = $(MMSOURCE)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
BINARY = sourcemod.2.l4d2.so
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "csgo"
|
|
||||||
HL2SDK = $(HL2SDK_CSGO)
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=12
|
|
||||||
METAMOD = $(MMSOURCE)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
BINARY = sourcemod.2.csgo.so
|
|
||||||
endif
|
|
||||||
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LIB_EXT = dylib
|
|
||||||
HL2LIB = $(HL2SDK)/lib/mac
|
|
||||||
else
|
|
||||||
LIB_EXT = so
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
else
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq (,$(filter original orangebox left4dead,$(ENGINE)))
|
|
||||||
LIB_SUFFIX = _i486.$(LIB_EXT)
|
|
||||||
else
|
|
||||||
LIB_PREFIX = lib
|
|
||||||
ifneq (,$(filter orangeboxvalve css,$(ENGINE)))
|
|
||||||
ifneq "$(OS)" "Darwin"
|
|
||||||
LIB_SUFFIX = _srv.$(LIB_EXT)
|
|
||||||
else
|
|
||||||
LIB_SUFFIX = .$(LIB_EXT)
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
LIB_SUFFIX = .$(LIB_EXT)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_BLOODYGOODTIME=4 -DSE_EYE=5 \
|
|
||||||
-DSE_CSS=6 -DSE_ORANGEBOXVALVE=7 -DSE_LEFT4DEAD=8 -DSE_LEFT4DEAD2=9 -DSE_ALIENSWARM=10 \
|
|
||||||
-DSE_PORTAL2=11 -DSE_CSGO=12
|
|
||||||
|
|
||||||
LINK += $(HL2LIB)/tier1_i486.a $(HL2LIB)/mathlib_i486.a $(LIB_PREFIX)vstdlib$(LIB_SUFFIX) \
|
|
||||||
$(LIB_PREFIX)tier0$(LIB_SUFFIX) -static-libgcc
|
|
||||||
|
|
||||||
ifeq "$(ENGINE)" "csgo"
|
|
||||||
LINK += $(HL2LIB)/interfaces_i486.a
|
|
||||||
endif
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/mathlib -I$(HL2PUB)/vstdlib \
|
|
||||||
-I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 -I$(METAMOD) -I$(METAMOD)/sourcehook \
|
|
||||||
-I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -DPOSIX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror \
|
|
||||||
-Wno-uninitialized -Wno-unused -Wno-switch -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H \
|
|
||||||
-DSM_DEFAULT_THREADER -m32 -DCOMPILER_GCC
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -Wno-overloaded-virtual -fno-threadsafe-statics -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug.$(ENGINE)
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release.$(ENGINE)
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
OBJ_LINUX := $(OBJ_LINUX:%.c=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.c
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)
|
|
||||||
ln -sf $(HL2LIB)/$(LIB_PREFIX)vstdlib$(LIB_SUFFIX)
|
|
||||||
ln -sf $(HL2LIB)/$(LIB_PREFIX)tier0$(LIB_SUFFIX)
|
|
||||||
$(MAKE) -f Makefile sourcemod
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply one of the following values for ENGINE:"; \
|
|
||||||
echo "csgo, left4dead2, left4dead, orangeboxvalve, css, orangebox, or original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
sourcemod: check $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -m32 -shared -ldl -lm -o$(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -338,7 +338,8 @@ void BaseMenuStyle::ClientPressedKey(int client, unsigned int key_press)
|
|||||||
#endif
|
#endif
|
||||||
0,
|
0,
|
||||||
PITCH_NORM,
|
PITCH_NORM,
|
||||||
#if SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_TF2
|
#if SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS \
|
||||||
|
|| SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_TF2
|
||||||
0,
|
0,
|
||||||
#endif
|
#endif
|
||||||
&pos);
|
&pos);
|
||||||
|
@ -48,19 +48,19 @@ public:
|
|||||||
style = 0;
|
style = 0;
|
||||||
access = 0;
|
access = 0;
|
||||||
}
|
}
|
||||||
CItem(ke::Moveable<CItem> other)
|
CItem(CItem &&other)
|
||||||
: info(ke::Move(other->info)),
|
: info(ke::Move(other.info)),
|
||||||
display(ke::Move(other->display))
|
display(ke::Move(other.display))
|
||||||
{
|
{
|
||||||
style = other->style;
|
style = other.style;
|
||||||
access = other->access;
|
access = other.access;
|
||||||
}
|
}
|
||||||
CItem & operator =(ke::Moveable<CItem> other)
|
CItem & operator =(CItem &&other)
|
||||||
{
|
{
|
||||||
info = ke::Move(other->info);
|
info = ke::Move(other.info);
|
||||||
display = ke::Move(other->display);
|
display = ke::Move(other.display);
|
||||||
style = other->style;
|
style = other.style;
|
||||||
access = other->access;
|
access = other.access;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,6 +83,10 @@ void CRadioStyle::OnSourceModLevelChange(const char *mapName)
|
|||||||
}
|
}
|
||||||
|
|
||||||
g_bRadioInit = true;
|
g_bRadioInit = true;
|
||||||
|
|
||||||
|
// Always register the style. Use IsSupported() to check for validity before use.
|
||||||
|
g_Menus.AddStyle(this);
|
||||||
|
|
||||||
const char *msg = g_pGameConf->GetKeyValue("HudRadioMenuMsg");
|
const char *msg = g_pGameConf->GetKeyValue("HudRadioMenuMsg");
|
||||||
if (!msg || msg[0] == '\0')
|
if (!msg || msg[0] == '\0')
|
||||||
{
|
{
|
||||||
@ -118,7 +122,6 @@ void CRadioStyle::OnSourceModLevelChange(const char *mapName)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
g_Menus.AddStyle(this);
|
|
||||||
g_Menus.SetDefaultStyle(this);
|
g_Menus.SetDefaultStyle(this);
|
||||||
|
|
||||||
g_UserMsgs.HookUserMessage(g_ShowMenuId, this, false);
|
g_UserMsgs.HookUserMessage(g_ShowMenuId, this, false);
|
||||||
@ -593,6 +596,7 @@ bool CRadioMenu::DisplayAtItem(int client,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AutoHandleRooter ahr(this->GetHandle());
|
||||||
return g_RadioMenuStyle.DoClientMenu(client,
|
return g_RadioMenuStyle.DoClientMenu(client,
|
||||||
this,
|
this,
|
||||||
start_item,
|
start_item,
|
||||||
|
@ -41,6 +41,8 @@
|
|||||||
#include "sm_fastlink.h"
|
#include "sm_fastlink.h"
|
||||||
#include <sh_stack.h>
|
#include <sh_stack.h>
|
||||||
#include <compat_wrappers.h>
|
#include <compat_wrappers.h>
|
||||||
|
#include "logic/common_logic.h"
|
||||||
|
#include "AutoHandleRooter.h"
|
||||||
|
|
||||||
using namespace SourceMod;
|
using namespace SourceMod;
|
||||||
|
|
||||||
|
@ -408,6 +408,7 @@ bool CValveMenu::DisplayAtItem(int client,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AutoHandleRooter ahr(this->GetHandle());
|
||||||
return g_ValveMenuStyle.DoClientMenu(client, this, start_item, alt_handler ? alt_handler : m_pHandler, time);
|
return g_ValveMenuStyle.DoClientMenu(client, this, start_item, alt_handler ? alt_handler : m_pHandler, time);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,6 +39,8 @@
|
|||||||
#include "KeyValues.h"
|
#include "KeyValues.h"
|
||||||
#include "sm_fastlink.h"
|
#include "sm_fastlink.h"
|
||||||
#include <compat_wrappers.h>
|
#include <compat_wrappers.h>
|
||||||
|
#include "logic/common_logic.h"
|
||||||
|
#include "AutoHandleRooter.h"
|
||||||
|
|
||||||
using namespace SourceMod;
|
using namespace SourceMod;
|
||||||
|
|
||||||
|
@ -128,7 +128,7 @@ public:
|
|||||||
PlayerManager::PlayerManager()
|
PlayerManager::PlayerManager()
|
||||||
{
|
{
|
||||||
m_AuthQueue = NULL;
|
m_AuthQueue = NULL;
|
||||||
m_FirstPass = false;
|
m_bServerActivated = false;
|
||||||
m_maxClients = 0;
|
m_maxClients = 0;
|
||||||
|
|
||||||
m_SourceTVUserId = -1;
|
m_SourceTVUserId = -1;
|
||||||
@ -148,6 +148,19 @@ PlayerManager::~PlayerManager()
|
|||||||
delete [] m_UserIdLookUp;
|
delete [] m_UserIdLookUp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PlayerManager::OnSourceModStartup(bool late)
|
||||||
|
{
|
||||||
|
/* Initialize all players */
|
||||||
|
|
||||||
|
m_PlayerCount = 0;
|
||||||
|
m_Players = new CPlayer[SM_MAXPLAYERS + 1];
|
||||||
|
m_AuthQueue = new unsigned int[SM_MAXPLAYERS + 1];
|
||||||
|
|
||||||
|
memset(m_AuthQueue, 0, sizeof(unsigned int) * (SM_MAXPLAYERS + 1));
|
||||||
|
|
||||||
|
g_NumPlayersToAuth = &m_AuthQueue[0];
|
||||||
|
}
|
||||||
|
|
||||||
void PlayerManager::OnSourceModAllInitialized()
|
void PlayerManager::OnSourceModAllInitialized()
|
||||||
{
|
{
|
||||||
SH_ADD_HOOK(IServerGameClients, ClientConnect, serverClients, SH_MEMBER(this, &PlayerManager::OnClientConnect), false);
|
SH_ADD_HOOK(IServerGameClients, ClientConnect, serverClients, SH_MEMBER(this, &PlayerManager::OnClientConnect), false);
|
||||||
@ -285,9 +298,6 @@ void PlayerManager::OnServerActivate(edict_t *pEdictList, int edictCount, int cl
|
|||||||
static ConVar *replay_enable = icvar->FindVar("replay_enable");
|
static ConVar *replay_enable = icvar->FindVar("replay_enable");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// clientMax will not necessarily be correct here (such as on late SourceTV enable)
|
|
||||||
m_maxClients = gpGlobals->maxClients;
|
|
||||||
|
|
||||||
ICommandLine *commandLine = g_HL2.GetValveCommandLine();
|
ICommandLine *commandLine = g_HL2.GetValveCommandLine();
|
||||||
m_bIsSourceTVActive = (tv_enable && tv_enable->GetBool() && (!commandLine || commandLine->FindParm("-nohltv") == 0));
|
m_bIsSourceTVActive = (tv_enable && tv_enable->GetBool() && (!commandLine || commandLine->FindParm("-nohltv") == 0));
|
||||||
m_bIsReplayActive = false;
|
m_bIsReplayActive = false;
|
||||||
@ -296,23 +306,8 @@ void PlayerManager::OnServerActivate(edict_t *pEdictList, int edictCount, int cl
|
|||||||
#endif
|
#endif
|
||||||
m_PlayersSinceActive = 0;
|
m_PlayersSinceActive = 0;
|
||||||
|
|
||||||
if (!m_FirstPass)
|
|
||||||
{
|
|
||||||
/* Initialize all players */
|
|
||||||
|
|
||||||
m_PlayerCount = 0;
|
|
||||||
m_Players = new CPlayer[SM_MAXPLAYERS + 1];
|
|
||||||
m_AuthQueue = new unsigned int[SM_MAXPLAYERS + 1];
|
|
||||||
m_FirstPass = true;
|
|
||||||
|
|
||||||
memset(m_AuthQueue, 0, sizeof(unsigned int) * (SM_MAXPLAYERS + 1));
|
|
||||||
|
|
||||||
g_NumPlayersToAuth = &m_AuthQueue[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
scripts->SyncMaxClients(m_maxClients);
|
|
||||||
|
|
||||||
g_OnMapStarted = true;
|
g_OnMapStarted = true;
|
||||||
|
m_bServerActivated = true;
|
||||||
|
|
||||||
#if SOURCE_ENGINE == SE_DOTA
|
#if SOURCE_ENGINE == SE_DOTA
|
||||||
extsys->CallOnCoreMapStart(gpGlobals->pEdicts, gpGlobals->maxEntities, gpGlobals->maxClients);
|
extsys->CallOnCoreMapStart(gpGlobals->pEdicts, gpGlobals->maxEntities, gpGlobals->maxClients);
|
||||||
@ -344,7 +339,7 @@ void PlayerManager::OnServerActivate(edict_t *pEdictList, int edictCount, int cl
|
|||||||
|
|
||||||
bool PlayerManager::IsServerActivated()
|
bool PlayerManager::IsServerActivated()
|
||||||
{
|
{
|
||||||
return m_FirstPass;
|
return m_bServerActivated;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool PlayerManager::CheckSetAdmin(int index, CPlayer *pPlayer, AdminId id)
|
bool PlayerManager::CheckSetAdmin(int index, CPlayer *pPlayer, AdminId id)
|
||||||
@ -1826,11 +1821,6 @@ void PlayerManager::OnSourceModMaxPlayersChanged( int newvalue )
|
|||||||
|
|
||||||
void PlayerManager::MaxPlayersChanged( int newvalue /*= -1*/ )
|
void PlayerManager::MaxPlayersChanged( int newvalue /*= -1*/ )
|
||||||
{
|
{
|
||||||
if (!m_FirstPass)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (newvalue == -1)
|
if (newvalue == -1)
|
||||||
{
|
{
|
||||||
newvalue = gpGlobals->maxClients;
|
newvalue = gpGlobals->maxClients;
|
||||||
@ -2003,6 +1993,13 @@ void CPlayer::UpdateAuthIds()
|
|||||||
#else
|
#else
|
||||||
authstr = engine->GetPlayerNetworkIDString(m_pEdict);
|
authstr = engine->GetPlayerNetworkIDString(m_pEdict);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (!authstr)
|
||||||
|
{
|
||||||
|
// engine doesn't have the client's auth string just yet, we can't do anything
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (m_AuthID.compare(authstr) == 0)
|
if (m_AuthID.compare(authstr) == 0)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
|
@ -154,6 +154,7 @@ public:
|
|||||||
PlayerManager();
|
PlayerManager();
|
||||||
~PlayerManager();
|
~PlayerManager();
|
||||||
public: //SMGlobalClass
|
public: //SMGlobalClass
|
||||||
|
void OnSourceModStartup(bool late) override;
|
||||||
void OnSourceModAllInitialized();
|
void OnSourceModAllInitialized();
|
||||||
void OnSourceModShutdown();
|
void OnSourceModShutdown();
|
||||||
void OnSourceModLevelEnd();
|
void OnSourceModLevelEnd();
|
||||||
@ -250,7 +251,7 @@ private:
|
|||||||
int m_maxClients;
|
int m_maxClients;
|
||||||
int m_PlayerCount;
|
int m_PlayerCount;
|
||||||
int m_PlayersSinceActive;
|
int m_PlayersSinceActive;
|
||||||
bool m_FirstPass;
|
bool m_bServerActivated;
|
||||||
unsigned int *m_AuthQueue;
|
unsigned int *m_AuthQueue;
|
||||||
String m_PassInfoVar;
|
String m_PassInfoVar;
|
||||||
bool m_QueryLang;
|
bool m_QueryLang;
|
||||||
|
@ -5,8 +5,8 @@ binary = SM.Library(builder, 'sourcemod.logic')
|
|||||||
binary.compiler.cxxincludes += [
|
binary.compiler.cxxincludes += [
|
||||||
os.path.join(builder.sourcePath, 'core', 'logic'),
|
os.path.join(builder.sourcePath, 'core', 'logic'),
|
||||||
os.path.join(builder.sourcePath, 'public'),
|
os.path.join(builder.sourcePath, 'public'),
|
||||||
os.path.join(builder.sourcePath, 'public', 'sourcepawn'),
|
os.path.join(builder.sourcePath, 'sourcepawn', 'include'),
|
||||||
os.path.join(builder.sourcePath, 'public', 'amtl'),
|
os.path.join(builder.sourcePath, 'public', 'amtl', 'include'),
|
||||||
os.path.join(SM.mms_root, 'core', 'sourcehook')
|
os.path.join(SM.mms_root, 'core', 'sourcehook')
|
||||||
]
|
]
|
||||||
binary.compiler.defines += [
|
binary.compiler.defines += [
|
||||||
@ -62,7 +62,6 @@ binary.sources += [
|
|||||||
'PluginSys.cpp',
|
'PluginSys.cpp',
|
||||||
'HandleSys.cpp',
|
'HandleSys.cpp',
|
||||||
'NativeOwner.cpp',
|
'NativeOwner.cpp',
|
||||||
'NativeInvoker.cpp',
|
|
||||||
'ExtensionSys.cpp',
|
'ExtensionSys.cpp',
|
||||||
'DebugReporter.cpp',
|
'DebugReporter.cpp',
|
||||||
'Database.cpp',
|
'Database.cpp',
|
||||||
|
@ -39,15 +39,16 @@
|
|||||||
#include "AdminCache.h"
|
#include "AdminCache.h"
|
||||||
#include "Translator.h"
|
#include "Translator.h"
|
||||||
#include "common_logic.h"
|
#include "common_logic.h"
|
||||||
|
#include "stringutil.h"
|
||||||
|
|
||||||
#define LEVEL_STATE_NONE 0
|
#define LEVEL_STATE_NONE 0
|
||||||
#define LEVEL_STATE_LEVELS 1
|
#define LEVEL_STATE_LEVELS 1
|
||||||
#define LEVEL_STATE_FLAGS 2
|
#define LEVEL_STATE_FLAGS 2
|
||||||
|
|
||||||
AdminCache g_Admins;
|
AdminCache g_Admins;
|
||||||
char g_ReverseFlags[26];
|
char g_ReverseFlags[AdminFlags_TOTAL];
|
||||||
AdminFlag g_FlagLetters[26];
|
AdminFlag g_FlagLetters[26];
|
||||||
bool g_FlagSet[26];
|
bool g_FlagCharSet[26];
|
||||||
|
|
||||||
/* Default flags */
|
/* Default flags */
|
||||||
AdminFlag g_DefaultFlags[26] =
|
AdminFlag g_DefaultFlags[26] =
|
||||||
@ -71,9 +72,9 @@ public:
|
|||||||
memcpy(g_FlagLetters, g_DefaultFlags, sizeof(AdminFlag) * 26);
|
memcpy(g_FlagLetters, g_DefaultFlags, sizeof(AdminFlag) * 26);
|
||||||
for (unsigned int i=0; i<20; i++)
|
for (unsigned int i=0; i<20; i++)
|
||||||
{
|
{
|
||||||
g_FlagSet[i] = true;
|
g_FlagCharSet[i] = true;
|
||||||
}
|
}
|
||||||
g_FlagSet[25] = true;
|
g_FlagCharSet[25] = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
private:
|
private:
|
||||||
@ -103,7 +104,7 @@ private:
|
|||||||
{
|
{
|
||||||
m_LevelState = LEVEL_STATE_NONE;
|
m_LevelState = LEVEL_STATE_NONE;
|
||||||
m_IgnoreLevel = 0;
|
m_IgnoreLevel = 0;
|
||||||
memset(g_FlagSet, 0, sizeof(g_FlagSet));
|
memset(g_FlagCharSet, 0, sizeof(g_FlagCharSet));
|
||||||
}
|
}
|
||||||
SMCResult ReadSMC_NewSection(const SMCStates *states, const char *name)
|
SMCResult ReadSMC_NewSection(const SMCStates *states, const char *name)
|
||||||
{
|
{
|
||||||
@ -163,7 +164,7 @@ private:
|
|||||||
return SMCResult_Continue;
|
return SMCResult_Continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_FlagSet[c] = true;
|
g_FlagCharSet[c] = true;
|
||||||
|
|
||||||
return SMCResult_Continue;
|
return SMCResult_Continue;
|
||||||
}
|
}
|
||||||
@ -981,7 +982,6 @@ void AdminCache::DumpAdminCache(AdminCachePart part, bool rebuild)
|
|||||||
{
|
{
|
||||||
List<IAdminListener *>::iterator iter;
|
List<IAdminListener *>::iterator iter;
|
||||||
IAdminListener *pListener;
|
IAdminListener *pListener;
|
||||||
cell_t result;
|
|
||||||
|
|
||||||
if (part == AdminCache_Overrides)
|
if (part == AdminCache_Overrides)
|
||||||
{
|
{
|
||||||
@ -995,7 +995,7 @@ void AdminCache::DumpAdminCache(AdminCachePart part, bool rebuild)
|
|||||||
pListener->OnRebuildOverrideCache();
|
pListener->OnRebuildOverrideCache();
|
||||||
}
|
}
|
||||||
m_pCacheFwd->PushCell(part);
|
m_pCacheFwd->PushCell(part);
|
||||||
m_pCacheFwd->Execute(&result);
|
m_pCacheFwd->Execute();
|
||||||
}
|
}
|
||||||
} else if (part == AdminCache_Groups || part == AdminCache_Admins) {
|
} else if (part == AdminCache_Groups || part == AdminCache_Admins) {
|
||||||
if (part == AdminCache_Groups)
|
if (part == AdminCache_Groups)
|
||||||
@ -1009,7 +1009,7 @@ void AdminCache::DumpAdminCache(AdminCachePart part, bool rebuild)
|
|||||||
pListener->OnRebuildGroupCache();
|
pListener->OnRebuildGroupCache();
|
||||||
}
|
}
|
||||||
m_pCacheFwd->PushCell(part);
|
m_pCacheFwd->PushCell(part);
|
||||||
m_pCacheFwd->Execute(&result);
|
m_pCacheFwd->Execute();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
InvalidateAdminCache(true);
|
InvalidateAdminCache(true);
|
||||||
@ -1021,7 +1021,7 @@ void AdminCache::DumpAdminCache(AdminCachePart part, bool rebuild)
|
|||||||
pListener->OnRebuildAdminCache((part == AdminCache_Groups));
|
pListener->OnRebuildAdminCache((part == AdminCache_Groups));
|
||||||
}
|
}
|
||||||
m_pCacheFwd->PushCell(AdminCache_Admins);
|
m_pCacheFwd->PushCell(AdminCache_Admins);
|
||||||
m_pCacheFwd->Execute(&result);
|
m_pCacheFwd->Execute();
|
||||||
playerhelpers->RecheckAnyAdmins();
|
playerhelpers->RecheckAnyAdmins();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1063,22 +1063,29 @@ bool AdminCache::GetMethodIndex(const char *name, unsigned int *_index)
|
|||||||
bool AdminCache::GetUnifiedSteamIdentity(const char *ident, char *out, size_t maxlen)
|
bool AdminCache::GetUnifiedSteamIdentity(const char *ident, char *out, size_t maxlen)
|
||||||
{
|
{
|
||||||
int len = strlen(ident);
|
int len = strlen(ident);
|
||||||
/* If the id was a steam id strip off the STEAM_*: part */
|
if (!strcmp(ident, "BOT"))
|
||||||
if (len >= 11 && !strncmp(ident, "STEAM_", 6) && ident[8] != '_')
|
|
||||||
{
|
{
|
||||||
// non-bot/lan Steam2 Id
|
// Bots
|
||||||
|
strncopy(out, ident, maxlen);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (len >= 11 && !strncmp(ident, "STEAM_", 6) && ident[8] != '_')
|
||||||
|
{
|
||||||
|
// non-bot/lan Steam2 Id, strip off the STEAM_* part
|
||||||
snprintf(out, maxlen, "%s", &ident[8]);
|
snprintf(out, maxlen, "%s", &ident[8]);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if (len >= 7 && !strncmp(ident, "[U:", 3) && ident[len-1] == ']')
|
else if (len >= 7 && !strncmp(ident, "[U:", 3) && ident[len-1] == ']')
|
||||||
{
|
{
|
||||||
// Steam3 Id
|
// Steam3 Id, replicate the Steam2 Post-"STEAM_" part
|
||||||
uint32_t accountId = strtoul(&ident[5], nullptr, 10);
|
uint32_t accountId = strtoul(&ident[5], nullptr, 10);
|
||||||
snprintf(out, maxlen, "%u:%u", accountId & 1, accountId >> 1);
|
snprintf(out, maxlen, "%u:%u", accountId & 1, accountId >> 1);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
// 64-bit CSteamID, replicate the Steam2 Post-"STEAM_" part
|
||||||
|
|
||||||
// some constants from steamclientpublic.h
|
// some constants from steamclientpublic.h
|
||||||
static const uint32_t k_EAccountTypeIndividual = 1;
|
static const uint32_t k_EAccountTypeIndividual = 1;
|
||||||
static const int k_EUniverseInvalid = 0;
|
static const int k_EUniverseInvalid = 0;
|
||||||
@ -1577,7 +1584,7 @@ bool AdminCache::FindFlag(char c, AdminFlag *pAdmFlag)
|
|||||||
{
|
{
|
||||||
if (c < 'a'
|
if (c < 'a'
|
||||||
|| c > 'z'
|
|| c > 'z'
|
||||||
|| !g_FlagSet[(unsigned)c - (unsigned)'a'])
|
|| !g_FlagCharSet[(unsigned)c - (unsigned)'a'])
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -1592,17 +1599,13 @@ bool AdminCache::FindFlag(char c, AdminFlag *pAdmFlag)
|
|||||||
|
|
||||||
bool AdminCache::FindFlagChar(AdminFlag flag, char *c)
|
bool AdminCache::FindFlagChar(AdminFlag flag, char *c)
|
||||||
{
|
{
|
||||||
if (!g_FlagSet[flag])
|
char flagchar = g_ReverseFlags[flag];
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (c)
|
if (c)
|
||||||
{
|
{
|
||||||
*c = g_ReverseFlags[flag];
|
*c = flagchar;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return flagchar != '?';
|
||||||
}
|
}
|
||||||
|
|
||||||
FlagBits AdminCache::ReadFlagString(const char *flags, const char **end)
|
FlagBits AdminCache::ReadFlagString(const char *flags, const char **end)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* vim: set ts=4 :
|
* vim: set ts=4 sw=4 tw=99 noet :
|
||||||
* =============================================================================
|
* =============================================================================
|
||||||
* SourceMod
|
* SourceMod
|
||||||
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
||||||
@ -132,51 +132,6 @@ void DebugReport::GenerateCodeError(IPluginContext *pContext, uint32_t code_addr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DebugReport::OnContextExecuteError(IPluginContext *ctx, IContextTrace *error)
|
|
||||||
{
|
|
||||||
const char *lastname;
|
|
||||||
const char *plname = pluginsys->FindPluginByContext(ctx->GetContext())->GetFilename();
|
|
||||||
int n_err = error->GetErrorCode();
|
|
||||||
|
|
||||||
if (n_err != SP_ERROR_NATIVE)
|
|
||||||
{
|
|
||||||
g_Logger.LogError("[SM] Plugin encountered error %d: %s",
|
|
||||||
n_err,
|
|
||||||
error->GetErrorString());
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((lastname=error->GetLastNative(NULL)) != NULL)
|
|
||||||
{
|
|
||||||
const char *custerr;
|
|
||||||
if ((custerr=error->GetCustomErrorString()) != NULL)
|
|
||||||
{
|
|
||||||
g_Logger.LogError("[SM] Native \"%s\" reported: %s", lastname, custerr);
|
|
||||||
} else {
|
|
||||||
g_Logger.LogError("[SM] Native \"%s\" encountered a generic error.", lastname);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!error->DebugInfoAvailable())
|
|
||||||
{
|
|
||||||
g_Logger.LogError("[SM] Debug mode is not enabled for \"%s\"", plname);
|
|
||||||
g_Logger.LogError("[SM] To enable debug mode, edit plugin_settings.cfg, or type: sm plugins debug %d on",
|
|
||||||
_GetPluginIndex(ctx));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
CallStackInfo stk_info;
|
|
||||||
int i = 0;
|
|
||||||
g_Logger.LogError("[SM] Displaying call stack trace for plugin \"%s\":", plname);
|
|
||||||
while (error->GetTraceInfo(&stk_info))
|
|
||||||
{
|
|
||||||
g_Logger.LogError("[SM] [%d] Line %d, %s::%s()",
|
|
||||||
i++,
|
|
||||||
stk_info.line,
|
|
||||||
stk_info.filename,
|
|
||||||
stk_info.function);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int DebugReport::_GetPluginIndex(IPluginContext *ctx)
|
int DebugReport::_GetPluginIndex(IPluginContext *ctx)
|
||||||
{
|
{
|
||||||
int id = 1;
|
int id = 1;
|
||||||
@ -199,3 +154,46 @@ int DebugReport::_GetPluginIndex(IPluginContext *ctx)
|
|||||||
return pluginsys->GetPluginCount() + 1;
|
return pluginsys->GetPluginCount() + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DebugReport::ReportError(const IErrorReport &report, IFrameIterator &iter)
|
||||||
|
{
|
||||||
|
// Find the nearest plugin to blame.
|
||||||
|
const char *blame = nullptr;
|
||||||
|
for (; !iter.Done(); iter.Next()) {
|
||||||
|
if (iter.IsScriptedFrame()) {
|
||||||
|
IPlugin *plugin = pluginsys->FindPluginByContext(iter.Context()->GetContext());
|
||||||
|
if (plugin)
|
||||||
|
blame = plugin->GetFilename();
|
||||||
|
else
|
||||||
|
blame = iter.Context()->GetRuntime()->GetFilename();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
iter.Reset();
|
||||||
|
|
||||||
|
g_Logger.LogError("[SM] Exception reported: %s", report.Message());
|
||||||
|
if (blame)
|
||||||
|
g_Logger.LogError("[SM] Blaming plugin: %s", blame);
|
||||||
|
g_Logger.LogError("[SM] Call stack trace:");
|
||||||
|
|
||||||
|
for (int index = 0; !iter.Done(); iter.Next(), index++) {
|
||||||
|
const char *fn = iter.FunctionName();
|
||||||
|
if (!fn)
|
||||||
|
fn = "<unknown function>";
|
||||||
|
|
||||||
|
if (iter.IsNativeFrame()) {
|
||||||
|
g_Logger.LogError("[SM] [%d] %s", index, fn);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (iter.IsScriptedFrame()) {
|
||||||
|
const char *file = iter.FilePath();
|
||||||
|
if (!file)
|
||||||
|
file = "<unknown>";
|
||||||
|
g_Logger.LogError("[SM] [%d] Line %d, %s::%s()",
|
||||||
|
index,
|
||||||
|
iter.LineNumber(),
|
||||||
|
file,
|
||||||
|
fn);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -42,7 +42,7 @@ class DebugReport :
|
|||||||
public: // SMGlobalClass
|
public: // SMGlobalClass
|
||||||
void OnSourceModAllInitialized();
|
void OnSourceModAllInitialized();
|
||||||
public: // IDebugListener
|
public: // IDebugListener
|
||||||
void OnContextExecuteError(IPluginContext *ctx, IContextTrace *error);
|
void ReportError(const IErrorReport &report, IFrameIterator &iter);
|
||||||
void OnDebugSpew(const char *msg, ...);
|
void OnDebugSpew(const char *msg, ...);
|
||||||
public:
|
public:
|
||||||
void GenerateError(IPluginContext *ctx, cell_t func_idx, int err, const char *message, ...);
|
void GenerateError(IPluginContext *ctx, cell_t func_idx, int err, const char *message, ...);
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
#include <am-string.h>
|
#include <am-string.h>
|
||||||
#include "common_logic.h"
|
#include "common_logic.h"
|
||||||
|
|
||||||
#define HANDLESYS_MAX_HANDLES (1<<14)
|
#define HANDLESYS_MAX_HANDLES (1<<15)
|
||||||
#define HANDLESYS_MAX_TYPES (1<<9)
|
#define HANDLESYS_MAX_TYPES (1<<9)
|
||||||
#define HANDLESYS_MAX_SUBTYPES 0xF
|
#define HANDLESYS_MAX_SUBTYPES 0xF
|
||||||
#define HANDLESYS_SUBTYPE_MASK 0xF
|
#define HANDLESYS_SUBTYPE_MASK 0xF
|
||||||
|
@ -1,108 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
MMSOURCE17 = ../../../mmsource-1.7
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
BINARY = sourcemod.logic.so
|
|
||||||
|
|
||||||
OBJECTS = \
|
|
||||||
common_logic.cpp \
|
|
||||||
smn_adt_array.cpp \
|
|
||||||
smn_sorting.cpp \
|
|
||||||
smn_maplists.cpp \
|
|
||||||
smn_adt_stack.cpp \
|
|
||||||
thread/ThreadWorker.cpp \
|
|
||||||
thread/BaseWorker.cpp \
|
|
||||||
thread/PosixThreads.cpp \
|
|
||||||
ThreadSupport.cpp \
|
|
||||||
smn_float.cpp \
|
|
||||||
TextParsers.cpp \
|
|
||||||
smn_textparse.cpp \
|
|
||||||
smn_adt_trie.cpp \
|
|
||||||
Profiler.cpp \
|
|
||||||
smn_functions.cpp \
|
|
||||||
sm_crc32.cpp \
|
|
||||||
smn_timers.cpp \
|
|
||||||
MemoryUtils.cpp \
|
|
||||||
smn_admin.cpp \
|
|
||||||
smn_banning.cpp \
|
|
||||||
stringutil.cpp \
|
|
||||||
Translator.cpp \
|
|
||||||
PhraseCollection.cpp \
|
|
||||||
smn_lang.cpp \
|
|
||||||
smn_string.cpp \
|
|
||||||
smn_handles.cpp \
|
|
||||||
smn_datapacks.cpp \
|
|
||||||
smn_gameconfigs.cpp \
|
|
||||||
GameConfigs.cpp \
|
|
||||||
smn_players.cpp \
|
|
||||||
smn_profiler.cpp
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
LINK += -lpthread -static-libgcc
|
|
||||||
|
|
||||||
INCLUDE += -I. -I$(MMSOURCE17)/core/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror \
|
|
||||||
-Wno-uninitialized -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -DSM_DEFAULT_THREADER -m32 \
|
|
||||||
-DSM_LOGIC
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
OBJ_LINUX := $(OBJ_LINUX:%.c=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.c
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all:
|
|
||||||
mkdir -p $(BIN_DIR)/thread
|
|
||||||
$(MAKE) -f Makefile sourcemod
|
|
||||||
|
|
||||||
sourcemod: $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -m32 -shared -ldl -lm -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/thread/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -1,360 +0,0 @@
|
|||||||
/**
|
|
||||||
* vim: set ts=4 sw=4 tw=99 noet :
|
|
||||||
* =============================================================================
|
|
||||||
* SourcePawn
|
|
||||||
* Copyright (C) 2004-2009 AlliedModders LLC. All rights reserved.
|
|
||||||
* =============================================================================
|
|
||||||
*
|
|
||||||
* This program is free software; you can redistribute it and/or modify it under
|
|
||||||
* the terms of the GNU General Public License, version 3.0, as published by the
|
|
||||||
* Free Software Foundation.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
||||||
* details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License along with
|
|
||||||
* this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
* As a special exception, AlliedModders LLC gives you permission to link the
|
|
||||||
* code of this program (as well as its derivative works) to "Half-Life 2," the
|
|
||||||
* "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
|
|
||||||
* by the Valve Corporation. You must obey the GNU General Public License in
|
|
||||||
* all respects for all other code used. Additionally, AlliedModders LLC grants
|
|
||||||
* this exception to all derivative works. AlliedModders LLC defines further
|
|
||||||
* exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
|
|
||||||
* or <http://www.sourcemod.net/license.php>.
|
|
||||||
*
|
|
||||||
* Version: $Id$
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "NativeInvoker.h"
|
|
||||||
#include "ShareSys.h"
|
|
||||||
|
|
||||||
NativeInterface g_NInvoke;
|
|
||||||
|
|
||||||
NativeInvoker::NativeInvoker()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
NativeInvoker::~NativeInvoker()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *NativeInterface::GetInterfaceName()
|
|
||||||
{
|
|
||||||
return SMINTERFACE_NINVOKE_NAME;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned int NativeInterface::GetInterfaceVersion()
|
|
||||||
{
|
|
||||||
return SMINTERFACE_NINVOKE_VERSION;
|
|
||||||
}
|
|
||||||
|
|
||||||
void NativeInterface::OnSourceModAllInitialized()
|
|
||||||
{
|
|
||||||
sharesys->AddInterface(NULL, &g_NInvoke);
|
|
||||||
}
|
|
||||||
|
|
||||||
IPluginRuntime *NativeInterface::CreateRuntime(const char *name, size_t bytes)
|
|
||||||
{
|
|
||||||
return g_pSourcePawn2->CreateEmptyRuntime(name, bytes);
|
|
||||||
}
|
|
||||||
|
|
||||||
INativeInvoker *NativeInterface::CreateInvoker()
|
|
||||||
{
|
|
||||||
return new NativeInvoker();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool NativeInvoker::Start(IPluginContext *pContext, const char *name)
|
|
||||||
{
|
|
||||||
ke::Ref<Native> entry = g_ShareSys.FindNative(name);
|
|
||||||
if (!entry)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
if (!entry->owner)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
native_ = entry->func();
|
|
||||||
context_ = pContext;
|
|
||||||
|
|
||||||
m_curparam = 0;
|
|
||||||
m_errorstate = SP_ERROR_NONE;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
cell_t NativeInvoker::PushCell(cell_t cell)
|
|
||||||
{
|
|
||||||
if (m_curparam >= SP_MAX_EXEC_PARAMS)
|
|
||||||
{
|
|
||||||
return SetError(SP_ERROR_PARAMS_MAX);
|
|
||||||
}
|
|
||||||
|
|
||||||
m_info[m_curparam].marked = false;
|
|
||||||
m_params[m_curparam] = cell;
|
|
||||||
m_curparam++;
|
|
||||||
|
|
||||||
return SP_ERROR_NONE;
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::PushCellByRef(cell_t *cell, int flags)
|
|
||||||
{
|
|
||||||
return PushArray(cell, 1, flags);
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::PushFloat(float number)
|
|
||||||
{
|
|
||||||
cell_t val = *(cell_t *)&number;
|
|
||||||
|
|
||||||
return PushCell(val);
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::PushFloatByRef(float *number, int flags)
|
|
||||||
{
|
|
||||||
return PushCellByRef((cell_t *)number, flags);
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::PushArray(cell_t *inarray, unsigned int cells, int copyback)
|
|
||||||
{
|
|
||||||
if (m_curparam >= SP_MAX_EXEC_PARAMS)
|
|
||||||
{
|
|
||||||
return SetError(SP_ERROR_PARAMS_MAX);
|
|
||||||
}
|
|
||||||
|
|
||||||
ParamInfo *info = &m_info[m_curparam];
|
|
||||||
|
|
||||||
info->flags = inarray ? copyback : 0;
|
|
||||||
info->marked = true;
|
|
||||||
info->size = cells;
|
|
||||||
info->str.is_sz = false;
|
|
||||||
info->orig_addr = inarray;
|
|
||||||
|
|
||||||
m_curparam++;
|
|
||||||
|
|
||||||
return SP_ERROR_NONE;
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::PushString(const char *string)
|
|
||||||
{
|
|
||||||
return _PushString(string, SM_PARAM_STRING_COPY, 0, strlen(string)+1);
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::PushStringEx(char *buffer, size_t length, int sz_flags, int cp_flags)
|
|
||||||
{
|
|
||||||
return _PushString(buffer, sz_flags, cp_flags, length);
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::_PushString(const char *string, int sz_flags, int cp_flags, size_t len)
|
|
||||||
{
|
|
||||||
if (m_curparam >= SP_MAX_EXEC_PARAMS)
|
|
||||||
{
|
|
||||||
return SetError(SP_ERROR_PARAMS_MAX);
|
|
||||||
}
|
|
||||||
|
|
||||||
ParamInfo *info = &m_info[m_curparam];
|
|
||||||
|
|
||||||
info->marked = true;
|
|
||||||
info->orig_addr = (cell_t *)string;
|
|
||||||
info->flags = cp_flags;
|
|
||||||
info->size = len;
|
|
||||||
info->str.sz_flags = sz_flags;
|
|
||||||
info->str.is_sz = true;
|
|
||||||
|
|
||||||
m_curparam++;
|
|
||||||
|
|
||||||
return SP_ERROR_NONE;
|
|
||||||
}
|
|
||||||
|
|
||||||
void NativeInvoker::Cancel()
|
|
||||||
{
|
|
||||||
if (context_ == NULL)
|
|
||||||
return;
|
|
||||||
|
|
||||||
m_errorstate = SP_ERROR_NONE;
|
|
||||||
m_curparam = 0;
|
|
||||||
context_ = NULL;
|
|
||||||
native_ = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::SetError(int err)
|
|
||||||
{
|
|
||||||
m_errorstate = err;
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
int NativeInvoker::Invoke(cell_t *result)
|
|
||||||
{
|
|
||||||
int err = SP_ERROR_NONE;
|
|
||||||
|
|
||||||
if (context_ == NULL)
|
|
||||||
return SP_ERROR_INVALID_NATIVE;
|
|
||||||
|
|
||||||
if (m_errorstate != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
err = m_errorstate;
|
|
||||||
Cancel();
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
cell_t tresult;
|
|
||||||
|
|
||||||
if (result == NULL)
|
|
||||||
{
|
|
||||||
result = &tresult;
|
|
||||||
}
|
|
||||||
|
|
||||||
//This is for re-entrancy!
|
|
||||||
IPluginContext *ctx = context_;
|
|
||||||
cell_t _temp_params[SP_MAX_EXEC_PARAMS + 1];
|
|
||||||
cell_t *temp_params = &_temp_params[1];
|
|
||||||
ParamInfo temp_info[SP_MAX_EXEC_PARAMS];
|
|
||||||
unsigned int numparams = m_curparam;
|
|
||||||
unsigned int i;
|
|
||||||
bool docopies = true;
|
|
||||||
|
|
||||||
if (numparams)
|
|
||||||
{
|
|
||||||
//Save the info locally, then reset it for re-entrant calls.
|
|
||||||
memcpy(temp_info, m_info, numparams * sizeof(ParamInfo));
|
|
||||||
}
|
|
||||||
m_curparam = 0;
|
|
||||||
context_ = NULL;
|
|
||||||
|
|
||||||
/* Initialize 0th parameter */
|
|
||||||
_temp_params[0] = numparams;
|
|
||||||
|
|
||||||
/* Browse the parameters and build arrays */
|
|
||||||
for (i = 0; i < numparams; i++)
|
|
||||||
{
|
|
||||||
/* Is this marked as an array? */
|
|
||||||
if (temp_info[i].marked)
|
|
||||||
{
|
|
||||||
if (!temp_info[i].str.is_sz)
|
|
||||||
{
|
|
||||||
/* Allocate a normal/generic array */
|
|
||||||
if ((err = ctx->HeapAlloc(temp_info[i].size,
|
|
||||||
&temp_info[i].local_addr,
|
|
||||||
&temp_info[i].phys_addr))
|
|
||||||
!= SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (temp_info[i].orig_addr)
|
|
||||||
{
|
|
||||||
memcpy(temp_info[i].phys_addr, temp_info[i].orig_addr, sizeof(cell_t) * temp_info[i].size);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* Calculate cells required for the string */
|
|
||||||
size_t cells = (temp_info[i].size + sizeof(cell_t) - 1) / sizeof(cell_t);
|
|
||||||
|
|
||||||
/* Allocate the buffer */
|
|
||||||
if ((err = ctx->HeapAlloc(cells,
|
|
||||||
&temp_info[i].local_addr,
|
|
||||||
&temp_info[i].phys_addr))
|
|
||||||
!= SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
/* Copy original string if necessary */
|
|
||||||
if ((temp_info[i].str.sz_flags & SM_PARAM_STRING_COPY) && (temp_info[i].orig_addr != NULL))
|
|
||||||
{
|
|
||||||
/* Cut off UTF-8 properly */
|
|
||||||
if (temp_info[i].str.sz_flags & SM_PARAM_STRING_UTF8)
|
|
||||||
{
|
|
||||||
if ((err = ctx->StringToLocalUTF8(temp_info[i].local_addr,
|
|
||||||
temp_info[i].size,
|
|
||||||
(const char *)temp_info[i].orig_addr,
|
|
||||||
NULL))
|
|
||||||
!= SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/* Copy a binary blob */
|
|
||||||
else if (temp_info[i].str.sz_flags & SM_PARAM_STRING_BINARY)
|
|
||||||
{
|
|
||||||
memmove(temp_info[i].phys_addr, temp_info[i].orig_addr, temp_info[i].size);
|
|
||||||
}
|
|
||||||
/* Copy ASCII characters */
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if ((err = ctx->StringToLocal(temp_info[i].local_addr,
|
|
||||||
temp_info[i].size,
|
|
||||||
(const char *)temp_info[i].orig_addr))
|
|
||||||
!= SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} /* End array/string calculation */
|
|
||||||
/* Update the pushed parameter with the byref local address */
|
|
||||||
temp_params[i] = temp_info[i].local_addr;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* Just copy the value normally */
|
|
||||||
temp_params[i] = m_params[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Make the call if we can */
|
|
||||||
if (err == SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
*result = native_(ctx, _temp_params);
|
|
||||||
if (ctx->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
docopies = false;
|
|
||||||
ctx->ClearLastNativeError();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
docopies = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* i should be equal to the last valid parameter + 1 */
|
|
||||||
while (i--)
|
|
||||||
{
|
|
||||||
if (!temp_info[i].marked)
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (docopies && (temp_info[i].flags & SM_PARAM_COPYBACK))
|
|
||||||
{
|
|
||||||
if (temp_info[i].orig_addr)
|
|
||||||
{
|
|
||||||
if (temp_info[i].str.is_sz)
|
|
||||||
{
|
|
||||||
memcpy(temp_info[i].orig_addr, temp_info[i].phys_addr, temp_info[i].size);
|
|
||||||
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (temp_info[i].size == 1)
|
|
||||||
{
|
|
||||||
*temp_info[i].orig_addr = *(temp_info[i].phys_addr);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
memcpy(temp_info[i].orig_addr,
|
|
||||||
temp_info[i].phys_addr,
|
|
||||||
temp_info[i].size * sizeof(cell_t));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((err = ctx->HeapPop(temp_info[i].local_addr)) != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return err;
|
|
||||||
}
|
|
@ -1,102 +0,0 @@
|
|||||||
/**
|
|
||||||
* vim: set ts=4 :
|
|
||||||
* =============================================================================
|
|
||||||
* SourceMod
|
|
||||||
* Copyright (C) 2004-2009 AlliedModders LLC. All rights reserved.
|
|
||||||
* =============================================================================
|
|
||||||
*
|
|
||||||
* This program is free software; you can redistribute it and/or modify it under
|
|
||||||
* the terms of the GNU General Public License, version 3.0, as published by the
|
|
||||||
* Free Software Foundation.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
||||||
* details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License along with
|
|
||||||
* this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
* As a special exception, AlliedModders LLC gives you permission to link the
|
|
||||||
* code of this program (as well as its derivative works) to "Half-Life 2," the
|
|
||||||
* "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
|
|
||||||
* by the Valve Corporation. You must obey the GNU General Public License in
|
|
||||||
* all respects for all other code used. Additionally, AlliedModders LLC grants
|
|
||||||
* this exception to all derivative works. AlliedModders LLC defines further
|
|
||||||
* exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
|
|
||||||
* or <http://www.sourcemod.net/license.php>.
|
|
||||||
*
|
|
||||||
* Version: $Id$
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _INCLUDE_SOURCEMOD_NATIVE_INVOKER_H_
|
|
||||||
#define _INCLUDE_SOURCEMOD_NATIVE_INVOKER_H_
|
|
||||||
|
|
||||||
#include <sp_vm_api.h>
|
|
||||||
#include <INativeInvoker.h>
|
|
||||||
#include "common_logic.h"
|
|
||||||
|
|
||||||
using namespace SourceMod;
|
|
||||||
using namespace SourcePawn;
|
|
||||||
|
|
||||||
struct ParamInfo
|
|
||||||
{
|
|
||||||
int flags; /* Copy-back flags */
|
|
||||||
bool marked; /* Whether this is marked as being used */
|
|
||||||
cell_t local_addr; /* Local address to free */
|
|
||||||
cell_t *phys_addr; /* Physical address of our copy */
|
|
||||||
cell_t *orig_addr; /* Original address to copy back to */
|
|
||||||
ucell_t size; /* Size of array in bytes */
|
|
||||||
struct
|
|
||||||
{
|
|
||||||
bool is_sz; /* is a string */
|
|
||||||
int sz_flags; /* has sz flags */
|
|
||||||
} str;
|
|
||||||
};
|
|
||||||
|
|
||||||
class NativeInvoker : public INativeInvoker
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
NativeInvoker();
|
|
||||||
~NativeInvoker();
|
|
||||||
public: /* ICallable */
|
|
||||||
int PushCell(cell_t cell);
|
|
||||||
int PushCellByRef(cell_t *cell, int flags=SM_PARAM_COPYBACK);
|
|
||||||
int PushFloat(float number);
|
|
||||||
int PushFloatByRef(float *number, int flags=SM_PARAM_COPYBACK);
|
|
||||||
int PushArray(cell_t *inarray, unsigned int cells, int flags=0);
|
|
||||||
int PushString(const char *string);
|
|
||||||
int PushStringEx(char *buffer, size_t length, int sz_flags, int cp_flags);
|
|
||||||
void Cancel();
|
|
||||||
public: /* INativeInvoker */
|
|
||||||
bool Start(IPluginContext *pContext, const char *name);
|
|
||||||
int Invoke(cell_t *result);
|
|
||||||
private:
|
|
||||||
int _PushString(const char *string, int sz_flags, int cp_flags, size_t len);
|
|
||||||
int SetError(int err);
|
|
||||||
private:
|
|
||||||
IPluginContext *context_;
|
|
||||||
SPVM_NATIVE_FUNC native_;
|
|
||||||
cell_t m_params[SP_MAX_EXEC_PARAMS];
|
|
||||||
ParamInfo m_info[SP_MAX_EXEC_PARAMS];
|
|
||||||
unsigned int m_curparam;
|
|
||||||
int m_errorstate;
|
|
||||||
};
|
|
||||||
|
|
||||||
class NativeInterface :
|
|
||||||
public INativeInterface,
|
|
||||||
public SMGlobalClass
|
|
||||||
{
|
|
||||||
public: /* SMGlobalClass */
|
|
||||||
void OnSourceModAllInitialized();
|
|
||||||
public: /* SMInterface */
|
|
||||||
unsigned int GetInterfaceVersion();
|
|
||||||
const char *GetInterfaceName();
|
|
||||||
public: /* INativeInvoker */
|
|
||||||
IPluginRuntime *CreateRuntime(const char *name, size_t bytes);
|
|
||||||
INativeInvoker *CreateInvoker();
|
|
||||||
};
|
|
||||||
|
|
||||||
extern NativeInterface g_NInvoke;
|
|
||||||
|
|
||||||
#endif /* _INCLUDE_SOURCEMOD_NATIVE_INVOKER_H_ */
|
|
@ -84,11 +84,11 @@ void CNativeOwner::UnbindWeakRef(const WeakNative &ref)
|
|||||||
IPluginContext *pContext;
|
IPluginContext *pContext;
|
||||||
|
|
||||||
pContext = ref.pl->GetBaseContext();
|
pContext = ref.pl->GetBaseContext();
|
||||||
if ((pContext->GetNativeByIndex(ref.idx, &native)) == SP_ERROR_NONE)
|
pContext->GetRuntime()->UpdateNativeBinding(
|
||||||
{
|
ref.idx,
|
||||||
native->status = SP_NATIVE_UNBOUND;
|
nullptr,
|
||||||
native->pfn = NULL;
|
0,
|
||||||
}
|
nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CNativeOwner::DropEverything()
|
void CNativeOwner::DropEverything()
|
||||||
|
@ -646,11 +646,7 @@ void CPlugin::DependencyDropped(CPlugin *pOwner)
|
|||||||
if (m_pRuntime->FindNativeByName(entry->name(), &idx) != SP_ERROR_NONE)
|
if (m_pRuntime->FindNativeByName(entry->name(), &idx) != SP_ERROR_NONE)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
sp_native_t *native;
|
m_pRuntime->UpdateNativeBinding(idx, nullptr, 0, nullptr);
|
||||||
m_pRuntime->GetNativeByIndex(idx, &native);
|
|
||||||
|
|
||||||
native->pfn = NULL;
|
|
||||||
native->status = SP_NATIVE_UNBOUND;
|
|
||||||
unbound++;
|
unbound++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -931,44 +927,23 @@ LoadRes CPluginManager::_LoadPlugin(CPlugin **aResult, const char *path, bool de
|
|||||||
|
|
||||||
pPlugin->m_type = PluginType_MapUpdated;
|
pPlugin->m_type = PluginType_MapUpdated;
|
||||||
|
|
||||||
ICompilation *co = NULL;
|
|
||||||
|
|
||||||
if (pPlugin->m_status == Plugin_Uncompiled)
|
if (pPlugin->m_status == Plugin_Uncompiled)
|
||||||
{
|
|
||||||
co = g_pSourcePawn2->StartCompilation();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Do the actual compiling */
|
|
||||||
if (co != NULL)
|
|
||||||
{
|
{
|
||||||
char fullpath[PLATFORM_MAX_PATH];
|
char fullpath[PLATFORM_MAX_PATH];
|
||||||
g_pSM->BuildPath(Path_SM, fullpath, sizeof(fullpath), "plugins/%s", pPlugin->m_filename);
|
g_pSM->BuildPath(Path_SM, fullpath, sizeof(fullpath), "plugins/%s", pPlugin->m_filename);
|
||||||
|
|
||||||
pPlugin->m_pRuntime = g_pSourcePawn2->LoadPlugin(co, fullpath, &err);
|
char loadmsg[255];
|
||||||
if (pPlugin->m_pRuntime == NULL)
|
pPlugin->m_pRuntime = g_pSourcePawn2->LoadBinaryFromFile(fullpath, loadmsg, sizeof(loadmsg));
|
||||||
{
|
if (!pPlugin->m_pRuntime) {
|
||||||
if (error)
|
if (error)
|
||||||
{
|
smcore.Format(error, maxlength, "Unable to load plugin (%s)", loadmsg);
|
||||||
smcore.Format(error,
|
|
||||||
maxlength,
|
|
||||||
"Unable to load plugin (error %d: %s)",
|
|
||||||
err,
|
|
||||||
g_pSourcePawn2->GetErrorString(err));
|
|
||||||
}
|
|
||||||
pPlugin->m_status = Plugin_BadLoad;
|
pPlugin->m_status = Plugin_BadLoad;
|
||||||
}
|
} else {
|
||||||
else
|
if (pPlugin->UpdateInfo()) {
|
||||||
{
|
|
||||||
if (pPlugin->UpdateInfo())
|
|
||||||
{
|
|
||||||
pPlugin->m_status = Plugin_Created;
|
pPlugin->m_status = Plugin_Created;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
if (error)
|
if (error)
|
||||||
{
|
|
||||||
smcore.Format(error, maxlength, "%s", pPlugin->m_errormsg);
|
smcore.Format(error, maxlength, "%s", pPlugin->m_errormsg);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1200,13 +1175,9 @@ bool CPluginManager::FindOrRequirePluginDeps(CPlugin *pPlugin, char *error, size
|
|||||||
if ((pFunc=pBase->GetFunctionByName(buffer)))
|
if ((pFunc=pBase->GetFunctionByName(buffer)))
|
||||||
{
|
{
|
||||||
cell_t res;
|
cell_t res;
|
||||||
pFunc->Execute(&res);
|
if (pFunc->Execute(&res) != SP_ERROR_NONE) {
|
||||||
if (pPlugin->GetBaseContext()->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
if (error)
|
if (error)
|
||||||
{
|
|
||||||
smcore.Format(error, maxlength, "Fatal error during initializing plugin load");
|
smcore.Format(error, maxlength, "Fatal error during initializing plugin load");
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1328,13 +1299,9 @@ bool CPluginManager::LoadOrRequireExtensions(CPlugin *pPlugin, unsigned int pass
|
|||||||
if ((pFunc = pBase->GetFunctionByName(buffer)) != NULL)
|
if ((pFunc = pBase->GetFunctionByName(buffer)) != NULL)
|
||||||
{
|
{
|
||||||
cell_t res;
|
cell_t res;
|
||||||
pFunc->Execute(&res);
|
if (pFunc->Execute(&res) != SP_ERROR_NONE) {
|
||||||
if (pPlugin->GetBaseContext()->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
if (error)
|
if (error)
|
||||||
{
|
|
||||||
smcore.Format(error, maxlength, "Fatal error during plugin initialization (ext req)");
|
smcore.Format(error, maxlength, "Fatal error during plugin initialization (ext req)");
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1365,16 +1332,14 @@ bool CPluginManager::RunSecondPass(CPlugin *pPlugin, char *error, size_t maxleng
|
|||||||
/* Find any unbound natives. Right now, these are not allowed. */
|
/* Find any unbound natives. Right now, these are not allowed. */
|
||||||
IPluginContext *pContext = pPlugin->GetBaseContext();
|
IPluginContext *pContext = pPlugin->GetBaseContext();
|
||||||
uint32_t num = pContext->GetNativesNum();
|
uint32_t num = pContext->GetNativesNum();
|
||||||
sp_native_t *native;
|
|
||||||
for (unsigned int i=0; i<num; i++)
|
for (unsigned int i=0; i<num; i++)
|
||||||
{
|
{
|
||||||
if (pContext->GetNativeByIndex(i, &native) != SP_ERROR_NONE)
|
const sp_native_t *native = pContext->GetRuntime()->GetNative(i);
|
||||||
{
|
if (!native)
|
||||||
break;
|
break;
|
||||||
}
|
if (native->status == SP_NATIVE_UNBOUND &&
|
||||||
if (native->status == SP_NATIVE_UNBOUND
|
native->name[0] != '@' &&
|
||||||
&& native->name[0] != '@'
|
!(native->flags & SP_NTVFLAG_OPTIONAL))
|
||||||
&& !(native->flags & SP_NTVFLAG_OPTIONAL))
|
|
||||||
{
|
{
|
||||||
if (error)
|
if (error)
|
||||||
{
|
{
|
||||||
@ -1486,16 +1451,14 @@ void CPluginManager::TryRefreshDependencies(CPlugin *pPlugin)
|
|||||||
*/
|
*/
|
||||||
IPluginContext *pContext = pPlugin->GetBaseContext();
|
IPluginContext *pContext = pPlugin->GetBaseContext();
|
||||||
uint32_t num = pContext->GetNativesNum();
|
uint32_t num = pContext->GetNativesNum();
|
||||||
sp_native_t *native;
|
|
||||||
for (unsigned int i=0; i<num; i++)
|
for (unsigned int i=0; i<num; i++)
|
||||||
{
|
{
|
||||||
if (pContext->GetNativeByIndex(i, &native) != SP_ERROR_NONE)
|
const sp_native_t *native = pContext->GetRuntime()->GetNative(i);
|
||||||
{
|
if (!native)
|
||||||
break;
|
break;
|
||||||
}
|
if (native->status == SP_NATIVE_UNBOUND &&
|
||||||
if (native->status == SP_NATIVE_UNBOUND
|
native->name[0] != '@' &&
|
||||||
&& native->name[0] != '@'
|
!(native->flags & SP_NTVFLAG_OPTIONAL))
|
||||||
&& !(native->flags & SP_NTVFLAG_OPTIONAL))
|
|
||||||
{
|
{
|
||||||
pPlugin->SetErrorState(Plugin_Error, "Native not found: %s", native->name);
|
pPlugin->SetErrorState(Plugin_Error, "Native not found: %s", native->name);
|
||||||
return;
|
return;
|
||||||
@ -1547,7 +1510,7 @@ bool CPluginManager::UnloadPlugin(IPlugin *plugin)
|
|||||||
List<IPluginsListener *>::iterator iter;
|
List<IPluginsListener *>::iterator iter;
|
||||||
IPluginsListener *pListener;
|
IPluginsListener *pListener;
|
||||||
|
|
||||||
if (pPlugin->GetStatus() <= Plugin_Error)
|
if (pPlugin->GetStatus() <= Plugin_Error || pPlugin->GetStatus() == Plugin_Failed)
|
||||||
{
|
{
|
||||||
/* Notify plugin */
|
/* Notify plugin */
|
||||||
pPlugin->Call_OnPluginEnd();
|
pPlugin->Call_OnPluginEnd();
|
||||||
@ -2312,6 +2275,7 @@ void CPluginManager::OnRootConsoleCommand(const char *cmdname, const CCommand &c
|
|||||||
}
|
}
|
||||||
else if (strcmp(cmd, "refresh") == 0)
|
else if (strcmp(cmd, "refresh") == 0)
|
||||||
{
|
{
|
||||||
|
RefreshAll();
|
||||||
smcore.DoGlobalPluginLoads();
|
smcore.DoGlobalPluginLoads();
|
||||||
rootmenu->ConsolePrint("[SM] The plugin list has been refreshed and reloaded.");
|
rootmenu->ConsolePrint("[SM] The plugin list has been refreshed and reloaded.");
|
||||||
return;
|
return;
|
||||||
|
@ -271,7 +271,6 @@ PassRef<Native> ShareSystem::FindNative(const char *name)
|
|||||||
|
|
||||||
void ShareSystem::BindNativesToPlugin(CPlugin *pPlugin, bool bCoreOnly)
|
void ShareSystem::BindNativesToPlugin(CPlugin *pPlugin, bool bCoreOnly)
|
||||||
{
|
{
|
||||||
sp_native_t *native;
|
|
||||||
uint32_t i, native_count;
|
uint32_t i, native_count;
|
||||||
IPluginContext *pContext;
|
IPluginContext *pContext;
|
||||||
|
|
||||||
@ -284,7 +283,8 @@ void ShareSystem::BindNativesToPlugin(CPlugin *pPlugin, bool bCoreOnly)
|
|||||||
native_count = pContext->GetNativesNum();
|
native_count = pContext->GetNativesNum();
|
||||||
for (i = 0; i < native_count; i++)
|
for (i = 0; i < native_count; i++)
|
||||||
{
|
{
|
||||||
if (pContext->GetNativeByIndex(i, &native) != SP_ERROR_NONE)
|
const sp_native_t *native = pContext->GetRuntime()->GetNative(i);
|
||||||
|
if (!native)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// If we're already bound, no need to do anything else.
|
// If we're already bound, no need to do anything else.
|
||||||
@ -314,8 +314,8 @@ void ShareSystem::BindNativeToPlugin(CPlugin *pPlugin, const Ref<Native> &entry)
|
|||||||
if (pContext->FindNativeByName(entry->name(), &i) != SP_ERROR_NONE)
|
if (pContext->FindNativeByName(entry->name(), &i) != SP_ERROR_NONE)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
sp_native_t *native;
|
const sp_native_t *native = pContext->GetRuntime()->GetNative(i);
|
||||||
if (pContext->GetNativeByIndex(i, &native) != SP_ERROR_NONE)
|
if (!native)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (native->status == SP_NATIVE_BOUND)
|
if (native->status == SP_NATIVE_BOUND)
|
||||||
@ -324,18 +324,15 @@ void ShareSystem::BindNativeToPlugin(CPlugin *pPlugin, const Ref<Native> &entry)
|
|||||||
BindNativeToPlugin(pPlugin, native, i, entry);
|
BindNativeToPlugin(pPlugin, native, i, entry);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ShareSystem::BindNativeToPlugin(CPlugin *pPlugin, sp_native_t *native, uint32_t index,
|
void ShareSystem::BindNativeToPlugin(CPlugin *pPlugin, const sp_native_t *native, uint32_t index,
|
||||||
const Ref<Native> &pEntry)
|
const Ref<Native> &pEntry)
|
||||||
{
|
{
|
||||||
/* Mark as bound... we do the rest next. */
|
uint32_t flags = 0;
|
||||||
native->status = SP_NATIVE_BOUND;
|
|
||||||
native->pfn = pEntry->func();
|
|
||||||
|
|
||||||
if (pEntry->fake)
|
if (pEntry->fake)
|
||||||
{
|
{
|
||||||
/* This native is not necessarily optional, but we don't guarantee
|
/* This native is not necessarily optional, but we don't guarantee
|
||||||
* that its address is long-lived. */
|
* that its address is long-lived. */
|
||||||
native->flags |= SP_NTVFLAG_EPHEMERAL;
|
flags |= SP_NTVFLAG_EPHEMERAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* We don't bother with dependency crap if the owner is Core. */
|
/* We don't bother with dependency crap if the owner is Core. */
|
||||||
@ -345,10 +342,9 @@ void ShareSystem::BindNativeToPlugin(CPlugin *pPlugin, sp_native_t *native, uint
|
|||||||
if ((native->flags & SP_NTVFLAG_OPTIONAL) == SP_NTVFLAG_OPTIONAL)
|
if ((native->flags & SP_NTVFLAG_OPTIONAL) == SP_NTVFLAG_OPTIONAL)
|
||||||
{
|
{
|
||||||
/* Only add if there is a valid owner. */
|
/* Only add if there is a valid owner. */
|
||||||
if (pEntry->owner)
|
if (!pEntry->owner)
|
||||||
pEntry->owner->AddWeakRef(WeakNative(pPlugin, index));
|
return;
|
||||||
else
|
pEntry->owner->AddWeakRef(WeakNative(pPlugin, index));
|
||||||
native->status = SP_NATIVE_UNBOUND;
|
|
||||||
}
|
}
|
||||||
/* Otherwise, we're a strong dependent and not a weak one */
|
/* Otherwise, we're a strong dependent and not a weak one */
|
||||||
else
|
else
|
||||||
@ -367,6 +363,12 @@ void ShareSystem::BindNativeToPlugin(CPlugin *pPlugin, sp_native_t *native, uint
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pPlugin->GetRuntime()->UpdateNativeBinding(
|
||||||
|
index,
|
||||||
|
pEntry->func(),
|
||||||
|
flags,
|
||||||
|
nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
PassRef<Native> ShareSystem::AddNativeToCache(CNativeOwner *pOwner, const sp_nativeinfo_t *ntv)
|
PassRef<Native> ShareSystem::AddNativeToCache(CNativeOwner *pOwner, const sp_nativeinfo_t *ntv)
|
||||||
@ -468,9 +470,7 @@ FeatureStatus ShareSystem::TestNative(IPluginRuntime *pRuntime, const char *name
|
|||||||
|
|
||||||
if (pRuntime->FindNativeByName(name, &index) == SP_ERROR_NONE)
|
if (pRuntime->FindNativeByName(name, &index) == SP_ERROR_NONE)
|
||||||
{
|
{
|
||||||
sp_native_t *native;
|
if (const sp_native_t *native = pRuntime->GetNative(index)) {
|
||||||
if (pRuntime->GetNativeByIndex(index, &native) == SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
if (native->status == SP_NATIVE_BOUND)
|
if (native->status == SP_NATIVE_BOUND)
|
||||||
return FeatureStatus_Available;
|
return FeatureStatus_Available;
|
||||||
else
|
else
|
||||||
|
@ -126,7 +126,7 @@ public:
|
|||||||
private:
|
private:
|
||||||
ke::PassRef<Native> AddNativeToCache(CNativeOwner *pOwner, const sp_nativeinfo_t *ntv);
|
ke::PassRef<Native> AddNativeToCache(CNativeOwner *pOwner, const sp_nativeinfo_t *ntv);
|
||||||
void ClearNativeFromCache(CNativeOwner *pOwner, const char *name);
|
void ClearNativeFromCache(CNativeOwner *pOwner, const char *name);
|
||||||
void BindNativeToPlugin(CPlugin *pPlugin, sp_native_t *ntv, uint32_t index, const ke::Ref<Native> &pEntry);
|
void BindNativeToPlugin(CPlugin *pPlugin, const sp_native_t *ntv, uint32_t index, const ke::Ref<Native> &pEntry);
|
||||||
private:
|
private:
|
||||||
typedef NameHashSet<ke::Ref<Native>, Native> NativeCache;
|
typedef NameHashSet<ke::Ref<Native>, Native> NativeCache;
|
||||||
|
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
|
||||||
# Visual Studio 2010
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "logic", "logic.vcxproj", "{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,186 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}</ProjectGuid>
|
|
||||||
<RootNamespace>jitx86</RootNamespace>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
|
||||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">sourcemod.logic</TargetName>
|
|
||||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">sourcemod.logic</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;$(MMSOURCE19)\core\sourcehook;..\..\..\public;..\..\..\public\sourcepawn;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;JITX86_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SM_DEFAULT_THREADER;SM_LOGIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<ResourceCompile>
|
|
||||||
<AdditionalIncludeDirectories>..\..\..\public</AdditionalIncludeDirectories>
|
|
||||||
</ResourceCompile>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\bin"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;$(MMSOURCE19)\core\sourcehook;..\..\..\public;..\..\..\public\sourcepawn;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;JITX86_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SM_LOGIC;SM_DEFAULT_THREADER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<ResourceCompile>
|
|
||||||
<AdditionalIncludeDirectories>..\..\..\public</AdditionalIncludeDirectories>
|
|
||||||
</ResourceCompile>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\bin"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\common_logic.cpp" />
|
|
||||||
<ClCompile Include="..\DebugReporter.cpp" />
|
|
||||||
<ClCompile Include="..\ExtensionSys.cpp" />
|
|
||||||
<ClCompile Include="..\GameConfigs.cpp" />
|
|
||||||
<ClCompile Include="..\HandleSys.cpp" />
|
|
||||||
<ClCompile Include="..\MemoryUtils.cpp" />
|
|
||||||
<ClCompile Include="..\NativeInvoker.cpp" />
|
|
||||||
<ClCompile Include="..\NativeOwner.cpp" />
|
|
||||||
<ClCompile Include="..\PhraseCollection.cpp" />
|
|
||||||
<ClCompile Include="..\PluginSys.cpp" />
|
|
||||||
<ClCompile Include="..\Profiler.cpp" />
|
|
||||||
<ClCompile Include="..\ShareSys.cpp" />
|
|
||||||
<ClCompile Include="..\smn_fakenatives.cpp" />
|
|
||||||
<ClCompile Include="..\smn_filesystem.cpp" />
|
|
||||||
<ClCompile Include="..\sm_crc32.cpp" />
|
|
||||||
<ClCompile Include="..\smn_admin.cpp" />
|
|
||||||
<ClCompile Include="..\smn_adt_array.cpp" />
|
|
||||||
<ClCompile Include="..\smn_adt_stack.cpp" />
|
|
||||||
<ClCompile Include="..\smn_adt_trie.cpp" />
|
|
||||||
<ClCompile Include="..\smn_banning.cpp" />
|
|
||||||
<ClCompile Include="..\smn_datapacks.cpp" />
|
|
||||||
<ClCompile Include="..\smn_float.cpp" />
|
|
||||||
<ClCompile Include="..\smn_functions.cpp" />
|
|
||||||
<ClCompile Include="..\smn_gameconfigs.cpp" />
|
|
||||||
<ClCompile Include="..\smn_handles.cpp" />
|
|
||||||
<ClCompile Include="..\smn_lang.cpp" />
|
|
||||||
<ClCompile Include="..\smn_maplists.cpp" />
|
|
||||||
<ClCompile Include="..\smn_players.cpp" />
|
|
||||||
<ClCompile Include="..\smn_sorting.cpp" />
|
|
||||||
<ClCompile Include="..\smn_string.cpp" />
|
|
||||||
<ClCompile Include="..\smn_textparse.cpp" />
|
|
||||||
<ClCompile Include="..\smn_timers.cpp" />
|
|
||||||
<ClCompile Include="..\stringutil.cpp" />
|
|
||||||
<ClCompile Include="..\TextParsers.cpp" />
|
|
||||||
<ClCompile Include="..\ThreadSupport.cpp" />
|
|
||||||
<ClCompile Include="..\Translator.cpp" />
|
|
||||||
<ClCompile Include="..\thread\BaseWorker.cpp" />
|
|
||||||
<ClCompile Include="..\thread\ThreadWorker.cpp" />
|
|
||||||
<ClCompile Include="..\thread\WinThreads.cpp" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\..\..\public\sm_platform.h" />
|
|
||||||
<ClInclude Include="..\..\..\public\sm_trie_tpl.h" />
|
|
||||||
<ClInclude Include="..\..\..\public\sourcemod_version.h" />
|
|
||||||
<ClInclude Include="..\AutoHandleRooter.h" />
|
|
||||||
<ClInclude Include="..\CellArray.h" />
|
|
||||||
<ClInclude Include="..\common_logic.h" />
|
|
||||||
<ClInclude Include="..\ExtensionSys.h" />
|
|
||||||
<ClInclude Include="..\GameConfigs.h" />
|
|
||||||
<ClInclude Include="..\intercom.h" />
|
|
||||||
<ClInclude Include="..\MemoryUtils.h" />
|
|
||||||
<ClInclude Include="..\MersenneTwister.h" />
|
|
||||||
<ClInclude Include="..\NativeInvoker.h" />
|
|
||||||
<ClInclude Include="..\NativeOwner.h" />
|
|
||||||
<ClInclude Include="..\PhraseCollection.h" />
|
|
||||||
<ClInclude Include="..\PluginSys.h" />
|
|
||||||
<ClInclude Include="..\Profiler.h" />
|
|
||||||
<ClInclude Include="..\ShareSys.h" />
|
|
||||||
<ClInclude Include="..\sm_crc32.h" />
|
|
||||||
<ClInclude Include="..\sm_memtable.h" />
|
|
||||||
<ClInclude Include="..\sm_symtable.h" />
|
|
||||||
<ClInclude Include="..\stringutil.h" />
|
|
||||||
<ClInclude Include="..\TextParsers.h" />
|
|
||||||
<ClInclude Include="..\ThreadSupport.h" />
|
|
||||||
<ClInclude Include="..\thread\BaseWorker.h" />
|
|
||||||
<ClInclude Include="..\thread\ThreadWorker.h" />
|
|
||||||
<ClInclude Include="..\thread\WinThreads.h" />
|
|
||||||
<ClInclude Include="..\Translator.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
@ -1,231 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resource Files">
|
|
||||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Threads">
|
|
||||||
<UniqueIdentifier>{67c1ebce-c1f8-4d2c-9ef4-33f0ef6343e9}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Threads\Header Files">
|
|
||||||
<UniqueIdentifier>{c6e2ebb3-4869-4453-9b83-e49f70cb8a05}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Threads\Source Files">
|
|
||||||
<UniqueIdentifier>{e6d8a9af-1c1b-4f0c-ae06-a9ebd5cd32e4}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Natives">
|
|
||||||
<UniqueIdentifier>{126462f2-e517-4854-8a94-759e56787536}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\common_logic.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\GameConfigs.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\MemoryUtils.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\PhraseCollection.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\Profiler.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sm_crc32.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\stringutil.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\TextParsers.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ThreadSupport.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\Translator.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\thread\BaseWorker.cpp">
|
|
||||||
<Filter>Threads\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\thread\ThreadWorker.cpp">
|
|
||||||
<Filter>Threads\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\thread\WinThreads.cpp">
|
|
||||||
<Filter>Threads\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_admin.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_timers.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_adt_array.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_adt_stack.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_adt_trie.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_banning.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_datapacks.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_float.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_functions.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_gameconfigs.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_handles.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_lang.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_maplists.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_players.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_sorting.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_string.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_textparse.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\DebugReporter.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_filesystem.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_fakenatives.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ExtensionSys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ShareSys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\PluginSys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\NativeInvoker.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\NativeOwner.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\HandleSys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\CellArray.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\common_logic.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\intercom.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\Profiler.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\TextParsers.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ThreadSupport.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\thread\BaseWorker.h">
|
|
||||||
<Filter>Threads\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\thread\ThreadWorker.h">
|
|
||||||
<Filter>Threads\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\thread\WinThreads.h">
|
|
||||||
<Filter>Threads\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\AutoHandleRooter.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\GameConfigs.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MemoryUtils.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MersenneTwister.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\PhraseCollection.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_crc32.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_memtable.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_symtable.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\stringutil.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\Translator.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\public\sm_trie_tpl.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\public\sourcemod_version.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\public\sm_platform.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ExtensionSys.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\NativeInvoker.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\NativeOwner.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\PluginSys.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ShareSys.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual Studio 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "logic", "logic.vcproj", "{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,379 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="9.00"
|
|
||||||
Name="logic"
|
|
||||||
ProjectGUID="{6EF06E6E-0ED5-4E2D-A8F3-01DD1EC25BA7}"
|
|
||||||
RootNamespace="jitx86"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
TargetFrameworkVersion="131072"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;"$(MMSOURCE17)\core\sourcehook";..\..\..\public;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;JITX86_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SM_DEFAULT_THREADER;SM_LOGIC"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\sourcemod.logic.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;"$(MMSOURCE17)\core\sourcehook";..\..\..\public;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;JITX86_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SM_LOGIC;SM_DEFAULT_THREADER"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\sourcemod.logic.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\common_logic.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\GameConfigs.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\MemoryUtils.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\PhraseCollection.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\Profiler.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sm_crc32.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_admin.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_adt_array.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_adt_stack.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_adt_trie.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_banning.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_datapacks.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_float.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_functions.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_gameconfigs.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_handles.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_lang.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_maplists.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_players.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_sorting.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_string.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_textparse.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\smn_timers.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\stringutil.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\TextParsers.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\ThreadSupport.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\Translator.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\CellArray.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\common_logic.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\intercom.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\Profiler.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\svn_version.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\TextParsers.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\ThreadSupport.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\svn_version.tpl"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Threads"
|
|
||||||
>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\thread\BaseWorker.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\thread\ThreadWorker.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\thread\WinThreads.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\thread\BaseWorker.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\thread\ThreadWorker.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\thread\WinThreads.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -585,6 +585,29 @@ REGISTER_NATIVES(adminNatives)
|
|||||||
{"SetAdmGroupImmunityLevel",SetAdmGroupImmunityLevel},
|
{"SetAdmGroupImmunityLevel",SetAdmGroupImmunityLevel},
|
||||||
{"GetAdminImmunityLevel", GetAdminImmunityLevel},
|
{"GetAdminImmunityLevel", GetAdminImmunityLevel},
|
||||||
{"SetAdminImmunityLevel", SetAdminImmunityLevel},
|
{"SetAdminImmunityLevel", SetAdminImmunityLevel},
|
||||||
|
{"AdminId.GetUsername", GetAdminUsername},
|
||||||
|
{"AdminId.BindIdentity", BindAdminIdentity},
|
||||||
|
{"AdminId.SetFlag", SetAdminFlag},
|
||||||
|
{"AdminId.HasFlag", GetAdminFlag},
|
||||||
|
{"AdminId.GetFlags", GetAdminFlags},
|
||||||
|
{"AdminId.InheritGroup", AdminInheritGroup},
|
||||||
|
{"AdminId.GetGroup", GetAdminGroup},
|
||||||
|
{"AdminId.SetPassword", SetAdminPassword},
|
||||||
|
{"AdminId.GetPassword", GetAdminPassword},
|
||||||
|
{"AdminId.CanTarget", CanAdminTarget},
|
||||||
|
{"AdminId.GroupCount.get", GetAdminGroupCount},
|
||||||
|
{"AdminId.ImmunityLevel.get", GetAdminImmunityLevel},
|
||||||
|
{"AdminId.ImmunityLevel.set", SetAdminImmunityLevel},
|
||||||
|
{"GroupId.HasFlag", GetAdmGroupAddFlag},
|
||||||
|
{"GroupId.SetFlag", SetAdmGroupAddFlag},
|
||||||
|
{"GroupId.GetFlags", GetAdmGroupAddFlags},
|
||||||
|
{"GroupId.GetGroupImmunity", GetAdmGroupImmuneFrom},
|
||||||
|
{"GroupId.AddGroupImmunity", SetAdmGroupImmuneFrom},
|
||||||
|
{"GroupId.GetCommandOverride", GetAdmGroupCmdOverride},
|
||||||
|
{"GroupId.AddCommandOverride", AddAdmGroupCmdOverride},
|
||||||
|
{"GroupId.GroupImmunitiesCount.get", GetAdmGroupImmuneCount},
|
||||||
|
{"GroupId.ImmunityLevel.get", GetAdmGroupImmunityLevel},
|
||||||
|
{"GroupId.ImmunityLevel.set", SetAdmGroupImmunityLevel},
|
||||||
/* -------------------------------------------------- */
|
/* -------------------------------------------------- */
|
||||||
{NULL, NULL},
|
{NULL, NULL},
|
||||||
};
|
};
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or modify it under
|
* This program is free software; you can redistribute it and/or modify it under
|
||||||
* the terms of the GNU General Public License, version 3.0, as published by the
|
* the terms of the GNU General Public License, version 3.0, as published by the
|
||||||
* Free Software Foundation.
|
* Free Software Foundation.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
@ -35,7 +35,7 @@
|
|||||||
|
|
||||||
HandleType_t htCellArray;
|
HandleType_t htCellArray;
|
||||||
|
|
||||||
class CellArrayHelpers :
|
class CellArrayHelpers :
|
||||||
public SMGlobalClass,
|
public SMGlobalClass,
|
||||||
public IHandleTypeDispatch
|
public IHandleTypeDispatch
|
||||||
{
|
{
|
||||||
@ -75,7 +75,7 @@ static cell_t CreateArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
{
|
{
|
||||||
array->resize(params[2]);
|
array->resize(params[2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
Handle_t hndl = handlesys->CreateHandle(htCellArray, array, pContext->GetIdentity(), g_pCoreIdent, NULL);
|
Handle_t hndl = handlesys->CreateHandle(htCellArray, array, pContext->GetIdentity(), g_pCoreIdent, NULL);
|
||||||
if (!hndl)
|
if (!hndl)
|
||||||
{
|
{
|
||||||
@ -91,14 +91,14 @@ static cell_t ClearArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
}
|
}
|
||||||
|
|
||||||
array->clear();
|
array->clear();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -108,7 +108,7 @@ static cell_t ResizeArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -128,7 +128,7 @@ static cell_t GetArraySize(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -143,7 +143,7 @@ static cell_t PushArrayCell(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -166,7 +166,7 @@ static cell_t PushArrayString(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -192,7 +192,7 @@ static cell_t PushArrayArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -224,7 +224,7 @@ static cell_t GetArrayCell(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -263,7 +263,7 @@ static cell_t GetArrayString(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -289,7 +289,7 @@ static cell_t GetArrayArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -322,7 +322,7 @@ static cell_t SetArrayCell(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -361,7 +361,7 @@ static cell_t SetArrayString(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -387,7 +387,7 @@ static cell_t SetArrayArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -420,7 +420,7 @@ static cell_t ShiftArrayUp(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -443,7 +443,7 @@ static cell_t RemoveFromArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -466,7 +466,7 @@ static cell_t SwapArrayItems(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -494,14 +494,14 @@ static cell_t CloneArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&oldArray))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&oldArray))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
}
|
}
|
||||||
|
|
||||||
CellArray *array = oldArray->clone();
|
CellArray *array = oldArray->clone();
|
||||||
|
|
||||||
Handle_t hndl = handlesys->CreateHandle(htCellArray, array, pContext->GetIdentity(), g_pCoreIdent, NULL);
|
Handle_t hndl = handlesys->CreateHandle(htCellArray, array, pContext->GetIdentity(), g_pCoreIdent, NULL);
|
||||||
if (!hndl)
|
if (!hndl)
|
||||||
{
|
{
|
||||||
@ -517,7 +517,7 @@ static cell_t FindStringInArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
@ -544,15 +544,28 @@ static cell_t FindValueInArray(IPluginContext *pContext, const cell_t *params)
|
|||||||
HandleError err;
|
HandleError err;
|
||||||
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
|
||||||
|
|
||||||
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
if ((err = handlesys->ReadHandle(params[1], htCellArray, &sec, (void **)&array))
|
||||||
!= HandleError_None)
|
!= HandleError_None)
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
return pContext->ThrowNativeError("Invalid Handle %x (error: %d)", params[1], err);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// the blocknumber is not guaranteed to always be passed
|
||||||
|
size_t blocknumber = 0;
|
||||||
|
if (params[0] >= 3)
|
||||||
|
{
|
||||||
|
blocknumber = (size_t) params[3];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (blocknumber >= array->blocksize())
|
||||||
|
{
|
||||||
|
return pContext->ThrowNativeError("Invalid block %d (blocksize: %d)", blocknumber, array->blocksize());
|
||||||
|
}
|
||||||
|
|
||||||
for (unsigned int i = 0; i < array->size(); i++)
|
for (unsigned int i = 0; i < array->size(); i++)
|
||||||
{
|
{
|
||||||
if (params[2] == *array->at(i))
|
cell_t *blk = array->at(i);
|
||||||
|
if (params[2] == blk[blocknumber])
|
||||||
{
|
{
|
||||||
return (cell_t) i;
|
return (cell_t) i;
|
||||||
}
|
}
|
||||||
|
@ -304,7 +304,7 @@ static cell_t ArrayStack_Pop(IPluginContext *pContext, const cell_t *params)
|
|||||||
return pContext->ThrowNativeError("stack is empty");
|
return pContext->ThrowNativeError("stack is empty");
|
||||||
|
|
||||||
cell_t *blk = array->at(array->size() - 1);
|
cell_t *blk = array->at(array->size() - 1);
|
||||||
cell_t idx = (size_t)params[2];
|
size_t idx = (size_t)params[2];
|
||||||
|
|
||||||
cell_t rval;
|
cell_t rval;
|
||||||
if (params[3] == 0) {
|
if (params[3] == 0) {
|
||||||
|
@ -63,11 +63,11 @@ public:
|
|||||||
: control_(0)
|
: control_(0)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
Entry(ke::Moveable<Entry> other)
|
Entry(Entry &&other)
|
||||||
{
|
{
|
||||||
control_ = other->control_;
|
control_ = other.control_;
|
||||||
data_ = other->data_;
|
data_ = other.data_;
|
||||||
other->control_ = 0;
|
other.control_ = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
~Entry()
|
~Entry()
|
||||||
|
@ -150,11 +150,12 @@ static cell_t sm_ServerCommand(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
size_t len = g_pSM->FormatString(buffer, sizeof(buffer) - 2, pContext, params, 1);
|
size_t len;
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
len = g_pSM->FormatString(buffer, sizeof(buffer) - 2, pContext, params, 1);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* One byte for null terminator, one for newline */
|
/* One byte for null terminator, one for newline */
|
||||||
@ -171,11 +172,12 @@ static cell_t sm_InsertServerCommand(IPluginContext *pContext, const cell_t *par
|
|||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
size_t len = g_pSM->FormatString(buffer, sizeof(buffer) - 2, pContext, params, 1);
|
size_t len;
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
len = g_pSM->FormatString(buffer, sizeof(buffer) - 2, pContext, params, 1);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* One byte for null terminator, one for newline */
|
/* One byte for null terminator, one for newline */
|
||||||
@ -211,11 +213,12 @@ static cell_t sm_ClientCommand(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(params[1]);
|
g_pSM->SetGlobalTarget(params[1]);
|
||||||
|
|
||||||
char buffer[256];
|
char buffer[256];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
size_t len;
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
engine->ClientCommand(pPlayer->GetEdict(), buffer);
|
engine->ClientCommand(pPlayer->GetEdict(), buffer);
|
||||||
@ -240,11 +243,11 @@ static cell_t FakeClientCommand(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(params[1]);
|
g_pSM->SetGlobalTarget(params[1]);
|
||||||
|
|
||||||
char buffer[256];
|
char buffer[256];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
engine->FakeClientCommand(pPlayer->GetEdict(), buffer);
|
engine->FakeClientCommand(pPlayer->GetEdict(), buffer);
|
||||||
@ -258,11 +261,13 @@ static cell_t ReplyToCommand(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
/* Build the format string */
|
/* Build the format string */
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
size_t len = g_pSM->FormatString(buffer, sizeof(buffer) - 2, pContext, params, 2);
|
size_t len;
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
len = g_pSM->FormatString(buffer, sizeof(buffer) - 2, pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If we're printing to the server, shortcut out */
|
/* If we're printing to the server, shortcut out */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* vim: set ts=4 :
|
* vim: set ts=4 sw=4 tw=99 noet :
|
||||||
* =============================================================================
|
* =============================================================================
|
||||||
* SourceMod
|
* SourceMod
|
||||||
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
||||||
@ -130,13 +130,14 @@ void LogAction(Handle_t hndl, int type, int client, int target, const char *mess
|
|||||||
|
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
{
|
||||||
|
DetectExceptions eh(pContext);
|
||||||
if (pContext->GetLastNativeError() == SP_ERROR_NONE)
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
||||||
{
|
if (eh.HasException())
|
||||||
pContext->ThrowNativeErrorEx(SP_ERROR_ABORTED, "%s", buffer);
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pContext->ReportError("%s", buffer);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -388,16 +389,16 @@ static cell_t SetFailState(IPluginContext *pContext, const cell_t *params)
|
|||||||
{
|
{
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
|
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
{
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
DetectExceptions eh(pContext);
|
||||||
{
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
||||||
pPlugin->SetErrorState(Plugin_Failed, "%s", str);
|
if (eh.HasException()) {
|
||||||
return pContext->ThrowNativeErrorEx(SP_ERROR_ABORTED, "Formatting error (%s)", str);
|
pPlugin->SetErrorState(Plugin_Failed, "%s", str);
|
||||||
}
|
return 0;
|
||||||
else
|
}
|
||||||
{
|
|
||||||
pPlugin->SetErrorState(Plugin_Failed, "%s", buffer);
|
pPlugin->SetErrorState(Plugin_Failed, "%s", buffer);
|
||||||
return pContext->ThrowNativeErrorEx(SP_ERROR_ABORTED, "%s", buffer);
|
pContext->ReportFatalError("%s", buffer);
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -457,7 +458,6 @@ static cell_t MarkNativeAsOptional(IPluginContext *pContext, const cell_t *param
|
|||||||
{
|
{
|
||||||
char *name;
|
char *name;
|
||||||
uint32_t idx;
|
uint32_t idx;
|
||||||
sp_native_t *native;
|
|
||||||
|
|
||||||
pContext->LocalToString(params[1], &name);
|
pContext->LocalToString(params[1], &name);
|
||||||
if (pContext->FindNativeByName(name, &idx) != SP_ERROR_NONE)
|
if (pContext->FindNativeByName(name, &idx) != SP_ERROR_NONE)
|
||||||
@ -466,10 +466,7 @@ static cell_t MarkNativeAsOptional(IPluginContext *pContext, const cell_t *param
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
pContext->GetNativeByIndex(idx, &native);
|
pContext->GetRuntime()->UpdateNativeBinding(idx, nullptr, SP_NTVFLAG_OPTIONAL, nullptr);
|
||||||
|
|
||||||
native->flags |= SP_NTVFLAG_OPTIONAL;
|
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -511,12 +508,12 @@ static cell_t sm_LogAction(IPluginContext *pContext, const cell_t *params)
|
|||||||
{
|
{
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 3);
|
{
|
||||||
|
DetectExceptions eh(pContext);
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 3);
|
||||||
{
|
if (eh.HasException())
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
IPlugin *pPlugin = scripts->FindPluginByContext(pContext->GetContext());
|
IPlugin *pPlugin = scripts->FindPluginByContext(pContext->GetContext());
|
||||||
|
|
||||||
@ -540,14 +537,15 @@ static cell_t LogToFile(IPluginContext *pContext, const cell_t *params)
|
|||||||
}
|
}
|
||||||
|
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
{
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
{
|
if (eh.HasException()) {
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
IPlugin *pPlugin = scripts->FindPluginByContext(pContext->GetContext());
|
IPlugin *pPlugin = scripts->FindPluginByContext(pContext->GetContext());
|
||||||
|
|
||||||
@ -573,14 +571,15 @@ static cell_t LogToFileEx(IPluginContext *pContext, const cell_t *params)
|
|||||||
}
|
}
|
||||||
|
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
{
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
{
|
if (eh.HasException()) {
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
g_Logger.LogToOpenFile(fp, "%s", buffer);
|
g_Logger.LogToOpenFile(fp, "%s", buffer);
|
||||||
|
|
||||||
@ -652,21 +651,27 @@ static cell_t RequireFeature(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
if (sharesys->TestFeature(pContext->GetRuntime(), type, name) != FeatureStatus_Available)
|
if (sharesys->TestFeature(pContext->GetRuntime(), type, name) != FeatureStatus_Available)
|
||||||
{
|
{
|
||||||
char buffer[255];
|
char buffer[255];
|
||||||
char *msg = buffer;
|
char *msg = buffer;
|
||||||
char default_message[255];
|
char default_message[255];
|
||||||
SMPlugin *pPlugin = scripts->FindPluginByContext(pContext->GetContext());
|
SMPlugin *pPlugin = scripts->FindPluginByContext(pContext->GetContext());
|
||||||
|
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 3);
|
DetectExceptions eh(pContext);
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE || buffer[0] == '\0')
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 3);
|
||||||
{
|
if (eh.HasException())
|
||||||
g_pSM->Format(default_message, sizeof(default_message), "Feature \"%s\" not available", name);
|
buffer[0] = '\0';
|
||||||
msg = default_message;
|
|
||||||
}
|
if (buffer[0] == '\0') {
|
||||||
pPlugin->SetErrorState(Plugin_Error, "%s", msg);
|
g_pSM->Format(default_message, sizeof(default_message), "Feature \"%s\" not available", name);
|
||||||
return pContext->ThrowNativeErrorEx(SP_ERROR_ABORTED, "%s", msg);
|
msg = default_message;
|
||||||
}
|
}
|
||||||
|
pPlugin->SetErrorState(Plugin_Error, "%s", msg);
|
||||||
|
|
||||||
|
if (!eh.HasException())
|
||||||
|
pContext->ReportFatalError("%s", msg);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -334,9 +334,9 @@ public:
|
|||||||
{
|
{
|
||||||
m_pDatabase->Close();
|
m_pDatabase->Close();
|
||||||
}
|
}
|
||||||
m_pFunction->PushCell(BAD_HANDLE);
|
|
||||||
if (m_ACM == ACM_Old)
|
if (m_ACM == ACM_Old)
|
||||||
m_pFunction->PushCell(BAD_HANDLE);
|
m_pFunction->PushCell(BAD_HANDLE);
|
||||||
|
m_pFunction->PushCell(BAD_HANDLE);
|
||||||
m_pFunction->PushString("Driver is unloading");
|
m_pFunction->PushString("Driver is unloading");
|
||||||
m_pFunction->PushCell(m_Data);
|
m_pFunction->PushCell(m_Data);
|
||||||
m_pFunction->Execute(NULL);
|
m_pFunction->Execute(NULL);
|
||||||
@ -355,9 +355,9 @@ public:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
m_pFunction->PushCell(m_pDriver->GetHandle());
|
|
||||||
if (m_ACM == ACM_Old)
|
if (m_ACM == ACM_Old)
|
||||||
m_pFunction->PushCell(hndl);
|
m_pFunction->PushCell(m_pDriver->GetHandle());
|
||||||
|
m_pFunction->PushCell(hndl);
|
||||||
m_pFunction->PushString(hndl == BAD_HANDLE ? error : "");
|
m_pFunction->PushString(hndl == BAD_HANDLE ? error : "");
|
||||||
m_pFunction->PushCell(m_Data);
|
m_pFunction->PushCell(m_Data);
|
||||||
m_pFunction->Execute(NULL);
|
m_pFunction->Execute(NULL);
|
||||||
|
@ -125,7 +125,6 @@ static cell_t smn_WritePackString(IPluginContext *pContext, const cell_t *params
|
|||||||
HandleError herr;
|
HandleError herr;
|
||||||
HandleSecurity sec;
|
HandleSecurity sec;
|
||||||
IDataPack *pDataPack;
|
IDataPack *pDataPack;
|
||||||
int err;
|
|
||||||
|
|
||||||
sec.pOwner = pContext->GetIdentity();
|
sec.pOwner = pContext->GetIdentity();
|
||||||
sec.pIdentity = g_pCoreIdent;
|
sec.pIdentity = g_pCoreIdent;
|
||||||
@ -137,12 +136,7 @@ static cell_t smn_WritePackString(IPluginContext *pContext, const cell_t *params
|
|||||||
}
|
}
|
||||||
|
|
||||||
char *str;
|
char *str;
|
||||||
if ((err=pContext->LocalToString(params[2], &str)) != SP_ERROR_NONE)
|
pContext->LocalToString(params[2], &str);
|
||||||
{
|
|
||||||
pContext->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
pDataPack->PackString(str);
|
pDataPack->PackString(str);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* vim: set ts=4 :
|
* vim: set ts=4 sw=4 tw=99 noet:
|
||||||
* =============================================================================
|
* =============================================================================
|
||||||
* SourceMod
|
* SourceMod
|
||||||
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
||||||
@ -81,18 +81,12 @@ cell_t FakeNativeRouter(IPluginContext *pContext, const cell_t *params, void *pD
|
|||||||
s_curparams[i] = params[i];
|
s_curparams[i] = params[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Push info and execute. */
|
// Push info and execute. If Invoke() fails, the error will propagate up.
|
||||||
|
// We still carry on below to clear our global state.
|
||||||
cell_t result = 0;
|
cell_t result = 0;
|
||||||
native->call->PushCell(pCaller->GetMyHandle());
|
native->call->PushCell(pCaller->GetMyHandle());
|
||||||
native->call->PushCell(params[0]);
|
native->call->PushCell(params[0]);
|
||||||
int error;
|
native->call->Invoke(&result);
|
||||||
if ((error=native->call->Execute(&result)) != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
if (pContext->GetLastNativeError() == SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
pContext->ThrowNativeErrorEx(error, "Error encountered while processing a dynamic native");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Restore everything from the stack if necessary */
|
/* Restore everything from the stack if necessary */
|
||||||
s_curnative = pSaveNative;
|
s_curnative = pSaveNative;
|
||||||
@ -141,15 +135,15 @@ static cell_t ThrowNativeError(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
char buffer[512];
|
char buffer[512];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
s_curcaller->ThrowNativeError("Error encountered while processing a dynamic native");
|
DetectExceptions eh(pContext);
|
||||||
} else {
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
s_curcaller->ThrowNativeErrorEx(params[1], "%s", buffer);
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pContext->ReportError("%s", buffer);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -402,36 +396,32 @@ static cell_t FormatNativeString(IPluginContext *pContext, const cell_t *params)
|
|||||||
char *format_buffer;
|
char *format_buffer;
|
||||||
|
|
||||||
if (out_param)
|
if (out_param)
|
||||||
{
|
s_curcaller->LocalToString(s_curparams[out_param], &output_buffer);
|
||||||
if ((err=s_curcaller->LocalToString(s_curparams[out_param], &output_buffer)) != SP_ERROR_NONE)
|
else
|
||||||
{
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
pContext->LocalToString(params[6], &output_buffer);
|
pContext->LocalToString(params[6], &output_buffer);
|
||||||
}
|
|
||||||
|
|
||||||
if (fmt_param)
|
if (fmt_param)
|
||||||
{
|
s_curcaller->LocalToString(s_curparams[fmt_param], &format_buffer);
|
||||||
if ((err=s_curcaller->LocalToString(s_curparams[fmt_param], &format_buffer)) != SP_ERROR_NONE)
|
else
|
||||||
{
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
pContext->LocalToString(params[7], &format_buffer);
|
pContext->LocalToString(params[7], &format_buffer);
|
||||||
}
|
|
||||||
|
|
||||||
/* Get maximum length */
|
/* Get maximum length */
|
||||||
size_t maxlen = (size_t)params[4];
|
size_t maxlen = (size_t)params[4];
|
||||||
|
|
||||||
/* Do the format */
|
/* Do the format */
|
||||||
size_t written = smcore.atcprintf(output_buffer, maxlen, format_buffer, s_curcaller, s_curparams, &var_param);
|
size_t written;
|
||||||
|
{
|
||||||
|
DetectExceptions eh(pContext);
|
||||||
|
written = smcore.atcprintf(output_buffer, maxlen, format_buffer, s_curcaller, s_curparams, &var_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
cell_t *addr;
|
cell_t *addr;
|
||||||
pContext->LocalToPhysAddr(params[5], &addr);
|
pContext->LocalToPhysAddr(params[5], &addr);
|
||||||
*addr = (cell_t)written;
|
*addr = (cell_t)written;
|
||||||
|
|
||||||
return s_curcaller->GetLastNativeError();
|
return SP_ERROR_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
//tee hee
|
//tee hee
|
||||||
|
@ -309,7 +309,7 @@ static cell_t sm_OpenDirectory(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
if (!path[0])
|
if (!path[0])
|
||||||
{
|
{
|
||||||
return pContext->ThrowNativeError("Invalid file path");
|
return pContext->ThrowNativeError("Invalid path. An empty path string is not valid, use \".\" to refer to the current working directory.");
|
||||||
}
|
}
|
||||||
|
|
||||||
Handle_t handle = 0;
|
Handle_t handle = 0;
|
||||||
@ -616,7 +616,12 @@ static cell_t sm_DirExists(IPluginContext *pContext, const cell_t *params)
|
|||||||
{
|
{
|
||||||
char *name;
|
char *name;
|
||||||
pContext->LocalToString(params[1], &name);
|
pContext->LocalToString(params[1], &name);
|
||||||
|
|
||||||
|
if (!name[0])
|
||||||
|
{
|
||||||
|
return pContext->ThrowNativeError("Invalid path. An empty path string is not valid, use \".\" to refer to the current working directory.");
|
||||||
|
}
|
||||||
|
|
||||||
if (params[0] >= 2 && params[2] == 1)
|
if (params[0] >= 2 && params[2] == 1)
|
||||||
{
|
{
|
||||||
char *pathID;
|
char *pathID;
|
||||||
@ -765,9 +770,12 @@ static cell_t sm_WriteFileLine(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
int arg = 3;
|
int arg = 3;
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
smcore.atcprintf(buffer, sizeof(buffer), fmt, pContext, params, &arg);
|
{
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
DetectExceptions eh(pContext);
|
||||||
return 0;
|
smcore.atcprintf(buffer, sizeof(buffer), fmt, pContext, params, &arg);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (SystemFile *sysfile = file->AsSystemFile()) {
|
if (SystemFile *sysfile = file->AsSystemFile()) {
|
||||||
fprintf(sysfile->fp(), "%s\n", buffer);
|
fprintf(sysfile->fp(), "%s\n", buffer);
|
||||||
@ -797,9 +805,12 @@ static cell_t sm_BuildPath(IPluginContext *pContext, const cell_t *params)
|
|||||||
pContext->LocalToString(params[2], &buffer);
|
pContext->LocalToString(params[2], &buffer);
|
||||||
pContext->LocalToString(params[4], &fmt);
|
pContext->LocalToString(params[4], &fmt);
|
||||||
|
|
||||||
smcore.atcprintf(path, sizeof(path), fmt, pContext, params, &arg);
|
{
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
DetectExceptions eh(pContext);
|
||||||
return 0;
|
smcore.atcprintf(path, sizeof(path), fmt, pContext, params, &arg);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
return g_pSM->BuildPath(Path_SM_Rel, buffer, params[3], "%s", path);
|
return g_pSM->BuildPath(Path_SM_Rel, buffer, params[3], "%s", path);
|
||||||
}
|
}
|
||||||
@ -808,12 +819,13 @@ static cell_t sm_LogToGame(IPluginContext *pContext, const cell_t *params)
|
|||||||
{
|
{
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
|
size_t len;
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
size_t len = g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
len = g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (len >= sizeof(buffer)-2)
|
if (len >= sizeof(buffer)-2)
|
||||||
@ -835,11 +847,11 @@ static cell_t sm_LogMessage(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
IPlugin *pPlugin = pluginsys->FindPluginByContext(pContext->GetContext());
|
IPlugin *pPlugin = pluginsys->FindPluginByContext(pContext->GetContext());
|
||||||
@ -853,11 +865,11 @@ static cell_t sm_LogError(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 1);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
IPlugin *pPlugin = pluginsys->FindPluginByContext(pContext->GetContext());
|
IPlugin *pPlugin = pluginsys->FindPluginByContext(pContext->GetContext());
|
||||||
@ -900,9 +912,12 @@ static cell_t sm_LogToOpenFile(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
{
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
DetectExceptions eh(pContext);
|
||||||
return 0;
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
IPlugin *pPlugin = pluginsys->FindPluginByContext(pContext->GetContext());
|
IPlugin *pPlugin = pluginsys->FindPluginByContext(pContext->GetContext());
|
||||||
g_Logger.LogToOpenFile(sysfile->fp(), "[%s] %s", pPlugin->GetFilename(), buffer);
|
g_Logger.LogToOpenFile(sysfile->fp(), "[%s] %s", pPlugin->GetFilename(), buffer);
|
||||||
@ -922,9 +937,12 @@ static cell_t sm_LogToOpenFileEx(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
{
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
DetectExceptions eh(pContext);
|
||||||
return 0;
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
g_Logger.LogToOpenFile(sysfile->fp(), "%s", buffer);
|
g_Logger.LogToOpenFile(sysfile->fp(), "%s", buffer);
|
||||||
return 1;
|
return 1;
|
||||||
@ -1176,6 +1194,7 @@ REGISTER_NATIVES(filesystem)
|
|||||||
{"File.ReadInt8", File_ReadTyped<int8_t>},
|
{"File.ReadInt8", File_ReadTyped<int8_t>},
|
||||||
{"File.ReadUint8", File_ReadTyped<uint8_t>},
|
{"File.ReadUint8", File_ReadTyped<uint8_t>},
|
||||||
{"File.ReadInt16", File_ReadTyped<int16_t>},
|
{"File.ReadInt16", File_ReadTyped<int16_t>},
|
||||||
|
{"File.ReadUint16", File_ReadTyped<uint16_t>},
|
||||||
{"File.ReadInt32", File_ReadTyped<int32_t>},
|
{"File.ReadInt32", File_ReadTyped<int32_t>},
|
||||||
{"File.WriteInt8", File_WriteTyped<int8_t>},
|
{"File.WriteInt8", File_WriteTyped<int8_t>},
|
||||||
{"File.WriteInt16", File_WriteTyped<int16_t>},
|
{"File.WriteInt16", File_WriteTyped<int16_t>},
|
||||||
|
@ -564,6 +564,7 @@ static cell_t sm_CallFinish(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
pContext->LocalToPhysAddr(params[1], &result);
|
pContext->LocalToPhysAddr(params[1], &result);
|
||||||
|
|
||||||
|
// Note: Execute() swallows exceptions, so this is okay.
|
||||||
if (s_pFunction)
|
if (s_pFunction)
|
||||||
{
|
{
|
||||||
IPluginFunction *pFunction = s_pFunction;
|
IPluginFunction *pFunction = s_pFunction;
|
||||||
|
@ -87,28 +87,16 @@ public:
|
|||||||
}
|
}
|
||||||
void GetMapCycleFilePath(char *pBuffer, int maxlen)
|
void GetMapCycleFilePath(char *pBuffer, int maxlen)
|
||||||
{
|
{
|
||||||
const char *pEngineName = smcore.GetSourceEngineName();
|
|
||||||
const char *pMapCycleFileName = m_pMapCycleFile ? smcore.GetCvarString(m_pMapCycleFile) : "mapcycle.txt";
|
const char *pMapCycleFileName = m_pMapCycleFile ? smcore.GetCvarString(m_pMapCycleFile) : "mapcycle.txt";
|
||||||
|
|
||||||
if (strcmp(pEngineName, "tf2") == 0 || strcmp(pEngineName, "css") == 0
|
g_pSM->Format(pBuffer, maxlen, "cfg/%s", pMapCycleFileName);
|
||||||
|| strcmp(pEngineName, "dods") == 0 || strcmp(pEngineName, "hl2dm") == 0)
|
if (!smcore.filesystem->FileExists(pBuffer, "GAME"))
|
||||||
{
|
|
||||||
// These four games and Source SDK 2013 do a lookup in this order; so shall we.
|
|
||||||
g_pSM->Format(pBuffer, maxlen, "cfg/%s", pMapCycleFileName);
|
|
||||||
|
|
||||||
if (!smcore.filesystem->FileExists(pBuffer, "GAME"))
|
|
||||||
{
|
|
||||||
g_pSM->Format(pBuffer, maxlen, "%s", pMapCycleFileName);
|
|
||||||
|
|
||||||
if (!smcore.filesystem->FileExists(pBuffer, "GAME"))
|
|
||||||
{
|
|
||||||
g_pSM->Format(pBuffer, maxlen, "cfg/mapcycle_default.txt");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
g_pSM->Format(pBuffer, maxlen, "%s", pMapCycleFileName);
|
g_pSM->Format(pBuffer, maxlen, "%s", pMapCycleFileName);
|
||||||
|
if (!smcore.filesystem->FileExists(pBuffer, "GAME"))
|
||||||
|
{
|
||||||
|
g_pSM->Format(pBuffer, maxlen, "cfg/mapcycle_default.txt");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
void AddOrUpdateDefault(const char *name, const char *file)
|
void AddOrUpdateDefault(const char *name, const char *file)
|
||||||
|
@ -1087,11 +1087,12 @@ static cell_t _ShowActivity(IPluginContext *pContext,
|
|||||||
if (replyto == SM_REPLY_CONSOLE)
|
if (replyto == SM_REPLY_CONSOLE)
|
||||||
{
|
{
|
||||||
g_pSM->SetGlobalTarget(client);
|
g_pSM->SetGlobalTarget(client);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s\n", tag, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s\n", tag, buffer);
|
||||||
@ -1102,11 +1103,12 @@ static cell_t _ShowActivity(IPluginContext *pContext,
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s\n", tag, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s\n", tag, buffer);
|
||||||
@ -1141,11 +1143,12 @@ static cell_t _ShowActivity(IPluginContext *pContext,
|
|||||||
{
|
{
|
||||||
newsign = name;
|
newsign = name;
|
||||||
}
|
}
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
||||||
@ -1165,11 +1168,12 @@ static cell_t _ShowActivity(IPluginContext *pContext,
|
|||||||
{
|
{
|
||||||
newsign = name;
|
newsign = name;
|
||||||
}
|
}
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
||||||
@ -1210,11 +1214,11 @@ static cell_t _ShowActivity2(IPluginContext *pContext,
|
|||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->SetGlobalTarget(client);
|
g_pSM->SetGlobalTarget(client);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* We don't display directly to the console because the chat text
|
/* We don't display directly to the console because the chat text
|
||||||
@ -1227,11 +1231,11 @@ static cell_t _ShowActivity2(IPluginContext *pContext,
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_pSM->SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s\n", tag, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s\n", tag, buffer);
|
||||||
@ -1266,11 +1270,12 @@ static cell_t _ShowActivity2(IPluginContext *pContext,
|
|||||||
{
|
{
|
||||||
newsign = name;
|
newsign = name;
|
||||||
}
|
}
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
||||||
@ -1290,11 +1295,12 @@ static cell_t _ShowActivity2(IPluginContext *pContext,
|
|||||||
{
|
{
|
||||||
newsign = name;
|
newsign = name;
|
||||||
}
|
}
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, fmt_param);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
g_pSM->Format(message, sizeof(message), "%s%s: %s", tag, newsign, buffer);
|
||||||
@ -1350,11 +1356,11 @@ static cell_t KickClient(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(client);
|
g_pSM->SetGlobalTarget(client);
|
||||||
|
|
||||||
char buffer[256];
|
char buffer[256];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pPlayer->IsFakeClient())
|
if (pPlayer->IsFakeClient())
|
||||||
@ -1387,11 +1393,11 @@ static cell_t KickClientEx(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_pSM->SetGlobalTarget(client);
|
g_pSM->SetGlobalTarget(client);
|
||||||
|
|
||||||
char buffer[256];
|
char buffer[256];
|
||||||
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_pSM->FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
pPlayer->Kick(buffer);
|
pPlayer->Kick(buffer);
|
||||||
|
@ -232,6 +232,7 @@ static cell_t sm_SortStrings(IPluginContext *pContext, const cell_t *params)
|
|||||||
if ((err=pContext->HeapAlloc(array_size, &amx_addr, &phys_addr)) != SP_ERROR_NONE)
|
if ((err=pContext->HeapAlloc(array_size, &amx_addr, &phys_addr)) != SP_ERROR_NONE)
|
||||||
{
|
{
|
||||||
pContext->ThrowNativeErrorEx(err, "Ran out of memory to sort");
|
pContext->ThrowNativeErrorEx(err, "Ran out of memory to sort");
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_CurStringArray = array;
|
g_CurStringArray = array;
|
||||||
@ -282,12 +283,16 @@ struct sort_info
|
|||||||
cell_t array_addr;
|
cell_t array_addr;
|
||||||
cell_t *array_base;
|
cell_t *array_base;
|
||||||
cell_t *array_remap;
|
cell_t *array_remap;
|
||||||
|
ExceptionHandler *eh;
|
||||||
};
|
};
|
||||||
|
|
||||||
sort_info g_SortInfo;
|
sort_info g_SortInfo;
|
||||||
|
|
||||||
int sort1d_amx_custom(const void *elem1, const void *elem2)
|
int sort1d_amx_custom(const void *elem1, const void *elem2)
|
||||||
{
|
{
|
||||||
|
if (g_SortInfo.eh->HasException())
|
||||||
|
return 0;
|
||||||
|
|
||||||
cell_t c1 = *(cell_t *)elem1;
|
cell_t c1 = *(cell_t *)elem1;
|
||||||
cell_t c2 = *(cell_t *)elem2;
|
cell_t c2 = *(cell_t *)elem2;
|
||||||
|
|
||||||
@ -297,7 +302,7 @@ int sort1d_amx_custom(const void *elem1, const void *elem2)
|
|||||||
pf->PushCell(c2);
|
pf->PushCell(c2);
|
||||||
pf->PushCell(g_SortInfo.array_addr);
|
pf->PushCell(g_SortInfo.array_addr);
|
||||||
pf->PushCell(g_SortInfo.hndl);
|
pf->PushCell(g_SortInfo.hndl);
|
||||||
pf->Execute(&result);
|
pf->Invoke(&result);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -317,22 +322,25 @@ static cell_t sm_SortCustom1D(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
sort_info oldinfo = g_SortInfo;
|
sort_info oldinfo = g_SortInfo;
|
||||||
|
|
||||||
|
DetectExceptions eh(pContext);
|
||||||
g_SortInfo.hndl = params[4];
|
g_SortInfo.hndl = params[4];
|
||||||
g_SortInfo.array_addr = params[1];
|
g_SortInfo.array_addr = params[1];
|
||||||
g_SortInfo.array_remap = NULL;
|
g_SortInfo.array_remap = NULL;
|
||||||
g_SortInfo.array_base = NULL;
|
g_SortInfo.array_base = NULL;
|
||||||
g_SortInfo.pFunc = pFunction;
|
g_SortInfo.pFunc = pFunction;
|
||||||
|
g_SortInfo.eh = &eh;
|
||||||
|
|
||||||
qsort(array, array_size, sizeof(cell_t), sort1d_amx_custom);
|
qsort(array, array_size, sizeof(cell_t), sort1d_amx_custom);
|
||||||
|
|
||||||
g_SortInfo = oldinfo;
|
g_SortInfo = oldinfo;
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
int sort2d_amx_custom(const void *elem1, const void *elem2)
|
int sort2d_amx_custom(const void *elem1, const void *elem2)
|
||||||
{
|
{
|
||||||
|
if (g_SortInfo.eh->HasException())
|
||||||
|
return 0;
|
||||||
|
|
||||||
cell_t c1 = *(cell_t *)elem1;
|
cell_t c1 = *(cell_t *)elem1;
|
||||||
cell_t c2 = *(cell_t *)elem2;
|
cell_t c2 = *(cell_t *)elem2;
|
||||||
|
|
||||||
@ -349,7 +357,7 @@ int sort2d_amx_custom(const void *elem1, const void *elem2)
|
|||||||
g_SortInfo.pFunc->PushCell(c2_addr);
|
g_SortInfo.pFunc->PushCell(c2_addr);
|
||||||
g_SortInfo.pFunc->PushCell(g_SortInfo.array_addr);
|
g_SortInfo.pFunc->PushCell(g_SortInfo.array_addr);
|
||||||
g_SortInfo.pFunc->PushCell(g_SortInfo.hndl);
|
g_SortInfo.pFunc->PushCell(g_SortInfo.hndl);
|
||||||
g_SortInfo.pFunc->Execute(&result);
|
g_SortInfo.pFunc->Invoke(&result);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -378,9 +386,11 @@ static cell_t sm_SortCustom2D(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
sort_info oldinfo = g_SortInfo;
|
sort_info oldinfo = g_SortInfo;
|
||||||
|
|
||||||
|
DetectExceptions eh(pContext);
|
||||||
g_SortInfo.pFunc = pFunction;
|
g_SortInfo.pFunc = pFunction;
|
||||||
g_SortInfo.hndl = params[4];
|
g_SortInfo.hndl = params[4];
|
||||||
g_SortInfo.array_addr = params[1];
|
g_SortInfo.array_addr = params[1];
|
||||||
|
g_SortInfo.eh = &eh;
|
||||||
|
|
||||||
/** Same process as in strings, back up the old indices for later fixup */
|
/** Same process as in strings, back up the old indices for later fixup */
|
||||||
g_SortInfo.array_base = array;
|
g_SortInfo.array_base = array;
|
||||||
@ -511,19 +521,23 @@ struct sort_infoADT
|
|||||||
cell_t array_bsize;
|
cell_t array_bsize;
|
||||||
Handle_t array_hndl;
|
Handle_t array_hndl;
|
||||||
Handle_t hndl;
|
Handle_t hndl;
|
||||||
|
ExceptionHandler *eh;
|
||||||
};
|
};
|
||||||
|
|
||||||
sort_infoADT g_SortInfoADT;
|
sort_infoADT g_SortInfoADT;
|
||||||
|
|
||||||
int sort_adtarray_custom(const void *elem1, const void *elem2)
|
int sort_adtarray_custom(const void *elem1, const void *elem2)
|
||||||
{
|
{
|
||||||
|
if (g_SortInfoADT.eh->HasException())
|
||||||
|
return 0;
|
||||||
|
|
||||||
cell_t result = 0;
|
cell_t result = 0;
|
||||||
IPluginFunction *pf = g_SortInfoADT.pFunc;
|
IPluginFunction *pf = g_SortInfoADT.pFunc;
|
||||||
pf->PushCell(((cell_t) ((cell_t *) elem1 - g_SortInfoADT.array_base)) / g_SortInfoADT.array_bsize);
|
pf->PushCell(((cell_t) ((cell_t *) elem1 - g_SortInfoADT.array_base)) / g_SortInfoADT.array_bsize);
|
||||||
pf->PushCell(((cell_t) ((cell_t *) elem2 - g_SortInfoADT.array_base)) / g_SortInfoADT.array_bsize);
|
pf->PushCell(((cell_t) ((cell_t *) elem2 - g_SortInfoADT.array_base)) / g_SortInfoADT.array_bsize);
|
||||||
pf->PushCell(g_SortInfoADT.array_hndl);
|
pf->PushCell(g_SortInfoADT.array_hndl);
|
||||||
pf->PushCell(g_SortInfoADT.hndl);
|
pf->PushCell(g_SortInfoADT.hndl);
|
||||||
pf->Execute(&result);
|
pf->Invoke(&result);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -552,11 +566,13 @@ static cell_t sm_SortADTArrayCustom(IPluginContext *pContext, const cell_t *para
|
|||||||
|
|
||||||
sort_infoADT oldinfo = g_SortInfoADT;
|
sort_infoADT oldinfo = g_SortInfoADT;
|
||||||
|
|
||||||
|
DetectExceptions eh(pContext);
|
||||||
g_SortInfoADT.pFunc = pFunction;
|
g_SortInfoADT.pFunc = pFunction;
|
||||||
g_SortInfoADT.array_base = array;
|
g_SortInfoADT.array_base = array;
|
||||||
g_SortInfoADT.array_bsize = (cell_t) blocksize;
|
g_SortInfoADT.array_bsize = (cell_t) blocksize;
|
||||||
g_SortInfoADT.array_hndl = params[1];
|
g_SortInfoADT.array_hndl = params[1];
|
||||||
g_SortInfoADT.hndl = params[3];
|
g_SortInfoADT.hndl = params[3];
|
||||||
|
g_SortInfoADT.eh = &eh;
|
||||||
|
|
||||||
qsort(array, arraysize, blocksize * sizeof(cell_t), sort_adtarray_custom);
|
qsort(array, arraysize, blocksize * sizeof(cell_t), sort_adtarray_custom);
|
||||||
|
|
||||||
|
@ -373,6 +373,8 @@ static const char *get_source_engine_name()
|
|||||||
return "dods";
|
return "dods";
|
||||||
#elif SOURCE_ENGINE == SE_SDK2013
|
#elif SOURCE_ENGINE == SE_SDK2013
|
||||||
return "sdk2013";
|
return "sdk2013";
|
||||||
|
#elif SOURCE_ENGINE == SE_BMS
|
||||||
|
return "bms";
|
||||||
#elif SOURCE_ENGINE == SE_TF2
|
#elif SOURCE_ENGINE == SE_TF2
|
||||||
return "tf2";
|
return "tf2";
|
||||||
#elif SOURCE_ENGINE == SE_LEFT4DEAD
|
#elif SOURCE_ENGINE == SE_LEFT4DEAD
|
||||||
@ -404,6 +406,7 @@ static bool symbols_are_hidden()
|
|||||||
|| (SOURCE_ENGINE == SE_HL2DM) \
|
|| (SOURCE_ENGINE == SE_HL2DM) \
|
||||||
|| (SOURCE_ENGINE == SE_DODS) \
|
|| (SOURCE_ENGINE == SE_DODS) \
|
||||||
|| (SOURCE_ENGINE == SE_SDK2013) \
|
|| (SOURCE_ENGINE == SE_SDK2013) \
|
||||||
|
|| (SOURCE_ENGINE == SE_BMS) \
|
||||||
|| (SOURCE_ENGINE == SE_TF2) \
|
|| (SOURCE_ENGINE == SE_TF2) \
|
||||||
|| (SOURCE_ENGINE == SE_LEFT4DEAD) \
|
|| (SOURCE_ENGINE == SE_LEFT4DEAD) \
|
||||||
|| (SOURCE_ENGINE == SE_NUCLEARDAWN) \
|
|| (SOURCE_ENGINE == SE_NUCLEARDAWN) \
|
||||||
@ -540,6 +543,8 @@ void do_global_plugin_loads()
|
|||||||
#define GAMEFIX "2.dods"
|
#define GAMEFIX "2.dods"
|
||||||
#elif SOURCE_ENGINE == SE_SDK2013
|
#elif SOURCE_ENGINE == SE_SDK2013
|
||||||
#define GAMEFIX "2.sdk2013"
|
#define GAMEFIX "2.sdk2013"
|
||||||
|
#elif SOURCE_ENGINE == SE_BMS
|
||||||
|
#define GAMEFIX "2.bms"
|
||||||
#elif SOURCE_ENGINE == SE_TF2
|
#elif SOURCE_ENGINE == SE_TF2
|
||||||
#define GAMEFIX "2.tf2"
|
#define GAMEFIX "2.tf2"
|
||||||
#elif SOURCE_ENGINE == SE_DARKMESSIAH
|
#elif SOURCE_ENGINE == SE_DARKMESSIAH
|
||||||
|
@ -1,95 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
|
||||||
# Visual Studio 2010
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sourcemod_mm", "sourcemod_mm.vcxproj", "{E39527CD-7CAB-4420-97CC-DA1B93B260BC}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
CrazyDebug - Alien Swarm|Win32 = CrazyDebug - Alien Swarm|Win32
|
|
||||||
CrazyDebug - CS GO|Win32 = CrazyDebug - CS GO|Win32
|
|
||||||
CrazyDebug - Dark Messiah|Win32 = CrazyDebug - Dark Messiah|Win32
|
|
||||||
CrazyDebug - Episode 1|Win32 = CrazyDebug - Episode 1|Win32
|
|
||||||
CrazyDebug - Left 4 Dead 2|Win32 = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
CrazyDebug - Left 4 Dead|Win32 = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
CrazyDebug - Old Metamod|Win32 = CrazyDebug - Old Metamod|Win32
|
|
||||||
CrazyDebug - Orange Box Valve|Win32 = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
CrazyDebug - Orange Box|Win32 = CrazyDebug - Orange Box|Win32
|
|
||||||
Debug - Alien Swarm|Win32 = Debug - Alien Swarm|Win32
|
|
||||||
Debug - CS GO|Win32 = Debug - CS GO|Win32
|
|
||||||
Debug - Dark Messiah|Win32 = Debug - Dark Messiah|Win32
|
|
||||||
Debug - Episode 1|Win32 = Debug - Episode 1|Win32
|
|
||||||
Debug - Left 4 Dead 2|Win32 = Debug - Left 4 Dead 2|Win32
|
|
||||||
Debug - Left 4 Dead|Win32 = Debug - Left 4 Dead|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box Valve|Win32 = Debug - Orange Box Valve|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - Alien Swarm|Win32 = Release - Alien Swarm|Win32
|
|
||||||
Release - CS GO|Win32 = Release - CS GO|Win32
|
|
||||||
Release - Dark Messiah|Win32 = Release - Dark Messiah|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Left 4 Dead 2|Win32 = Release - Left 4 Dead 2|Win32
|
|
||||||
Release - Left 4 Dead|Win32 = Release - Left 4 Dead|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box Valve|Win32 = Release - Orange Box Valve|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Alien Swarm|Win32.ActiveCfg = CrazyDebug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Alien Swarm|Win32.Build.0 = CrazyDebug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - CS GO|Win32.ActiveCfg = CrazyDebug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - CS GO|Win32.Build.0 = CrazyDebug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Dark Messiah|Win32.ActiveCfg = CrazyDebug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Dark Messiah|Win32.Build.0 = CrazyDebug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.ActiveCfg = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.Build.0 = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead 2|Win32.ActiveCfg = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead 2|Win32.Build.0 = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead|Win32.ActiveCfg = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead|Win32.Build.0 = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.ActiveCfg = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.Build.0 = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box Valve|Win32.ActiveCfg = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box Valve|Win32.Build.0 = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.ActiveCfg = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.Build.0 = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Alien Swarm|Win32.ActiveCfg = Debug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Alien Swarm|Win32.Build.0 = Debug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - CS GO|Win32.ActiveCfg = Debug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - CS GO|Win32.Build.0 = Debug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Dark Messiah|Win32.ActiveCfg = Debug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Dark Messiah|Win32.Build.0 = Debug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.ActiveCfg = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.Build.0 = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead 2|Win32.ActiveCfg = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead 2|Win32.Build.0 = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead|Win32.ActiveCfg = Debug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead|Win32.Build.0 = Debug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box Valve|Win32.ActiveCfg = Debug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box Valve|Win32.Build.0 = Debug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Alien Swarm|Win32.ActiveCfg = Release - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Alien Swarm|Win32.Build.0 = Release - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - CS GO|Win32.ActiveCfg = Release - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - CS GO|Win32.Build.0 = Release - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Dark Messiah|Win32.ActiveCfg = Release - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Dark Messiah|Win32.Build.0 = Release - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead 2|Win32.ActiveCfg = Release - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead 2|Win32.Build.0 = Release - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead|Win32.ActiveCfg = Release - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead|Win32.Build.0 = Release - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box Valve|Win32.ActiveCfg = Release - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box Valve|Win32.Build.0 = Release - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
File diff suppressed because it is too large
Load Diff
@ -1,439 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Interfaces">
|
|
||||||
<UniqueIdentifier>{10C69360-9E8E-4a43-BCEF-E9373B3641BC}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="SourcePawn">
|
|
||||||
<UniqueIdentifier>{C3C3DC6E-E392-4916-B893-7ACB92192DE0}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="HL2SDK">
|
|
||||||
<UniqueIdentifier>{80B56842-7A9F-4d5d-8149-767C285D0EB4}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Natives">
|
|
||||||
<UniqueIdentifier>{052D6D9B-7B50-4c3c-9B82-32CA908DEF24}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resources">
|
|
||||||
<UniqueIdentifier>{2A750240-7C10-455f-A900-B9A9D362356C}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="HL2SDK\Protobuf">
|
|
||||||
<UniqueIdentifier>{28cf0347-3553-4d24-b9ad-476ba5197680}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="HL2SDK\Protobuf\CSGO">
|
|
||||||
<UniqueIdentifier>{0e62c72e-57b1-40d2-9a94-059f535ce719}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\AdminCache.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ADTFactory.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\CDataPack.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ChatTriggers.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\concmd_cleaner.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ConCmdManager.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ConsoleDetours.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ConVarManager.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\CoreConfig.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\CrazyDebugger.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\Database.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\EventManager.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\ForwardSys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\frame_hooks.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\HalfLife2.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\LibrarySys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\Logger.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\logic_bridge.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\MenuManager.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\MenuStyle_Base.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\MenuStyle_Radio.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\MenuStyle_Valve.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\MenuVoting.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\NextMap.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\PlayerManager.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sm_autonatives.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sm_srvcmds.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sm_stringutil.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sm_trie.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sourcemm_api.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sourcemod.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\TimerSys.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\UserMessages.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_bitbuffer.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_console.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_core.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_database.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_entities.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_events.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_halflife.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_hudtext.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_keyvalues.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_menus.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_nextmap.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_player.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_usermsgs.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_vector.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\..\hl2sdks\hl2sdk-csgo\public\game\shared\csgo\protobuf\cstrike15_usermessage_helpers.cpp">
|
|
||||||
<Filter>HL2SDK\Protobuf\CSGO</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\..\hl2sdks\hl2sdk-csgo\public\game\shared\csgo\protobuf\cstrike15_usermessages.pb.cc">
|
|
||||||
<Filter>HL2SDK\Protobuf\CSGO</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\..\hl2sdks\hl2sdk-csgo\public\engine\protobuf\netmessages.pb.cc">
|
|
||||||
<Filter>HL2SDK\Protobuf</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\smn_protobuf.cpp">
|
|
||||||
<Filter>Natives</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\AdminCache.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ADTFactory.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CDataPack.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CellRecipientFilter.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ChatTriggers.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\compat_wrappers.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\concmd_cleaner.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ConCmdManager.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ConCommandBaseIterator.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ConsoleDetours.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ConVarManager.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CoreConfig.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\Database.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\EventManager.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\ForwardSys.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\frame_hooks.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\HalfLife2.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\LibrarySys.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\Logger.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\logic_bridge.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MenuManager.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MenuStyle_Base.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MenuStyle_Radio.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MenuStyle_Valve.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\MenuVoting.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\NextMap.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\PlayerManager.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_autonatives.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_fastlink.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_globals.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_memtable.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_queue.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_simple_prioqueue.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_srvcmds.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_stringutil.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sm_trie.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sm_trie_tpl.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\smn_usermsgs.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sourcemm_api.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sourcemod.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\TimerSys.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\UserMessages.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IAdminSystem.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IADTFactory.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IDataPack.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IDBDriver.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IExtensionSys.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IForwardSys.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IGameConfigs.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IGameHelpers.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IHandleSys.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\ILibrarySys.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IMemoryUtils.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IMenuManager.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\INativeInvoker.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IPlayerHelpers.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IPluginSys.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IRootConsoleMenu.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IShareSys.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\ISourceMod.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\ITextParsers.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\ITimerSystem.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\ITranslator.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\IUserMessages.h">
|
|
||||||
<Filter>Interfaces</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sourcepawn\sp_file_headers.h">
|
|
||||||
<Filter>SourcePawn</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sourcepawn\sp_typeutil.h">
|
|
||||||
<Filter>SourcePawn</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sourcepawn\sp_vm_api.h">
|
|
||||||
<Filter>SourcePawn</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sourcepawn\sp_vm_base.h">
|
|
||||||
<Filter>SourcePawn</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sourcepawn\sp_vm_types.h">
|
|
||||||
<Filter>SourcePawn</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\convar_sm.h">
|
|
||||||
<Filter>HL2SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sm_platform.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\public\sourcemod_version.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\convar_sm_l4d.h">
|
|
||||||
<Filter>HL2SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\convar_sm_ob.h">
|
|
||||||
<Filter>HL2SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\convar_sm_swarm.h">
|
|
||||||
<Filter>HL2SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\hl2sdks\hl2sdk-csgo\public\game\shared\csgo\protobuf\cstrike15_usermessage_helpers.h">
|
|
||||||
<Filter>HL2SDK\Protobuf\CSGO</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\hl2sdks\hl2sdk-csgo\public\game\shared\csgo\protobuf\cstrike15_usermessages.pb.h">
|
|
||||||
<Filter>HL2SDK\Protobuf\CSGO</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\hl2sdks\hl2sdk-csgo\public\engine\protobuf\netmessages.pb.h">
|
|
||||||
<Filter>HL2SDK\Protobuf</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ResourceCompile Include="..\version.rc">
|
|
||||||
<Filter>Resources</Filter>
|
|
||||||
</ResourceCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Library Include="..\..\..\hl2sdks\hl2sdk-csgo\lib\win32\release\vs2010\libprotobuf.lib">
|
|
||||||
<Filter>HL2SDK\Protobuf</Filter>
|
|
||||||
</Library>
|
|
||||||
<Library Include="..\..\..\hl2sdks\hl2sdk-csgo\lib\win32\debug\vs2010\libprotobuf.lib">
|
|
||||||
<Filter>HL2SDK\Protobuf</Filter>
|
|
||||||
</Library>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
@ -1,95 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
|
||||||
# Visual Studio 2010
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sourcemod_mm", "sourcemod_mm.vcxproj", "{E39527CD-7CAB-4420-97CC-DA1B93B260BC}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
CrazyDebug - Alien Swarm|Win32 = CrazyDebug - Alien Swarm|Win32
|
|
||||||
CrazyDebug - CS GO|Win32 = CrazyDebug - CS GO|Win32
|
|
||||||
CrazyDebug - Dark Messiah|Win32 = CrazyDebug - Dark Messiah|Win32
|
|
||||||
CrazyDebug - Episode 1|Win32 = CrazyDebug - Episode 1|Win32
|
|
||||||
CrazyDebug - Left 4 Dead 2|Win32 = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
CrazyDebug - Left 4 Dead|Win32 = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
CrazyDebug - Old Metamod|Win32 = CrazyDebug - Old Metamod|Win32
|
|
||||||
CrazyDebug - Orange Box Valve|Win32 = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
CrazyDebug - Orange Box|Win32 = CrazyDebug - Orange Box|Win32
|
|
||||||
Debug - Alien Swarm|Win32 = Debug - Alien Swarm|Win32
|
|
||||||
Debug - CS GO|Win32 = Debug - CS GO|Win32
|
|
||||||
Debug - Dark Messiah|Win32 = Debug - Dark Messiah|Win32
|
|
||||||
Debug - Episode 1|Win32 = Debug - Episode 1|Win32
|
|
||||||
Debug - Left 4 Dead 2|Win32 = Debug - Left 4 Dead 2|Win32
|
|
||||||
Debug - Left 4 Dead|Win32 = Debug - Left 4 Dead|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box Valve|Win32 = Debug - Orange Box Valve|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - Alien Swarm|Win32 = Release - Alien Swarm|Win32
|
|
||||||
Release - CS GO|Win32 = Release - CS GO|Win32
|
|
||||||
Release - Dark Messiah|Win32 = Release - Dark Messiah|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Left 4 Dead 2|Win32 = Release - Left 4 Dead 2|Win32
|
|
||||||
Release - Left 4 Dead|Win32 = Release - Left 4 Dead|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box Valve|Win32 = Release - Orange Box Valve|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Alien Swarm|Win32.ActiveCfg = CrazyDebug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Alien Swarm|Win32.Build.0 = CrazyDebug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - CS GO|Win32.ActiveCfg = CrazyDebug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - CS GO|Win32.Build.0 = CrazyDebug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Dark Messiah|Win32.ActiveCfg = CrazyDebug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Dark Messiah|Win32.Build.0 = CrazyDebug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.ActiveCfg = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.Build.0 = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead 2|Win32.ActiveCfg = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead 2|Win32.Build.0 = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead|Win32.ActiveCfg = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead|Win32.Build.0 = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.ActiveCfg = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.Build.0 = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box Valve|Win32.ActiveCfg = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box Valve|Win32.Build.0 = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.ActiveCfg = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.Build.0 = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Alien Swarm|Win32.ActiveCfg = Debug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Alien Swarm|Win32.Build.0 = Debug - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - CS GO|Win32.ActiveCfg = Debug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - CS GO|Win32.Build.0 = Debug - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Dark Messiah|Win32.ActiveCfg = Debug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Dark Messiah|Win32.Build.0 = Debug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.ActiveCfg = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.Build.0 = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead 2|Win32.ActiveCfg = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead 2|Win32.Build.0 = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead|Win32.ActiveCfg = Debug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead|Win32.Build.0 = Debug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box Valve|Win32.ActiveCfg = Debug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box Valve|Win32.Build.0 = Debug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Alien Swarm|Win32.ActiveCfg = Release - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Alien Swarm|Win32.Build.0 = Release - Alien Swarm|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - CS GO|Win32.ActiveCfg = Release - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - CS GO|Win32.Build.0 = Release - CS GO|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Dark Messiah|Win32.ActiveCfg = Release - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Dark Messiah|Win32.Build.0 = Release - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead 2|Win32.ActiveCfg = Release - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead 2|Win32.Build.0 = Release - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead|Win32.ActiveCfg = Release - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead|Win32.Build.0 = Release - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box Valve|Win32.ActiveCfg = Release - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box Valve|Win32.Build.0 = Release - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
File diff suppressed because it is too large
Load Diff
@ -1,41 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
|
||||||
# Visual Studio 2005
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sourcemod_mm", "sourcemod_mm.vcproj", "{E39527CD-7CAB-4420-97CC-DA1B93B260BC}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
CrazyDebug - Episode 1|Win32 = CrazyDebug - Episode 1|Win32
|
|
||||||
CrazyDebug - Old Metamod|Win32 = CrazyDebug - Old Metamod|Win32
|
|
||||||
CrazyDebug - Orange Box|Win32 = CrazyDebug - Orange Box|Win32
|
|
||||||
Debug - Episode 1|Win32 = Debug - Episode 1|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.ActiveCfg = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.Build.0 = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.ActiveCfg = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.Build.0 = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.ActiveCfg = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.Build.0 = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.ActiveCfg = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.Build.0 = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
File diff suppressed because it is too large
Load Diff
@ -1,77 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual Studio 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sourcemod_mm", "sourcemod_mm.vcproj", "{E39527CD-7CAB-4420-97CC-DA1B93B260BC}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
CrazyDebug - Dark Messiah|Win32 = CrazyDebug - Dark Messiah|Win32
|
|
||||||
CrazyDebug - Episode 1|Win32 = CrazyDebug - Episode 1|Win32
|
|
||||||
CrazyDebug - Left 4 Dead 2|Win32 = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
CrazyDebug - Left 4 Dead|Win32 = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
CrazyDebug - Old Metamod|Win32 = CrazyDebug - Old Metamod|Win32
|
|
||||||
CrazyDebug - Orange Box Valve|Win32 = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
CrazyDebug - Orange Box|Win32 = CrazyDebug - Orange Box|Win32
|
|
||||||
Debug - Dark Messiah|Win32 = Debug - Dark Messiah|Win32
|
|
||||||
Debug - Episode 1|Win32 = Debug - Episode 1|Win32
|
|
||||||
Debug - Left 4 Dead 2|Win32 = Debug - Left 4 Dead 2|Win32
|
|
||||||
Debug - Left 4 Dead|Win32 = Debug - Left 4 Dead|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box Valve|Win32 = Debug - Orange Box Valve|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - Dark Messiah|Win32 = Release - Dark Messiah|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Left 4 Dead 2|Win32 = Release - Left 4 Dead 2|Win32
|
|
||||||
Release - Left 4 Dead|Win32 = Release - Left 4 Dead|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box Valve|Win32 = Release - Orange Box Valve|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Dark Messiah|Win32.ActiveCfg = CrazyDebug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Dark Messiah|Win32.Build.0 = CrazyDebug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.ActiveCfg = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Episode 1|Win32.Build.0 = CrazyDebug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead 2|Win32.ActiveCfg = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead 2|Win32.Build.0 = CrazyDebug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead|Win32.ActiveCfg = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Left 4 Dead|Win32.Build.0 = CrazyDebug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.ActiveCfg = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Old Metamod|Win32.Build.0 = CrazyDebug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box Valve|Win32.ActiveCfg = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box Valve|Win32.Build.0 = CrazyDebug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.ActiveCfg = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.CrazyDebug - Orange Box|Win32.Build.0 = CrazyDebug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Dark Messiah|Win32.ActiveCfg = Debug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Dark Messiah|Win32.Build.0 = Debug - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.ActiveCfg = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Episode 1|Win32.Build.0 = Debug - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead 2|Win32.ActiveCfg = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead 2|Win32.Build.0 = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead|Win32.ActiveCfg = Debug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Left 4 Dead|Win32.Build.0 = Debug - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box Valve|Win32.ActiveCfg = Debug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box Valve|Win32.Build.0 = Debug - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Dark Messiah|Win32.ActiveCfg = Release - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Dark Messiah|Win32.Build.0 = Release - Dark Messiah|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead 2|Win32.ActiveCfg = Release - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead 2|Win32.Build.0 = Release - Left 4 Dead 2|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead|Win32.ActiveCfg = Release - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Left 4 Dead|Win32.Build.0 = Release - Left 4 Dead|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box Valve|Win32.ActiveCfg = Release - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box Valve|Win32.Build.0 = Release - Orange Box Valve|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{E39527CD-7CAB-4420-97CC-DA1B93B260BC}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
File diff suppressed because it is too large
Load Diff
@ -397,11 +397,14 @@ CON_COMMAND(sm_dump_handles, "Dumps Handle usage to a file for finding Handle le
|
|||||||
|
|
||||||
if (strcmp(args.Arg(1), "log") != 0)
|
if (strcmp(args.Arg(1), "log") != 0)
|
||||||
{
|
{
|
||||||
|
char filename[PLATFORM_MAX_PATH];
|
||||||
const char *arg = args.Arg(1);
|
const char *arg = args.Arg(1);
|
||||||
FILE *fp = fopen(arg, "wt");
|
g_SourceMod.BuildPath(Path_Game, filename, sizeof(filename), "%s", arg);
|
||||||
|
|
||||||
|
FILE *fp = fopen(filename, "wt");
|
||||||
if (!fp)
|
if (!fp)
|
||||||
{
|
{
|
||||||
g_RootMenu.ConsolePrint("Could not find file \"%s\"", arg);
|
g_RootMenu.ConsolePrint("Failed to open \"%s\" for writing", filename);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1180,12 +1180,7 @@ reswitch:
|
|||||||
{
|
{
|
||||||
CHECK_ARGS(0);
|
CHECK_ARGS(0);
|
||||||
char *str;
|
char *str;
|
||||||
int err;
|
pCtx->LocalToString(params[arg], &str);
|
||||||
if ((err=pCtx->LocalToString(params[arg], &str)) != SP_ERROR_NONE)
|
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, "Could not deference string");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
AddString(&buf_p, llen, str, width, prec);
|
AddString(&buf_p, llen, str, width, prec);
|
||||||
arg++;
|
arg++;
|
||||||
break;
|
break;
|
||||||
|
@ -194,7 +194,6 @@ static cell_t smn_BfWriteString(IPluginContext *pCtx, const cell_t *params)
|
|||||||
HandleError herr;
|
HandleError herr;
|
||||||
HandleSecurity sec;
|
HandleSecurity sec;
|
||||||
bf_write *pBitBuf;
|
bf_write *pBitBuf;
|
||||||
int err;
|
|
||||||
|
|
||||||
sec.pOwner = NULL;
|
sec.pOwner = NULL;
|
||||||
sec.pIdentity = g_pCoreIdent;
|
sec.pIdentity = g_pCoreIdent;
|
||||||
@ -206,11 +205,7 @@ static cell_t smn_BfWriteString(IPluginContext *pCtx, const cell_t *params)
|
|||||||
}
|
}
|
||||||
|
|
||||||
char *str;
|
char *str;
|
||||||
if ((err=pCtx->LocalToString(params[2], &str)) != SP_ERROR_NONE)
|
pCtx->LocalToString(params[2], &str);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
pBitBuf->WriteString(str);
|
pBitBuf->WriteString(str);
|
||||||
|
|
||||||
|
@ -909,11 +909,12 @@ static cell_t sm_ServerCommandEx(IPluginContext *pContext, const cell_t *params)
|
|||||||
g_SourceMod.SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
g_SourceMod.SetGlobalTarget(SOURCEMOD_SERVER_LANGUAGE);
|
||||||
|
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
size_t len = g_SourceMod.FormatString(buffer, sizeof(buffer)-2, pContext, params, 3);
|
size_t len;
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
len = g_SourceMod.FormatString(buffer, sizeof(buffer)-2, pContext, params, 3);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* One byte for null terminator, one for newline */
|
/* One byte for null terminator, one for newline */
|
||||||
@ -965,11 +966,11 @@ static cell_t FakeClientCommandEx(IPluginContext *pContext, const cell_t *params
|
|||||||
g_SourceMod.SetGlobalTarget(params[1]);
|
g_SourceMod.SetGlobalTarget(params[1]);
|
||||||
|
|
||||||
char buffer[256];
|
char buffer[256];
|
||||||
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_HL2.AddToFakeCliCmdQueue(params[1], GetPlayerUserId(pPlayer->GetEdict()), buffer);
|
g_HL2.AddToFakeCliCmdQueue(params[1], GetPlayerUserId(pPlayer->GetEdict()), buffer);
|
||||||
|
@ -1254,7 +1254,8 @@ static cell_t GetEntProp(IPluginContext *pContext, const cell_t *params)
|
|||||||
is_unsigned = ((pProp->GetFlags() & SPROP_UNSIGNED) == SPROP_UNSIGNED);
|
is_unsigned = ((pProp->GetFlags() & SPROP_UNSIGNED) == SPROP_UNSIGNED);
|
||||||
|
|
||||||
// This isn't in CS:S yet, but will be, doesn't hurt to add now, and will save us a build later
|
// This isn't in CS:S yet, but will be, doesn't hurt to add now, and will save us a build later
|
||||||
#if SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_TF2
|
#if SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS \
|
||||||
|
|| SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_TF2
|
||||||
if (pProp->GetFlags() & SPROP_VARINT)
|
if (pProp->GetFlags() & SPROP_VARINT)
|
||||||
{
|
{
|
||||||
bit_count = sizeof(int) * 8;
|
bit_count = sizeof(int) * 8;
|
||||||
@ -1352,7 +1353,8 @@ static cell_t SetEntProp(IPluginContext *pContext, const cell_t *params)
|
|||||||
FIND_PROP_SEND(DPT_Int, "integer");
|
FIND_PROP_SEND(DPT_Int, "integer");
|
||||||
|
|
||||||
// This isn't in CS:S yet, but will be, doesn't hurt to add now, and will save us a build later
|
// This isn't in CS:S yet, but will be, doesn't hurt to add now, and will save us a build later
|
||||||
#if SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_TF2
|
#if SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS \
|
||||||
|
|| SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_TF2
|
||||||
if (pProp->GetFlags() & SPROP_VARINT)
|
if (pProp->GetFlags() & SPROP_VARINT)
|
||||||
{
|
{
|
||||||
bit_count = sizeof(int) * 8;
|
bit_count = sizeof(int) * 8;
|
||||||
@ -2156,7 +2158,8 @@ static int32_t SDKEntFlagToSMEntFlag(int flag)
|
|||||||
#if SOURCE_ENGINE == SE_ALIENSWARM
|
#if SOURCE_ENGINE == SE_ALIENSWARM
|
||||||
case FL_FREEZING:
|
case FL_FREEZING:
|
||||||
return ENTFLAG_FREEZING;
|
return ENTFLAG_FREEZING;
|
||||||
#elif SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_TF2
|
#elif SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 \
|
||||||
|
|| SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_TF2
|
||||||
case FL_EP2V_UNKNOWN:
|
case FL_EP2V_UNKNOWN:
|
||||||
return ENTFLAG_EP2V_UNKNOWN1;
|
return ENTFLAG_EP2V_UNKNOWN1;
|
||||||
#endif
|
#endif
|
||||||
@ -2234,7 +2237,8 @@ static int32_t SMEntFlagToSDKEntFlag(int32_t flag)
|
|||||||
#if SOURCE_ENGINE == SE_ALIENSWARM
|
#if SOURCE_ENGINE == SE_ALIENSWARM
|
||||||
case ENTFLAG_FREEZING:
|
case ENTFLAG_FREEZING:
|
||||||
return FL_FREEZING;
|
return FL_FREEZING;
|
||||||
#elif SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 || SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_TF2
|
#elif SOURCE_ENGINE == SE_HL2DM || SOURCE_ENGINE == SE_DODS || SOURCE_ENGINE == SE_SDK2013 \
|
||||||
|
|| SOURCE_ENGINE == SE_BMS || SOURCE_ENGINE == SE_CSS || SOURCE_ENGINE == SE_TF2
|
||||||
case ENTFLAG_EP2V_UNKNOWN1:
|
case ENTFLAG_EP2V_UNKNOWN1:
|
||||||
return FL_EP2V_UNKNOWN;
|
return FL_EP2V_UNKNOWN;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* vim: set ts=4 :
|
* vim: set ts=4 sw=4 tw=99 noet :
|
||||||
* =============================================================================
|
* =============================================================================
|
||||||
* SourceMod
|
* SourceMod
|
||||||
* Copyright (C) 2004-2010 AlliedModders LLC. All rights reserved.
|
* Copyright (C) 2004-2010 AlliedModders LLC. All rights reserved.
|
||||||
@ -320,13 +320,13 @@ static cell_t PrintToChat(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
g_SourceMod.SetGlobalTarget(client);
|
g_SourceMod.SetGlobalTarget(client);
|
||||||
|
|
||||||
char buffer[192];
|
char buffer[254];
|
||||||
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
/* Check for an error before printing to the client */
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!g_HL2.TextMsg(client, HUD_PRINTTALK, buffer))
|
if (!g_HL2.TextMsg(client, HUD_PRINTTALK, buffer))
|
||||||
@ -354,13 +354,13 @@ static cell_t PrintCenterText(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
g_SourceMod.SetGlobalTarget(client);
|
g_SourceMod.SetGlobalTarget(client);
|
||||||
|
|
||||||
char buffer[192];
|
char buffer[254];
|
||||||
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
/* Check for an error before printing to the client */
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!g_HL2.TextMsg(client, HUD_PRINTCENTER, buffer))
|
if (!g_HL2.TextMsg(client, HUD_PRINTCENTER, buffer))
|
||||||
@ -388,13 +388,12 @@ static cell_t PrintHintText(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
g_SourceMod.SetGlobalTarget(client);
|
g_SourceMod.SetGlobalTarget(client);
|
||||||
|
|
||||||
char buffer[192];
|
char buffer[254];
|
||||||
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
|
||||||
|
|
||||||
/* Check for an error before printing to the client */
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_SourceMod.FormatString(buffer, sizeof(buffer), pContext, params, 2);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!g_HL2.HintTextMsg(client, buffer))
|
if (!g_HL2.HintTextMsg(client, buffer))
|
||||||
@ -499,6 +498,7 @@ static cell_t GuessSDKVersion(IPluginContext *pContext, const cell_t *params)
|
|||||||
case SOURCE_ENGINE_HL2DM:
|
case SOURCE_ENGINE_HL2DM:
|
||||||
case SOURCE_ENGINE_DODS:
|
case SOURCE_ENGINE_DODS:
|
||||||
case SOURCE_ENGINE_TF2:
|
case SOURCE_ENGINE_TF2:
|
||||||
|
case SOURCE_ENGINE_BMS:
|
||||||
case SOURCE_ENGINE_SDK2013:
|
case SOURCE_ENGINE_SDK2013:
|
||||||
return 35;
|
return 35;
|
||||||
case SOURCE_ENGINE_LEFT4DEAD:
|
case SOURCE_ENGINE_LEFT4DEAD:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* vim: set ts=4 :
|
* vim: set ts=4 sw=4 tw=99 noet:
|
||||||
* =============================================================================
|
* =============================================================================
|
||||||
* SourceMod
|
* SourceMod
|
||||||
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
* Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
|
||||||
@ -415,10 +415,12 @@ static cell_t ShowSyncHudText(IPluginContext *pContext, const cell_t *params)
|
|||||||
}
|
}
|
||||||
|
|
||||||
g_SourceMod.SetGlobalTarget(client);
|
g_SourceMod.SetGlobalTarget(client);
|
||||||
g_SourceMod.FormatString(message_buffer, sizeof(message_buffer), pContext, params, 3);
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_SourceMod.FormatString(message_buffer, sizeof(message_buffer), pContext, params, 3);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_hud_params.channel = s_HudMsgHelpers.AutoSelectChannel(client, obj);
|
g_hud_params.channel = s_HudMsgHelpers.AutoSelectChannel(client, obj);
|
||||||
@ -488,10 +490,12 @@ static cell_t ShowHudText(IPluginContext *pContext, const cell_t *params)
|
|||||||
}
|
}
|
||||||
|
|
||||||
g_SourceMod.SetGlobalTarget(client);
|
g_SourceMod.SetGlobalTarget(client);
|
||||||
g_SourceMod.FormatString(message_buffer, sizeof(message_buffer), pContext, params, 3);
|
|
||||||
if (pContext->GetLastNativeError() != SP_ERROR_NONE)
|
|
||||||
{
|
{
|
||||||
return 0;
|
DetectExceptions eh(pContext);
|
||||||
|
g_SourceMod.FormatString(message_buffer, sizeof(message_buffer), pContext, params, 3);
|
||||||
|
if (eh.HasException())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (params[2] == -1)
|
if (params[2] == -1)
|
||||||
|
@ -52,13 +52,8 @@
|
|||||||
|
|
||||||
// Assumes message field name is param 2, gets as strField
|
// Assumes message field name is param 2, gets as strField
|
||||||
#define GET_FIELD_NAME_OR_ERR() \
|
#define GET_FIELD_NAME_OR_ERR() \
|
||||||
int err; \
|
|
||||||
char *strField; \
|
char *strField; \
|
||||||
if ((err=pCtx->LocalToString(params[2], &strField)) != SP_ERROR_NONE) \
|
pCtx->LocalToString(params[2], &strField);
|
||||||
{ \
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL); \
|
|
||||||
return 0; \
|
|
||||||
}
|
|
||||||
|
|
||||||
static cell_t smn_PbReadInt(IPluginContext *pCtx, const cell_t *params)
|
static cell_t smn_PbReadInt(IPluginContext *pCtx, const cell_t *params)
|
||||||
{
|
{
|
||||||
@ -387,11 +382,7 @@ static cell_t smn_PbSetString(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
char *strValue;
|
char *strValue;
|
||||||
if ((err=pCtx->LocalToString(params[3], &strValue)) != SP_ERROR_NONE)
|
pCtx->LocalToString(params[3], &strValue);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int index = params[0] >= 4 ? params[4] : -1;
|
int index = params[0] >= 4 ? params[4] : -1;
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
@ -418,11 +409,7 @@ static cell_t smn_PbSetColor(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *clrParams;
|
cell_t *clrParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &clrParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &clrParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Color clr(
|
Color clr(
|
||||||
clrParams[0],
|
clrParams[0],
|
||||||
@ -455,11 +442,7 @@ static cell_t smn_PbSetAngle(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *angParams;
|
cell_t *angParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &angParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &angParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
QAngle ang(
|
QAngle ang(
|
||||||
sp_ctof(angParams[0]),
|
sp_ctof(angParams[0]),
|
||||||
@ -491,11 +474,7 @@ static cell_t smn_PbSetVector(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *vecParams;
|
cell_t *vecParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &vecParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &vecParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Vector vec(
|
Vector vec(
|
||||||
sp_ctof(vecParams[0]),
|
sp_ctof(vecParams[0]),
|
||||||
@ -527,11 +506,7 @@ static cell_t smn_PbSetVector2D(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *vecParams;
|
cell_t *vecParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &vecParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &vecParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Vector2D vec(
|
Vector2D vec(
|
||||||
sp_ctof(vecParams[0]),
|
sp_ctof(vecParams[0]),
|
||||||
@ -602,11 +577,7 @@ static cell_t smn_PbAddString(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
char *strValue;
|
char *strValue;
|
||||||
if ((err=pCtx->LocalToString(params[3], &strValue)) != SP_ERROR_NONE)
|
pCtx->LocalToString(params[3], &strValue);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!msg->AddString(strField, strValue))
|
if (!msg->AddString(strField, strValue))
|
||||||
{
|
{
|
||||||
@ -622,11 +593,7 @@ static cell_t smn_PbAddColor(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *clrParams;
|
cell_t *clrParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &clrParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &clrParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Color clr(
|
Color clr(
|
||||||
clrParams[0],
|
clrParams[0],
|
||||||
@ -648,11 +615,7 @@ static cell_t smn_PbAddAngle(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *angParams;
|
cell_t *angParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &angParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &angParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
QAngle ang(
|
QAngle ang(
|
||||||
sp_ctof(angParams[0]),
|
sp_ctof(angParams[0]),
|
||||||
@ -673,11 +636,7 @@ static cell_t smn_PbAddVector(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *vecParams;
|
cell_t *vecParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &vecParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &vecParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Vector vec(
|
Vector vec(
|
||||||
sp_ctof(vecParams[0]),
|
sp_ctof(vecParams[0]),
|
||||||
@ -698,11 +657,7 @@ static cell_t smn_PbAddVector2D(IPluginContext *pCtx, const cell_t *params)
|
|||||||
GET_FIELD_NAME_OR_ERR();
|
GET_FIELD_NAME_OR_ERR();
|
||||||
|
|
||||||
cell_t *vecParams;
|
cell_t *vecParams;
|
||||||
if ((err=pCtx->LocalToPhysAddr(params[3], &vecParams)) != SP_ERROR_NONE)
|
pCtx->LocalToPhysAddr(params[3], &vecParams);
|
||||||
{
|
|
||||||
pCtx->ThrowNativeErrorEx(err, NULL);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Vector2D vec(
|
Vector2D vec(
|
||||||
sp_ctof(vecParams[0]),
|
sp_ctof(vecParams[0]),
|
||||||
|
@ -54,6 +54,7 @@ ILibrary *g_pJIT = NULL;
|
|||||||
SourceHook::String g_BaseDir;
|
SourceHook::String g_BaseDir;
|
||||||
ISourcePawnEngine *g_pSourcePawn = NULL;
|
ISourcePawnEngine *g_pSourcePawn = NULL;
|
||||||
ISourcePawnEngine2 *g_pSourcePawn2 = NULL;
|
ISourcePawnEngine2 *g_pSourcePawn2 = NULL;
|
||||||
|
ISourcePawnEnvironment *g_pPawnEnv = NULL;
|
||||||
IdentityToken_t *g_pCoreIdent = NULL;
|
IdentityToken_t *g_pCoreIdent = NULL;
|
||||||
IForward *g_pOnMapEnd = NULL;
|
IForward *g_pOnMapEnd = NULL;
|
||||||
IGameConfig *g_pGameConf = NULL;
|
IGameConfig *g_pGameConf = NULL;
|
||||||
@ -61,10 +62,6 @@ bool g_Loaded = false;
|
|||||||
bool sm_show_debug_spew = false;
|
bool sm_show_debug_spew = false;
|
||||||
bool sm_disable_jit = false;
|
bool sm_disable_jit = false;
|
||||||
|
|
||||||
typedef ISourcePawnEngine *(*GET_SP_V1)();
|
|
||||||
typedef ISourcePawnEngine2 *(*GET_SP_V2)();
|
|
||||||
typedef void (*NOTIFYSHUTDOWN)();
|
|
||||||
|
|
||||||
#ifdef PLATFORM_WINDOWS
|
#ifdef PLATFORM_WINDOWS
|
||||||
ConVar sm_basepath("sm_basepath", "addons\\sourcemod", 0, "SourceMod base path (set via command line)");
|
ConVar sm_basepath("sm_basepath", "addons\\sourcemod", 0, "SourceMod base path (set via command line)");
|
||||||
#elif defined PLATFORM_LINUX || defined PLATFORM_APPLE
|
#elif defined PLATFORM_LINUX || defined PLATFORM_APPLE
|
||||||
@ -73,18 +70,17 @@ ConVar sm_basepath("sm_basepath", "addons/sourcemod", 0, "SourceMod base path (s
|
|||||||
|
|
||||||
void ShutdownJIT()
|
void ShutdownJIT()
|
||||||
{
|
{
|
||||||
NOTIFYSHUTDOWN notify = (NOTIFYSHUTDOWN)g_pJIT->GetSymbolAddress("NotifyShutdown");
|
if (g_pPawnEnv) {
|
||||||
if (notify)
|
g_pPawnEnv->Shutdown();
|
||||||
{
|
delete g_pPawnEnv;
|
||||||
notify();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (g_pSourcePawn2 != NULL)
|
g_pPawnEnv = NULL;
|
||||||
{
|
g_pSourcePawn2 = NULL;
|
||||||
g_pSourcePawn2->Shutdown();
|
g_pSourcePawn = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pJIT->CloseLibrary();
|
g_pJIT->CloseLibrary();
|
||||||
|
g_pJIT = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
SourceModBase::SourceModBase()
|
SourceModBase::SourceModBase()
|
||||||
@ -176,9 +172,6 @@ bool SourceModBase::InitializeSourceMod(char *error, size_t maxlength, bool late
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Initialize CoreConfig to get the SourceMod base path properly - this parses core.cfg */
|
|
||||||
g_CoreConfig.Initialize();
|
|
||||||
|
|
||||||
/* There will always be a path by this point, since it was force-set above. */
|
/* There will always be a path by this point, since it was force-set above. */
|
||||||
m_GotBasePath = true;
|
m_GotBasePath = true;
|
||||||
|
|
||||||
@ -202,51 +195,35 @@ bool SourceModBase::InitializeSourceMod(char *error, size_t maxlength, bool late
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
GET_SP_V1 getv1 = (GET_SP_V1)g_pJIT->GetSymbolAddress("GetSourcePawnEngine1");
|
GetSourcePawnFactoryFn factoryFn =
|
||||||
GET_SP_V2 getv2 = (GET_SP_V2)g_pJIT->GetSymbolAddress("GetSourcePawnEngine2");
|
(GetSourcePawnFactoryFn)g_pJIT->GetSymbolAddress("GetSourcePawnFactory");
|
||||||
|
|
||||||
if (getv1 == NULL)
|
if (!factoryFn) {
|
||||||
{
|
|
||||||
if (error && maxlength)
|
if (error && maxlength)
|
||||||
{
|
snprintf(error, maxlength, "SourcePawn library is out of date");
|
||||||
snprintf(error, maxlength, "JIT is too old; upgrade SourceMod");
|
|
||||||
}
|
|
||||||
ShutdownJIT();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (getv2 == NULL)
|
|
||||||
{
|
|
||||||
if (error && maxlength)
|
|
||||||
{
|
|
||||||
snprintf(error, maxlength, "JIT is too old; upgrade SourceMod");
|
|
||||||
}
|
|
||||||
ShutdownJIT();
|
ShutdownJIT();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_pSourcePawn = getv1();
|
ISourcePawnFactory *factory = factoryFn(SOURCEPAWN_API_VERSION);
|
||||||
g_pSourcePawn2 = getv2();
|
if (!factory) {
|
||||||
|
|
||||||
if (g_pSourcePawn2->GetAPIVersion() < 3)
|
|
||||||
{
|
|
||||||
g_pSourcePawn2 = NULL;
|
|
||||||
if (error && maxlength)
|
if (error && maxlength)
|
||||||
{
|
snprintf(error, maxlength, "SourcePawn library is out of date");
|
||||||
snprintf(error, maxlength, "JIT version is out of date");
|
ShutdownJIT();
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!g_pSourcePawn2->Initialize())
|
g_pPawnEnv = factory->NewEnvironment();
|
||||||
{
|
if (!g_pPawnEnv) {
|
||||||
g_pSourcePawn2 = NULL;
|
|
||||||
if (error && maxlength)
|
if (error && maxlength)
|
||||||
{
|
snprintf(error, maxlength, "Could not create a SourcePawn environment!");
|
||||||
snprintf(error, maxlength, "JIT could not be initialized");
|
ShutdownJIT();
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
g_pSourcePawn = g_pPawnEnv->APIv1();
|
||||||
|
g_pSourcePawn2 = g_pPawnEnv->APIv2();
|
||||||
|
|
||||||
g_pSourcePawn2->SetDebugListener(logicore.debugger);
|
g_pSourcePawn2->SetDebugListener(logicore.debugger);
|
||||||
|
|
||||||
if (sm_disable_jit)
|
if (sm_disable_jit)
|
||||||
@ -276,6 +253,9 @@ void SourceModBase::StartSourceMod(bool late)
|
|||||||
|
|
||||||
InitLogicBridge();
|
InitLogicBridge();
|
||||||
|
|
||||||
|
/* Initialize CoreConfig to get the SourceMod base path properly - this parses core.cfg */
|
||||||
|
g_CoreConfig.Initialize();
|
||||||
|
|
||||||
/* Notify! */
|
/* Notify! */
|
||||||
SMGlobalClass *pBase = SMGlobalClass::head;
|
SMGlobalClass *pBase = SMGlobalClass::head;
|
||||||
while (pBase)
|
while (pBase)
|
||||||
@ -340,6 +320,8 @@ void SourceModBase::StartSourceMod(bool late)
|
|||||||
static bool g_LevelEndBarrier = false;
|
static bool g_LevelEndBarrier = false;
|
||||||
bool SourceModBase::LevelInit(char const *pMapName, char const *pMapEntities, char const *pOldLevel, char const *pLandmarkName, bool loadGame, bool background)
|
bool SourceModBase::LevelInit(char const *pMapName, char const *pMapEntities, char const *pOldLevel, char const *pLandmarkName, bool loadGame, bool background)
|
||||||
{
|
{
|
||||||
|
g_Players.MaxPlayersChanged();
|
||||||
|
|
||||||
/* If we're not loaded... */
|
/* If we're not loaded... */
|
||||||
if (!g_Loaded)
|
if (!g_Loaded)
|
||||||
{
|
{
|
||||||
|
@ -1,191 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
SRCDS_BASE = ~/srcds
|
|
||||||
HL2SDK_ORIG = ../../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../../hl2sdk-ob
|
|
||||||
HL2SDK_OB_VALVE = ../../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../../hl2sdk-l4d
|
|
||||||
HL2SDK_L4D2 = ../../../hl2sdk-l4d2
|
|
||||||
MMSOURCE17 = ../../../mmsource-central
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
PROJECT = bintools
|
|
||||||
|
|
||||||
OBJECTS = sdk/smsdk_ext.cpp extension.cpp jit_call.cpp CallWrapper.cpp CallMaker.cpp HookWrapper.cpp jit_hook.cpp
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
METAMOD = $(MMSOURCE17)/core-legacy
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
INCLUDE += -I$(MMSOURCE17)/core -I$(MMSOURCE17)/core/sourcehook
|
|
||||||
SRCDS = $(SRCDS_BASE)
|
|
||||||
GAMEFIX = 1.ep1
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
GAMEFIX = 2.ep2
|
|
||||||
override ENGSET = true
|
|
||||||
USEMETA = true
|
|
||||||
CFLAGS += -DHOOKING_ENABLED
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=4
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
GAMEFIX = 2.ep2v
|
|
||||||
override ENGSET = true
|
|
||||||
USEMETA = true
|
|
||||||
CFLAGS += -DHOOKING_ENABLED
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=5
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/l4d
|
|
||||||
GAMEFIX = 2.l4d
|
|
||||||
override ENGSET = true
|
|
||||||
USEMETA = true
|
|
||||||
CFLAGS += -DHOOKING_ENABLED
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead2"
|
|
||||||
HL2SDK = $(HL2SDK_L4D2)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=6
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/left4dead2_demo
|
|
||||||
GAMEFIX = 2.l4d2
|
|
||||||
override ENGSET = true
|
|
||||||
USEMETA = true
|
|
||||||
CFLAGS += -DHOOKING_ENABLED
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
ifeq "$(ENGINE)" "left4dead2"
|
|
||||||
LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_linux.so tier0_linux.so
|
|
||||||
else
|
|
||||||
LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
|
|
||||||
endif
|
|
||||||
|
|
||||||
LINK += $(LINK_HL2)
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
|
|
||||||
-I$(METAMOD) -I$(METAMOD)/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn \
|
|
||||||
-I$(SMSDK)/public/extensions -I$(SMSDK)/public/jit -I$(SMSDK)/public/jit/x86
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_ORANGEBOXVALVE=4 -DSE_LEFT4DEAD=5 -DSE_LEFT4DEAD2=6
|
|
||||||
else
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(SMSDK)/public -I$(SMSDK)/public/extensions -I$(SMSDK)/public/jit \
|
|
||||||
-I$(SMSDK)/public/jit/x86 -I$(SMSDK)/public/sourcepawn
|
|
||||||
endif
|
|
||||||
|
|
||||||
LINK += -m32 -ldl -lm
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -mfpmath=sse \
|
|
||||||
-msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
BIN_DIR := $(BIN_DIR).$(ENGINE)
|
|
||||||
else
|
|
||||||
BIN_DIR := $(BIN_DIR).original
|
|
||||||
endif
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LINK += -dynamiclib
|
|
||||||
BINARY = $(PROJECT).ext.$(GAMEFIX).dylib
|
|
||||||
else
|
|
||||||
LINK += -static-libgcc -shared
|
|
||||||
BINARY = $(PROJECT).ext.$(GAMEFIX).so
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)/sdk
|
|
||||||
if [ "$(USEMETA)" = "true" ]; then \
|
|
||||||
if [ "$(ENGINE)" = "left4dead2" ]; then \
|
|
||||||
ln -sf $(SRCDS)/bin/vstdlib_linux.so vstdlib_linux.so; \
|
|
||||||
ln -sf $(SRCDS)/bin/tier0_linux.so tier0_linux.so; \
|
|
||||||
else \
|
|
||||||
ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so; \
|
|
||||||
ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so; \
|
|
||||||
fi \
|
|
||||||
fi
|
|
||||||
$(MAKE) -f Makefile extension
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(USEMETA)" = "true" ] && [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply ENGINE=left4dead or ENGINE=orangebox or ENGINE=original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
extension: check $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/sdk/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
@ -1,56 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
|
||||||
# Visual Studio 2010
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bintools", "bintools.vcxproj", "{E38F65D9-74B2-4373-B46A-DBB76F579F98}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug - Dark Messiah|Win32 = Debug - Dark Messiah|Win32
|
|
||||||
Debug - Episode 1|Win32 = Debug - Episode 1|Win32
|
|
||||||
Debug - Left 4 Dead 2|Win32 = Debug - Left 4 Dead 2|Win32
|
|
||||||
Debug - Left 4 Dead|Win32 = Debug - Left 4 Dead|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box Valve|Win32 = Debug - Orange Box Valve|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - Dark Messiah|Win32 = Release - Dark Messiah|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Left 4 Dead 2|Win32 = Release - Left 4 Dead 2|Win32
|
|
||||||
Release - Left 4 Dead|Win32 = Release - Left 4 Dead|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box Valve|Win32 = Release - Orange Box Valve|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Dark Messiah|Win32.ActiveCfg = Debug - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Dark Messiah|Win32.Build.0 = Debug - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Episode 1|Win32.ActiveCfg = Debug - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Episode 1|Win32.Build.0 = Debug - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead 2|Win32.ActiveCfg = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead 2|Win32.Build.0 = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead|Win32.ActiveCfg = Debug - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead|Win32.Build.0 = Debug - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box Valve|Win32.ActiveCfg = Debug - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box Valve|Win32.Build.0 = Debug - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Dark Messiah|Win32.ActiveCfg = Release - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Dark Messiah|Win32.Build.0 = Release - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead 2|Win32.ActiveCfg = Release - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead 2|Win32.Build.0 = Release - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead|Win32.ActiveCfg = Release - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead|Win32.Build.0 = Release - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box Valve|Win32.ActiveCfg = Release - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box Valve|Win32.Build.0 = Release - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,154 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{E38F65D9-74B2-4373-B46A-DBB76F579F98}</ProjectGuid>
|
|
||||||
<RootNamespace>bintools</RootNamespace>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<TargetName>bintools.ext</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<TargetName>bintools.ext</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>
|
|
||||||
</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\jit;..\..\..\public\jit\x86;..\..\..\public\extensions;..\..\..\public\sourcepawn;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;BINTOOLS_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;ORANGEBOX_BUILD;HOOKING_ENABLED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="\"$(TargetFileName)\"";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<IgnoreStandardIncludePath>
|
|
||||||
</IgnoreStandardIncludePath>
|
|
||||||
<AdditionalIncludeDirectories>..\..\..\public</AdditionalIncludeDirectories>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>
|
|
||||||
</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\jit;..\..\..\public\jit\x86;..\..\..\public\extensions;..\..\..\public\sourcepawn;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;BINTOOLS_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;HOOKING_ENABLED;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="\"$(TargetFileName)\"";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<IgnoreStandardIncludePath>
|
|
||||||
</IgnoreStandardIncludePath>
|
|
||||||
<AdditionalIncludeDirectories>..\..\..\public</AdditionalIncludeDirectories>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\extension.cpp" />
|
|
||||||
<ClCompile Include="..\CallMaker.cpp" />
|
|
||||||
<ClCompile Include="..\CallWrapper.cpp" />
|
|
||||||
<ClCompile Include="..\HookWrapper.cpp" />
|
|
||||||
<ClCompile Include="..\jit_call.cpp" />
|
|
||||||
<ClCompile Include="..\jit_hook.cpp" />
|
|
||||||
<ClCompile Include="..\sdk\smsdk_ext.cpp" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\extension.h" />
|
|
||||||
<ClInclude Include="..\..\..\public\extensions\IBinTools.h" />
|
|
||||||
<ClInclude Include="..\CallMaker.h" />
|
|
||||||
<ClInclude Include="..\CallWrapper.h" />
|
|
||||||
<ClInclude Include="..\HookWrapper.h" />
|
|
||||||
<ClInclude Include="..\jit_compile.h" />
|
|
||||||
<ClInclude Include="..\sdk\smsdk_config.h" />
|
|
||||||
<ClInclude Include="..\sdk\smsdk_ext.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ResourceCompile Include="..\version.rc" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
@ -1,88 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{0318D835-E129-4fe0-9B9C-C810AC179F31}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{9021A2EF-600E-4028-AE3E-9DDA4C94264C}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resource Files">
|
|
||||||
<UniqueIdentifier>{C06F7BFF-18EE-4994-8572-D6383011354B}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="BinTools">
|
|
||||||
<UniqueIdentifier>{7BD12831-E179-4961-A3B0-BA9FCF311C7E}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="BinTools\Header Files">
|
|
||||||
<UniqueIdentifier>{2B033553-ECC7-42cc-AD11-D1D985D8BC5A}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="BinTools\Source Files">
|
|
||||||
<UniqueIdentifier>{F70EA5AC-224C-448f-A72D-11C2D06208B3}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="SourceMod SDK">
|
|
||||||
<UniqueIdentifier>{6183251D-B1E4-4cc6-93B2-A0111B2115BA}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Interfaces">
|
|
||||||
<UniqueIdentifier>{7DE81EA3-99D9-4f34-823A-B314791F3514}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\extension.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\CallMaker.cpp">
|
|
||||||
<Filter>BinTools\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\CallWrapper.cpp">
|
|
||||||
<Filter>BinTools\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\HookWrapper.cpp">
|
|
||||||
<Filter>BinTools\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\jit_call.cpp">
|
|
||||||
<Filter>BinTools\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\jit_hook.cpp">
|
|
||||||
<Filter>BinTools\Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sdk\smsdk_ext.cpp">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\extension.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\..\public\extensions\IBinTools.h">
|
|
||||||
<Filter>Resource Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CallMaker.h">
|
|
||||||
<Filter>BinTools\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CallWrapper.h">
|
|
||||||
<Filter>BinTools\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\HookWrapper.h">
|
|
||||||
<Filter>BinTools\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\jit_compile.h">
|
|
||||||
<Filter>BinTools\Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sdk\smsdk_config.h">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sdk\smsdk_ext.h">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ResourceCompile Include="..\version.rc">
|
|
||||||
<Filter>Resource Files</Filter>
|
|
||||||
</ResourceCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
|
||||||
# Visual Studio 2005
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bintools", "bintools.vcproj", "{E38F65D9-74B2-4373-B46A-DBB76F579F98}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,283 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="8.00"
|
|
||||||
Name="bintools"
|
|
||||||
ProjectGUID="{E38F65D9-74B2-4373-B46A-DBB76F579F98}"
|
|
||||||
RootNamespace="bintools"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\extensions;..\..\..\public\jit;..\..\..\public\jit\x86;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;BINTOOLS_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="1"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\bintools.ext.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\extensions;..\..\..\public\jit;..\..\..\public\jit\x86;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;BINTOOLS_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="1"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\bintools.ext.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{0318D835-E129-4fe0-9B9C-C810AC179F31}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{9021A2EF-600E-4028-AE3E-9DDA4C94264C}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{C06F7BFF-18EE-4994-8572-D6383011354B}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\version.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="BinTools"
|
|
||||||
UniqueIdentifier="{7BD12831-E179-4961-A3B0-BA9FCF311C7E}"
|
|
||||||
>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{2B033553-ECC7-42cc-AD11-D1D985D8BC5A}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\CallMaker.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\CallWrapper.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\jit_call.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{F70EA5AC-224C-448f-A72D-11C2D06208B3}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\CallMaker.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\CallWrapper.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\jit_call.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="SourceMod SDK"
|
|
||||||
UniqueIdentifier="{6183251D-B1E4-4cc6-93B2-A0111B2115BA}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Interfaces"
|
|
||||||
UniqueIdentifier="{7DE81EA3-99D9-4f34-823A-B314791F3514}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\public\extensions\IBinTools.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -1,56 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual Studio 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bintools", "bintools.vcproj", "{E38F65D9-74B2-4373-B46A-DBB76F579F98}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug - Dark Messiah|Win32 = Debug - Dark Messiah|Win32
|
|
||||||
Debug - Episode 1|Win32 = Debug - Episode 1|Win32
|
|
||||||
Debug - Left 4 Dead 2|Win32 = Debug - Left 4 Dead 2|Win32
|
|
||||||
Debug - Left 4 Dead|Win32 = Debug - Left 4 Dead|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box Valve|Win32 = Debug - Orange Box Valve|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - Dark Messiah|Win32 = Release - Dark Messiah|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Left 4 Dead 2|Win32 = Release - Left 4 Dead 2|Win32
|
|
||||||
Release - Left 4 Dead|Win32 = Release - Left 4 Dead|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box Valve|Win32 = Release - Orange Box Valve|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Dark Messiah|Win32.ActiveCfg = Debug - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Dark Messiah|Win32.Build.0 = Debug - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Episode 1|Win32.ActiveCfg = Debug - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Episode 1|Win32.Build.0 = Debug - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead 2|Win32.ActiveCfg = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead 2|Win32.Build.0 = Debug - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead|Win32.ActiveCfg = Debug - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Left 4 Dead|Win32.Build.0 = Debug - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box Valve|Win32.ActiveCfg = Debug - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box Valve|Win32.Build.0 = Debug - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Dark Messiah|Win32.ActiveCfg = Release - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Dark Messiah|Win32.Build.0 = Release - Dark Messiah|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead 2|Win32.ActiveCfg = Release - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead 2|Win32.Build.0 = Release - Left 4 Dead 2|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead|Win32.ActiveCfg = Release - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Left 4 Dead|Win32.Build.0 = Release - Left 4 Dead|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box Valve|Win32.ActiveCfg = Release - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box Valve|Win32.Build.0 = Release - Orange Box Valve|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{E38F65D9-74B2-4373-B46A-DBB76F579F98}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
File diff suppressed because it is too large
Load Diff
@ -1,156 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
SRCDS_BASE = ~/srcds
|
|
||||||
HL2SDK_ORIG = ../../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../../hl2sdk-ob
|
|
||||||
HL2SDK_OB_VALVE = ../../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../../hl2sdk-l4d
|
|
||||||
MMSOURCE17 = ../../../mmsource-1.7
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
PROJECT = clientprefs
|
|
||||||
|
|
||||||
#Uncomment for Metamod: Source enabled extension
|
|
||||||
#USEMETA = true
|
|
||||||
|
|
||||||
OBJECTS = sdk/smsdk_ext.cpp extension.cpp query.cpp cookie.cpp natives.cpp menus.cpp
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
METAMOD = $(MMSOURCE17)/core-legacy
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
SRCDS = $(SRCDS_BASE)
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=4
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=5
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/l4d
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
|
|
||||||
|
|
||||||
LINK += $(LINK_HL2)
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
|
|
||||||
-I$(METAMOD) -I$(METAMOD)/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_ORANGEBOXVALVE=4 -DSE_LEFT4DEAD=5
|
|
||||||
else
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn -I$(SMSDK)/public/extensions \
|
|
||||||
-I$(MMSOURCE17)/core/sourcehook
|
|
||||||
endif
|
|
||||||
|
|
||||||
LINK += -m32 -ldl -lm
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch \
|
|
||||||
-Wno-unused -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32 -Wno-uninitialized
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
BIN_DIR := $(BIN_DIR).$(ENGINE)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LINK += -dynamiclib
|
|
||||||
BINARY = $(PROJECT).ext.dylib
|
|
||||||
else
|
|
||||||
LINK += -static-libgcc -shared
|
|
||||||
BINARY = $(PROJECT).ext.so
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)/sdk
|
|
||||||
if [ "$(USEMETA)" = "true" ]; then \
|
|
||||||
ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so; \
|
|
||||||
ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so; \
|
|
||||||
fi
|
|
||||||
$(MAKE) -f Makefile extension
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(USEMETA)" = "true" ] && [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply ENGINE=left4dead or ENGINE=orangebox or ENGINE=original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
extension: check $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/sdk/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
|
||||||
# Visual Studio 2010
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "clientprefs", "clientprefs.vcxproj", "{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,141 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{B3E797CF-4E77-4C9D-B8A8-7589B6902206}</ProjectGuid>
|
|
||||||
<RootNamespace>clientprefs</RootNamespace>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<TargetName>clientprefs.ext</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<TargetName>clientprefs.ext</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="\"$(TargetFileName)\"";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>..\..\..\public</AdditionalIncludeDirectories>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions\"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="\"$(TargetFileName)\"";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>..\..\..\public</AdditionalIncludeDirectories>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions\"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\cookie.cpp" />
|
|
||||||
<ClCompile Include="..\extension.cpp" />
|
|
||||||
<ClCompile Include="..\menus.cpp" />
|
|
||||||
<ClCompile Include="..\natives.cpp" />
|
|
||||||
<ClCompile Include="..\query.cpp" />
|
|
||||||
<ClCompile Include="..\sdk\smsdk_ext.cpp" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\cookie.h" />
|
|
||||||
<ClInclude Include="..\extension.h" />
|
|
||||||
<ClInclude Include="..\menus.h" />
|
|
||||||
<ClInclude Include="..\query.h" />
|
|
||||||
<ClInclude Include="..\sdk\smsdk_config.h" />
|
|
||||||
<ClInclude Include="..\sdk\smsdk_ext.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ResourceCompile Include="..\version.rc" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
@ -1,65 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resource Files">
|
|
||||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="SourceMod SDK">
|
|
||||||
<UniqueIdentifier>{31958233-BB2D-4e41-A8F9-CE8A4684F436}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\cookie.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\extension.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\menus.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\natives.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\query.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sdk\smsdk_ext.cpp">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\cookie.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\extension.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\menus.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\query.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sdk\smsdk_config.h">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sdk\smsdk_ext.h">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ResourceCompile Include="..\version.rc">
|
|
||||||
<Filter>Resource Files</Filter>
|
|
||||||
</ResourceCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
|
||||||
# Visual Studio 2005
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "clientprefs", "clientprefs.vcproj", "{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,261 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="8.00"
|
|
||||||
Name="clientprefs"
|
|
||||||
ProjectGUID="{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
RootNamespace="clientprefs"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;"$(MMSOURCE17)\core\sourcehook""
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="1"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\clientprefs.ext.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;"$(MMSOURCE17)\core\sourcehook""
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="1"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\clientprefs.ext.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\cookie.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\menus.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\natives.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\query.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\cookie.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\menus.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\query.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\version.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="SourceMod SDK"
|
|
||||||
UniqueIdentifier="{31958233-BB2D-4e41-A8F9-CE8A4684F436}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual Studio 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "clientprefs", "clientprefs.vcproj", "{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,262 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="9.00"
|
|
||||||
Name="clientprefs"
|
|
||||||
ProjectGUID="{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
RootNamespace="clientprefs"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
TargetFrameworkVersion="131072"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;"$(MMSOURCE17)\core\sourcehook""
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="BINARY_NAME=\"$(TargetFileName)\""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\clientprefs.ext.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;"$(MMSOURCE17)\core\sourcehook""
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="BINARY_NAME=\"$(TargetFileName)\""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
OutputFile="$(OutDir)\clientprefs.ext.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\cookie.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\menus.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\natives.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\query.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\cookie.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\menus.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\query.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\version.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="SourceMod SDK"
|
|
||||||
UniqueIdentifier="{31958233-BB2D-4e41-A8F9-CE8A4684F436}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -1,198 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
HL2SDK_ORIG = ../../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../../hl2sdk-ob
|
|
||||||
HL2SDK_CSS = ../../../hl2sdk-css
|
|
||||||
HL2SDK_OB_VALVE = ../../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../../hl2sdk-l4d
|
|
||||||
HL2SDK_L4D2 = ../../../hl2sdk-l4d2
|
|
||||||
HL2SDK_CSGO = ../../../hl2sdk-csgo
|
|
||||||
MMSOURCE19 = ../../../mmsource-1.9
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
PROJECT = game.cstrike
|
|
||||||
|
|
||||||
#Uncomment for Metamod: Source enabled extension
|
|
||||||
USEMETA = true
|
|
||||||
|
|
||||||
OBJECTS = sdk/smsdk_ext.cpp extension.cpp natives.cpp RegNatives.cpp timeleft.cpp forwards.cpp CDetour/detours.cpp asm/asm.c
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
|
|
||||||
# Check for valid list of engines
|
|
||||||
ifneq (,$(filter original orangebox css orangeboxvalve left4dead left4dead2,$(ENGINE)))
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
GAMEFIX = 1.ep1
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
GAMEFIX = 2.ep2
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "css"
|
|
||||||
HL2SDK = $(HL2SDK_CSS)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=4
|
|
||||||
GAMEFIX = 2.css
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=5
|
|
||||||
GAMEFIX = 2.ep2v
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=6
|
|
||||||
GAMEFIX = 2.l4d
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead2"
|
|
||||||
HL2SDK = $(HL2SDK_L4D2)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=7
|
|
||||||
GAMEFIX = 2.l4d2
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "csgo"
|
|
||||||
HL2SDK = $(HL2SDK_CSGO)
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=8
|
|
||||||
GAMEFIX = 2.csgo
|
|
||||||
endif
|
|
||||||
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
METAMOD = $(MMSOURCE19)/core-legacy
|
|
||||||
else
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
METAMOD = $(MMSOURCE19)/core
|
|
||||||
endif
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LIB_EXT = dylib
|
|
||||||
HL2LIB = $(HL2SDK)/lib/mac
|
|
||||||
else
|
|
||||||
LIB_EXT = so
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
else
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
# if ENGINE is orig, OB, or L4D
|
|
||||||
ifneq (,$(filter original orangebox left4dead,$(ENGINE)))
|
|
||||||
LIB_SUFFIX = _i486.$(LIB_EXT)
|
|
||||||
else
|
|
||||||
LIB_PREFIX = lib
|
|
||||||
LIB_SUFFIX = .$(LIB_EXT)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
LINK_HL2 = $(LIB_PREFIX)vstdlib$(LIB_SUFFIX) $(LIB_PREFIX)tier0$(LIB_SUFFIX)
|
|
||||||
|
|
||||||
LINK += $(LINK_HL2)
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
|
|
||||||
-I$(METAMOD) -I$(METAMOD)/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/extensions \
|
|
||||||
-I$(SMSDK)/public/sourcepawn
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_CSS=4 -DSE_ORANGEBOXVALVE=5 \
|
|
||||||
-DSE_LEFT4DEAD=6 -DSE_LEFT4DEAD2=7 -DSE_CSGO=8
|
|
||||||
else
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
endif
|
|
||||||
|
|
||||||
LINK += -m32 -ldl -lm
|
|
||||||
|
|
||||||
CFLAGS += -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror \
|
|
||||||
-mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
BINARY = $(PROJECT).ext.$(GAMEFIX).$(LIB_EXT)
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
BIN_DIR := $(BIN_DIR).$(ENGINE)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LIB_EXT = dylib
|
|
||||||
CFLAGS += -isysroot /Developer/SDKs/MacOSX10.5.sdk
|
|
||||||
LINK += -dynamiclib -lstdc++ -mmacosx-version-min=10.5
|
|
||||||
else
|
|
||||||
LIB_EXT = so
|
|
||||||
CFLAGS += -D_LINUX
|
|
||||||
LINK += -shared
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_BIN := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)/sdk
|
|
||||||
mkdir -p $(BIN_DIR)/CDetour
|
|
||||||
mkdir -p $(BIN_DIR)/asm
|
|
||||||
if [ "$(USEMETA)" = "true" ]; then \
|
|
||||||
ln -sf $(HL2LIB)/$(LIB_PREFIX)vstdlib$(LIB_SUFFIX); \
|
|
||||||
ln -sf $(HL2LIB)/$(LIB_PREFIX)tier0$(LIB_SUFFIX); \
|
|
||||||
fi
|
|
||||||
$(MAKE) -f Makefile extension
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(USEMETA)" = "true" ] && [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply one of the following values for ENGINE:"; \
|
|
||||||
echo "left4dead2, left4dead, orangeboxvalve, css, orangebox, or original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
extension: check $(OBJ_BIN)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_BIN) $(LINK) -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/sdk/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -61,9 +61,21 @@ DETOUR_DECL_MEMBER1(DetourHandleBuy, int, const char *, weapon)
|
|||||||
|
|
||||||
#if SOURCE_ENGINE != SE_CSGO
|
#if SOURCE_ENGINE != SE_CSGO
|
||||||
DETOUR_DECL_MEMBER0(DetourWeaponPrice, int)
|
DETOUR_DECL_MEMBER0(DetourWeaponPrice, int)
|
||||||
|
#elif defined(WIN32)
|
||||||
|
DETOUR_DECL_MEMBER2(DetourWeaponPrice, int, CEconItemView *, pEconItem, int, iUnknown)
|
||||||
|
#else
|
||||||
|
DETOUR_DECL_MEMBER3(DetourWeaponPrice, int, CEconItemView *, pEconItem, int, iUnknown, float, fUnknown)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
int price = DETOUR_MEMBER_CALL(DetourWeaponPrice)();
|
|
||||||
|
|
||||||
|
#if SOURCE_ENGINE != SE_CSGO
|
||||||
|
int price = DETOUR_MEMBER_CALL(DetourWeaponPrice)();
|
||||||
|
#elif defined(WIN32)
|
||||||
|
int price = DETOUR_MEMBER_CALL(DetourWeaponPrice)(pEconItem, iUnknown);
|
||||||
|
#else
|
||||||
|
int price = DETOUR_MEMBER_CALL(DetourWeaponPrice)(pEconItem, iUnknown, fUnknown);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (lastclient == -1)
|
if (lastclient == -1)
|
||||||
return price;
|
return price;
|
||||||
|
|
||||||
@ -71,19 +83,6 @@ DETOUR_DECL_MEMBER0(DetourWeaponPrice, int)
|
|||||||
|
|
||||||
return CallPriceForward(lastclient, weapon_name, price);
|
return CallPriceForward(lastclient, weapon_name, price);
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
DETOUR_DECL_MEMBER2(DetourWeaponPrice, int, const char *, szAttribute, CEconItemView *, pEconItem)
|
|
||||||
{
|
|
||||||
int price = DETOUR_MEMBER_CALL(DetourWeaponPrice)(szAttribute, pEconItem);
|
|
||||||
|
|
||||||
if(lastclient == -1 || strcmp(szAttribute, "in game price") != 0)
|
|
||||||
return price;
|
|
||||||
|
|
||||||
const char *weapon_name = reinterpret_cast<char *>(this+weaponNameOffset);
|
|
||||||
|
|
||||||
return CallPriceForward(lastclient, weapon_name, price);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if SOURCE_ENGINE != SE_CSGO || !defined(WIN32)
|
#if SOURCE_ENGINE != SE_CSGO || !defined(WIN32)
|
||||||
DETOUR_DECL_MEMBER2(DetourTerminateRound, void, float, delay, int, reason)
|
DETOUR_DECL_MEMBER2(DetourTerminateRound, void, float, delay, int, reason)
|
||||||
@ -178,7 +177,7 @@ DETOUR_DECL_MEMBER3(DetourCSWeaponDrop, void, CBaseEntity *, weapon, bool, bDrop
|
|||||||
g_pCSWeaponDropForward->Execute(&result);
|
g_pCSWeaponDropForward->Execute(&result);
|
||||||
|
|
||||||
|
|
||||||
if (result >= Pl_Continue)
|
if (result == Pl_Continue)
|
||||||
{
|
{
|
||||||
#if SOURCE_ENGINE == SE_CSGO
|
#if SOURCE_ENGINE == SE_CSGO
|
||||||
DETOUR_MEMBER_CALL(DetourCSWeaponDrop)(weapon, vec, unknown);
|
DETOUR_MEMBER_CALL(DetourCSWeaponDrop)(weapon, vec, unknown);
|
||||||
@ -201,8 +200,15 @@ bool CreateWeaponPriceDetour()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if SOURCE_ENGINE == SE_CSGO
|
#if SOURCE_ENGINE == SE_CSGO && defined(WIN32)
|
||||||
DWeaponPrice = DETOUR_CREATE_MEMBER(DetourWeaponPrice, "GetAttributeInt");
|
void *pGetWeaponPriceAddress = GetWeaponPriceFunction();
|
||||||
|
|
||||||
|
if(!pGetWeaponPriceAddress)
|
||||||
|
{
|
||||||
|
g_pSM->LogError(myself, "GetWeaponPrice detour could not be initialized - Disabled OnGetWeaponPrice forward.");
|
||||||
|
}
|
||||||
|
|
||||||
|
DWeaponPrice = DETOUR_CREATE_MEMBER(DetourWeaponPrice, pGetWeaponPriceAddress);
|
||||||
#else
|
#else
|
||||||
DWeaponPrice = DETOUR_CREATE_MEMBER(DetourWeaponPrice, "GetWeaponPrice");
|
DWeaponPrice = DETOUR_CREATE_MEMBER(DetourWeaponPrice, "GetWeaponPrice");
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,41 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
|
||||||
# Visual Studio 2010
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cstrike", "cstrike.vcxproj", "{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug - Episode1|Win32 = Debug - Episode1|Win32
|
|
||||||
Debug - Old Metamod|Win32 = Debug - Old Metamod|Win32
|
|
||||||
Debug - Orange Box Valve|Win32 = Debug - Orange Box Valve|Win32
|
|
||||||
Debug - Orange Box|Win32 = Debug - Orange Box|Win32
|
|
||||||
Release - CS GO|Win32 = Release - CS GO|Win32
|
|
||||||
Release - Episode 1|Win32 = Release - Episode 1|Win32
|
|
||||||
Release - Old Metamod|Win32 = Release - Old Metamod|Win32
|
|
||||||
Release - Orange Box Valve|Win32 = Release - Orange Box Valve|Win32
|
|
||||||
Release - Orange Box|Win32 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Episode1|Win32.ActiveCfg = Debug - Episode1|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Episode1|Win32.Build.0 = Debug - Episode1|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Old Metamod|Win32.ActiveCfg = Debug - Old Metamod|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Old Metamod|Win32.Build.0 = Debug - Old Metamod|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Orange Box Valve|Win32.ActiveCfg = Debug - Orange Box Valve|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Orange Box Valve|Win32.Build.0 = Debug - Orange Box Valve|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Orange Box|Win32.ActiveCfg = Debug - Orange Box|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug - Orange Box|Win32.Build.0 = Debug - Orange Box|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - CS GO|Win32.ActiveCfg = Release - CS GO|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - CS GO|Win32.Build.0 = Release - CS GO|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Episode 1|Win32.ActiveCfg = Release - Episode 1|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Episode 1|Win32.Build.0 = Release - Episode 1|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Old Metamod|Win32.ActiveCfg = Release - Old Metamod|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Old Metamod|Win32.Build.0 = Release - Old Metamod|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Orange Box Valve|Win32.ActiveCfg = Release - Orange Box Valve|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Orange Box Valve|Win32.Build.0 = Release - Orange Box Valve|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Orange Box|Win32.ActiveCfg = Release - Orange Box|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release - Orange Box|Win32.Build.0 = Release - Orange Box|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,662 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug - CS GO|Win32">
|
|
||||||
<Configuration>Debug - CS GO</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug - CSS|Win32">
|
|
||||||
<Configuration>Debug - CSS</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug - Episode1|Win32">
|
|
||||||
<Configuration>Debug - Episode1</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug - Old Metamod|Win32">
|
|
||||||
<Configuration>Debug - Old Metamod</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug - Orange Box Valve|Win32">
|
|
||||||
<Configuration>Debug - Orange Box Valve</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug - Orange Box|Win32">
|
|
||||||
<Configuration>Debug - Orange Box</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release - CS GO|Win32">
|
|
||||||
<Configuration>Release - CS GO</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release - CSS|Win32">
|
|
||||||
<Configuration>Release - CSS</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release - Episode 1|Win32">
|
|
||||||
<Configuration>Release - Episode 1</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release - Old Metamod|Win32">
|
|
||||||
<Configuration>Release - Old Metamod</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release - Orange Box Valve|Win32">
|
|
||||||
<Configuration>Release - Orange Box Valve</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release - Orange Box|Win32">
|
|
||||||
<Configuration>Release - Orange Box</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{18B5ED38-DBB7-47B2-8500-5648B8C1263B}</ProjectGuid>
|
|
||||||
<RootNamespace>cstrike</RootNamespace>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'">false</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'">false</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'">true</LinkIncremental>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'">false</LinkIncremental>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'">false</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'">false</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'">true</LinkIncremental>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'">$(SolutionDir)$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'">$(Configuration)\</IntDir>
|
|
||||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'">false</LinkIncremental>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.csgo</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.ep1</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.1.ep1</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.ep2</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.ep2v</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.css</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.csgo</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.ep1</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.1.ep1</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.ep2</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.ep2v</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'">
|
|
||||||
<TargetName>game.cstrike.ext.2.css</TargetName>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Old Metamod|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDK)\public;$(HL2SDK)\public\dlls;$(HL2SDK)\public\engine;$(HL2SDK)\public\tier0;$(HL2SDK)\public\tier1;$(MMSOURCE19)\core-legacy;$(MMSOURCE19)\core-legacy\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDK)\lib\public\tier0.lib;$(HL2SDK)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release - Old Metamod|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDK)\public;$(HL2SDK)\public\dlls;$(HL2SDK)\public\engine;$(HL2SDK)\public\tier0;$(HL2SDK)\public\tier1;$(MMSOURCE19)\core-legacy;$(MMSOURCE19)\core-legacy\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDK)\lib\public\tier0.lib;$(HL2SDK)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKOB)\public;$(HL2SDKOB)\public\engine;$(HL2SDKOB)\public\game\server;$(HL2SDKOB)\public\tier0;$(HL2SDKOB)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=3;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKOB)\lib\public\tier0.lib;$(HL2SDKOB)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKOB)\public;$(HL2SDKOB)\public\engine;$(HL2SDKOB)\public\game\server;$(HL2SDKOB)\public\tier0;$(HL2SDKOB)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=3;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKOB)\lib\public\tier0.lib;$(HL2SDKOB)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Orange Box Valve|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKOBVALVE)\public;$(HL2SDKOBVALVE)\public\game\server;$(HL2SDKOBVALVE)\public\engine;$(HL2SDKOBVALVE)\public\tier0;$(HL2SDKOBVALVE)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=7;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKOBVALVE)\lib\public\tier0.lib;$(HL2SDKOBVALVE)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CSS|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKCSS)\public;$(HL2SDKCSS)\public\game\server;$(HL2SDKCSS)\public\engine;$(HL2SDKCSS)\public\tier0;$(HL2SDKCSS)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=6;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKCSS)\lib\public\tier0.lib;$(HL2SDKCSS)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release - Orange Box Valve|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKOBVALVE)\public;$(HL2SDKOBVALVE)\public\game\server;$(HL2SDKOBVALVE)\public\engine;$(HL2SDKOBVALVE)\public\tier0;$(HL2SDKOBVALVE)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=7;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKOBVALVE)\lib\public\tier0.lib;$(HL2SDKOBVALVE)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release - CSS|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKCSS)\public;$(HL2SDKCSS)\public\game\server;$(HL2SDKCSS)\public\engine;$(HL2SDKCSS)\public\tier0;$(HL2SDKCSS)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=6;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKCSS)\lib\public\tier0.lib;$(HL2SDKCSS)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug - CS GO|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKCSGO)\public;$(HL2SDKCSGO)\public\game\server;$(HL2SDKCSGO)\public\engine;$(HL2SDKCSGO)\public\tier0;$(HL2SDKCSGO)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=12;COMPILER_MSVC;COMPILER_MSVC32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKCSGO)\lib\public\tier0.lib;$(HL2SDKCSGO)\lib\public\tier1.lib;$(HL2SDKCSGO)\lib\public\interfaces.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release - CS GO|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDKCSGO)\public;$(HL2SDKCSGO)\public\game\server;$(HL2SDKCSGO)\public\engine;$(HL2SDKCSGO)\public\tier0;$(HL2SDKCSGO)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=12;COMPILER_MSVC;COMPILER_MSVC32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDKCSGO)\lib\public\tier0.lib;$(HL2SDKCSGO)\lib\public\tier1.lib;$(HL2SDKCSGO)\lib\public\interfaces.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug - Episode1|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDK)\public;$(HL2SDK)\public\dlls;$(HL2SDK)\public\engine;$(HL2SDK)\public\tier0;$(HL2SDK)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MinimalRebuild>true</MinimalRebuild>
|
|
||||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDK)\lib\public\tier0.lib;$(HL2SDK)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMT;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release - Episode 1|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>/D SE_EPISODEONE=1 /D SE_DARKMESSIAH=2 /D SE_ORANGEBOX=3 /D SE_BLOODYGOODTIME=4 /D SE_EYE=5 /D SE_CSS=6 /D SE_ORANGEBOXVALVE=7 /D SE_LEFT4DEAD=8 /D SE_LEFT4DEAD2=9 /D SE_ALIENSWARM=10 /D SE_PORTAL2=11 /D SE_CSGO=12</AdditionalOptions>
|
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
|
||||||
<AdditionalIncludeDirectories>..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\..\..\public\extensions;$(HL2SDK)\public;$(HL2SDK)\public\dlls;$(HL2SDK)\public\engine;$(HL2SDK)\public\tier0;$(HL2SDK)\public\tier1;$(MMSOURCE19)\core;$(MMSOURCE19)\core\sourcehook;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;CSTRIKE_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;SOURCE_ENGINE=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
|
||||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
|
||||||
<RuntimeTypeInfo>false</RuntimeTypeInfo>
|
|
||||||
<PrecompiledHeader>
|
|
||||||
</PrecompiledHeader>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>BINARY_NAME="$(TargetFileName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>$(HL2SDK)\lib\public\tier0.lib;$(HL2SDK)\lib\public\tier1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<OutputFile>$(OutDir)$(TargetFileName)</OutputFile>
|
|
||||||
<IgnoreSpecificDefaultLibraries>LIBC;LIBCD;LIBCMTD;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
|
||||||
<DataExecutionPrevention>
|
|
||||||
</DataExecutionPrevention>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
</Link>
|
|
||||||
<PostBuildEvent>
|
|
||||||
<Command>IF NOT "%SMOUTDIR%"=="" copy /Y "$(TargetDir)$(TargetFileName)" "%SMOUTDIR%\extensions"</Command>
|
|
||||||
</PostBuildEvent>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\extension.cpp" />
|
|
||||||
<ClCompile Include="..\forwards.cpp" />
|
|
||||||
<ClCompile Include="..\natives.cpp" />
|
|
||||||
<ClCompile Include="..\RegNatives.cpp" />
|
|
||||||
<ClCompile Include="..\timeleft.cpp" />
|
|
||||||
<ClCompile Include="..\util_cstrike.cpp" />
|
|
||||||
<ClCompile Include="..\sdk\smsdk_ext.cpp" />
|
|
||||||
<ClCompile Include="..\asm\asm.c" />
|
|
||||||
<ClCompile Include="..\CDetour\detours.cpp" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\extension.h" />
|
|
||||||
<ClInclude Include="..\forwards.h" />
|
|
||||||
<ClInclude Include="..\RegNatives.h" />
|
|
||||||
<ClInclude Include="..\timeleft.h" />
|
|
||||||
<ClInclude Include="..\util_cstrike.h" />
|
|
||||||
<ClInclude Include="..\sdk\smsdk_config.h" />
|
|
||||||
<ClInclude Include="..\sdk\smsdk_ext.h" />
|
|
||||||
<ClInclude Include="..\asm\asm.h" />
|
|
||||||
<ClInclude Include="..\CDetour\detourhelpers.h" />
|
|
||||||
<ClInclude Include="..\CDetour\detours.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
@ -1,87 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resource Files">
|
|
||||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="SourceMod SDK">
|
|
||||||
<UniqueIdentifier>{31958233-BB2D-4e41-A8F9-CE8A4684F436}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="asm">
|
|
||||||
<UniqueIdentifier>{bed40a0d-9cf0-408e-b407-b40d3e72ccd5}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="CDetour">
|
|
||||||
<UniqueIdentifier>{e6b64c8f-79f3-48fe-a66f-caaafc86710c}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\extension.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\forwards.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\natives.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\RegNatives.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\timeleft.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\util_cstrike.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\sdk\smsdk_ext.cpp">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\asm\asm.c">
|
|
||||||
<Filter>asm</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\CDetour\detours.cpp">
|
|
||||||
<Filter>CDetour</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\extension.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\forwards.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\RegNatives.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\timeleft.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\util_cstrike.h">
|
|
||||||
<Filter>Header Files</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sdk\smsdk_config.h">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\sdk\smsdk_ext.h">
|
|
||||||
<Filter>SourceMod SDK</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\asm\asm.h">
|
|
||||||
<Filter>asm</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CDetour\detourhelpers.h">
|
|
||||||
<Filter>CDetour</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\CDetour\detours.h">
|
|
||||||
<Filter>CDetour</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
@ -419,6 +419,7 @@ static cell_t CS_GetTranslatedWeaponAlias(IPluginContext *pContext, const cell_t
|
|||||||
|
|
||||||
static cell_t CS_GetWeaponPrice(IPluginContext *pContext, const cell_t *params)
|
static cell_t CS_GetWeaponPrice(IPluginContext *pContext, const cell_t *params)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (!IsValidWeaponID(params[2]))
|
if (!IsValidWeaponID(params[2]))
|
||||||
return pContext->ThrowNativeError("Invalid WeaponID passed for this game");
|
return pContext->ThrowNativeError("Invalid WeaponID passed for this game");
|
||||||
|
|
||||||
@ -426,6 +427,7 @@ static cell_t CS_GetWeaponPrice(IPluginContext *pContext, const cell_t *params)
|
|||||||
|
|
||||||
//Hard code return values for weapons that dont call GetWeaponPrice and always use default value.
|
//Hard code return values for weapons that dont call GetWeaponPrice and always use default value.
|
||||||
#if SOURCE_ENGINE == SE_CSGO
|
#if SOURCE_ENGINE == SE_CSGO
|
||||||
|
|
||||||
if (id == WEAPON_C4 || id == WEAPON_KNIFE || id == WEAPON_KNIFE_GG)
|
if (id == WEAPON_C4 || id == WEAPON_KNIFE || id == WEAPON_KNIFE_GG)
|
||||||
return 0;
|
return 0;
|
||||||
#else
|
#else
|
||||||
@ -458,23 +460,49 @@ static cell_t CS_GetWeaponPrice(IPluginContext *pContext, const cell_t *params)
|
|||||||
#if SOURCE_ENGINE == SE_CSGO
|
#if SOURCE_ENGINE == SE_CSGO
|
||||||
static ICallWrapper *pWrapper = NULL;
|
static ICallWrapper *pWrapper = NULL;
|
||||||
|
|
||||||
|
#if defined(WIN32)
|
||||||
|
if(!pWrapper)
|
||||||
|
{
|
||||||
|
void *pGetWeaponPrice = GetWeaponPriceFunction();
|
||||||
|
if(!pGetWeaponPrice)
|
||||||
|
{
|
||||||
|
return pContext->ThrowNativeError("Failed to locate function");
|
||||||
|
}
|
||||||
|
|
||||||
|
PassInfo pass[2];
|
||||||
|
PassInfo ret;
|
||||||
|
pass[0].flags = PASSFLAG_BYVAL;
|
||||||
|
pass[0].type = PassType_Basic;
|
||||||
|
pass[0].size = sizeof(CEconItemView *);
|
||||||
|
pass[1].flags = PASSFLAG_BYVAL;
|
||||||
|
pass[1].type = PassType_Basic;
|
||||||
|
pass[1].size = sizeof(int);
|
||||||
|
ret.flags = PASSFLAG_BYVAL;
|
||||||
|
ret.type = PassType_Basic;
|
||||||
|
ret.size = sizeof(int);
|
||||||
|
pWrapper = g_pBinTools->CreateCall(pGetWeaponPrice, CallConv_ThisCall, &ret, pass, 2);
|
||||||
|
}
|
||||||
|
#else
|
||||||
if (!pWrapper)
|
if (!pWrapper)
|
||||||
{
|
{
|
||||||
REGISTER_NATIVE_ADDR("GetAttributeInt",
|
REGISTER_NATIVE_ADDR("GetWeaponPrice",
|
||||||
PassInfo pass[2]; \
|
PassInfo pass[3]; \
|
||||||
PassInfo ret; \
|
PassInfo ret; \
|
||||||
pass[0].flags = PASSFLAG_BYVAL; \
|
pass[0].flags = PASSFLAG_BYVAL; \
|
||||||
pass[0].type = PassType_Basic; \
|
pass[0].type = PassType_Basic; \
|
||||||
pass[0].size = sizeof(char *); \
|
pass[0].size = sizeof(CEconItemView *); \
|
||||||
pass[1].flags = PASSFLAG_BYVAL; \
|
pass[1].flags = PASSFLAG_BYVAL; \
|
||||||
pass[1].type = PassType_Basic; \
|
pass[1].type = PassType_Basic; \
|
||||||
pass[1].size = sizeof(CEconItemView *); \
|
pass[1].size = sizeof(int); \
|
||||||
|
pass[2].flags = PASSFLAG_BYVAL; \
|
||||||
|
pass[2].type = PassType_Float; \
|
||||||
|
pass[2].size = sizeof(float); \
|
||||||
ret.flags = PASSFLAG_BYVAL; \
|
ret.flags = PASSFLAG_BYVAL; \
|
||||||
ret.type = PassType_Basic; \
|
ret.type = PassType_Basic; \
|
||||||
ret.size = sizeof(int); \
|
ret.size = sizeof(int); \
|
||||||
pWrapper = g_pBinTools->CreateCall(addr, CallConv_ThisCall, &ret, pass, 2))
|
pWrapper = g_pBinTools->CreateCall(addr, CallConv_ThisCall, &ret, pass, 3))
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
// Get a CEconItemView for the m4
|
// Get a CEconItemView for the m4
|
||||||
// Found in CCSPlayer::HandleCommand_Buy_Internal
|
// Found in CCSPlayer::HandleCommand_Buy_Internal
|
||||||
// Linux a1 - CCSPlayer *pEntity, v5 - Player Team, a3 - ItemLoadoutSlot -1 use default loadoutslot:
|
// Linux a1 - CCSPlayer *pEntity, v5 - Player Team, a3 - ItemLoadoutSlot -1 use default loadoutslot:
|
||||||
@ -552,14 +580,22 @@ static cell_t CS_GetWeaponPrice(IPluginContext *pContext, const cell_t *params)
|
|||||||
pGetView->Execute(vstk_view, &view);
|
pGetView->Execute(vstk_view, &view);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char vstk[sizeof(void *) * 2 + sizeof(char *)];
|
#if defined(WIN32)
|
||||||
|
unsigned char vstk[sizeof(void *) * 2 + sizeof(int)];
|
||||||
|
#else
|
||||||
|
unsigned char vstk[sizeof(void *) * 2 + sizeof(int) + sizeof(float)];
|
||||||
|
#endif
|
||||||
unsigned char *vptr = vstk;
|
unsigned char *vptr = vstk;
|
||||||
|
|
||||||
*(void **)vptr = info;
|
*(void **)vptr = info;
|
||||||
vptr += sizeof(void *);
|
vptr += sizeof(void *);
|
||||||
*(const char **)vptr = "in game price";
|
|
||||||
vptr += sizeof(const char *);
|
|
||||||
*(CEconItemView **)vptr = view;
|
*(CEconItemView **)vptr = view;
|
||||||
|
vptr += sizeof(CEconItemView *);
|
||||||
|
*(int *)vptr = 0;
|
||||||
|
#if !defined(WIN32)
|
||||||
|
vptr += sizeof(int);
|
||||||
|
*(float *)vptr = 1.0;
|
||||||
|
#endif
|
||||||
|
|
||||||
int price = 0;
|
int price = 0;
|
||||||
pWrapper->Execute(vstk, &price);
|
pWrapper->Execute(vstk, &price);
|
||||||
|
@ -229,6 +229,56 @@ const char *WeaponIDToAlias(int weaponID)
|
|||||||
#endif
|
#endif
|
||||||
return alias;
|
return alias;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if SOURCE_ENGINE == SE_CSGO && defined(WIN32)
|
||||||
|
void *GetWeaponPriceFunction()
|
||||||
|
{
|
||||||
|
static void *pGetWeaponPriceAddress = NULL;
|
||||||
|
|
||||||
|
if(pGetWeaponPriceAddress == NULL)
|
||||||
|
{
|
||||||
|
void *pAddress = NULL;
|
||||||
|
int offset = 0;
|
||||||
|
int callOffset = 0;
|
||||||
|
const char* byteCheck = NULL;
|
||||||
|
|
||||||
|
if(!g_pGameConf->GetMemSig("GetWeaponPrice", &pAddress) || pAddress == NULL)
|
||||||
|
{
|
||||||
|
g_pSM->LogError(myself, "Failed to get GetWeaponPrice address.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!g_pGameConf->GetOffset("GetWeaponPriceFunc", &offset))
|
||||||
|
{
|
||||||
|
g_pSM->LogError(myself, "Failed to get GetWeaponPriceFunc offset.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
byteCheck = g_pGameConf->GetKeyValue("GetWeaponPriceByteCheck");
|
||||||
|
|
||||||
|
if(byteCheck == NULL)
|
||||||
|
{
|
||||||
|
g_pSM->LogError(myself, "Failed to get GetWeaponPriceByteCheck keyvalue.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint8_t iByte = strtoul(byteCheck, NULL, 16);
|
||||||
|
|
||||||
|
if(iByte != *(uint8_t *)((intptr_t)pAddress + (offset-1)))
|
||||||
|
{
|
||||||
|
g_pSM->LogError(myself, "GetWeaponPrice Byte check failed.");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
callOffset = *(uint32_t *)((intptr_t)pAddress + offset);
|
||||||
|
|
||||||
|
pGetWeaponPriceAddress = (void *)((intptr_t)pAddress + offset + callOffset + sizeof(int));
|
||||||
|
}
|
||||||
|
|
||||||
|
return pGetWeaponPriceAddress;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int GetRealWeaponID(int weaponId)
|
int GetRealWeaponID(int weaponId)
|
||||||
{
|
{
|
||||||
#if SOURCE_ENGINE == SE_CSGO
|
#if SOURCE_ENGINE == SE_CSGO
|
||||||
|
@ -165,4 +165,6 @@ int GetFakeWeaponID(int weaponId);
|
|||||||
|
|
||||||
bool IsValidWeaponID(int weaponId);
|
bool IsValidWeaponID(int weaponId);
|
||||||
|
|
||||||
|
void *GetWeaponPriceFunction();
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,160 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
SRCDS_BASE = ~/srcds
|
|
||||||
HL2SDK_ORIG = ../../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../../hl2sdk-ob
|
|
||||||
HL2SDK_OB_VALVE = ../../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../../hl2sdk-l4d
|
|
||||||
MMSOURCE17 = ../../../mmsource-1.7
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
PROJECT = webternet
|
|
||||||
|
|
||||||
#Uncomment for Metamod: Source enabled extension
|
|
||||||
#USEMETA = true
|
|
||||||
|
|
||||||
OBJECTS = \
|
|
||||||
sdk/smsdk_ext.cpp \
|
|
||||||
extension.cpp \
|
|
||||||
curlapi.cpp
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
METAMOD = $(MMSOURCE17)/core-legacy
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
SRCDS = $(SRCDS_BASE)
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=4
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=5
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/l4d
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
|
|
||||||
|
|
||||||
LINK += $(LINK_HL2)
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
|
|
||||||
-I$(METAMOD) -I$(METAMOD)/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_ORANGEBOXVALVE=4 -DSE_LEFT4DEAD=5
|
|
||||||
else
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
endif
|
|
||||||
|
|
||||||
INCLUDE += -I$(SMSDK)/public/extensions -Icurl-src/include
|
|
||||||
|
|
||||||
LINK += -m32 -lm -ldl -lrt curl-src/Release/lib/.libs/libcurl.a
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch \
|
|
||||||
-Wno-unused -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
BIN_DIR := $(BIN_DIR).$(ENGINE)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LINK += -dynamiclib
|
|
||||||
BINARY = $(PROJECT).ext.dylib
|
|
||||||
else
|
|
||||||
LINK += -static-libgcc -shared
|
|
||||||
BINARY = $(PROJECT).ext.so
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)/sdk
|
|
||||||
if [ "$(USEMETA)" = "true" ]; then \
|
|
||||||
ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so; \
|
|
||||||
ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so; \
|
|
||||||
fi
|
|
||||||
$(MAKE) -f Makefile extension
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(USEMETA)" = "true" ] && [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply ENGINE=left4dead or ENGINE=orangebox or ENGINE=original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
extension: check $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/sdk/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual Studio 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcproj", "{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,250 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="9.00"
|
|
||||||
Name="curl"
|
|
||||||
ProjectGUID="{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
RootNamespace="curl"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
TargetFrameworkVersion="131072"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\curl-src\include;..\..\..\public\extensions;..\..\..\public\extensions"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;ORANGEBOX_BUILD;CURL_STATICLIB"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="BINARY_NAME=\"$(TargetFileName)\""
|
|
||||||
AdditionalIncludeDirectories="..\..\..\public"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="..\curl-src\lib\LIB-Debug\libcurld.lib ws2_32.lib"
|
|
||||||
OutputFile="$(OutDir)\webternet.ext.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn;..\curl-src\include;..\..\..\public\extensions"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;SDK_EXPORTS;_CRT_SECURE_NO_DEPRECATE;SOURCEMOD_BUILD;ORANGEBOX_BUILD;CURL_STATICLIB"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="BINARY_NAME=\"$(TargetFileName)\""
|
|
||||||
AdditionalIncludeDirectories="..\..\..\public"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="..\curl-src\lib\LIB-Release\libcurl.lib ws2_32.lib"
|
|
||||||
OutputFile="$(OutDir)\webternet.ext.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\curlapi.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\curlapi.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\public\extensions\IWebternet.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\version.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="SourceMod SDK"
|
|
||||||
UniqueIdentifier="{31958233-BB2D-4e41-A8F9-CE8A4684F436}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -1,155 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
SRCDS_BASE = ~/srcds
|
|
||||||
HL2SDK_ORIG = ../../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../../hl2sdk-ob
|
|
||||||
HL2SDK_OB_VALVE = ../../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../../hl2sdk-l4d
|
|
||||||
MMSOURCE17 = ../../../mmsource-1.7
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
PROJECT = geoip
|
|
||||||
|
|
||||||
#Uncomment for Metamod: Source enabled extension
|
|
||||||
#USEMETA = true
|
|
||||||
|
|
||||||
OBJECTS = sdk/smsdk_ext.cpp extension.cpp GeoIP.c
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
METAMOD = $(MMSOURCE17)/core-legacy
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
SRCDS = $(SRCDS_BASE)
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=4
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=5
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/l4d
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
|
|
||||||
|
|
||||||
LINK += $(LINK_HL2)
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
|
|
||||||
-I$(METAMOD) -I$(METAMOD)/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_ORANGEBOXVALVE=4 -DSE_LEFT4DEAD=5
|
|
||||||
else
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
endif
|
|
||||||
|
|
||||||
LINK += -m32 -ldl -lm
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -mfpmath=sse \
|
|
||||||
-msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
BIN_DIR := $(BIN_DIR).$(ENGINE)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LINK += -dynamiclib
|
|
||||||
BINARY = $(PROJECT).ext.dylib
|
|
||||||
else
|
|
||||||
LINK += -static-libgcc -shared
|
|
||||||
BINARY = $(PROJECT).ext.so
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)/sdk
|
|
||||||
if [ "$(USEMETA)" = "true" ]; then \
|
|
||||||
ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so; \
|
|
||||||
ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so; \
|
|
||||||
fi
|
|
||||||
$(MAKE) -f Makefile extension
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(USEMETA)" = "true" ] && [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply ENGINE=left4dead or ENGINE=orangebox or ENGINE=original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
extension: check $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/sdk/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
|
||||||
# Visual Studio 2005
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "geoip", "geoip.vcproj", "{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,246 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="8.00"
|
|
||||||
Name="geoip"
|
|
||||||
ProjectGUID="{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}"
|
|
||||||
RootNamespace="geoip"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;geoip_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="1"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="ws2_32.lib"
|
|
||||||
OutputFile="$(OutDir)\geoip.ext.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;geoip_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="1"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="ws2_32.lib"
|
|
||||||
OutputFile="$(OutDir)\geoip.ext.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebDeploymentTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\GeoIP.c"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\GeoIP.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\svn_version.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\version.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="SourceMod SDK"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
|
||||||
# Visual Studio 2008
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "geoip", "geoip.vcproj", "{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
@ -1,247 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="Windows-1252"?>
|
|
||||||
<VisualStudioProject
|
|
||||||
ProjectType="Visual C++"
|
|
||||||
Version="9.00"
|
|
||||||
Name="geoip"
|
|
||||||
ProjectGUID="{698EAEE7-0EFC-4017-9B88-ECCAAF42FD5F}"
|
|
||||||
RootNamespace="geoip"
|
|
||||||
Keyword="Win32Proj"
|
|
||||||
TargetFrameworkVersion="131072"
|
|
||||||
>
|
|
||||||
<Platforms>
|
|
||||||
<Platform
|
|
||||||
Name="Win32"
|
|
||||||
/>
|
|
||||||
</Platforms>
|
|
||||||
<ToolFiles>
|
|
||||||
</ToolFiles>
|
|
||||||
<Configurations>
|
|
||||||
<Configuration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="0"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;geoip_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
|
|
||||||
MinimalRebuild="true"
|
|
||||||
BasicRuntimeChecks="3"
|
|
||||||
RuntimeLibrary="1"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="4"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="BINARY_NAME=\"$(TargetFileName)\""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="ws2_32.lib"
|
|
||||||
OutputFile="$(OutDir)\geoip.ext.dll"
|
|
||||||
LinkIncremental="2"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMT"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
|
||||||
IntermediateDirectory="$(ConfigurationName)"
|
|
||||||
ConfigurationType="2"
|
|
||||||
CharacterSet="2"
|
|
||||||
WholeProgramOptimization="1"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
FavorSizeOrSpeed="1"
|
|
||||||
AdditionalIncludeDirectories="..;..\sdk;..\..\..\public;..\..\..\public\sourcepawn"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;geoip_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableEnhancedInstructionSet="0"
|
|
||||||
RuntimeTypeInfo="false"
|
|
||||||
UsePrecompiledHeader="0"
|
|
||||||
WarningLevel="3"
|
|
||||||
Detect64BitPortabilityProblems="false"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="BINARY_NAME=\"$(TargetFileName)\""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="ws2_32.lib"
|
|
||||||
OutputFile="$(OutDir)\geoip.ext.dll"
|
|
||||||
LinkIncremental="1"
|
|
||||||
IgnoreDefaultLibraryNames="LIBC;LIBCD;LIBCMTD"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
SubSystem="2"
|
|
||||||
OptimizeReferences="2"
|
|
||||||
EnableCOMDATFolding="2"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="0"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
</Configurations>
|
|
||||||
<References>
|
|
||||||
</References>
|
|
||||||
<Files>
|
|
||||||
<Filter
|
|
||||||
Name="Source Files"
|
|
||||||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
|
||||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\GeoIP.c"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Header Files"
|
|
||||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
|
||||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\extension.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\GeoIP.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\svn_version.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="Resource Files"
|
|
||||||
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
|
|
||||||
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\version.rc"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
<Filter
|
|
||||||
Name="SourceMod SDK"
|
|
||||||
>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_config.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\sdk\smsdk_ext.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
|
||||||
</Files>
|
|
||||||
<Globals>
|
|
||||||
</Globals>
|
|
||||||
</VisualStudioProject>
|
|
@ -1,162 +0,0 @@
|
|||||||
# (C)2004-2008 SourceMod Development Team
|
|
||||||
# Makefile written by David "BAILOPAN" Anderson
|
|
||||||
|
|
||||||
SMSDK = ../..
|
|
||||||
SRCDS_BASE = ~/srcds
|
|
||||||
HL2SDK_ORIG = ../../../hl2sdk
|
|
||||||
HL2SDK_OB = ../../../hl2sdk-ob
|
|
||||||
HL2SDK_OB_VALVE = ../../../hl2sdk-ob-valve
|
|
||||||
HL2SDK_L4D = ../../../hl2sdk-l4d
|
|
||||||
MMSOURCE17 = ../../../mmsource-1.7
|
|
||||||
MYSQL = ../../../mysql-5.0
|
|
||||||
|
|
||||||
#####################################
|
|
||||||
### EDIT BELOW FOR OTHER PROJECTS ###
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
PROJECT = dbi.mysql
|
|
||||||
|
|
||||||
#Uncomment for Metamod: Source enabled extension
|
|
||||||
#USEMETA = true
|
|
||||||
|
|
||||||
OBJECTS = sdk/smsdk_ext.cpp extension.cpp \
|
|
||||||
mysql/MyBasicResults.cpp mysql/MyDatabase.cpp \
|
|
||||||
mysql/MyBoundResults.cpp mysql/MyDriver.cpp \
|
|
||||||
mysql/MyStatement.cpp
|
|
||||||
|
|
||||||
##############################################
|
|
||||||
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
|
|
||||||
##############################################
|
|
||||||
|
|
||||||
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
|
|
||||||
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
|
|
||||||
C_GCC4_FLAGS = -fvisibility=hidden
|
|
||||||
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
|
|
||||||
CPP = gcc
|
|
||||||
|
|
||||||
override ENGSET = false
|
|
||||||
ifeq "$(ENGINE)" "original"
|
|
||||||
HL2SDK = $(HL2SDK_ORIG)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/linux_sdk
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=1
|
|
||||||
METAMOD = $(MMSOURCE17)/core-legacy
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/dlls
|
|
||||||
SRCDS = $(SRCDS_BASE)
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangebox"
|
|
||||||
HL2SDK = $(HL2SDK_OB)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=3
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "orangeboxvalve"
|
|
||||||
HL2SDK = $(HL2SDK_OB_VALVE)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=4
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/orangebox
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
ifeq "$(ENGINE)" "left4dead"
|
|
||||||
HL2SDK = $(HL2SDK_L4D)
|
|
||||||
HL2PUB = $(HL2SDK)/public
|
|
||||||
HL2LIB = $(HL2SDK)/lib/linux
|
|
||||||
CFLAGS += -DSOURCE_ENGINE=5
|
|
||||||
METAMOD = $(MMSOURCE17)/core
|
|
||||||
INCLUDE += -I$(HL2SDK)/public/game/server
|
|
||||||
SRCDS = $(SRCDS_BASE)/l4d
|
|
||||||
override ENGSET = true
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
|
|
||||||
|
|
||||||
LINK += $(LINK_HL2)
|
|
||||||
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
|
|
||||||
-I$(METAMOD) -I$(METAMOD)/sourcehook -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn
|
|
||||||
else
|
|
||||||
INCLUDE += -I. -I.. -Isdk -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn -I$(MMSOURCE17)/core/sourcehook \
|
|
||||||
-I$(MYSQL)/include
|
|
||||||
CFLAGS += -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_ORANGEBOXVALVE=4 -DSE_LEFT4DEAD=5
|
|
||||||
endif
|
|
||||||
|
|
||||||
LINK += $(MYSQL)/lib/libmysqlclient_r.a -lz -lpthread
|
|
||||||
|
|
||||||
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
|
|
||||||
-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch \
|
|
||||||
-mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32
|
|
||||||
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
|
|
||||||
|
|
||||||
################################################
|
|
||||||
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
|
|
||||||
################################################
|
|
||||||
|
|
||||||
ifeq "$(DEBUG)" "true"
|
|
||||||
BIN_DIR = Debug
|
|
||||||
CFLAGS += $(C_DEBUG_FLAGS)
|
|
||||||
else
|
|
||||||
BIN_DIR = Release
|
|
||||||
CFLAGS += $(C_OPT_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq "$(USEMETA)" "true"
|
|
||||||
BIN_DIR := $(BIN_DIR).$(ENGINE)
|
|
||||||
endif
|
|
||||||
|
|
||||||
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
|
|
||||||
ifeq "$(GCC_VERSION)" "4"
|
|
||||||
CFLAGS += $(C_GCC4_FLAGS)
|
|
||||||
CPPFLAGS += $(CPP_GCC4_FLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
OS := $(shell uname -s)
|
|
||||||
ifeq "$(OS)" "Darwin"
|
|
||||||
LINK += -dynamiclib
|
|
||||||
BINARY = $(PROJECT).ext.dylib
|
|
||||||
else
|
|
||||||
LINK += -static-libgcc -shared
|
|
||||||
BINARY = $(PROJECT).ext.so
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
|
|
||||||
|
|
||||||
$(BIN_DIR)/%.o: %.cpp
|
|
||||||
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
|
|
||||||
|
|
||||||
all: check
|
|
||||||
mkdir -p $(BIN_DIR)/sdk
|
|
||||||
mkdir -p $(BIN_DIR)/mysql
|
|
||||||
if [ "$(USEMETA)" = "true" ]; then \
|
|
||||||
ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so; \
|
|
||||||
ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so; \
|
|
||||||
fi
|
|
||||||
$(MAKE) -f Makefile extension
|
|
||||||
|
|
||||||
check:
|
|
||||||
if [ "$(USEMETA)" = "true" ] && [ "$(ENGSET)" = "false" ]; then \
|
|
||||||
echo "You must supply ENGINE=left4dead or ENGINE=orangebox or ENGINE=original"; \
|
|
||||||
exit 1; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
extension: check $(OBJ_LINUX)
|
|
||||||
$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -o $(BIN_DIR)/$(BINARY)
|
|
||||||
|
|
||||||
debug:
|
|
||||||
$(MAKE) -f Makefile all DEBUG=true
|
|
||||||
|
|
||||||
default: all
|
|
||||||
|
|
||||||
clean: check
|
|
||||||
rm -rf $(BIN_DIR)/*.o
|
|
||||||
rm -rf $(BIN_DIR)/sdk/*.o
|
|
||||||
rm -rf $(BIN_DIR)/mysql/*.o
|
|
||||||
rm -rf $(BIN_DIR)/$(BINARY)
|
|
@ -1,20 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
|
||||||
# Visual Studio 2005
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sm_mysql", "sm_mysql.vcproj", "{B3E797CF-4E77-4C9D-B8A8-7589B6902206}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Win32 = Debug|Win32
|
|
||||||
Release|Win32 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{B3E797CF-4E77-4C9D-B8A8-7589B6902206}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user