PHP Code:
#include < amxmodx >
#include < fakemeta >
#include < hamsandwich >
#define PLUGIN_NAME "New-Plugin"
#define PLUGIN_VERSION "0.1"
#define PLUGIN_AUTHOR "Bos93"
new const CUSTOMIZATION_FILE[] = "/models.ini";
#define IsValidPrivateData(%0) ( pev_valid( %0 ) == 2 )
const OFFSET_WEAPONOWNER = 41;
const OFFSET_LINUX_WEAPONS = 4;
const MAX_DATA = 1024;
enum _:eModelData
{
viewmodel2[ 64 ],
weaponmodel2[ 64 ]
};
new g_ModelData[ MAX_DATA ][ eModelData ];
new g_ModelDataCount;
new g_szConfigFile[ 64 ];
public plugin_precache()
{
load_customization_from_files();
}
public plugin_init( )
{
register_plugin ( PLUGIN_NAME , PLUGIN_VERSION , PLUGIN_AUTHOR );
RegisterHam( Ham_Item_Deploy, "weapon_knife", "CBaseWeapon__Deploy_Post", .Post = true );
}
public CBaseWeapon_Deploy_Post( pEntity )
{
if( !IsValidPrivateData( pEntity ) )
{
return HAM_HANDLED;
}
new pPlayer;
pPlayer = get_pdata_cbase( pEntity , OFFSET_WEAPONOWNER , OFFSET_LINUX_WEAPONS );
new sFile[ 32 ][ 2 ];
formatex( sFile[ 0 ], charsmax( sFile ), "%s.mdl", g_ModelData[ g_ModelDataCount ][ viewmodel2 ] );
formatex( sFile[ 1 ], charsmax( sFile ), "%s.mdl", g_ModelData[ g_ModelDataCount ][ weaponmodel2 ] );
set_pev( pPlayer, pev_viewmodel2, sFile[ 0 ] );
set_pev( pPlayer, pev_weaponmodel2, sFile[ 1 ] );
return HAM_IGNORED;
}
public load_customization_from_files()
{
get_localinfo("amxx_configsdir", g_szConfigFile, charsmax( g_szConfigFile ) );
add(g_szConfigFile, charsmax( g_szConfigFile ) , CUSTOMIZATION_FILE);
if( !file_exists( g_szConfigFile ) )
{
server_print( ".ini File , Not Found !" );
return;
}
new szData[512], iPos, iLen;
new sFile[ 32 ][ 2 ];
while( read_file( g_szConfigFile , iPos , szData , charsmax( szData ) , iLen ) )
{
if (iLen == 0 || ( szData[ 0 ] == '/' && szData[ 1 ] == '/' ) || szData[ 0 ] == ';' || szData[ 0 ] == '#' )
{
continue;
}
parse( szData, g_ModelData[ g_ModelDataCount ][ viewmodel2 ] , 63, g_ModelData[ g_ModelDataCount ][ weaponmodel2 ] , 63 );
g_ModelDataCount++;
get_localinfo("amxx_configsdir", g_szConfigFile, charsmax( g_szConfigFile ) );
server_cmd("exec %s", g_szConfigFile);
formatex( sFile[ 0 ], charsmax( sFile ), "models/%s.mdl", g_ModelData[ g_ModelDataCount ][ viewmodel2 ] );
formatex( sFile[ 1 ], charsmax( sFile ), "models/%s.mdl", g_ModelData[ g_ModelDataCount ][ weaponmodel2 ] );
precache_model( sFile[ 0 ] );
precache_model( sFile[ 1 ] );
}
}
Start hlds, and error O_o
mommodels/.mdl not found
ini file:
"v_knife" "p_knife"
__________________