Explanation:
There are two clients in the server, one named gene, the other one "Ene ~special characters~".
An admin issues "sm_slay Ene" and gets following error message: More than one client matched the given pattern.
What this hack will do is: Use GetCmdArg(0, ...); to get the command name "sm_slay".
Use GetCmdArgString(...); to get the arguments supplied to the command.
Use GetLastProcessTargetString(...); (which was implemented in this commit) to retrieve the arguments that were passed to the last ProcessTargetString call.
It will then pass this data to the DynamicTargeting plugin through its AmbiguousMenu native.
The plugin will open up a menu on the client and list all targets which match the pattern that was supplied to ProcessTargetString.
If the client selects a menu entry, FakeClientCommand will be used to re-execute the command with the correct target.
* Add natives to work with 64 bit Protobuf values
* Fix linux build
* FIX alignment requirements
* FIX alignment requirements V2
* Remove legacy API
* Inattention
This has been another constant source of confusion since the C99 ones were added to the strftime documentation we link.
It'd be nice to have a consistent implementation inside SM in the future.
* More TR natives
* Fix small typo
* Fix another typo
* Fix TR_AllSolid description
* Change Disp to Displacement
* Reorder params in TR_GetSurfaceName
* Fix TR_GetSurfaceName
* Another fix for TR_GetSurfaceName -_-
* Change if block to switch
* Make handle first param in TR_GetSurfaceName
* Reorder TR_GetStartPosition params
* Make TranslatePartitionFlags static
* Change tabs used for formatting to spaces
* Change inline comment style to be consistent with rest of file
The `TopMenu` methodmap natives weren't marked as optional if the extension was optional like the other normal natives.
The `Regex` natives weren't marked as optional at all before if the regex extension was included optionally.
This makes the error message cleaner in case topmenus aren't loaded.
```
adminmenu.smx (Admin Menu): Required extension "TopMenus" file("topmenus.ext") not running
basebans.smx (Basic Ban Commands): Native "TopMenu.Display" was not found
```
* Match old DataPack behavior when overwriting data
* Make RemoveItem more flexible
* Ditch implied RemoveItem behavior & asher fixes
* KyleS nits - but fixed before he says them
* Add back implicit behavior
* Update CDataPack.cpp
Committing to the spec.
* Update CDataPack.h
* fixup removing last item if explicitly requested
* Fix logic for accepting pack pos, rather than index
* Fixup IsReadable
* headache is over now
* Add profiler methodmap
* No tag mismatches here
thanks pm
* Lets fix some documentation while we're here.
* Use proper methodmap documentation style
Across sm we use `//` for methodmap docs, so lets just keep this consistent