Jump to content

Recommended Posts

Posted

Salut, la cererea lui @cOBRa voi face un tutorial de cont premium pe zile,

Prima data vom avea nevoie de o variabila, in enumul variabilelor de playeri

enum pinfo 

vom adauga,    pPremium

 

 

apoi la public OnGameModeInit vom adauga un timer

 SetTimer("Premium", 60000, true);//60000 reprezinta 1 minut

apoi vom crea publicul

forward Premium();
public Premium()
{
	new string[255], handle2,query2[200];//variabilele pentru mysql si mesaj
	new tmphour,tmpminute,tmpsecond;//variabilele pentru ora 
    gettime(tmphour,tmpminute,tmpsecond);// verificam ora
    if(tmphour == 0 && tmpminute == 0)// daca este minutul 0 si ora 0 adica a trecut ziua
	{
	    foreach(Player,i)// strabatem toate idurile de pe server
	    {
			if(gLogged[i] == 1) // variabila daca playerul este logat sau cum aveti voi in gm
			{			
	        	if(PlayerInfo[i][pPremium] > 0)// daca playerul are cont premium
	       		{
	        	    PlayerInfo[i][pPremium] --;// setam cont premium 0
					format(string,sizeof(string),"S-a termiant o zi din contul tau premium acum mai ai %d zile de cont premium",PlayerInfo[i][pPremium]);
					SendClientMessage(i,-1,string);
            	}
			}
	    }				
		mysql_format(handle2, query2, 500, "UPDATE `players` SET `Premium` = `Premium`-1 WHERE `Premium` > 0");//actualizam si in baza de date
		mysql_tquery(handle2, query2);
	}

 

Si comanda de cumparat cont premium

 

CMD:cumparapremium(playerid,params[])
{
	new  handle2,query2[200];
	if(gLogged[playerid] != 1) return SendClientMessage(playerid,COLOR_RED,"Nu esti logat");// variabila de logare pe server o schimbam cum avem in gm
    if(PlayerInfo[playerid][pPremium] > 0) return SendClientMessage(playerid,COLOR_RED,"Aveti deja cont premium");// returnam un mesaj ca playerul are deja cont
    PlayerInfo[playerid][pPremium] = 15;// setam 15 zile cont premium
	SendClientMessage(playerid,-1,"Ati cumparat cont preium petntru 15 zile");
	GivePlayerCash(playerid,-10000);// setam banii sau ce vreti voi sa plateasca playerul
	mysql_format(handle2, query2, 500, "UPDATE `players` SET `Premium` = 15 WHERE `username` = '%s'",PlayerName(playerid));//actualizam si in baza de date
	mysql_tquery(handle2, query2);
	return 1;
}

Si adaugam la finalul gmului acest stock

PlayerName(playerid)
{
        new pname[MAX_PLAYER_NAME];
        GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
        return pname;
}

 

Nu uitati sa creati varibila si in baza de date, as fi facut acest tutorial in comentul topicului, dar tutorialele trebuie create aici pentru ca deasta exista aceasta sectiune

 

https://www.sa-mp.ro/forums/topic/23278-cerere-tutorial-cont-premium-zile/

  • Upvote 3

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • 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.