Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[KOSZ] Plugin gunshopnie wyswietla menu


  • Zamknięty Temat jest zamknięty
1 odpowiedź w tym temacie

#1 Jcr

    Pomocny

  • Użytkownik

Reputacja: -3
Nowy

  • Postów:69
  • Lokalizacja:Wroclaw
Offline

Napisano 02.01.2015 17:20

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 }
*/

  • +
  • -
  • 0

#2 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 02.01.2015 19:31

Nazywaj tematy zgodnie z ich treścią.
Napisz ponownie temat nazywając go tak, aby każdy wiedział o co chodzi.

Jednoznacznie określ problematykę tematu, wyróżniając go spośród reszty.
Nie dodawaj zbędnych informacji, znaków, ani emotikon w nazwie tematu.

Ten temat w ciągu 24 godzin zostanie przeniesiony do kosza.
  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych