[Ajuda] Lucro da empresa
#1

Me ajuda a configurar quantos de dinheiro o player tira ate 10% da info

» Eu quero que quando ele digita: /RetirarLucro ele recebe so 10% do valor da info da empresa

» Exemplo:

• Empresa Info 500k = 150k
• Empresa Info 1kk = 300k
• Empresa Info 2kk = 600k

Info = Valor da empresa

» Funзгo:

public Usou11()
{
Usou12();
for(new p=0; p<MAX_PROP; p++) {
format(STRX, sizeof(STRX), "/Props/prop%d.ini", p);
if(dini_Exists(STRX)) {
if(dini_Int(STRX ,"entrega") >= 1) {
dini_IntSet(STRX, "producao", dini_Int(STRX, "producao")-1);
if(dini_Int(STRX, "producao") <= 0) {
dini_IntSet(STRX,"producao", 0);
dini_IntSet(STRX,"entrega", 0);
new grana;
grana = (dini_Int(STRX, "Preco") / 10);
if(dini_Int(STRX, "Grana")+grana >= 1000000) {
dini_IntSet(STRX, "Grana", 1000000);
}
else {
dini_IntSet(STRX, "Grana", dini_Int(STRX, "Grana")+grana);
}
}
}
}
}
}


public Usou12()
{
Usou13();
for(new p=0; p<MAX_PROP; p++) {
format(STRX, sizeof(STRX), "/Props/prop%d.ini", p);
if(dini_Exists(STRX)) {
if(dini_Int(STRX ,"eentrega1") >= 1) {
dini_IntSet(STRX, "pproducao1", dini_Int(STRX, "pproducao1")-1);
if(dini_Int(STRX, "pproducao1") <= 0) {
dini_IntSet(STRX,"pproducao1", 0);
dini_IntSet(STRX,"eentrega1", 0);
new grana;
grana = (dini_Int(STRX, "Preco") / 10);
if(dini_Int(STRX, "Grana")+grana >= 1000000) {
dini_IntSet(STRX, "Grana", 1000000);
}
else {
dini_IntSet(STRX, "Grana", dini_Int(STRX, "Grana")+grana);
}
}
}
}
}
}

public Usou13()
{
for(new p=0; p<MAX_PROP; p++) {
format(STRX, sizeof(STRX), "/Props/prop%d.ini", p);
if(dini_Exists(STRX)) {
if(dini_Int(STRX ,"eentrega2") >= 1) {
dini_IntSet(STRX, "pproducao2", dini_Int(STRX, "pproducao2")-1);
if(dini_Int(STRX, "pproducao2") <= 0) {
dini_IntSet(STRX,"pproducao2", 0);
dini_IntSet(STRX,"eentrega2", 0);
new grana;
grana = (dini_Int(STRX, "Preco") / 10);
if(dini_Int(STRX, "Grana")+grana >= 1000000) {
dini_IntSet(STRX, "Grana", 1000000);
}
else {
dini_IntSet(STRX, "Grana", dini_Int(STRX, "Grana")+grana);
}
}
}
}
}
}

» Comando de retirar o lucro:

if(strcmp(cmdtext, "/retirarlucro", true) == 0)
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));

new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);

for(new p = 0; p < MAX_PROP; p++)
{
format(string, sizeof(string), "/Props/prop%d.ini", p);
format(file, sizeof(file), PASTA_CONTAS, aname);

if(dini_Exists(string))
{
if(IsPlayerInRangeOfPoint(playerid, 1.5, dini_Float(string, "PosX"), dini_Float(string, "PosY"), dini_Float(string, "PosZ")))
{
if(dini_Int(string, "TDono") == 1)
{
if(strcmp(dini_Get(string, "Dono"), pname, true) == 0)
{
GivePlayerGrana(playerid, dini_Int(string, "Grana"));
format(STRX, sizeof(STRX), "| EMPRESA | Vocк pegou $%d de lucro de sua Empresa!", dini_Int(string, "Grana"));
SendClientMessage(playerid, Amarelo, STRX);
}
else
{
SendClientMessage(playerid, Vermelho, "| ERRO | Esta Empresa nгo e sua!");
}
}
else
{
SendClientMessage(playerid, Vermelho, "| ERRO | Esta Empresa nгo tem dono!");
}
}
}
}
return 1;
}
Reply
#2

Leonardo Bradoks jogou fora 10% das 500000 laranjas que ele tinha. Quantas laranjas foram pro lixo?

500000 x 10/100 (dez por cento) = 50000 laranjas

Portanto, 50000 laranjas foram jogadas fora por Leonardo Bradoks.


PHP код:
new ReceitaEmpresa = (dini_Int(STRX"Preco") * 10/100); 
PHP код:
public Usou11() {
    
Usou12();
    for(new 
0MAX_PROPp++) {
        
format(STRXsizeof(STRX), "/Props/prop%d.ini"p);
        if(
dini_Exists(STRX)) {
            if(
dini_Int(STRX ,"entrega") >= 1) {
                
dini_IntSet(STRX"producao"dini_Int(STRX"producao")-1);
                if(
dini_Int(STRX"producao") <= 0) {
                    
dini_IntSet(STRX,"producao"0);
                    
dini_IntSet(STRX,"entrega"0);
                    new 
ReceitaEmpresa = (dini_Int(STRX"Preco") * 10/100);
                    if(
dini_Int(STRX"Grana")+ReceitaEmpresa >= 1000000) {
                    
dini_IntSet(STRX"Grana"1000000);
                } else {
                    
dini_IntSet(STRX"Grana"dini_Int(STRX"Grana")+ReceitaEmpresa);
                }
            }
        }
    }
}
}
public 
Usou12() {
    
Usou13();
    for(new 
0MAX_PROPp++) {
        
format(STRXsizeof(STRX), "/Props/prop%d.ini"p);
        if(
dini_Exists(STRX)) {
            if(
dini_Int(STRX ,"eentrega1") >= 1) {
                
dini_IntSet(STRX"pproducao1"dini_Int(STRX"pproducao1")-1);
                if(
dini_Int(STRX"pproducao1") <= 0) {
                    
dini_IntSet(STRX,"pproducao1"0);
                    
dini_IntSet(STRX,"eentrega1"0);
                    new 
ReceitaEmpresa = (dini_Int(STRX"Preco") * 10/100);
                    if(
dini_Int(STRX"Grana")+ReceitaEmpresa >= 1000000) {
                        
dini_IntSet(STRX"Grana"1000000);
                    } else {
                        
dini_IntSet(STRX"Grana"dini_Int(STRX"Grana")+ReceitaEmpresa);
                    }
                }
            }
        }
    }
}
public 
Usou13() {
    for(new 
0MAX_PROPp++) {
        
format(STRXsizeof(STRX), "/Props/prop%d.ini"p);
        if(
dini_Exists(STRX)) {
            if(
dini_Int(STRX ,"eentrega2") >= 1) {
                
dini_IntSet(STRX"pproducao2"dini_Int(STRX"pproducao2")-1);
                if(
dini_Int(STRX"pproducao2") <= 0) {
                    
dini_IntSet(STRX,"pproducao2"0);
                    
dini_IntSet(STRX,"eentrega2"0);
                    new 
ReceitaEmpresa = (dini_Int(STRX"Preco") * 10/100);
                    if(
dini_Int(STRX"Grana")+ReceitaEmpresa >= 1000000) {
                        
dini_IntSet(STRX"Grana"1000000);
                    } else {
                        
dini_IntSet(STRX"Grana"dini_Int(STRX"Grana")+ReceitaEmpresa);
                    }
                }
            }
        }
    }
}
if(
strcmp(cmdtext"/retirarlucro"true) == 0) {
    new 
pname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridpnamesizeof(pname));
    new 
aname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridanameMAX_PLAYER_NAME);
    for(new 
0MAX_PROPp++) {
        
format(stringsizeof(string), "/Props/prop%d.ini"p);
        
format(filesizeof(file), PASTA_CONTASaname);
        if(
dini_Exists(string)) {
            if(
IsPlayerInRangeOfPoint(playerid1.5dini_Float(string"PosX"), dini_Float(string"PosY"), dini_Float(string"PosZ"))) {
                if(
dini_Int(string"TDono") == 1) {
                    if(
strcmp(dini_Get(string"Dono"), pnametrue) == 0) {
                        
GivePlayerGrana(playeriddini_Int(string"Grana"));
                        
format(STRXsizeof(STRX), "| EMPRESA | Vocк pegou $%d de lucro de sua Empresa!"dini_Int(string"Grana"));
                        
SendClientMessage(playeridAmareloSTRX);
                    } else {
                        
SendClientMessage(playeridVermelho"| ERRO | Esta Empresa nгo e sua!");
                    }
                } else {
                    
SendClientMessage(playeridVermelho"| ERRO | Esta Empresa nгo tem dono!");
                }
            }
        }
    }
    return 
1;

Reply
#3

que desperdнcio de laranjas :u
- VLW pela ajuda!
Reply
#4

Um pequeno sisteminha que acabei de criar aqui para quebrar as dъvidas futuras de muita gente que sempre perguntam algo relacionado a porcentagem.

Utilizando a funзгo GetPercentualValue(porcentagem, valor)

porcentagem - Porcentagem que deseja obter do valor;
valor - Valor que deseja obter a porcentagem;

Код:
GetPercentualValue(10, 500000)
Um exemplo de uso:
PHP код:
CMD:getporcentagem(playeridparams[]) {
    new 
porcentagemvalorstring[128];
    if(!
IsPlayerConnected(playerid)) return SendClientMessage(playerid, -1"[ ERRO ] {FF0000}Vocк nгo estб conectado no servidor !");
    if(
sscanf(params"dd"porcentagemvalor)) return SendClientMessage(playerid, -1"[ ERRO ] use: {FF0000}/getporcentagem [porcentagem] [valor]");
    
format(stringsizeof(string), "[ ! ] Vocк quer saber quanto й %d%s de %d e o resultado й %d"porcentagem"%%",valorGetPercentualValue(porcentagemvalor));
    
SendClientMessage(playerid0x80FF80AAstring);
    return 
1;



Utilize a stock no final de todo seu script gamemode ou filterscript etc...
PHP код:
stock GetPercentualValue(percentualvalue) {
    new 
Percentual = (value percentual/100);
    return 
Percentual;

Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)