Cerere modificare plugin buy_vip

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
C0non
Membru, skill 0
Membru, skill 0
Posts: 38
Joined: 06 Aug 2020, 15:36
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Been thanked: 1 time

19 Sep 2021, 14:42

CyBer[N]eTicK wrote:
17 Sep 2021, 22:46
C0non wrote:
13 Sep 2021, 20:14
CyBer[N]eTicK wrote:
13 Sep 2021, 17:04


Da, nu e bine așa m-am uitat mai bine, trebuie refăcut în totalitate pluginul altfel. Degeaba înlocuiești acele native, chestia este că acuma nu mai am timp să mă ocup că altfel îl începeam de la 0, poate te ajută altcineva. Mult succes.

PS: Maxim într-o săptămână pot fii la pc dacă până atunci nu te ajută nimeni ți l-am refăcut eu. Mult succes
Multumesc mult! o sa astept
1. Am schimbat total pluginul, este altul făcut de mine, dar nu știu dacă acționează functia aceasta de mai jos respectivă.

Code: Select all

formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
2. Meniul se afișează perfect și da celor ce au flag-ul T așa am pus deoarece asa era și in plugin de mai sus.
3. Trebuie să ai plugin de credite FCS a lui askanar să meargă pluginul.
4. Dacă-ți merge perfect lasă un reply, multumesc, sper să te mulțumească.

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id) && get_user_flags(id) & ACCES_VIP) // Verificam sa fie conectat pe server si aibe flagul T
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Nu functioneaza pluginul, cand scriu /buyvip nu se intampla nimic, si nu am nici o eroare in logs. Multumesc oricum de efortul depus si de timpul acordat :)
RoyalServer 2
lexz
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 915
Joined: 02 Nov 2020, 01:57
Detinator Steam: Da
Fond eXtream: 0
Discord: lexzor#0630
Has thanked: 69 times
Been thanked: 136 times

19 Sep 2021, 14:44

mai bine

Code: Select all

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id)) // Verificam sa fie conectat pe server si aibe flagul T
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }

	if(get_user_flags(id) & ACCES_VIP)
	{
		cc_chat(id, "%s Deja ai VIP!", Tag);
		return PLUGIN_HANDLED;
	}

    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}
User avatar
CyBer[N]eTicK
Membru, skill +1
Membru, skill +1
Posts: 190
Joined: 29 May 2020, 05:35
Detinator Steam: Da
CS Status: Strong & Original
Detinator server CS: BB.BLACKGAMES.RO
SteamID: /id/cybernetick_cbk/
Fond eXtream: 0
Location: Albania, tirana
Discord: cybernetick_cbk
Has thanked: 21 times
Been thanked: 18 times
Contact:

19 Sep 2021, 18:24

C0non wrote:
19 Sep 2021, 14:42
CyBer[N]eTicK wrote:
17 Sep 2021, 22:46
C0non wrote:
13 Sep 2021, 20:14


Multumesc mult! o sa astept
1. Am schimbat total pluginul, este altul făcut de mine, dar nu știu dacă acționează functia aceasta de mai jos respectivă.

Code: Select all

formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
2. Meniul se afișează perfect și da celor ce au flag-ul T așa am pus deoarece asa era și in plugin de mai sus.
3. Trebuie să ai plugin de credite FCS a lui askanar să meargă pluginul.
4. Dacă-ți merge perfect lasă un reply, multumesc, sper să te mulțumească.

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id) && get_user_flags(id) & ACCES_VIP) // Verificam sa fie conectat pe server si aibe flagul T
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Nu functioneaza pluginul, cand scriu /buyvip nu se intampla nimic, si nu am nici o eroare in logs. Multumesc oricum de efortul depus si de timpul acordat :)
1. La mine pluginul a mers, meniul s-a afișat creditele scădeau când luam un item.
2. Îți mai repet o dată meniul se afișează celor care au flag-ul ,,T" am pus așa fiindcă așa am văzut și-n primul plugin care l-ai vrut editat.
3. Repet: Pluginul de creditele a lui askanar pus pe server să meargă.
4. Dacă nu scoate get_user_flags din handler și vezi, ți-a sat lexz o variantă a handler-ului cu o chestie în plus mai buna dacă ai deja flag-ul ,,T" meniul nu ți se afișează.
C0non
Membru, skill 0
Membru, skill 0
Posts: 38
Joined: 06 Aug 2020, 15:36
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Been thanked: 1 time

