Commit Graph
387 Commits
Author SHA1 Message Date
Kristian Klausen 4cba1925fd Allow plugins to suppress entity outputs (fix 5515). 2015-12-30 17:51:57 +01:00
Nicholas Hastings 23f9a1a524 Typo fix fix. 2015-12-22 16:18:53 -05:00
Nicholas Hastings 26b056d2c4 Typo fix. 2015-12-22 09:58:57 -05:00
Nicholas Hastings bd9fd43b76 Fix for Black Mesa's different GiveNamedItem prototype. 2015-12-22 09:55:15 -05:00
Nicholas Hastings 184ad9083c Fix for varint gamerules sendprops being treated improperly in Black Mesa. 2015-12-22 09:54:55 -05:00
Nicholas Hastings c5a81d7c6f Adjust for hl2sdk-bms updates. 2015-12-22 09:53:05 -05:00
Fyren cf4f500eda And use it in sdktools, too. 2015-11-18 01:37:15 +00:00
Kyle Sanderson 72edc74e8b Use present netchannel instead of cached netchannel in CHookManager::SendFile. 2015-11-07 12:51:13 -08:00
David Anderson c66d14605a Merge pull request #397 from alliedmodders/rm-old-mms
Remove code that handles long-dead Metamod:Source versions.
2015-09-18 14:38:52 -07:00
Kyle Sanderson 274e7bd329 Add FileTransfer Hooks to SDKTools (r=Drifter). 2015-09-12 13:01:33 -07:00
David Anderson df672dd8ce Remove the ability to compile against Metamod:Source versions lower than 1.8. 2015-09-09 18:54:43 -07:00
Nicholas Hastings 8fb97a6152 Add date to sm_dump_netprops_xml output. 2015-07-03 10:39:44 -04:00
Nicholas Hastings 801da2db37 Fix MSVC compile. 2015-07-03 10:38:15 -04:00
Nicholas Hastings 3ab4e4f24e Update sm_dump_netprops to include date of dump, similar to datamaps and classes dump commands. 2015-07-02 17:21:40 -04:00
Nicholas Hastings 1336d9cf5e Update date format on sm_dump_classes and sm_dump_datamaps to use the less ambiguous Y/m/d...
Instead of d/m/Y.
2015-07-02 17:21:03 -04:00
Nicholas Hastings dac3d1c988 Remove leftover debug code. 2015-05-06 22:01:39 -04:00
Nicholas Hastings 64f9aedebc Add basic support for Black Mesa.
(Basically a copy of SDK 2013's support, but against BMS SDK).
2015-05-06 21:12:13 -04:00
Yed 5694a759ce Add IsFree check to FindEntityByNetClass in SDKTools (PR #330). 2015-05-04 18:13:11 -07:00
Nicholas Hastings 2432540d6e Merge branch 'set-client-name' 2015-04-17 04:50:13 -07:00
Nicholas Hastings 16eeaf625f Enable the "name %s" command blocking on CS:GO as well. 2015-04-17 06:51:48 -04:00
Kyle Sanderson 88c4618230 Merge pull request #320 from KyleSanderson/dust
Remove Project Files from older outdated build systems.
2015-04-02 10:34:57 -07:00
Kyle Sanderson 7341bd184e Remove Project Files from older outdated build systems. 2015-04-01 19:54:34 -07:00
Nicholas Hastings 7268987461 Merge pull request #301 from alliedmodders/get-team-entity
Add GetTeamEntity native to SDKTools.
2015-04-01 22:30:18 -04:00
Nicholas Hastings 885117fb66 Add hack-fix for CS:S reverting name changes done with SetClientName. 2015-03-22 18:29:11 -04:00
Nicholas Hastings 7d795b523e Add SetClientName native. 2015-03-22 12:15:08 -07:00
Nicholas Hastings ae8efdddcb Add GetTeamEntity native to SDKTools. 2015-03-10 07:27:43 -07:00
David Anderson eaea3c927d Update upstream AMTL as a submodule. 2015-03-08 00:24:03 -08:00
David Anderson a1afa23bc4 Implement a new stack and error handling model for the SourcePawn VM.
This has three major changes to SourcePawn. First, the API now supports the concept of "exceptions". The exception state is a global property of an instance of the SourcePawn VM. Exceptions can be caught or suppressed. Many places in SourceMod have been updated to check exceptions instead of errors.

The new API obsoletes major parts of the embedder API - all but one method of invoking functions is obsoleted, and the debug interface has been scrapped. Extensions using the native API will not be affected, however, ThrowNativeError has been deprecated in favor of ReportError.

Second, the SourcePawn concept of a "stack" has been unified at the API level. A stack frame iterator now iterates over all SourcePawn invocations, rather than the topmost plugin. This makes error handling more consistent and removes another dependency on context-per-plugin.

Finally, the implementation of stack frames has been changed dramatically. Rather than maintain a complicated and expensive return pointer stack, we now rely on the implicit one provided by the CPU. The stack frame iterator now walks the JIT stack directly. This removes many unnecessary bookkeeping instructions from the generated code, in particular making the CALL instruction 40% faster.

These changes required some fair surgery to the JIT. Its error paths are now slightly more complicated, as they have to throw an exception rather than return an error code. In addition, any path that can throw an exception is now responsible for creating an "exit frame", which exists to tell the stack frame iterator about transitions from the JIT to the VM.
2015-03-04 23:45:30 -08:00
Nicholas Hastings 5f7e800444 Use new IVEngineServer::GetIServer to get IServer* on Insurgency. 2015-02-22 15:16:26 -05:00
Anthony 3558418ed7 Initializing soundEntry and using something safer than strcpy 2015-02-05 11:12:33 -08:00
Anthony ee0575bbb0 Adding EmitSoundEntry() for engines >= portal 2 2015-01-21 10:33:29 -08:00
Anthony cddae6f456 Upgrading the normal sound hook for games like CS:GO 2015-01-20 15:08:57 -08:00
Nicholas Hastings 7f0edd441e Add offset printing to datamap dumps. 2014-12-30 08:36:35 -05:00
Nicholas Hastings 0d67bcc5ba Add null-check on serverclass in gamerules lookup. 2014-12-14 15:21:54 -05:00
Nicholas Hastings 88cb74213c Add support for getting g_pGameRules without a byte signature / symbol. 2014-12-13 16:35:32 -05:00
Nicholas Hastings 939b10bd8e Refactor SDKTools to not expose gamerules ptr ptr outside of vglobals.cpp. 2014-12-13 15:48:51 -05:00
Nicholas Hastings f0dd129344 Eliminate need for FindEntityByClassname gamedata on sdk2013 and soon css/dods/hl2dm (already on tf2). 2014-10-30 19:25:26 -04:00
Nicholas Hastings 749701014d Eliminate need for sv gamedata on sdk2013 and soon css/dods/hl2dm (already on tf2). 2014-10-30 19:25:13 -04:00
Nicholas Hastings 10cee734dc Eliminate need for s_pTempEnts gamedata on sdk2013 and soon css/dods/hl2dm (already on tf2). 2014-10-30 19:24:53 -04:00
Nicholas Hastings ffa1887c48 Merge pull request #65 from powerlord/master
New functions for SDKTools to get information from game_sound files (r=psychonic).
2014-07-04 17:17:00 -04:00
Ross Bemrose 966841afbd Make sure the edict isn't free.
return GetParametersForSoundEx's return value instead of always true.
2014-07-03 14:13:36 -04:00
Ross Bemrose e1d4ed0e34 Fixed overwriting the same copy/pasted line twice instead of once per new native. 2014-07-03 13:19:19 -04:00
Nicholas Hastings 3254f6f362 Switch TF2 to use IVEngineServer::GetIServer in SDKTools to find IServer ptr. 2014-07-03 12:26:52 -04:00
Ross Bemrose d25ab6349c Commit new version of bug 5942: New functions for SDKTools to get information from game_sound files. 2014-07-03 10:20:53 -04:00
Nicholas Hastings 58158ce607 Merge pull request #40 from alliedmodders/fix-invalid-string-index
Fix FindStringIndex native not returning INVALID_STRING_INDEX when string not found (bug 6144, r=DS).
2014-06-19 14:40:16 -04:00
Nicholas Hastings 291ef6fdc4 Fix FindStringIndex native not returning INVALID_STRING_INDEX when string not found (bug 6144). 2014-06-19 11:40:01 -04:00
Nicholas Hastings 75254bbf25 Update SDKTools entity output functions to use core's GetEntityClassname instead of own. 2014-06-19 11:27:26 -04:00
Nicholas Hastings e95309a603 Add early-exit in entity output detour if entity has no classname. 2014-06-19 00:33:54 -04:00
Nicholas Hastings e7870da5ff Add ifdef section notes on endifs. 2014-06-11 23:37:02 -04:00
Nicholas Hastings a697e81427 Use updated IServerTools iface on TF2 for getting tempent list and FindEntityByClassname. 2014-06-11 22:44:42 -04:00