PHP- Kodu:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <engine>
#define PLUGIN "Kapilari Ac Gardiyan !"
#define VERSION "1.0"
#define AUTHOR "peNgueN"
#define MAX_DOOR 1000
new const KapiEnt[] = "func_door";
new KapiSayisi;
new bool: Secilen[ MAX_DOOR ];
new bool: Boya;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd( "say /kapimenu", "KapiMenu" );
register_clcmd( "say /kapi", "KapilariAc" );
}
public KapiMenu( id )
{
if( get_user_team( id ) != 2 )
return PLUGIN_HANDLED;
if( !is_user_alive( id ) )
return PLUGIN_HANDLED;
new iMenu[ 64 ];
new menu = menu_create( "\yKapi Menu", "KapiMenuHandler" );
if( KapiSayisi == 0 ) {
formatex( iMenu, charsmax( iMenu ), "\wKapi Secin \yAim ile", KapiSayisi );
menu_additem( menu, iMenu, "1" );
}
else {
formatex( iMenu, charsmax( iMenu ), "\wKapi Secin \y[ Secili %d Kapi Var ]", KapiSayisi );
menu_additem( menu, iMenu, "1" );
formatex( iMenu, charsmax( iMenu ), "\wSecili Kapilari Ac / Kapat" );
menu_additem( menu, iMenu, "2" );
formatex( iMenu, charsmax( iMenu ), "\wSecili Kapilari Sifirla" );
menu_additem( menu, iMenu, "3" );
formatex( iMenu, charsmax( iMenu ), "\wKapilari Boya" );
menu_additem( menu, iMenu, "4" );
formatex( iMenu, charsmax( iMenu ), "\wKapilarin Boyasini Kaldir" );
menu_additem( menu, iMenu, "5" );
}
menu_display( id, menu );
return PLUGIN_HANDLED;
}
public KapiMenuHandler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new info[ 6 ], szName[ 64 ];
new access, callback;
menu_item_getinfo( menu, item, access, info, charsmax( info ), szName, charsmax( szName ), callback );
new key = str_to_num( info );
switch( key )
{
case 1:
{
if( !is_user_alive( id ) )
return PLUGIN_HANDLED;
new iKapi, Vucut, Kapi[ 64 ];
get_user_aiming( id, iKapi, Vucut );
entity_get_string( iKapi, EV_SZ_classname, Kapi, charsmax( Kapi ) );
if( !equali( Kapi, KapiEnt ) )
{
client_print( id, print_chat, "Hedefinizde Kapi Bulunmuyor.." );
KapiMenu( id );
return PLUGIN_HANDLED;
}
else if( equali( Kapi, KapiEnt ) )
{
if( Secilen[ iKapi ] )
{
client_print( id, print_chat, "Bu Kapi Zaten Secili..." );
}
else
{
Secilen[ iKapi ] = true;
KapiSayisi += 1;
client_print( id, print_chat, "Bir Kapi Sectiniz.." );
}
}
}
case 2:
{
for( new i; i < MAX_DOOR; i++ )
{
if( Secilen[ i ] )
{
dllfunc( DLLFunc_Use, i, id );
}
}
client_print( id, print_chat, "Secili Kapilar Acildi/Kapatildi.." );
}
case 3:
{
for( new i; i < MAX_DOOR; i++ )
{
if( Secilen[ i ] )
{
Secilen[ i ] = false;
}
}
KapiSayisi = 0;
client_print( id, print_chat, "Secili Sifirlandi.." );
}
case 4:
{
if( !Boya )
{
for( new i; i < MAX_DOOR; i++ )
{
if( Secilen[ i ] )
{
set_pev( i, pev_renderfx, 0 );
set_pev( i, pev_renderamt, 190.0 );
set_pev( i, pev_rendercolor, 255.0, 255.0, 255.0 );
set_pev( i, pev_rendermode, 1 );
}
}
Boya = true;
client_print( id, print_chat, "Kapilar Boyandi.." );
}
}
case 5:
{
if( Boya )
{
for( new i; i < MAX_DOOR; i++ )
{
if( Secilen[ i ] )
{
set_pev( i, pev_renderfx, 0 );
set_pev( i, pev_renderamt, 255.0 );
set_pev( i, pev_rendercolor, 0.0, 0.0, 0.0 );
set_pev( i, pev_rendermode, 0 );
}
}
Boya = false;
client_print( id, print_chat, "Kapilarin Boyasi Kaldirildi.." );
}
}
}
KapiMenu( id );
return PLUGIN_HANDLED;
}
public KapilariAc( id )
{
if( KapiSayisi == 0 )
{
client_print( id, print_chat, "Secili Kapi Bulunmuyor.." );
return PLUGIN_HANDLED;
}
if( get_user_flags( id ) != 2 )
return PLUGIN_HANDLED;
if( !is_user_alive( id ) )
return PLUGIN_HANDLED;
for( new i; i < MAX_DOOR; i++ )
{
if( Secilen[ i ] )
{
dllfunc( DLLFunc_Use, i, id );
}
}
client_print( id, print_chat, "Secili Kapilar Acildi/Kapatildi.." );
return PLUGIN_HANDLED;
}