As usual, I got bored one night and came up with an interesting concept. Instead of having to edit various functions and files to add code you found or to write in a new, complex feature, you can hook and include files to add functionality.
Stormeus' Extensible Scripts (SES) has two types of "objects" (which is just stuff it can load):
Includes are useful for adding functions that can be used by any other hooks or includes. They should contain functions, such as getting the speed of a vehicle.
Hooks add functionality to an event, like onServerStart or onPlayerMove. Instead of having to manually edit these functions in whatever file they may be, you can hook them by adding a line to an XML file.
A typical SES XML file will look like this:
<ses>
<hook>DemoHook</hook>
<hook>BasicAnticheat</hook>
<hook>JoinMessages</hook>
<include>GetVehicleVelocity</include>
</ses>
Includes are regular Squirrel files. However, hook files are different. If a function named SES_Init() is found in a hook file, it will be called. You can then use different hooking functions, like hook_onServerStart( functionPointer ), to add functionality to a server. Not only that, but each hook function will return an ID which can be used to unhook later. For example:
function myOnServerStart() { print( "good" ); }
function SES_Init()
{
local hookID = hook_onServerStart( myOnServerStart );
if( hooked_onServerStart( hookID ) )
unhook_onServerStart( hookID );
}
Download
http://stormeus.vicelegends.com/ses.zip
(https://viceunderdogs.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FJ4Wuu.png&hash=ef30f7df591434efa80d855bca0898b5db68ab95)