plugin credite

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
Divin123
Membru, skill +2
Membru, skill +2
Posts: 620
Joined: 06 Jan 2012, 22:42
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: arena.wtfcs.com
Has thanked: 42 times
Been thanked: 2 times
Contact:

04 Jul 2013, 12:29

As vrea si eu ca pe baza acestui plugin de credite mysql la ora 1 noaptea sa se dea free 200 de credite. Dau multumesc...
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <sqlx>

// Credite
new cvar_how_much;
new credite[33];

// Baza de date
new Host[] = "109.163.232.23"
new Username[] = ""
new Password[] = ""
new BazaDate[] = ""
new Handle:g_SqlTuple;
new eroare[512];

// Tag
new const TAG[] = "Furien";

public plugin_init()
{
	register_plugin("Depozit Nou Bani", "1.0", "cyby")
	
	cvar_how_much = register_cvar("db_bani_credit", "16000")
	register_clcmd("say /retrage", "retrage")
	register_clcmd("say /depozit", "depoziteaza")
	register_clcmd("say /credite", "credits")
	
	register_concmd("amx_give_credits", "cmdGive", ADMIN_RCON, "<nume sau #userid> [credite]")
	
	// Initiem MySQL
	set_task(1.0, "MySQL")
}

public MySQL()
{
	g_SqlTuple = SQL_MakeDbTuple(Host, Username, Password, BazaDate)

	new CodEroare;
	new Handle:conexiunea = SQL_Connect(g_SqlTuple, CodEroare, eroare, 511)
	if(conexiunea == Empty_Handle)
		set_fail_state(eroare)

	new Handle:query = SQL_PrepareQuery(conexiunea, "CREATE TABLE IF NOT EXISTS credit (nume varchar(32),credite INT(11))")

	if(!SQL_Execute(query))
	{
		SQL_QueryError(query, eroare, 511)
		set_fail_state(eroare)
	}

	SQL_FreeHandle(query)
	SQL_FreeHandle(conexiunea)   
}

public plugin_end()
{
	SQL_FreeHandle(g_SqlTuple)
}

public client_putinserver(id)
{
	credite[id] = 0
	new nume[32];
	get_user_name(id, nume, 31)
	if(equal(nume, "Player") || contain(nume, "~") != -1 || contain(nume, "`") != -1)
	{
		server_cmd("kick #%d ^"Numele tau contine caractere nepermise.^"", get_user_userid(id))
	}
	else
	{
		load_data(id)
	}
}

public client_disconnect(id)
{
	save_data(id)
}

public retrage(id)
{
	if(credite[id] > 0)
	{
		new bani = get_pcvar_num(cvar_how_much);
		new bani_actual = cs_get_user_money(id);
		if(bani_actual >= 16000)
		{
			color(id, ".v[%s].g Ai deja.e 16000$.g si nu poti retrage.", TAG)
		}
		else if(bani_actual + bani < 16000)
		{
			cs_set_user_money(id, bani_actual + bani)
			credite[id]--
			color(id, ".v[%s].g Ai retras 1 credit, adica.e %d$.g . Acum ai.e %d$.g", TAG, bani, bani_actual)
			save_data(id)
		}
		else if(bani_actual + bani >= 16000)
		{
			cs_set_user_money(id, 16000)
			credite[id]--
			color(id, ".v[%s].g Ai retras 1 credit, adica.e %d$.g. Acum ai.e %d$.g", TAG, bani, bani_actual)
			save_data(id)
		}
	}
	else
	{
		color(id, ".v[%s].g Nu ai deloc credite.", TAG)
	}
	return PLUGIN_HANDLED;
}

public depoziteaza(id)
{
	if(credite[id] > 0)
	{
		save_data(id)
		color(id, ".v[%s].g Tocmai ai depozitat.e %d.g credite.", TAG, credite[id])
	}
	else
	{
		color(id, ".v[%s].g Nu ai credite pentru a putea depozita.", TAG)
	}
	return PLUGIN_HANDLED;
}

public credits(id)
{
	color(id, ".v[%s].g Ai.e %d.g credite.", TAG, credite[id])
	return PLUGIN_HANDLED;
}

load_data(id)
{
	new nume[32], temp[512]
	get_user_name(id, nume, 31)

	new data[1]
	data[0] = id
	format(temp, charsmax(temp), "SELECT * FROM `credit` WHERE (`credit`.`nume` = '%s')", nume)
	SQL_ThreadQuery(g_SqlTuple, "inregistram_jucator", temp, data, 1)
}

save_data(id)
{
	new nume[32], temp[512]
	get_user_name(id, nume, 31)

	format(temp, charsmax(temp), "UPDATE `credit` SET `credite` = '%i' WHERE `credit`.`nume` LIKE '%s';", credite[id], nume)
	SQL_ThreadQuery(g_SqlTuple, "IgnoreHandle", temp)
}

public inregistram_jucator(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
	if(FailState == TQUERY_CONNECT_FAILED)
	{
		log_amx("Load - Nu ma pot conecta la baza de date.  [%d] %s", Errcode, Error)
	}
	else if(FailState == TQUERY_QUERY_FAILED)
	{
		log_amx("Nu pot face Query-ul in baza de date. [%d] %s", Errcode, Error)
	}

	new id
	id = Data[0]

	if(SQL_NumResults(Query) < 1) 
	{ 
		new nume[32]
		get_user_name(id, nume, 31) 
		
		new szTemp[512]

		format(szTemp, charsmax(szTemp), "INSERT INTO `credit` (`nume` , `credite`) VALUES ('%s', '0');", nume)
		SQL_ThreadQuery(g_SqlTuple, "IgnoreHandle", szTemp)
	} 
	else 
	{
		credite[id] = SQL_ReadResult(Query, 1)
	}
	return PLUGIN_HANDLED
}

public IgnoreHandle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
	SQL_FreeHandle(Query)

	return PLUGIN_HANDLED;
}

public cmdGive(id, level, cid)
{
	if(!cmd_access(id, level, cid, 2))
	{
		return PLUGIN_HANDLED;
	}
	
	new arg[32], name[32];
	read_argv(1, arg, 31)
	get_user_name(id, name, 31)
	
	new jucator = cmd_target(id, arg, 31)
	
	if(!jucator)
	{
		return PLUGIN_HANDLED
	}
	
	if(!is_user_connected(id) || !is_user_connected(jucator))
	{
		return PLUGIN_HANDLED
	}
	
	new cant[4], name2[32];
	get_user_name(jucator, name2, 31)
	read_argv(2, cant, 3)
	new creditss = str_to_num(cant)
	credite[jucator] += creditss
	color(0, ".v[%s].g Adminul.e %s.g ii daruie lui.e %s %d.g credite.", TAG, name, name2, creditss)
	log_to_file("credite_date.log", "Adminul %s ii da lui %s %d credite.", name, name2, creditss)
	return PLUGIN_HANDLED;
}

stock 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")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")

	if (id) players[0] = id; else get_players(players, count, "ch")
	{
		for (new i = 0; i < count; i++)
		{
			if (is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)
				write_byte(players);
				write_string(msg);
				message_end();
			}
		}
	}
}
Arena.WtfCs.CoM
RoyalServer 2
User avatar
Divin123
Membru, skill +2
Membru, skill +2
Posts: 620
Joined: 06 Jan 2012, 22:42
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: arena.wtfcs.com
Has thanked: 42 times
Been thanked: 2 times
Contact:

05 Jul 2013, 01:34

UP!!!!!!! NIMENI?
Arena.WtfCs.CoM
mezzzu
Membru eXtream
Membru eXtream
Posts: 2235
Joined: 19 Dec 2010, 17:31
Detinator Steam: Da
CS Status: Working...
Reputatie: Utilizator neserios (tepar)
Fost manager FURIEN.EXTREAMCS.COM
Restrictie moderator
Has thanked: 85 times
Been thanked: 137 times

05 Jul 2013, 01:55

Hai sa te ajut ...dar cu altceva...

Poti folosi pluginul de Task Scheduler si la ora 01:00 sa setezi comanda

amx_task 01:00 "amx_give_credits @ALL 100" tr

Astfel va face ca in fiecare zi la ora 01:00 sa execute acea comanda :D

LINK: http://forums.alliedmods.net/showthread ... 6be&t=1263
User avatar
Divin123
Membru, skill +2
Membru, skill +2
Posts: 620
Joined: 06 Jan 2012, 22:42
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: arena.wtfcs.com
Has thanked: 42 times
Been thanked: 2 times
Contact:

05 Jul 2013, 09:28

Merci, cer ajutorul lui cyby deoarece el mi-a dat pluginul de credite daca se poate sa mi-l modifice sa aiba si comanda @All sa dea credite la toti...
Arena.WtfCs.CoM
OneShot.
Membru, skill +2
Membru, skill +2
Posts: 719
Joined: 12 Sep 2011, 19:17
Detinator Steam: Da
Detinator server CS: drx.indungi.ro
SteamID: oneshot_01
Reputatie: Fost moderator ajutator
Nume anterior: OnlyHD
Location: Bucuresti
Has thanked: 196 times
Been thanked: 66 times
Contact:

05 Jul 2013, 09:36

Poti incerca asta,pare ceva mai optimizat si are si comanda @all http://www.extreamcs.com/forum/amxmodx/ ... l#p1610909
User avatar
Divin123
Membru, skill +2
Membru, skill +2
Posts: 620
Joined: 06 Jan 2012, 22:42
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: arena.wtfcs.com
Has thanked: 42 times
Been thanked: 2 times
Contact:

06 Jul 2013, 09:32

UP!!!!!!!!!!!!!
Arena.WtfCs.CoM
Post Reply

Return to “Cereri”

  • Information