19 Sep 2021, 20:59

CyBer[N]eTicK wrote:
19 Sep 2021, 18:24
C0non wrote:
19 Sep 2021, 14:42
CyBer[N]eTicK wrote:
17 Sep 2021, 22:46


1. Am schimbat total pluginul, este altul făcut de mine, dar nu știu dacă acționează functia aceasta de mai jos respectivă.

Code: Select all

formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
2. Meniul se afișează perfect și da celor ce au flag-ul T așa am pus deoarece asa era și in plugin de mai sus.
3. Trebuie să ai plugin de credite FCS a lui askanar să meargă pluginul.
4. Dacă-ți merge perfect lasă un reply, multumesc, sper să te mulțumească.

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id) && get_user_flags(id) & ACCES_VIP) // Verificam sa fie conectat pe server si aibe flagul T
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Nu functioneaza pluginul, cand scriu /buyvip nu se intampla nimic, si nu am nici o eroare in logs. Multumesc oricum de efortul depus si de timpul acordat :)
1. La mine pluginul a mers, meniul s-a afișat creditele scădeau când luam un item.
2. Îți mai repet o dată meniul se afișează celor care au flag-ul ,,T" am pus așa fiindcă așa am văzut și-n primul plugin care l-ai vrut editat.
3. Repet: Pluginul de creditele a lui askanar pus pe server să meargă.
4. Dacă nu scoate get_user_flags din handler și vezi, ți-a sat lexz o variantă a handler-ului cu o chestie în plus mai buna dacă ai deja flag-ul ,,T" meniul nu ți se afișează.
Ok!!! ori nu m-am exprimat eu bine ori nu a-ti inteles voi. Acest plugin il voiam modificat cand un player scrie /buyvip sa cumpere vip prin credite.NU doar cei ce au flag T sa poate folosi /buyvip, ci toti playeri de pe server sa aiba acces la /buyvip
Daca doriti sa ma ajutati va-si fi recunoscator
User avatar
CyBer[N]eTicK
Membru, skill +1
Membru, skill +1
Posts: 190
Joined: 29 May 2020, 05:35
Detinator Steam: Da
CS Status: Strong & Original
Detinator server CS: BB.BLACKGAMES.RO
SteamID: /id/cybernetick_cbk/
Fond eXtream: 0
Location: Albania, tirana
Discord: cybernetick_cbk
Has thanked: 21 times
Been thanked: 18 times
Contact:

19 Sep 2021, 21:09

C0non wrote:
19 Sep 2021, 20:59
CyBer[N]eTicK wrote:
19 Sep 2021, 18:24
C0non wrote:
19 Sep 2021, 14:42


