Code: Select all
#include <amxmodx>#include <engine>#include <fakemeta> new gi_Fwd; public plugin_precache () gi_Fwd = register_forward ( FM_KeyValue, "Foward_KeyValue" ); public plugin_init() unregister_forward ( gi_Fwd, FM_KeyValue ); public Foward_KeyValue ( const i_Entid, const i_Kvdid ){ if ( pev_valid ( i_Entid ) ) { new s_KeyName[ 12 ], s_KeyValue[ 64 ], s_KeNew[ 64 ], class[16]; get_kvd ( i_Kvdid, KV_KeyName, s_KeyName, charsmax ( s_KeyName ) ); get_kvd ( i_Kvdid, KV_Value, s_KeyValue, charsmax ( s_KeyValue ) ); get_kvd ( i_Kvdid, KV_ClassName, class, charsmax ( class ) ) formatex( s_KeNew, charsmax(s_KeNew), "0 180 0" ); if (equal(class, "func_door")) { if ( equal ( s_KeyName, "angles" ) && equal ( s_KeyValue, "0 90 0" ) ) { set_kvd ( 0, KV_KeyName, s_KeyName ); set_kvd ( 0, KV_Value, s_KeNew ); set_kvd ( 0, KV_fHandled, 0 ) dllfunc ( DLLFunc_KeyValue, i_Entid, 0 ); return FMRES_SUPERCEDE; } if ( equal ( s_KeyName, "angles" ) && equal ( s_KeyValue, "0 270 0" ) ) { set_kvd ( 0, KV_KeyName, s_KeyName ); set_kvd ( 0, KV_Value, s_KeNew ); set_kvd ( 0, KV_fHandled, 0 ) dllfunc ( DLLFunc_KeyValue, i_Entid, 0 ); return FMRES_SUPERCEDE; } } } return FMRES_IGNORED;}
P.S. Jei yra kitas būdas, būtų gerai ir pavyzdukas ;D