Jump to content

Un Sistem De Admin Pe Mysql R38


SkyLeAs

Recommended Posts

Cum spune si titlu nu am gasit in alta parte unde sa postez X_X

Deci eu pentru server-ul meu folosesc sistem-ul de admin alui TheRow sau Raw cum are in fine....

El e total plin de buguri X_X da total imi urca cont-u in baza de date dar nu salveaza nmk. xDD.

Ma puteti ajuta cun sistem de admin pe mysql r38 ca daca pun r39 nu merge asta este singurul care nu merge mysql r39 restu merge :)

Multumesc va dau 3 like

Link to comment
Share on other sites

Cam ce comenzi ai vrea sa aiba ?

Si The Row nu cred ca face el asa ceva.

Uite aici http://forum.sa-mp.ro/index.php/topic/18234-radmin-mysql-zcmd-sscanf-whirlpool-foreach/

 

Cum spune si titlu nu am gasit in alta parte unde sa postez X_X

Deci eu pentru server-ul meu folosesc sistem-ul de admin alui TheRow sau Raw cum are in fine....

El e total plin de buguri X_X da total imi urca cont-u in baza de date dar nu salveaza nmk. xDD.

Ma puteti ajuta cun sistem de admin pe mysql r38 ca daca pun r39 nu merge asta este singurul care nu merge mysql r39 restu merge :)

Multumesc va dau 3 like

foloseste sistemuol lui wopss:

http://forum.sa-mp.ro/index.php/topic/19086-mysql-r33-ideal-pentru-rpg/

Link to comment
Share on other sites

MySQL r38 e usor, mai greu e cu cache.

Zi cateva comezni si poate ti le fac eu daca pot :)

"Mulţi programatori buni fac programare nu pentru că se aşteaptă să câştige bani sau să fie lăudaţi de public, ci pentru că e amuzant să programezi." - Linus Torvalds

Link to comment
Share on other sites

#include <sscanf2> // Y_Less
#include <zcmd> // ZeeX

stock GetN(playerid)
{
	new n[32];
	GetPlayerName(playerid, n, 32);
	return n;
}

new WarnLevel, WarnReason[32];

CMD:warn(playerid, params[])
{
	if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid)) // Admin level 3+ & Admin Rcon login.
	{
		new id;
		if(sscanf(params, "dis[32]", id, WarnLevel, WarnReason)) return SendClientMessage(playerid, -1, "Use: /warn <Playerid/PartOfName> <Warn Point> <Reason>");
		if(IsPlayerConnected(id) != 1 || id != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Acest player nu este conectat sau nu exista.");
		if(id == playerid) return SendClientMessage(playerid, -1, "Nu iti poti da warn singur.");
		PlayerInfo[playerid][pWarn] += WarnLevel;
		new s[132];
		format(s, sizeof(s), "Adminul %s, ia dat lui %s [%i] puncte warn. Motiv: %s", GetN(playerid), GetN(id), WarnLevel, WarnReason);
		SendClientMessageToAll(0xD6802CFF, s);
		SendClientMessage(playerid, -1, "Ai primit Warn.");
	} else return SendClientMessage(playerid, -1, "Nu esti admin, sau nu ai level necesar.");
	return 1;
}

CMD:unwarn(playerid, params[])
{
	if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid)) // Admin level 3+ & Admin Rcon login.
	{
		new id, uwn, reason[32];
		if(sscanf(params, "dis[32]", id, uwn, reason)) return SendClientMessage(playerid, -1, "Use: /unwarn <Playerid/PartOfName> <Warn Point> <Reason>");
		if(IsPlayerConnected(id) != 1 || id != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Acest player nu este conectat sau nu exista.");
		PlayerInfo[playerid][pWarn] -= uwn;
		new s[132];
		format(s, sizeof(s), "Adminul %s, ia dat lui %s [%i] puncte unwarn. Motiv: %s", GetN(playerid), GetN(id), uwn, reason);
		SendClientMessageToAll(0xD6802CFF, s);
		SendClientMessage(playerid, -1, "Ai primit Unwarn.");
	} else return SendClientMessage(playerid, -1, "Nu esti admin, sau nu ai level necesar.");
	return 1;
}

CMD:kick
{
	if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid)) // Admin level 3+ & Admin Rcon login.
	{
		new id;
		if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "Use: /kick <Playerid/PartOfName>");
		if(IsPlayerConnected(id) != 1 || id != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Acest player nu este conectat sau nu exista.");
		Kick(id);
		new s[132];
		format(s, sizeof(s), "Adminul %s, ia dat lui %s kick.", GetN(playerid), GetN(id));
		SendClientMessageToAll(0xD6802CFF, s);
	} else return SendClientMessage(playerid, -1, "Nu esti admin, sau nu ai level necesar.");
}

/*

Pe nume:
/warn Player 2 Limbaj Vulgar. = Player - Celui ncare dai warn, 2 - punctele de warn, limbaj - motivul warn-ului.. 
/unwarn Player 1 Nu stiu motiv ;

Pe ID:
/warn 0 2 Limbaj Vulgar // 0 - 1000
/unwarn 0 1 Nu stiu motiv ;

Kick:
/kick Nume/ID
*/

ce zici iti plac aceste comenzi ?

  • Upvote 1

"Mulţi programatori buni fac programare nu pentru că se aşteaptă să câştige bani sau să fie lăudaţi de public, ci pentru că e amuzant să programezi." - Linus Torvalds

Link to comment
Share on other sites



#include <sscanf2> // Y_Less
#include <zcmd> // ZeeX

stock GetN(playerid)
{
	new n[32];
	GetPlayerName(playerid, n, 32);
	return n;
}

new WarnLevel, WarnReason[32];

CMD:warn(playerid, params[])
{
	if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid)) // Admin level 3+ & Admin Rcon login.
	{
		new id;
		if(sscanf(params, "dis[32]", id, WarnLevel, WarnReason)) return SendClientMessage(playerid, -1, "Use: /warn <Playerid/PartOfName> <Warn Point> <Reason>");
		if(IsPlayerConnected(id) != 1 || id != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Acest player nu este conectat sau nu exista.");
		if(id == playerid) return SendClientMessage(playerid, -1, "Nu iti poti da warn singur.");
		PlayerInfo[playerid][pWarn] += WarnLevel;
		new s[132];
		format(s, sizeof(s), "Adminul %s, ia dat lui %s [%i] puncte warn. Motiv: %s", GetN(playerid), GetN(id), WarnLevel, WarnReason);
		SendClientMessageToAll(0xD6802CFF, s);
		SendClientMessage(playerid, -1, "Ai primit Warn.");
	} else return SendClientMessage(playerid, -1, "Nu esti admin, sau nu ai level necesar.");
	return 1;
}

CMD:unwarn(playerid, params[])
{
	if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid)) // Admin level 3+ & Admin Rcon login.
	{
		new id, uwn, reason[32];
		if(sscanf(params, "dis[32]", id, uwn, reason)) return SendClientMessage(playerid, -1, "Use: /unwarn <Playerid/PartOfName> <Warn Point> <Reason>");
		if(IsPlayerConnected(id) != 1 || id != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Acest player nu este conectat sau nu exista.");
		PlayerInfo[playerid][pWarn] -= uwn;
		new s[132];
		format(s, sizeof(s), "Adminul %s, ia dat lui %s [%i] puncte unwarn. Motiv: %s", GetN(playerid), GetN(id), uwn, reason);
		SendClientMessageToAll(0xD6802CFF, s);
		SendClientMessage(playerid, -1, "Ai primit Unwarn.");
	} else return SendClientMessage(playerid, -1, "Nu esti admin, sau nu ai level necesar.");
	return 1;
}

CMD:kick
{
	if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid)) // Admin level 3+ & Admin Rcon login.
	{
		new id;
		if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1, "Use: /kick <Playerid/PartOfName>");
		if(IsPlayerConnected(id) != 1 || id != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Acest player nu este conectat sau nu exista.");
		Kick(id);
		new s[132];
		format(s, sizeof(s), "Adminul %s, ia dat lui %s kick.", GetN(playerid), GetN(id));
		SendClientMessageToAll(0xD6802CFF, s);
	} else return SendClientMessage(playerid, -1, "Nu esti admin, sau nu ai level necesar.");
}

/*

Pe nume:
/warn Player 2 Limbaj Vulgar. = Player - Celui ncare dai warn, 2 - punctele de warn, limbaj - motivul warn-ului.. 
/unwarn Player 1 Nu stiu motiv ;

Pe ID:
/warn 0 2 Limbaj Vulgar // 0 - 1000
/unwarn 0 1 Nu stiu motiv ;

Kick:
/kick Nume/ID
*/

ce zici iti plac aceste comenzi ?

 

Da este ceva dar eu vreau pe mysql r38 si sa salveze totu ..

  • Upvote 1
Link to comment
Share on other sites

Astazi o sa postez ce am facut, scuze dar am si eu o viata personala.

http://pastebin.com/WXVuZSdj - .pwn

Edited by sRk7
  • Upvote 1

"Mulţi programatori buni fac programare nu pentru că se aşteaptă să câştige bani sau să fie lăudaţi de public, ci pentru că e amuzant să programezi." - Linus Torvalds

Link to comment
Share on other sites

CMD:setlevel(playerid, params[])
{
	if(PD[playerid][pAdmin] == 3)
		new tID, nLvl, rs[32], type[128];
		if(sscanf(params, "uis[32]", tID, nLvl, rs)) return SendClientMessage(playerid, -1, "Use: /setlevel <PlayerID/PartOfName> <New Level> <Reason>");
		if(!IsPlayerConnected(tID) || tID != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "ERROR: Playerul nu este conectat sau nu exista !");
		SetPlayerScore(tID, nLvl);
		type = "Change Player Level";
		new z, l, a, o, m, s, cnt[256]; getdate(a,l,z), gettime(o, m, s);
        format(date, sizeof(date), "%02d/%02d/%02d - %02d:%02d:%02d", z, l, a, o, m, s);
		format(cnt, sizeof(cnt), "Log: Adminul %s ia schimbat level lui %s in %d. Motiv: %s", GetN(playerid), GetN(tID), nLvl, rs);
        SaveLogs(type, cnt, date);
	} else SCM(playerid, 0xB7CAE9FF, "SERVER: {FFFFFF} Nu esti admin level 3 !");
	return 1;
}

Setlevel + log.

CMD:setvip(playerid, params[])
{
	if(PD[playerid][pAdmin] >= 2)
	{
		new tID, nLvl, rs[32], type[128];
		if(sscanf(params, "uis[32]", tID, nLvl, rs)) return SendClientMessage(playerid, -1, "Use: /setlevel <PlayerID/PartOfName> <Vip Level> <Reason> (1 - 3)");
		if(nLvl < 1 && nLvl > 3) return SendClientMessage(playerid, -1, "ERROR: Vip level avaible ( 1 -3 )");
		if(!IsPlayerConnected(tID) || tID != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "ERROR: Playerul nu este conectat sau nu exista !");
		PD[tID][pVip] = nLvl;
		type = "Set Premium Account";
		new z, l, a, o, m, s, cnt[256]; getdate(a,l,z), gettime(o, m, s);
        format(date, sizeof(date), "%02d/%02d/%02d - %02d:%02d:%02d", z, l, a, o, m, s);
		format(cnt, sizeof(cnt), "Log: Adminul %s ia oferit lui %s vip level %d. Motiv: %s", GetN(playerid), GetN(tID), nLvl, rs);
        SaveLogs(type, cnt, date);
	} else SCM(playerid, 0xB7CAE9FF, "SERVER: {FFFFFF} Nu esti admin level 2+ !");
	return 1;
} 

SetVip + log.

Edited by sRk7

"Mulţi programatori buni fac programare nu pentru că se aşteaptă să câştige bani sau să fie lăudaţi de public, ci pentru că e amuzant să programezi." - Linus Torvalds

Link to comment
Share on other sites



CMD:setlevel(playerid, params[])
{
	if(PD[playerid][pAdmin] == 3)
		new tID, nLvl, rs[32], type[128];
		if(sscanf(params, "uis[32]", tID, nLvl, rs)) return SendClientMessage(playerid, -1, "Use: /setlevel <PlayerID/PartOfName> <New Level> <Reason>");
		if(!IsPlayerConnected(tID) || tID != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "ERROR: Playerul nu este conectat sau nu exista !");
		SetPlayerScore(tID, nLvl);
		type = "Change Player Level";
		new z, l, a, o, m, s, cnt[256]; getdate(a,l,z), gettime(o, m, s);
        format(date, sizeof(date), "%02d/%02d/%02d - %02d:%02d:%02d", z, l, a, o, m, s);
		format(cnt, sizeof(cnt), "Log: Adminul %s ia schimbat level lui %s in %d. Motiv: %s", GetN(playerid), GetN(tID), nLvl, rs);
        SaveLogs(type, cnt, date);
	} else SCM(playerid, 0xB7CAE9FF, "SERVER: {FFFFFF} Nu esti admin level 3 !");
	return 1;
}

Setlevel + log.



CMD:setvip(playerid, params[])
{
	if(PD[playerid][pAdmin] >= 2)
	{
		new tID, nLvl, rs[32], type[128];
		if(sscanf(params, "uis[32]", tID, nLvl, rs)) return SendClientMessage(playerid, -1, "Use: /setlevel <PlayerID/PartOfName> <Vip Level> <Reason> (1 - 3)");
		if(nLvl < 1 && nLvl > 3) return SendClientMessage(playerid, -1, "ERROR: Vip level avaible ( 1 -3 )");
		if(!IsPlayerConnected(tID) || tID != INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "ERROR: Playerul nu este conectat sau nu exista !");
		PD[tID][pVip] = nLvl;
		type = "Set Premium Account";
		new z, l, a, o, m, s, cnt[256]; getdate(a,l,z), gettime(o, m, s);
        format(date, sizeof(date), "%02d/%02d/%02d - %02d:%02d:%02d", z, l, a, o, m, s);
		format(cnt, sizeof(cnt), "Log: Adminul %s ia oferit lui %s vip level %d. Motiv: %s", GetN(playerid), GetN(tID), nLvl, rs);
        SaveLogs(type, cnt, date);
	} else SCM(playerid, 0xB7CAE9FF, "SERVER: {FFFFFF} Nu esti admin level 2+ !");
	return 1;
} 

SetVip + log.

 

Multumesc..

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.