Nu functioneaza pluginul, cand scriu /buyvip nu se intampla nimic, si nu am nici o eroare in logs. Multumesc oricum de efortul depus si de timpul acordat :)
1. La mine pluginul a mers, meniul s-a afișat creditele scădeau când luam un item.
2. Îți mai repet o dată meniul se afișează celor care au flag-ul ,,T" am pus așa fiindcă așa am văzut și-n primul plugin care l-ai vrut editat.
3. Repet: Pluginul de creditele a lui askanar pus pe server să meargă.
4. Dacă nu scoate get_user_flags din handler și vezi, ți-a sat lexz o variantă a handler-ului cu o chestie în plus mai buna dacă ai deja flag-ul ,,T" meniul nu ți se afișează.
Ok!!! ori nu m-am exprimat eu bine ori nu a-ti inteles voi. Acest plugin il voiam modificat cand un player scrie /buyvip sa cumpere vip prin credite.NU doar cei ce au flag T sa poate folosi /buyvip, ci toti playeri de pe server sa aiba acces la /buyvip
Daca doriti sa ma ajutati va-si fi recunoscator

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id)) // Verificam sa fie conectat 
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Acum comanda e pliblica add discord: CyBer[N]eTicK#9999
User avatar
CyBer[N]eTicK
Membru, skill +1
Membru, skill +1
Posts: 190
Joined: 29 May 2020, 05:35
Detinator Steam: Da
CS Status: Strong & Original
Detinator server CS: BB.BLACKGAMES.RO
SteamID: /id/cybernetick_cbk/
Fond eXtream: 0
Location: Albania, tirana
Discord: cybernetick_cbk
Has thanked: 21 times
Been thanked: 18 times
Contact:

19 Sep 2021, 21:11

C0non wrote:
19 Sep 2021, 20:59
CyBer[N]eTicK wrote:
19 Sep 2021, 18:24
C0non wrote:
19 Sep 2021, 14:42


Nu functioneaza pluginul, cand scriu /buyvip nu se intampla nimic, si nu am nici o eroare in logs. Multumesc oricum de efortul depus si de timpul acordat :)
1. La mine pluginul a mers, meniul s-a afișat creditele scădeau când luam un item.
2. Îți mai repet o dată meniul se afișează celor care au flag-ul ,,T" am pus așa fiindcă așa am văzut și-n primul plugin care l-ai vrut editat.
3. Repet: Pluginul de creditele a lui askanar pus pe server să meargă.
4. Dacă nu scoate get_user_flags din handler și vezi, ți-a sat lexz o variantă a handler-ului cu o chestie în plus mai buna dacă ai deja flag-ul ,,T" meniul nu ți se afișează.
Ok!!! ori nu m-am exprimat eu bine ori nu a-ti inteles voi. Acest plugin il voiam modificat cand un player scrie /buyvip sa cumpere vip prin credite.NU doar cei ce au flag T sa poate folosi /buyvip, ci toti playeri de pe server sa aiba acces la /buyvip
Daca doriti sa ma ajutati va-si fi recunoscator

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id)) // Verificam sa fie conectat 
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Acum comanda e pliblica add discord: CyBer[N]eTicK#9999
C0non
Membru, skill 0
Membru, skill 0
Posts: 38
Joined: 06 Aug 2020, 15:36
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Been thanked: 1 time

23 Sep 2021, 03:25

CyBer[N]eTicK wrote:
19 Sep 2021, 21:11
C0non wrote:
19 Sep 2021, 20:59
CyBer[N]eTicK wrote:
19 Sep 2021, 18:24


1. La mine pluginul a mers, meniul s-a afișat creditele scădeau când luam un item.
2. Îți mai repet o dată meniul se afișează celor care au flag-ul ,,T" am pus așa fiindcă așa am văzut și-n primul plugin care l-ai vrut editat.
3. Repet: Pluginul de creditele a lui askanar pus pe server să meargă.
4. Dacă nu scoate get_user_flags din handler și vezi, ți-a sat lexz o variantă a handler-ului cu o chestie în plus mai buna dacă ai deja flag-ul ,,T" meniul nu ți se afișează.
Ok!!! ori nu m-am exprimat eu bine ori nu a-ti inteles voi. Acest plugin il voiam modificat cand un player scrie /buyvip sa cumpere vip prin credite.NU doar cei ce au flag T sa poate folosi /buyvip, ci toti playeri de pe server sa aiba acces la /buyvip
Daca doriti sa ma ajutati va-si fi recunoscator

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id)) // Verificam sa fie conectat 
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Acum comanda e pliblica add discord: CyBer[N]eTicK#9999
Pluginul nu functioneaza, merge /buyvip apare meniu dar nu iti da vip, nu te trece in user.ini, de regula trebuia sa iti da kick si sa iti puna parola in consola sau sa iti puna vip-u pe steamid, dar nu merge
User avatar
kidd0x
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 1054
Joined: 06 Oct 2018, 14:41
Detinator Steam: Da
SteamID: /id/kidd0x/
Reputatie: Utilizator neserios (tepar!)
Fond eXtream: 0
Location: Constangeles
Discord: kidd0x
Has thanked: 172 times
Been thanked: 81 times

