[Cerere Plugin] Frag Time

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 .
Post Reply
User avatar
Alexandru P.
Membru, skill 0
Membru, skill 0
Posts: 77
Joined: 10 Apr 2020, 11:27
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: CS.BHZD.RO
Fond eXtream: 0
Has thanked: 7 times
Contact:

26 Sep 2022, 10:22

Plugin Cerut: Frag Time
Descriere (adica ce face el mai exact): Atunci cand un admin (flag minim "b") scrie "/concrus" sa se dea restart la harta si sa inceapa concursul. Primul jucator care ajunge la 20 de fraguri sa castige monezi (aici vreau sa setez eu cate fraguri si cate monezi sa castige). Pe timpul concursului comanda de "resetscore" "rs" sa fie blocata. Doresc sa aiba mesaj in HUD : Concursul FragTime este activat! Mesaj in chat colorat cand folosesti comanda "/concrus" :

EXEMPLU:
olorChat(id, GREEN, "[^x03 %s^x04 ]^x01 |---------------^x04 LiVE !^x01 ---------------|", hostname)
ColorChat(id, GREEN, "[^x03 %s^x04 ]^x01 |---------------^x04 LiVE !^x01 ---------------|", hostname)
ColorChat(id, GREEN, "[^x03 %s^x04 ]^x01 |---------------^x04 LiVE !^x01 ---------------|", hostname)
new restartname[32]
get_user_name(id, restartname, 31)
ColorChat(id, GREEN, "^x01 FRAGTIME START^x04 %s^x03Spor La Fraguri^x01 !", restartname)


Native:
register_native("set_gold_coins","native_setg");
register_native("get_gold_coins","native_getg");

Serverul impune conditii strict HLDS/REHLDS?: REHLDS
Ai cautat pluginul?(daca da, precizeaza cum): -
Necesita mod special?: Nu
Configuratie server: Classic
Versiune AMXX: v1.10.0.5454
RoyalServer 2
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

26 Sep 2022, 18:41

mi ai dat nativele, da nu pot să ghicesc dacă fiecare are câte 1 parametru, 2 3 4 etc parametri
dar poate ghicesc

1. în plg de rs adaugi după ultimul #include - native get_concurs()
2. în publicul de rs adaugi sus urm condiție

Code: Select all

if(get_concurs())
{
       return 1
}

Code: Select all

#include <amxmodx>
#if AMXX_VERSION_NUM < 183
	#include <api_colorchat>
#endif 

#define CONCURS_FLAG_ACCESS "b"
#define have_access(%1) (get_user_flags(%1)&read_flags(CONCURS_FLAG_ACCESS))

static const 	SECONDS_TO_RESTART = 1,
				KILLS_TO_WIN = 20,
				COINS_TO_REWARD = 50

native set_gold_coins(id,num)
native get_gold_coins(id)

enum _:ServerVars
{
	concurs,

	sync_hud
}
new vars[ServerVars]

enum _:PlayerVars
{
	kills
}
new player_data[33][PlayerVars]

public plugin_natives()
{
	register_native("get_concurs", "_get_concurs")
}
public _get_concurs(iPlugin,iParam)
{
	return vars[concurs]
}
public plugin_init()
{
	vars[sync_hud]=CreateHudSyncObj(5)

	register_clcmd("say /concurs", "CONCURS")
	register_clcmd("say_team /concurs", "CONCURS")

	set_task(1.0, "CHECK_CONCURS",.flags="b")
}
public CHECK_CONCURS()
{
	if(vars[concurs])
	{
		set_hudmessage(200, 100, 0, 0.47, 0.11, 0, 0.0, 2.0, 0.0, 0.2, 5)
		ShowSyncHudMsg(0, vars[sync_hud], "Concursul FragTime este activat!")
	}
}
public client_putinserver(id)
{
	if(is_user_connected(id)&&(!is_user_hltv(id)||!is_user_bot(id)))
	{
		player_data[id][kills]=0
	}
}
public CONCURS(id)
{
	if(!have_access(id)||vars[concurs])
	{
		return
	}

	client_print_color(0, print_team_default, "|---------------^4 LiVE !^1 ---------------|")
	client_print_color(0, print_team_default, "|---------------^4 LiVE !^1 ---------------|")
	client_print_color(0, print_team_default, "|---------------^4 LiVE !^1 ---------------|")
	client_print_color(0, id, "FRAGTIME START^4 %s^3Spor La Fraguri^1 !", get_player_nick(id))

	vars[concurs]=1

	server_cmd("sv_restart %d",SECONDS_TO_RESTART)
}

public client_death(killer,victim,wpnindex,hitplace,TK)
{
	if(vars[concurs])
	{
		if(!killer||!victim)
		{
			return
		}
		if(killer==victim)
		{
			return
		}

		if(++player_data[killer][kills]>=KILLS_TO_WIN)
		{
			client_print_color(0, killer, "^3%s^1 a atins primul pragul de^4 %d^1 frag%s, si a primit^4 %d^1Coin%s", get_player_nick(killer),
				KILLS_TO_WIN,KILLS_TO_WIN==1?"":"e",COINS_TO_REWARD,COINS_TO_REWARD==1?"":"s")

			set_gold_coins(killer, get_gold_coins(killer)+COINS_TO_REWARD)

			player_data[killer][kills]=0
		}
	}
}

stock get_player_nick(const id)
{
	static nick[33];get_user_name(id,nick,charsmax(nick))
	return nick
}
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
User avatar
Alexandru P.
Membru, skill 0
Membru, skill 0
Posts: 77
Joined: 10 Apr 2020, 11:27
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: CS.BHZD.RO
Fond eXtream: 0
Has thanked: 7 times
Contact:

27 Sep 2022, 10:30

Am adaugat in pluginul de resetscore ce ai scris tu mai sus dar nu il pot compila

Uite pluginul de resetscore:

Code: Select all

#include <amxmodx>
#include <cstrike>
#include <fun>

#define sunet1 "buttons/bell1.wav"
#define sunet2 "buttons/lightswitch2.wav"
#define PREFIX "!g(!vCS!g) "

native get_concurs()
native set_gold_coins(id,amount)
native get_gold_coins(id)
native set_silver_coins(id,amount)
native get_silver_coins(id)


new const gComenzi[][] = {"say /rs", "say /resetscore", "say_team /rs", "say_team /resetscore"}
enum {
	RS_SUNETE_ON_OFF,
	RS_SUNET_TYPE,
	RS_COST_TYPE,
	RS_GOLD_COST,
	RS_SILVER_COST,
	MAX_CVARS
}

new Configs[MAX_CVARS]

public plugin_init()
{
	register_plugin("Resetscore", "1.0", "ODT")
	Configs[RS_SUNETE_ON_OFF] = register_cvar("rs_sunte_on_off", "1") // 1 - sunete la rs ; 0 - fara sunete la rs
	Configs[RS_COST_TYPE] = register_cvar("rs_cost_type", "1") // 1 - rs costa gold ; 2 - rs costa silver
	Configs[RS_SUNET_TYPE] = register_cvar("rs_sunt_type", "1") // 1 - primul sunet ; 2 - al doilea sunet
	Configs[RS_GOLD_COST] = register_cvar("rs_gold_cost", "2") // cat gold sa coste rs
	Configs[RS_SILVER_COST] = register_cvar("rs_silver_cost", "2") // cat silver sa coste rs


	for(new comenzi; comenzi < sizeof(gComenzi); ++comenzi)	register_clcmd(gComenzi[comenzi], "ResetScoreMain")
}

public plugin_precache()
{
	precache_sound(sunet1)
	precache_sound(sunet2)
}

public ResetScoreMain(id)
{
	new name[33];
	get_user_name(id,name,charsmax(name))
	switch(get_pcvar_num(Configs[RS_SUNETE_ON_OFF]))
	{
		case 0: console_print(id, "*Sunetele de la rs sunt oprite")
		case 1:
		{
			switch(get_pcvar_num(Configs[RS_SUNET_TYPE]))
			{
				case 1: client_cmd(id, "spk %s", sunet1)
				case 2: client_cmd(id, "spk %s", sunet2)
			}

		}

	}
	ResetScoreIntern(id)
	return PLUGIN_CONTINUE
}
ResetScoreIntern(id)
{
	new name[33]
	new getGold, getSilver, goldNeed, silverNeed
	get_user_name(id,name,charsmax(name))

	goldNeed = get_pcvar_num(Configs[RS_GOLD_COST])
	silverNeed = get_pcvar_num(Configs[RS_SILVER_COST])
	getGold = get_gold_coins(id)
	getSilver = get_silver_coins(id)
	switch(get_pcvar_num(Configs[RS_COST_TYPE]))
	{
		case 1:
		{
			if(getGold < goldNeed)
			{
				print_color(id, "%s!gYou don't have !v[%d] !egold coins !gto !vreset your score!g. ",PREFIX,goldNeed)
				return
			}
			else if(getSilver >= silverNeed) {
			print_color(0, "%s!gPlayer !e%s !ghas just !vreset his score!g.",PREFIX, name)
			set_user_frags(id, 0)
			cs_set_user_deaths(id, 0)
			if( !( get_user_flags( id ) & read_flags( "x" ) ) )
                set_gold_coins(id, getGold - goldNeed)
		}
		}
		case 2:
		{
			if(getSilver < silverNeed)
			{
			print_color(id, "%s!gYou don't have !v[%d] !esilver coins !gto !vreset your score!g. ",PREFIX,silverNeed)
			return
			}
			else if(getSilver >= silverNeed) {
			print_color(0, "%s!gPlayer !e%s !ghas just !vreset his score!g.",PREFIX, name)
			set_user_frags(id, 0)
			cs_set_user_deaths(id, 0)
			if( !( get_user_flags( id ) & read_flags( "x" ) ) )
                set_silver_coins(id, getSilver - silverNeed)
		}
		}
	}

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

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

	replace_all( msg, 190, "!v", "^4" ) //- verde
	replace_all( msg, 190, "!g", "^1" ) //- galben
	replace_all( msg, 190, "!e", "^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( );
					}
				}
			}
		}
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

27 Sep 2022, 12:14

1. n are cum să nu se compileze că nu ai făcut nimic care să afecteze codu original cu ce am zis eu
2. citește bine ce am scris, și mai încearcă, că ai omis ceva
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
User avatar
Alexandru P.
Membru, skill 0
Membru, skill 0
Posts: 77
Joined: 10 Apr 2020, 11:27
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: CS.BHZD.RO
Fond eXtream: 0
Has thanked: 7 times
Contact:

27 Sep 2022, 13:28

Indifirent unde il pun acel cod nu ma lasa sa compilez

error 010: invalid function or declaration
Last edited by levin on 27 Sep 2022, 13:45, edited 1 time in total.
Reason: nu știi să compilezi
User avatar
Laurentiu P.
Fost moderator
Fost moderator
Posts: 2549
Joined: 10 Jul 2013, 21:26
Detinator Steam: Da
Reputatie: Fost super moderator
Fond eXtream: 100
Has thanked: 26 times
Been thanked: 62 times
Contact:

27 Sep 2022, 19:14

Compilat local cu amxx 1.8.2/3
Image
no...
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 39 guests