Witam, na podstawie pluginu deathrun shop (http://amxx.pl/topic...oney-drshop-pl/) zrobiłem gunshop, bo taki potrzebowałem
Mam z nim taki problem, że gdy wpisze /gunshop, nie otwiera menu
cvary w plikach są wpisane jak w pluginie
Kod poniżej, z góry dziękuję za pomoc ![]()
// includy
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#include <cstrike>
#include <money_ul>
//dzwieki + pierdoly
#pragma semicolon 1
#define PICKUP_SND "items/gunpickup2.wav"
#define ADMIN_ACCESS_CMD ADMIN_KICK
// informacje (plugin zostal przeobiony z gsshopa)
new const PLUGIN[] = "Gun Shop";
new const VERSION[] = "1";
new const AUTHOR[] = "Jcr";
//ogolne
new gGsShopOn;
new gAdvertiseCvar;
new gAdvertiseTimeCvar;
new gMsgItemPickup;
// bronie
new gDeagleCost;
new gP228Cost;
new gEliteCost;
new gGalilCost;
new gFamasCost;
new gFivesevenCost;
// zmienne
new HasDeagle[ 33 ];
new HasP228[ 33 ];
new HasElite[ 33 ];
new HasGalil[ 33 ];
new HasFamas[ 33 ];
new HasFiveseven[ 33 ];
// plugin
public plugin_init()
{
register_plugin( PLUGIN, VERSION, AUTHOR );
register_cvar( "gsshop_version", VERSION, FCVAR_SERVER | FCVAR_SPONLY );
register_logevent( "logevent_round_start", 2, "1=Round_Start" );
register_event( "DeathMsg", "Hook_Deathmessage", "a" );
register_event( "CurWeapon", "HookCurWeapon", "be", "1=1" );
RegisterHam( Ham_Player_Jump, "player", "bacon_playerJumping" );
// rejestrowanie saya
register_clcmd( "say /gunshop", "GunShop" );
register_clcmd( "say_team /gunshop", "GunShop" );
// cvaryyyyy
gGsShopOn = register_cvar( "gun_shop", "1" );
gAdvertiseCvar = register_cvar( "gun_advertise_message", "1" );
gAdvertiseTimeCvar = register_cvar( "gun_advertise_time", "26.0" );
// cvary do broni
gDeagleCost = register_cvar( "gun_deagle_cost", "31" );
gP228Cost = register_cvar( "gun_p228_cost", "31" );
gEliteCost = register_cvar( "gun_elite_cost", "31" );
gGalilCost = register_cvar( "gun_galil_cost", "31" );
gFamasCost = register_cvar( "gun_famas_cost", "31" );
gFivesevenCost = register_cvar( "gun_fiveseven_cost", "31" );
gMsgItemPickup = get_user_msgid( "ItemPickup" );
// slowniczek
register_dictionary( "GunShopLang.txt" );
}
public plugin_precache()
{
precache_sound( PICKUP_SND );
}
public plugin_cfg()
{
new iCfgDir[ 32 ], iFile[ 192 ];
get_configsdir( iCfgDir, charsmax( iCfgDir ) );
formatex( iFile, charsmax( iFile ), "%s/GunShop_Cfg.cfg", iCfgDir );
if( !file_exists( iFile ) )
{
server_print( "[gsshop] %L", LANG_SERVER, "gsshop_SVPRINT", iFile );
write_file( iFile, " ", -1 );
}
else
{
server_print( "[gsshop] %L", LANG_SERVER, "gsshop_SVPRINT_DONE", iFile );
server_cmd( "exec %s", iFile );
}
server_cmd( "sv_maxspeed 99999999.0" );
}
public client_connect( id )
{
HasDeagle[ id ] = false;
HasP228[ id ] = false;
HasElite[ id ] = false;
HasGalil[ id ] = false;
HasFamas[ id ] = false;
HasFiveseven[ id ] = false;
}
public client_disconnect( id )
{
HasDeagle[ id ] = false;
HasP228[ id ] = false;
HasElite[ id ] = false;
HasGalil[ id ] = false;
HasFamas[ id ] = false;
HasFiveseven[ id ] = false;
}
public client_putinserver( id )
{
if( get_pcvar_num( gAdvertiseCvar ) != 0 )
{
set_task( get_pcvar_float( gAdvertiseTimeCvar ), "ShowPlayerInfo", id );
}
}
public GunShop( id )
{
if( get_pcvar_num( gGsShopOn ) != 1 )
{
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_DISABLED" );
return PLUGIN_HANDLED;
}
if( !is_user_alive( id ) )
{
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_ONLY_ALIVE" );
return PLUGIN_HANDLED;
}
new kasa = cs_get_user_money_ul(id);
new szText[ 555 char ];
formatex( szText, charsmax( szText ), "%L", id, "gsshop_MENU_TITLE", VERSION, kasa);
new menu = menu_create( szText, "shop_handler" );
// bron 1
formatex( szText, charsmax( szText ), "%L", id, "gsshop_ITEM_1", get_pcvar_num( gDeagleCost ) );
menu_additem( menu, szText, "11", 0 );
// bron 2
formatex( szText, charsmax( szText ), "%L", id, "gsshop_ITEM_2", get_pcvar_num( gP228Cost ) );
menu_additem( menu, szText, "11", 0 );
// bron 3
formatex( szText, charsmax( szText ), "%L", id, "gsshop_ITEM_3", get_pcvar_num( gEliteCost ) );
menu_additem( menu, szText, "11", 0 );
// bron 4
formatex( szText, charsmax( szText ), "%L", id, "gsshop_ITEM_4", get_pcvar_num( gGalilCost ) );
menu_additem( menu, szText, "11", 0 );
// bron 5
formatex( szText, charsmax( szText ), "%L", id, "gsshop_ITEM_5", get_pcvar_num( gFamasCost ) );
menu_additem( menu, szText, "11", 0 );
// bron 6
formatex( szText, charsmax( szText ), "%L", id, "gsshop_ITEM_6", get_pcvar_num( gFivesevenCost ) );
menu_additem( menu, szText, "11", 0 );
menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
menu_display( id, menu, 0 );
return PLUGIN_CONTINUE;
}
public shop_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[ 6 ], iName[ 64 ], access, callback;
menu_item_getinfo( menu, item, access, data, charsmax( data ), iName, charsmax( iName ), callback );
new kasa = cs_get_user_money_ul(id);
new key = str_to_num( data );
switch( key )
{
//bron 1
case 1:
{
if( HasDeagle[ id ] || user_has_weapon( id, CSW_DEAGLE ) )
{
allready_have( id );
return PLUGIN_HANDLED;
}
if( kasa < get_pcvar_num( gDeagleCost ) )
{
dont_have( id );
return PLUGIN_HANDLED;
}
strip_user_weapons( id );
give_item( id, "weapon_knife" );
give_item( id, "weapon_deagle" );
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_DEAGLE_ITEM" );
HasDeagle[ id ] = true;
cs_set_user_money_ul(id, kasa - get_pcvar_num( gDeagleCost ));
emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
menu_display( id, menu, 1 );
}
//bron 2
case 2:
{
if( HasP228[ id ] || user_has_weapon( id, CSW_P228 ) )
{
allready_have( id );
return PLUGIN_HANDLED;
}
if( kasa < get_pcvar_num( gP228Cost ) )
{
dont_have( id );
return PLUGIN_HANDLED;
}
strip_user_weapons( id );
give_item( id, "weapon_knife" );
give_item( id, "weapon_p228" );
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_p228_ITEM" );
HasP228[ id ] = true;
cs_set_user_money_ul(id, kasa - get_pcvar_num( gP228Cost ));
emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
menu_display( id, menu, 1 );
}
//bron 3
case 3:
{
if( HasP228[ id ] || user_has_weapon( id, CSW_P228 ) )
{
allready_have( id );
return PLUGIN_HANDLED;
}
if( kasa < get_pcvar_num( gP228Cost ) )
{
dont_have( id );
return PLUGIN_HANDLED;
}
strip_user_weapons( id );
give_item( id, "weapon_knife" );
give_item( id, "weapon_p228" );
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_p228_ITEM" );
HasP228[ id ] = true;
cs_set_user_money_ul(id, kasa - get_pcvar_num( gP228Cost ));
emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
menu_display( id, menu, 1 );
}
//bron 4
case 4:
{
if( HasP228[ id ] || user_has_weapon( id, CSW_P228 ) )
{
allready_have( id );
return PLUGIN_HANDLED;
}
if( kasa < get_pcvar_num( gP228Cost ) )
{
dont_have( id );
return PLUGIN_HANDLED;
}
strip_user_weapons( id );
give_item( id, "weapon_knife" );
give_item( id, "weapon_p228" );
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_p228_ITEM" );
HasP228[ id ] = true;
cs_set_user_money_ul(id, kasa - get_pcvar_num( gP228Cost ));
emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
menu_display( id, menu, 1 );
}
//bron 5
case 5:
{
if( HasP228[ id ] || user_has_weapon( id, CSW_P228 ) )
{
allready_have( id );
return PLUGIN_HANDLED;
}
if( kasa < get_pcvar_num( gP228Cost ) )
{
dont_have( id );
return PLUGIN_HANDLED;
}
strip_user_weapons( id );
give_item( id, "weapon_knife" );
give_item( id, "weapon_p228" );
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_p228_ITEM" );
HasP228[ id ] = true;
cs_set_user_money_ul(id, kasa - get_pcvar_num( gP228Cost ));
emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
menu_display( id, menu, 1 );
}
//bron 6
case 6:
{
if( HasP228[ id ] || user_has_weapon( id, CSW_P228 ) )
{
allready_have( id );
return PLUGIN_HANDLED;
}
if( kasa < get_pcvar_num( gP228Cost ) )
{
dont_have( id );
return PLUGIN_HANDLED;
}
strip_user_weapons( id );
give_item( id, "weapon_knife" );
give_item( id, "weapon_p228" );
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_p228_ITEM" );
HasP228[ id ] = true;
cs_set_user_money_ul(id, kasa - get_pcvar_num( gP228Cost ));
emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
menu_display( id, menu, 1 );
}
}
return PLUGIN_HANDLED;
}
public ShowPlayerInfo( id )
{
set_hudmessage( 255, 200, 0, -1.0, 0.82, 0, 6.0, 12.0 );
show_hudmessage( id, "%L", id, "gsshop_HUD_INFO" );
}
public logevent_round_start()
{
if( get_pcvar_num( gGsShopOn ) == 1 )
{
new iPlayers[ 32 ], iNum, i, id;
get_players( iPlayers, iNum, "c" );
for( i = 0; i < iNum; i++ )
{
id = iPlayers[ i ];
HasDeagle[ id ] = false;
HasP228[ id ] = false;
HasElite[ id ] = false;
HasGalil[ id ] = false;
HasFamas[ id ] = false;
HasFiveseven[ id ] = false;
remove_task( id );
}
}
}
public Hook_Deathmessage()
{
if( get_pcvar_num( gGsShopOn ) == 1 )
{
new killer = read_data( 1 );
new victim = read_data( 2 );
if( killer == victim )
{
return PLUGIN_HANDLED;
}
HasDeagle[ victim ] = false;
HasP228[ victim ] = false;
HasElite[ victim ] = false;
HasGalil[ victim ] = false;
HasFamas[ victim ] = false;
HasFiveseven[ victim ] = false;
remove_task( victim );
}
return PLUGIN_CONTINUE;
}
stock allready_have( id )
{
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_ALLREADY_HAVE" );
}
stock dont_have( id )
{
client_print( id, print_chat, "[gsshop] %L", id, "gsshop_DONTHAVE_POINTS" );
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/


Dodatki SourceMod



Temat jest zamknięty