23 Sep 2021, 15:16

C0non wrote:
23 Sep 2021, 03:25
CyBer[N]eTicK wrote:
19 Sep 2021, 21:11
C0non wrote:
19 Sep 2021, 20:59


Ok!!! ori nu m-am exprimat eu bine ori nu a-ti inteles voi. Acest plugin il voiam modificat cand un player scrie /buyvip sa cumpere vip prin credite.NU doar cei ce au flag T sa poate folosi /buyvip, ci toti playeri de pe server sa aiba acces la /buyvip
Daca doriti sa ma ajutati va-si fi recunoscator

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id)) // Verificam sa fie conectat 
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Acum comanda e pliblica add discord: CyBer[N]eTicK#9999
Pluginul nu functioneaza, merge /buyvip apare meniu dar nu iti da vip, nu te trece in user.ini, de regula trebuia sa iti da kick si sa iti puna parola in consola sau sa iti puna vip-u pe steamid, dar nu merge
Iti poti face eu ce ai nevoie contracost, daca esti dispus da-mi pm
C0non
Membru, skill 0
Membru, skill 0
Posts: 38
Joined: 06 Aug 2020, 15:36
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Been thanked: 1 time

24 Sep 2021, 01:23

N3v3rM1nd wrote:
23 Sep 2021, 15:16
C0non wrote:
23 Sep 2021, 03:25
CyBer[N]eTicK wrote:
19 Sep 2021, 21:11

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <engine>


// Definitii
#define PLUGIN "Plugin buy vip"
#define AUTOR " - "
#define VERSIUNE "1.0"

#define ACCES_VIP ADMIN_LEVEL_H // ADMIN LEVEL H este flagul "T"

// Cat sa coste vip-urile 
#define SumaDeCredite_VIP_Saptamana 10
#define SumaDeCredite_VIP_Luna 10
#define SumaDeCredite_VIP_Permanent 10

new const Tag[] = "!g[Buy-VIP]!t" // Tag-ul de la inceputul text-ului
new name[33][32]

// Nativele de credite
native fcs_get_user_credits ( id );
native fcs_set_user_credits ( id, iCredits ); 

public plugin_init()
{
	register_plugin(PLUGIN, AUTOR, VERSIUNE)

	// Comenzile publice
	register_clcmd("say /buyvip", "ShowMeniuBuyVIP")
	register_clcmd("say_team /buyvip", "ShowMeniuBuyVIP")

}
public client_authorized(id)    if(!is_user_bot(id)||!is_user_hltv(id)) get_user_name(id,name[id],charsmax(name[]))

public ShowMeniuBuyVIP(id){
	if(is_user_connected(id)) // Verificam sa fie conectat 
	{ 
		new menu = menu_create("\rCumpara-ti \yVIP", "GiveMeniu")

		menu_additem(menu, "\wVIP 1 Saptamana \r[10 CREDITE]", "0", 0)
		menu_additem(menu, "\wVIP 1 Luna \r[10 CREDITE]", "1", 0)
		menu_additem(menu, "\wVIP PERMANENT \r[10 CREDITE]", "2", 0)

		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
		menu_display(id, menu, 0); 
	}
}

public GiveMeniu(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu);
        return 1;
    }
    new text[125]
    switch (item)
    {
    	case 0:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Saptamana;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Saptamana", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 7 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 1:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Luna;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP 1 Luna", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 27 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
    	case 2:
    	{
    		new iCredits = fcs_get_user_credits(id) - SumaDeCredite_VIP_Permanent;

    		if ( iCredits < 0 ) 
    		{
    		cc_chat(id, "%s Nu ai destule credite pentru a putea cumpara VIP", Tag)
    		return 1;
    		}
    		else
    		{
    			cc_chat(id, "%s Succes ti-ai luat VIP PERMANENT", Tag)
    			fcs_set_user_credits ( id, iCredits );

    			formatex(text,charsmax(text),"amx_tempadmin %s 0 %s",name[id], ACCES_VIP)
    			server_cmd(text)
           		return 1
    		}
    	}
   	}
    menu_destroy(menu);
    return 1;
}


stock cc_chat( const id, const input[ ], any:... )
{
	new count = 1, players[ 32 ]

	static msg[ 191 ]
	vformat( msg, 190, input, 3 )

	replace_all( msg, 190, "!g", "^4" ) //- verde
	replace_all( msg, 190, "!y", "^1" ) //- galben
	replace_all( msg, 190, "!t", "^3" ) //- echipa
	replace_all( msg, 190, "!n", "^0" ) //- normal

	if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
	{
		for( new i = 0; i < count; i++ )
		{
			if( is_user_connected( players[ i ] ) )
			{
				message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
				write_byte( players[ i ] );
				write_string( msg );
				message_end( );
			}
		}
	}
}
Acum comanda e pliblica add discord: CyBer[N]eTicK#9999
Pluginul nu functioneaza, merge /buyvip apare meniu dar nu iti da vip, nu te trece in user.ini, de regula trebuia sa iti da kick si sa iti puna parola in consola sau sa iti puna vip-u pe steamid, dar nu merge
Iti poti face eu ce ai nevoie contracost, daca esti dispus da-mi pm
Salut! Nu sunt interesat sa platesc. Daca doriti sa ma ajutati de bine daca NU puteti da T/c. Multumesc
ZackChoi
Membru, skill +1
Membru, skill +1
Posts: 162
Joined: 28 Dec 2019, 01:39
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Has thanked: 1 time
Been thanked: 7 times

26 Sep 2021, 20:31

| Afiseaza codul
#include < amxmodx >
#include < amxmisc >

#define PLUGIN_NAME	"Buy VIP"
#define PLUGIN_VERSION	"1.0"
#define PLUGIN_AUTHOR	"Zack"

#define MAX_PLAYERS 32

#define VIP_FLAG	"t"


new const p_szPrice [ ] =
{
	1500, // 1 week
	2000, // 1 month
	3000	// perm
};

native fcs_get_user_credits ( iPlayer );
native fcs_set_user_credits ( iPlayer, iCredits );

new g_szName [ MAX_PLAYERS + 1 ] [ 32 ];

public client_putinserver ( iPlayer )
{
	if ( is_user_bot ( iPlayer ) || is_user_hltv ( iPlayer ) || get_user_flags ( iPlayer ) & read_flags ( VIP_FLAG ) )
		return;
		// just skip bots, hltv and already vip players.

	get_user_name ( iPlayer, g_szName [ iPlayer ], charsmax ( g_szName ) );
}

public plugin_init ( )
{
	register_plugin ( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR );
	register_clcmd ( "say /buyvip", "client_vip" );
}

public client_vip ( iPlayer )
{	
	// Assuming that when a player use the command is connected.
	if ( get_user_flags ( iPlayer ) & read_flags ( VIP_FLAG ) )
	{
		client_print ( iPlayer, print_center, "You're already a VIP" );
		return;
	}

	new p_szMenu = menu_create ( "\wBuy VIP", "HANDLE_BUY" );
	new p_szItem [ 128 ];
	formatex ( p_szItem, charsmax ( p_szItem ), "\w1 Week (\r%d\w)", p_szPrice [ 0 ] );
	menu_additem ( p_szMenu, p_szItem );
	formatex ( p_szItem, charsmax ( p_szItem ), "\w1 Month (\r%d\w)", p_szPrice [ 1 ] );
	menu_additem ( p_szMenu, p_szItem );
	formatex ( p_szItem, charsmax ( p_szItem ), "\wPermanent (\r%d\w)", p_szPrice [ 2 ] );
	menu_additem ( p_szMenu, p_szItem );

	menu_setprop ( p_szMenu, MPROP_EXIT, MEXIT_ALL );
	menu_display ( iPlayer, p_szMenu, 0 );
}

public HANDLE_BUY ( iPlayer, p_szMenu, p_szItem )
{
	if ( p_szItem == MENU_EXIT )
	{
		menu_destroy ( p_szMenu );
		return;
	}

	if ( fcs_get_user_credits ( iPlayer ) < p_szPrice [ p_szItem ] )
	{
		client_print ( iPlayer, print_center, "Not enought credits" );
		return;
	}

	fcs_set_user_credits ( iPlayer, fcs_get_user_credits ( iPlayer ) - p_szPrice [ p_szItem ] );
	server_cmd ( "amx_tempadmin ^"%s^" ^"%s^" ; price paid: %d", g_szName [ iPlayer ], VIP_FLAG, p_szPrice [ p_szItem ] );
	server_cmd ( "amx_reloadadmins" );
}
poftim, functioneaza perfect.
lexz
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 915
Joined: 02 Nov 2020, 01:57
Detinator Steam: Da
Fond eXtream: 0
Discord: lexzor#0630
Has thanked: 69 times
Been thanked: 136 times

28 Sep 2021, 15:23

Code: Select all

// Assuming that when a player use the command is connected.
	if ( get_user_flags ( iPlayer ) & read_flags ( VIP_FLAG ) )
	{
		client_print ( iPlayer, print_center, "You're already a VIP" );
		return;
	}
?? ai mai facut o data verificarea, nu va mai puneti autor daca nu sunteti

mai bine verifici asa

Code: Select all

// Assuming that when a player use the command is connected.
        if(!is_user_connected(iPlayer))
        	return PLUGIN_HANDLED;
        	
	if ( strlen(g_szName[iPlayer]) < 1 || g_szName[iPlayer][0] == EOS )
	{
		client_print_color(id, print_team_default, "You already have VIP!");
		return PLUGIN_HANDLED;
	}

Code: Select all

new g_szName [ MAX_PLAYERS + 1 ] [ 32 ];

Code: Select all


#if !defined MAX_NAME_LENGTH
     const MAX_NAME_LENGTH 36;
#endif
new g_szName[MAX_PLAYERS + 1][MAX_NAME_LENGTH];
ZackChoi
Membru, skill +1
Membru, skill +1
Posts: 162
Joined: 28 Dec 2019, 01:39
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Fond eXtream: 0
Has thanked: 1 time
Been thanked: 7 times

28 Sep 2021, 22:35

1. Cee verificare sa fac in plus? Daca te referi la cea din client putinserver, preiau si 'incarc' variabile doar cu numele celor ce nu au vip predefinit.
2. Ce treaba are strlen? strlen returneaza numarul de caractere dintr-un sir. Mi se pare putin ilogic ca szName sa fie mai mic decat 1. Adica incearca tu sa pui name "" in consola si sa vezi ce se intampla.
3. Nu-i mai vad rostul declararii unei noi constante, oricum ai declarat-o gresit. szName poate fi maxim 33. szName[33] = {0...32} sau ceva de genul era. Plus de asta prefer modul hardcore la un plugin de genul, nu e genul de 'big-plugin' sa necesite sa fie foarte modificat, mai ales avand in vedere ca cineva cu , cunostinte nu cred ca ar fi cerut pluginul.

Sper ca te-am lamurit. Referitor la cod, e scris de mine. Se poate vedea la ochiul liber. In primul rand voi inca faceti switch pe item la chestii simple si apelati native de foarte multe ori in loc sa ramaneti simpli si sa va folositi de logica.
Post Reply

Return to “Cereri”

  • Information