RSSy MYGO.pl Opublikowano Luty 13, 2022 o 09:22 RSSy Udostępnij Opublikowano Luty 13, 2022 o 09:22 Hello! Can someone help me to add access to this plugin only on the "x" flag, and if the one who does not have this flag uses the command to display a colored message [TAG] You do not have access to this command! PHP Code: #include <amxmodx> #include <amxmisc> #include <cstrike> #include <engine> #include <hamsandwich> #include <colorchat> #include <fakemeta> native fcs_get_user_credits( id ) native fcs_set_user_credits( id, amount ) new g_bitOwned_M4A1[ 33 ], g_iEquipped_M4A1[ 33 ] new g_bitOwned_AK47[ 33 ], g_iEquipped_AK47[ 33 ] new g_bitOwned_AWP[ 33 ], g_iEquipped_AWP[ 33 ] new g_bitOwned_Deagle[ 33 ], g_iEquipped_Deagle[ 33 ] new g_bitOwned_Knife[ 33 ], g_iEquipped_Knife[ 33 ] #define BIT(%0) (1<<%0) new g_iHisMenu[ 33 ] enum _:skin_e { ITEM_NAME[ 32 ], ITEM_CREDITS, ITEM_MODEL[ 64 ] } new const M4A1_Stuff[][ skin_e ] = { { "Default M4A1" }, { "M4A1 | Decimator", 250, "models/alexandru/m4a1/m4a1_decimator.mdl" }, { "M4A1 | Tiger", 250, "models/alexandru/m4a1/m4a1_tiger.mdl" }, { "M4A1 | Assimov", 250, "models/alexandru/m4a1/m4a1_assimov.mdl" }, { "M4A1 | Eswc", 250, "models/alexandru/m4a1/m4a1_eswc.mdl" }, { "M4A1 | Freez", 250, "models/alexandru/m4a1/m4a1_freeze.mdl" } } new const AK47_Stuff[][ skin_e ] = { { "Default AK47" }, { "AK47 | Arckos", 250, "models/alexandru/ak47/ak47_arckos.mdl" }, { "AK47 | Blue Wolf", 250, "models/alexandru/ak47/ak47_bluewolf.mdl" }, { "AK47 | Challenger", 250, "models/alexandru/ak47/ak47_challenger.mdl" }, { "AK47 | Furious Peacock", 250, "models/alexandru/ak47/ak47_furious_peacock.mdl" }, { "AK47 | Jackcal", 250, "models/alexandru//ak47/ak47_jackcal.mdl" } } new const AWP_Stuff[][ skin_e ] = { { "Default AWP" }, { "AWP | Dragon Lore", 500, "models/alexandru/awp/awp_dlore.mdl" }, { "AWP | Blue Wolf", 500, "models/alexandru/awp/awp_bluewolf.mdl" }, { "AWP | Brotherhodd", 500, "models/alexandru/awp/awp_brotherhodd.mdl" }, { "AWP | Fade", 700, "models/alexandru/awp/awp_fade.mdl" }, { "AWP | Starkeepersticker", 500, "models/alexandru/awp/awp_starkeepersticker.mdl" } } new const Deagle_Stuff[][ skin_e ] = { { "Default Deagle" }, { "DEAGLE | Ghost", 150, "models/alexandru/deagle/deagle_ghost.mdl" }, { "DEAGLE | Jungle", 150, "models/alexandru/deagle/deagle_jungle.mdl" }, { "DEAGLE | Kaneki", 150, "models/alexandru/deagle/deagle_kaneki.mdl" }, { "DEAGLE | Salient", 150, "models/alexandru/deagle/deagle_salient.mdl" }, { "DEAGLE | Utopiandreams", 150, "models/alexandru/deagle/deagle_utopiandreams.mdl" } } new const Knife_Stuff[][ skin_e ] = { { "Default Knife" }, { "M9 BAYONET | Fade", 700, "models/alexandru/knife/m9_fade.mdl" }, { "M9 BAYONET | Gamma Doppler", 700, "models/alexandru/knife/m9_gamma_doppler.mdl" }, { "M9 BAYONET | Dragon Lore", 700, "models/alexandru/knife/m9_lore.mdl" }, { "M9 BAYONET | Neon", 700, "models/alexandru/knife/m9_neon.mdl" }, { "M9 BAYONET | Stickerbomb", 700, "models/alexandru/knife/m9_stickerbomb.mdl" } } new const g_szWeaponHeader[][] = { "M4A1", "Ak47", "AWP", "Deagle", "Knife" } public plugin_init() { register_plugin( "BuySkin Menu", "1.0", "JocA" ) RegisterHam( Ham_Item_Deploy, "weapon_m4a1", "CM4A1_Deploy_Post", true ) RegisterHam( Ham_Item_Deploy, "weapon_ak47", "CAK47_Deploy_Post", true ) RegisterHam( Ham_Item_Deploy, "weapon_awp", "CAWP_Deploy_Post", true ) RegisterHam( Ham_Item_Deploy, "weapon_deagle", "CDeagle_Deploy_Post", true ) RegisterHam( Ham_Item_Deploy, "weapon_knife", "CKnife_Deploy_Post", true ) register_clcmd( "say /buyskin", "buy_skin_pre" ) } public plugin_precache() { for( new i = 1; i < sizeof M4A1_Stuff; i++) precache_model( M4A1_Stuff[ i ][ ITEM_MODEL ] ) for( new i = 1; i < sizeof AK47_Stuff; i++) precache_model( AK47_Stuff[ i ][ ITEM_MODEL ] ) for( new i = 1; i < sizeof AWP_Stuff; i++) precache_model( AWP_Stuff[ i ][ ITEM_MODEL ] ) for( new i = 1; i < sizeof Deagle_Stuff; i++) precache_model( Deagle_Stuff[ i ][ ITEM_MODEL ] ) for( new i = 1; i < sizeof Knife_Stuff; i++) precache_model( Knife_Stuff[ i ][ ITEM_MODEL ] ) } public client_putinserver( id ) { g_iHisMenu[ id ] = -1 g_iEquipped_M4A1[ id ] = 0; g_bitOwned_M4A1[ id ] = 0 g_iEquipped_AK47[ id ] = 0; g_bitOwned_AK47[ id ] = 0 g_iEquipped_AWP[ id ] = 0; g_bitOwned_AWP[ id ] = 0 g_iEquipped_Deagle[ id ] = 0; g_bitOwned_Deagle[ id ] = 0 g_iEquipped_Knife[ id ] = 0; g_bitOwned_Knife[ id ] = 0 } public client_disconnected( id ) { g_iHisMenu[ id ] = -1 } public buy_skin_pre( id ) { new menu = menu_create( "Buy Skin Menu", "handle_pre" ) menu_additem( menu, "M4A1" ) menu_additem( menu, "AK47" ) menu_additem( menu, "AWP" ) menu_additem( menu, "Deagle" ) menu_additem( menu, "Knife" ) menu_display( id, menu ) return PLUGIN_HANDLED } public handle_pre( id, menu, item ) { if( item == MENU_EXIT ) { menu_destroy( menu ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } g_iHisMenu[ id ] = item show_skins( id, item ) menu_destroy( menu ) return PLUGIN_HANDLED } public show_skins( id, weapon ) { new name[ 100 ] formatex( name, charsmax( name ), "%s Skins", g_szWeaponHeader[ weapon ] ) new menu = menu_create( name, "handle_weapon" ) for( new i; i < 6; i++ ) { new mitem[ 150 ] switch( g_iHisMenu[ id ] ) { case 0: formatex( mitem, charsmax( mitem ), "%s\y [ %d Credits] %s", M4A1_Stuff[ i ][ ITEM_NAME ], M4A1_Stuff[ i ][ ITEM_CREDITS ], g_bitOwned_M4A1[ id ] & BIT( i ) ? "\r[ OWNED ]":"" ) case 1: formatex( mitem, charsmax( mitem ), "%s\y [ %d Credits] %s", AK47_Stuff[ i ][ ITEM_NAME ], AK47_Stuff[ i ][ ITEM_CREDITS ], g_bitOwned_AK47[ id ] & BIT( i ) ? "\r[ OWNED ]":"" ) case 2: formatex( mitem, charsmax( mitem ), "%s\y [ %d Credits] %s", AWP_Stuff[ i ][ ITEM_NAME ], AWP_Stuff[ i ][ ITEM_CREDITS ], g_bitOwned_AWP[ id ] & BIT( i ) ? "\r[ OWNED ]":"" ) case 3: formatex( mitem, charsmax( mitem ), "%s\y [ %d Credits] %s", Deagle_Stuff[ i ][ ITEM_NAME ], Deagle_Stuff[ i ][ ITEM_CREDITS ], g_bitOwned_Deagle[ id ] & BIT( i ) ? "\r[ OWNED ]":"" ) case 4: formatex( mitem, charsmax( mitem ), "%s\y [ %d Credits] %s", Knife_Stuff[ i ][ ITEM_NAME ], Knife_Stuff[ i ][ ITEM_CREDITS ], g_bitOwned_Knife[ id ] & BIT( i ) ? "\r[ OWNED ]":"" ) } new Pos if( ( Pos = contain( mitem, "[" ) ) != -1 && i == 0 ) mitem[Pos] = EOS //removing [credits] for default skin menu_additem( menu, mitem ) } menu_display( id, menu ) return PLUGIN_HANDLED } public handle_weapon( id, menu, item ) { if( item == MENU_EXIT ) { buy_skin_pre( id ) menu_destroy( menu ) return PLUGIN_HANDLED } switch( g_iHisMenu[ id ] ) { case 0: { if( !( g_bitOwned_M4A1[ id ] & BIT( item ) ) && item ) { if( fcs_get_user_credits( id ) >= M4A1_Stuff[ item ][ ITEM_CREDITS ] ) { g_bitOwned_M4A1[ id ] |= BIT( item ) ColorChat( id, BLUE, "^4[BuySkin]^1 You bought^3 %s^4 [ %d Credits]", M4A1_Stuff[ item ][ ITEM_NAME ], M4A1_Stuff[ item ][ ITEM_CREDITS ] ) fcs_set_user_credits( id, fcs_get_user_credits( id ) - M4A1_Stuff[ item ][ ITEM_CREDITS ] ) } else { ColorChat( id, BLUE, "^4[BuySkin]^1 You don't have enough credits." ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } } else ColorChat( id, BLUE, "^4[BuySkin]^1 You are now using^3 %s^1 skin!", M4A1_Stuff[ item ][ ITEM_NAME ] ) g_iEquipped_M4A1[ id ] = item if( is_user_alive( id ) ) { new pActiveItem = get_pdata_cbase(id, 373, 5) if( is_valid_ent( pActiveItem ) && cs_get_weapon_id( pActiveItem ) == CSW_M4A1 ) { ExecuteHamB( Ham_Item_Holster, pActiveItem, 0 ) ExecuteHamB( Ham_Item_Deploy, pActiveItem ) } } } case 1: { if( !( g_bitOwned_AK47[ id ] & BIT( item ) ) && item ) { if( fcs_get_user_credits( id ) >= AK47_Stuff[ item ][ ITEM_CREDITS ] ) { g_bitOwned_AK47[ id ] |= BIT( item ) ColorChat( id, BLUE, "^4[BuySkin]^1 You bought^3 %s^4 [ %d Credits]", AK47_Stuff[ item ][ ITEM_NAME ], AK47_Stuff[ item ][ ITEM_CREDITS ] ) fcs_set_user_credits( id, fcs_get_user_credits( id ) - AK47_Stuff[ item ][ ITEM_CREDITS ] ) } else { ColorChat( id, BLUE, "^4[BuySkin]^1 You don't have enough credits." ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } } else ColorChat( id, BLUE, "^4[BuySkin]^1 You are now using^3 %s^1 skin!", AK47_Stuff[ item ][ ITEM_NAME ] ) g_iEquipped_AK47[ id ] = item if( is_user_alive( id ) ) { new pActiveItem = get_pdata_cbase(id, 373, 5) if( is_valid_ent( pActiveItem ) && cs_get_weapon_id( pActiveItem ) == CSW_AK47 ) { ExecuteHamB( Ham_Item_Holster, pActiveItem, 0 ) ExecuteHamB( Ham_Item_Deploy, pActiveItem ) } } } case 2: { if( !( g_bitOwned_AWP[ id ] & BIT( item ) ) && item ) { if( fcs_get_user_credits( id ) >= AWP_Stuff[ item ][ ITEM_CREDITS ] ) { g_bitOwned_AWP[ id ] |= BIT( item ) ColorChat( id, BLUE, "^4[BuySkin]^1 You bought^3 %s^4 [ %d Credits]", AWP_Stuff[ item ][ ITEM_NAME ], AWP_Stuff[ item ][ ITEM_CREDITS ] ) fcs_set_user_credits( id, fcs_get_user_credits( id ) - AWP_Stuff[ item ][ ITEM_CREDITS ] ) } else { ColorChat( id, BLUE, "^4[BuySkin]^1 You don't have enough credits." ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } } else ColorChat( id, BLUE, "^4[BuySkin]^1 You are now using^3 %s^1 skin!", AWP_Stuff[ item ][ ITEM_NAME ] ) g_iEquipped_AWP[ id ] = item if( is_user_alive( id ) ) { new pActiveItem = get_pdata_cbase(id, 373, 5) if( is_valid_ent( pActiveItem ) && cs_get_weapon_id( pActiveItem ) == CSW_AWP ) { ExecuteHamB( Ham_Item_Holster, pActiveItem, 0 ) ExecuteHamB( Ham_Item_Deploy, pActiveItem ) } } } case 3: { if( !( g_bitOwned_Deagle[ id ] & BIT( item ) ) && item ) { if( fcs_get_user_credits( id ) >= Deagle_Stuff[ item ][ ITEM_CREDITS ] ) { g_bitOwned_Deagle[ id ] |= BIT( item ) ColorChat( id, BLUE, "^4[BuySkin]^1 You bought^3 %s^4 [ %d Credits]", Deagle_Stuff[ item ][ ITEM_NAME ], Deagle_Stuff[ item ][ ITEM_CREDITS ] ) fcs_set_user_credits( id, fcs_get_user_credits( id ) - Deagle_Stuff[ item ][ ITEM_CREDITS ] ) } else { ColorChat( id, BLUE, "^4[BuySkin]^1 You don't have enough credits." ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } } else ColorChat( id, BLUE, "^4[BuySkin]^1 You are now using^3 %s^1 skin!", Deagle_Stuff[ item ][ ITEM_NAME ] ) g_iEquipped_Deagle[ id ] = item if( is_user_alive( id ) ) { new pActiveItem = get_pdata_cbase(id, 373, 5) if( is_valid_ent( pActiveItem ) && cs_get_weapon_id( pActiveItem ) == CSW_DEAGLE ) { ExecuteHamB( Ham_Item_Holster, pActiveItem, 0 ) ExecuteHamB( Ham_Item_Deploy, pActiveItem ) } } } case 4: { if( !( g_bitOwned_Knife[ id ] & BIT( item ) ) && item ) { if( fcs_get_user_credits( id ) >= Knife_Stuff[ item ][ ITEM_CREDITS ] ) { g_bitOwned_Knife[ id ] |= BIT( item ) ColorChat( id, BLUE, "^4[BuySkin]^1 You bought^3 %s^4 [ %d Credits]", Knife_Stuff[ item ][ ITEM_NAME ], Knife_Stuff[ item ][ ITEM_CREDITS ] ) fcs_set_user_credits( id, fcs_get_user_credits( id ) - Knife_Stuff[ item ][ ITEM_CREDITS ] ) } else { ColorChat( id, BLUE, "^4[BuySkin]^1 You don't have enough credits." ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } } else ColorChat( id, BLUE, "^4[BuySkin]^1 You are now using^3 %s^1 skin!", Knife_Stuff[ item ][ ITEM_NAME ] ) g_iEquipped_Knife[ id ] = item if( is_user_alive( id ) ) { new pActiveItem = get_pdata_cbase(id, 373, 5) if( is_valid_ent( pActiveItem ) && cs_get_weapon_id( pActiveItem ) == CSW_KNIFE ) { ExecuteHamB( Ham_Item_Holster, pActiveItem, 0 ) ExecuteHamB( Ham_Item_Deploy, pActiveItem ) } } } } menu_destroy( menu ) g_iHisMenu[ id ] = -1 return PLUGIN_HANDLED } public CM4A1_Deploy_Post(iEntity) { new id = get_pdata_cbase( iEntity, 41, 4 ) new iwpn = g_iEquipped_M4A1[ id ] if( M4A1_Stuff[ iwpn ][ ITEM_MODEL ][ 0 ] ) entity_set_string( id, EV_SZ_viewmodel, M4A1_Stuff[ iwpn ][ ITEM_MODEL ] ) } public CAK47_Deploy_Post(iEntity) { new id = get_pdata_cbase( iEntity, 41, 4 ) new iwpn = g_iEquipped_AK47[ id ] if( AK47_Stuff[ iwpn ][ ITEM_MODEL ][ 0 ] ) entity_set_string( id, EV_SZ_viewmodel, AK47_Stuff[ iwpn ][ ITEM_MODEL ] ) } public CAWP_Deploy_Post(iEntity) { new id = get_pdata_cbase( iEntity, 41, 4 ) new iwpn = g_iEquipped_AWP[ id ] if( AWP_Stuff[ iwpn ][ ITEM_MODEL ][ 0 ] ) entity_set_string( id, EV_SZ_viewmodel, AWP_Stuff[ iwpn ][ ITEM_MODEL ] ) } public CDeagle_Deploy_Post(iEntity) { new id = get_pdata_cbase( iEntity, 41, 4 ) new iwpn = g_iEquipped_Deagle[ id ] if( Deagle_Stuff[ iwpn ][ ITEM_MODEL ][ 0 ] ) entity_set_string( id, EV_SZ_viewmodel, Deagle_Stuff[ iwpn ][ ITEM_MODEL ] ) } public CKnife_Deploy_Post(iEntity) { new id = get_pdata_cbase( iEntity, 41, 4 ) new iwpn = g_iEquipped_Knife[ id ] if( Knife_Stuff[ iwpn ][ ITEM_MODEL ][ 0 ] ) entity_set_string( id, EV_SZ_viewmodel, Knife_Stuff[ iwpn ][ ITEM_MODEL ] ) } Przeczytaj cały wpis Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi