Jump to content
Autentificarea cu Google și Facebook nu mai este disponibilă. ×

Question

Posted

Salut, as vrea ca la comanda /bano, sa fac in asa fel incat daca un admin de nivel 1 sa nu poata da ban de exemplu unui admin 2 (cu level mai mare decat el). Cu /bano se pot bana jucatorii care nu sunt in joc, dupa numele din baza de date.

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID( giveplayerid );
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    if(days > 0) {
        new year,month,day;
        getdate(year, month, day);
        day += days;
        if(IsMonth31(month)) {
            if(day > 31) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 31) day -= 31;
                }
                else while(day > 31) day -= 31;
            }
        }
        else if(!IsMonth31(month)) {
            if(day > 30) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 30) day -= 30;
                }
                else while(day > 30) day -= 30;
            }
        }
        else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
            if(day > 29) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 29) day -= 29;
                }
                else while(day > 29) day -= 29;
            }
        }
        else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
            if(day > 28) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 28) day -= 28;
                }
                else while(day > 28) day -= 28;
            }
        }
        DeelayCommand[playerid][0] = 10;
        if(days == 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        else if(days > 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        new szQuery[256];
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
        mysql_tquery(SQL ,szQuery, "", "");    
    }
    else if(days == 0) {
        new szQuery[256];
        mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
        mysql_tquery(SQL,szQuery, "", "");    
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
        mysql_tquery(SQL, szQuery, "", "");    
        if(strfind(reason, "Silent", true) != -1) {
            format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SendAdminMessage(COLOR_LIGHTRED, string, 1);        
        }
        else {
            format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SCMTA(COLOR_LIGHTRED, string);
        }    
    }
    else return true;
    
    Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
    PlayerInfo[playerid][pHelpedPlayers] += 2;
    PlayerInfo[playerid][pHelpedPlayersToday] += 2;
    
    new szQuery[256];
    mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
    mysql_tquery(SQL, szQuery, "", "");                
    return true;
}

22 answers to this question

Recommended Posts

  • 0
Posted

    if(PlayerInfo[playerid][pAdmin] < PlayerInfo[id][pAdmin]) return SCM(playerid, -1, "Nu poti folosi aceasta comanda pe un admin mai mare decat tine.");

 

 

Cand eram mic, eram mare zdreanta Eu fut*am femei, vara miu umbla prin casa

LINIE-3.gif.f4c03161035b1ce4c431755a78bed2ae.gif.aacf6e45f3894429f134b2e37f997f6f.gif

Discord: ㍿ Luca лол㍿ツ#5482

Sunt de moda veche inca mai cred in Respect!

LINIE-3.gif.f4c03161035b1ce4c431755a78bed2ae.gif.bcf86dadd9b43351554dd738f470725f.gif

 

  • 0
Posted
Chiar acum, LucaPawnL a spus:

    if(PlayerInfo[playerid][pAdmin] < PlayerInfo[id][pAdmin]) return SCM(playerid, -1, "Nu poti folosi aceasta comanda pe un admin mai mare decat tine.");

Banul find pe un jucator offline nu are cum sa citeasca o variabila ce necesita sa fie conectat pe server.

@TheGodfather

Da functia MySQLCheckAccount

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted

@StrikerM Bine ca mi-ai zis ca si asa nu am citit tot topic-ul @TheGodfather Raspuns-u dat de mine e gresit scuze :)) se mai intampla cand nu citesti tot.

 

 

Cand eram mic, eram mare zdreanta Eu fut*am femei, vara miu umbla prin casa

LINIE-3.gif.f4c03161035b1ce4c431755a78bed2ae.gif.aacf6e45f3894429f134b2e37f997f6f.gif

Discord: ㍿ Luca лол㍿ツ#5482

Sunt de moda veche inca mai cred in Respect!

LINIE-3.gif.f4c03161035b1ce4c431755a78bed2ae.gif.bcf86dadd9b43351554dd738f470725f.gif

 

  • 0
Posted

Poftim StrikerM

function MySQLCheckAccount(sqlplayersname[]) {
    gQuery[0] = EOS;
    new Cache: result;
    mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT * FROM `users` WHERE `name`='%s' LIMIT 1", sqlplayersname);
     mysql_query(SQL, gQuery);
    if(cache_num_rows() != 0) return true;
    cache_delete(result);
    return false;
}

Nu e nicio problema LucaPawnL :)

  • 0
Posted

@TheGodfather

Incearca asa.

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    cache_get_row_count(rows);
	for(new i; i < rows; i++)
	{
		cache_get_value_int(i, "Admin", padmin);
		if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "* Nu poti bana un jucator cu grad mai mare ca al tau.");
	    if(days > 0) 
	    {
	        new year,month,day;
	        getdate(year, month, day);
	        day += days;
	        if(IsMonth31(month)) {
	            if(day > 31) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 31) day -= 31;
	                }
	                else while(day > 31) day -= 31;
	            }
	        }
	        else if(!IsMonth31(month)) {
	            if(day > 30) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 30) day -= 30;
	                }
	                else while(day > 30) day -= 30;
	            }
	        }
	        else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
	            if(day > 29) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 29) day -= 29;
	                }
	                else while(day > 29) day -= 29;
	            }
	        }
	        else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
	            if(day > 28) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 28) day -= 28;
	                }
	                else while(day > 28) day -= 28;
	            }
	        }
	        DeelayCommand[playerid][0] = 10;
	        if(days == 1) {
	            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
	            SCMTA(COLOR_LIGHTRED,string);
	        }
	        else if(days > 1) {
	            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
	            SCMTA(COLOR_LIGHTRED,string);
	        }
	        new szQuery[256];
	        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
	        mysql_tquery(SQL ,szQuery, "", "");    
	    }
	    else if(days == 0) {
	        new szQuery[256];
	        mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
	        mysql_tquery(SQL,szQuery, "", "");    
	        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
	        mysql_tquery(SQL, szQuery, "", "");    
	        if(strfind(reason, "Silent", true) != -1) {
	            format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
	            SendAdminMessage(COLOR_LIGHTRED, string, 1);        
	        }
	        else {
	            format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
	            SCMTA(COLOR_LIGHTRED, string);
	        }    
	    }
	    else return true;
	    
	    Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
	    PlayerInfo[playerid][pHelpedPlayers] += 2;
	    PlayerInfo[playerid][pHelpedPlayersToday] += 2;
	    
	    new szQuery[256];
	    mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
	    mysql_tquery(SQL, szQuery, "", "");                
	}
	return true;    
}

 

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    new admin[180], szResult[180];
    for(new i = 0; i < cache_num_rows(); i++)
    {
        //cache_get_value_int(i, "Admin", padmin);
        cache_get_field_content(i, "Admin", szResult); format(admin, 256, szResult);
        if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "This player can not be banned.");
        if(days > 0) 
        {
            new year,month,day;
            getdate(year, month, day);
            day += days;
            if(IsMonth31(month)) {
                if(day > 31) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 31) day -= 31;
                    }
                    else while(day > 31) day -= 31;
                }
            }
            else if(!IsMonth31(month)) {
                if(day > 30) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 30) day -= 30;
                    }
                    else while(day > 30) day -= 30;
                }
            }
            else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
                if(day > 29) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 29) day -= 29;
                    }
                    else while(day > 29) day -= 29;
                }
            }
            else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
                if(day > 28) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 28) day -= 28;
                    }
                    else while(day > 28) day -= 28;
                }
            }
            DeelayCommand[playerid][0] = 10;
            if(days == 1) {
                format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
                SCMTA(COLOR_LIGHTRED,string);
            }
            else if(days > 1) {
                format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
                SCMTA(COLOR_LIGHTRED,string);
            }
            new szQuery[256];
            mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
            mysql_tquery(SQL ,szQuery, "", "");    
        }
        else if(days == 0) {
            new szQuery[256];
            mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
            mysql_tquery(SQL,szQuery, "", "");    
            mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
            mysql_tquery(SQL, szQuery, "", "");    
            if(strfind(reason, "Silent", true) != -1) {
                format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
                SendAdminMessage(COLOR_LIGHTRED, string, 1);        
            }
            else {
                format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
                SCMTA(COLOR_LIGHTRED, string);
            }    
        }
        else return true;
        
        Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
        PlayerInfo[playerid][pHelpedPlayers] += 2;
        PlayerInfo[playerid][pHelpedPlayersToday] += 2;
        
        new szQuery[256];
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
        mysql_tquery(SQL, szQuery, "", "");                
    }
    return true;    
}

Pot da ban unui admin cu lvl mai mare ca al meu

  • 0
Posted

@TheGodfather

Vezi acuma

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin, rows;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    cache_get_row_count(rows);
	for(new i; i < rows; i++)
	{
		padmin = cache_get_field_content_int(i, "Admin");
		if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "* Nu poti bana un jucator cu grad mai mare ca al tau.");
	    if(days > 0) 
	    {
	        new year,month,day;
	        getdate(year, month, day);
	        day += days;
	        if(IsMonth31(month)) {
	            if(day > 31) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 31) day -= 31;
	                }
	                else while(day > 31) day -= 31;
	            }
	        }
	        else if(!IsMonth31(month)) {
	            if(day > 30) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 30) day -= 30;
	                }
	                else while(day > 30) day -= 30;
	            }
	        }
	        else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
	            if(day > 29) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 29) day -= 29;
	                }
	                else while(day > 29) day -= 29;
	            }
	        }
	        else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
	            if(day > 28) {
	                month += 1;
	                if(month > 12) {
	                    year += 1;
	                    while(day > 28) day -= 28;
	                }
	                else while(day > 28) day -= 28;
	            }
	        }
	        DeelayCommand[playerid][0] = 10;
	        if(days == 1) {
	            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
	            SCMTA(COLOR_LIGHTRED,string);
	        }
	        else if(days > 1) {
	            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
	            SCMTA(COLOR_LIGHTRED,string);
	        }
	        new szQuery[256];
	        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
	        mysql_tquery(SQL ,szQuery, "", "");    
	    }
	    else if(days == 0) {
	        new szQuery[256];
	        mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
	        mysql_tquery(SQL,szQuery, "", "");    
	        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
	        mysql_tquery(SQL, szQuery, "", "");    
	        if(strfind(reason, "Silent", true) != -1) {
	            format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
	            SendAdminMessage(COLOR_LIGHTRED, string, 1);        
	        }
	        else {
	            format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
	            SCMTA(COLOR_LIGHTRED, string);
	        }    
	    }
	    else return true;
	    
	    Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
	    PlayerInfo[playerid][pHelpedPlayers] += 2;
	    PlayerInfo[playerid][pHelpedPlayersToday] += 2;
	    
	    new szQuery[256];
	    mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
	    mysql_tquery(SQL, szQuery, "", "");                
	}
	return true;    
}

 

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted

Nu mai pot bana un jucator cu admin mai mare, nu imi arata mesaj in chat ca am banat pe x dar nici nu imi arata mesajul 

Nu poti bana un jucator...
  • 0
Posted

Asa ar trebui sa mearga.

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin, rows;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    cache_get_row_count(rows);
	for(new i; i < rows; i++)
	{
		padmin = cache_get_field_content_int(i, "Admin");
		if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "* Nu poti bana un jucator cu grad mai mare ca al tau.");
	}	
    if(days > 0) 
    {
        new year,month,day;
        getdate(year, month, day);
        day += days;
        if(IsMonth31(month)) {
            if(day > 31) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 31) day -= 31;
                }
                else while(day > 31) day -= 31;
            }
        }
        else if(!IsMonth31(month)) {
            if(day > 30) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 30) day -= 30;
                }
                else while(day > 30) day -= 30;
            }
        }
        else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
            if(day > 29) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 29) day -= 29;
                }
                else while(day > 29) day -= 29;
            }
        }
        else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
            if(day > 28) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 28) day -= 28;
                }
                else while(day > 28) day -= 28;
            }
        }
        DeelayCommand[playerid][0] = 10;
        if(days == 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        else if(days > 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        new szQuery[256];
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
        mysql_tquery(SQL ,szQuery, "", "");    
    }
    else if(days == 0) {
        new szQuery[256];
        mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
        mysql_tquery(SQL,szQuery, "", "");    
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
        mysql_tquery(SQL, szQuery, "", "");    
        if(strfind(reason, "Silent", true) != -1) {
            format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SendAdminMessage(COLOR_LIGHTRED, string, 1);        
        }
        else {
            format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SCMTA(COLOR_LIGHTRED, string);
        }    
    }
    else return true;
    
    Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
    PlayerInfo[playerid][pHelpedPlayers] += 2;
    PlayerInfo[playerid][pHelpedPlayersToday] += 2;
    
    new szQuery[256];
    mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
    mysql_tquery(SQL, szQuery, "", "");                
	return true;    
}

 

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted
Acum 2 minute, TheGodfather a spus:

Acum ma lasa sa banez

Functioneaza sau te lasa sa banezi si jucatori cu admin mai mare ?

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted
Acum 56 minute, TheGodfather a spus:

up

Vezi acuma, fi sigur ca are admin persoana aia.

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin, rows;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    cache_get_row_count(rows);
	for(new i; i < rows; i++)
	{
		cache_get_field_content_int(i, "Admin", padmin);
		if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "* Nu poti bana un jucator cu grad mai mare ca al tau.");
	}	
    if(days > 0) 
    {
        new year,month,day;
        getdate(year, month, day);
        day += days;
        if(IsMonth31(month)) {
            if(day > 31) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 31) day -= 31;
                }
                else while(day > 31) day -= 31;
            }
        }
        else if(!IsMonth31(month)) {
            if(day > 30) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 30) day -= 30;
                }
                else while(day > 30) day -= 30;
            }
        }
        else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
            if(day > 29) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 29) day -= 29;
                }
                else while(day > 29) day -= 29;
            }
        }
        else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
            if(day > 28) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 28) day -= 28;
                }
                else while(day > 28) day -= 28;
            }
        }
        DeelayCommand[playerid][0] = 10;
        if(days == 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        else if(days > 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        new szQuery[256];
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
        mysql_tquery(SQL ,szQuery, "", "");    
    }
    else if(days == 0) 
    {
        new szQuery[256];
        mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
        mysql_tquery(SQL,szQuery, "", "");    
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
        mysql_tquery(SQL, szQuery, "", "");    
        if(strfind(reason, "Silent", true) != -1) 
        {
            format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SendAdminMessage(COLOR_LIGHTRED, string, 1);        
        }
        else 
        {
            format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SCMTA(COLOR_LIGHTRED, string);
        }    
    }
    else return true;
    
    Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
    PlayerInfo[playerid][pHelpedPlayers] += 2;
    PlayerInfo[playerid][pHelpedPlayersToday] += 2;
    
    new szQuery[256];
    mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
    mysql_tquery(SQL, szQuery, "", "");                
	return true;    
}

 

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted (edited)

Nu merge, am admin 7 si ma lasa sa dau ban unui admin 8, am verificat in baza de date

Edited by TheGodfather
  • 0
Posted
Acum 11 minute, TheGodfather a spus:

Nu merge, am admin 7 si ma lasa sa dau ban unui admin 8, am verificat in baza de date

Daca nici asa nu merge, nu ma bag e prea imensa comanda oricum ..

 

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin, rows;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    cache_get_row_count(rows);
	for(new i; i < rows; i++)
	{
		cache_get_field_content_int(i, "Admin", padmin);
		if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "* Nu poti bana un jucator cu grad mai mare ca al tau.");	
        if(days > 0) 
        {
            new year,month,day;
            getdate(year, month, day);
            day += days;
            if(IsMonth31(month)) {
                if(day > 31) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 31) day -= 31;
                    }
                    else while(day > 31) day -= 31;
                }
            }
            else if(!IsMonth31(month)) {
                if(day > 30) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 30) day -= 30;
                    }
                    else while(day > 30) day -= 30;
                }
            }
            else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
                if(day > 29) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 29) day -= 29;
                    }
                    else while(day > 29) day -= 29;
                }
            }
            else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
                if(day > 28) {
                    month += 1;
                    if(month > 12) {
                        year += 1;
                        while(day > 28) day -= 28;
                    }
                    else while(day > 28) day -= 28;
                }
            }
            DeelayCommand[playerid][0] = 10;
            if(days == 1) {
                format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
                SCMTA(COLOR_LIGHTRED,string);
            }
            else if(days > 1) {
                format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
                SCMTA(COLOR_LIGHTRED,string);
            }
            new szQuery[256];
            mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
            mysql_tquery(SQL ,szQuery, "", "");    
        }
        else if(days == 0) 
        {
            new szQuery[256];
            mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
            mysql_tquery(SQL,szQuery, "", "");    
            mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
            mysql_tquery(SQL, szQuery, "", "");    
            if(strfind(reason, "Silent", true) != -1) 
            {
                format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
                SendAdminMessage(COLOR_LIGHTRED, string, 1);        
            }
            else 
            {
                format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
                SCMTA(COLOR_LIGHTRED, string);
            }    
        }
        else return true;
        
        Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
        PlayerInfo[playerid][pHelpedPlayers] += 2;
        PlayerInfo[playerid][pHelpedPlayersToday] += 2;
        
        new szQuery[256];
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
        mysql_tquery(SQL, szQuery, "", "");          
    }          
    return true;    
}

 

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

  • 0
Posted
Acum 14 ore, TheGodfather a spus:

Nu mai pot da ban deloc cuiva care nu e on

YCMD:bano(playerid, params[], help) {
    new name[MAX_PLAYER_NAME];
    if(PlayerInfo[playerid][pAdmin] < 1) return SCM(playerid,COLOR_WHITE,AdminOnly);
    if(DeelayCommand[playerid][0] != 0) return DeelayTime(playerid, 0);
    new giveplayerid[25],days,reason[128],string[128],cont;
    if(sscanf(params, "s[25]ds[128]", giveplayerid, days,reason)) return SCM(playerid,COLOR_GREY, "Syntax: {FFFFFF}/bano <name> <0 = permanent/days> <reason>");
    if(FaceReclama(reason)) return RemoveFunction(playerid, reason);
    new userID = GetPlayerID(giveplayerid), padmin, rows;
    if(userID != INVALID_PLAYER_ID) return SCM(playerid, COLOR_GREY, "Acel jucator este deja conectat!");
    cont = MySQLCheckAccount(giveplayerid);
    if(cont == 0) return SCM(playerid,COLOR_ERROR,"Eroare:{FFFFFF} Acest cont nu a fost gasit in baza de date!");
    GetPlayerName(playerid, name, sizeof name);
    mysql_format(SQL, gString, sizeof(gString), "SELECT * FROM `users` WHERE `Owner` = '%s'", GetName(playerid));
    new Cache:result = mysql_query(SQL, gString);
    cache_get_row_count(rows);
	for(new i; i < rows; i++)
	{
		cache_get_field_content_int(i, "Admin", padmin);	
    }  
    if(PlayerInfo[playerid][pAdmin] < padmin) return SCM(playerid, -1, "* Nu poti bana un jucator cu grad mai mare ca al tau.");  
    if(days > 0) 
    {
        new year,month,day;
        getdate(year, month, day);
        day += days;
        if(IsMonth31(month)) {
            if(day > 31) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 31) day -= 31;
                }
                else while(day > 31) day -= 31;
            }
        }
        else if(!IsMonth31(month)) {
            if(day > 30) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 30) day -= 30;
                }
                else while(day > 30) day -= 30;
            }
        }
        else if(!IsMonth31(month) && IsMonth29(year) && month == 2) {
            if(day > 29) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 29) day -= 29;
                }
                else while(day > 29) day -= 29;
            }
        }
        else if(!IsMonth31(month) && !IsMonth29(year) && month == 2) {
            if(day > 28) {
                month += 1;
                if(month > 12) {
                    year += 1;
                    while(day > 28) day -= 28;
                }
                else while(day > 28) day -= 28;
            }
        }
        DeelayCommand[playerid][0] = 10;
        if(days == 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        else if(days > 1) {
            format(string,128,"Offline: %s has been banned by %s for %d days, reason: %s",giveplayerid,name,days,reason);
            SCMTA(COLOR_LIGHTRED,string);
        }
        new szQuery[256];
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE `users` SET `BTemp`='1', `BYear`='%d', `BMonth`='%d', `BDay`='%d', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'",year, month, day, name, reason, giveplayerid);
        mysql_tquery(SQL ,szQuery, "", "");    
    }
    else if(days == 0) 
    {
        new szQuery[256];
        mysql_format(SQL, szQuery,sizeof(szQuery),"UPDATE users SET `Banned`='1', `BBy`='%s', `BReason`='%s' WHERE `name`='%s'", GetName(playerid), reason, giveplayerid);
        mysql_tquery(SQL,szQuery, "", "");    
        mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
        mysql_tquery(SQL, szQuery, "", "");    
        if(strfind(reason, "Silent", true) != -1) 
        {
            format(string, sizeof(string), "Silent: %s (offline) has been banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SendAdminMessage(COLOR_LIGHTRED, string, 1);        
        }
        else 
        {
            format(string, sizeof(string), "Offline: %s has been permanent banned by %s, reason: %s", giveplayerid, GetName(playerid),reason);
            SCMTA(COLOR_LIGHTRED, string);
        }    
    }
    else return true;
    
    Banlog("Offline",giveplayerid,GetName(playerid),reason,days);
    PlayerInfo[playerid][pHelpedPlayers] += 2;
    PlayerInfo[playerid][pHelpedPlayersToday] += 2;
    
    new szQuery[256];
    mysql_format(SQL, szQuery, sizeof(szQuery), "UPDATE users SET `HelpedPlayers` = '%d', `HelpedPlayersToday`='%d' WHERE `ID` = '%d'", PlayerInfo[playerid][pHelpedPlayers], PlayerInfo[playerid][pHelpedPlayersToday], PlayerInfo[playerid][pSQLID]);
    mysql_tquery(SQL, szQuery, "", "");                
    return true;    
}

 

Ce inseamna cuvantul "Unic" este atunci cand Chestia / Obiectul / Idea / etc... nu exista in alta parte.

Copii, nu mai veniti cu vorbe de "Am gamemode unic", nu exista asa ceva, la ora actuala totul este pe net.

Aveti grija pe cine ajutati, majoritatea sunt caini.

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.