SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 22/05/2020, 10:58 PM   #1
VSxD
Big Clucker
 
VSxD's Avatar
 
Join Date: Jan 2013
Posts: 141
Reputation: -1
Default [AJUDA] Pontuação Guerra

Bom galera quero fazer um sistema que tipo a cada 5 Minutos uma organização que tiver com mais membros dentro da zona de guerra ganha 1 Ponto por maioria , porem ta dando certo tipo a pontuação e o tempo o problema esta sendo que , ta contando por membro na zona tipo tem 2 DE UMA ORG e 1 DA OUTRA os 3 pontua tipo:
2 DA ORG TERRORISTA GANHOU 2 PONTO
1 DA EXERCITO GANHOU 1 Ponto,

Porém queria que so a ORG Terrorista ganhasse 1 Ponto por ser maioria de membros na zona de guerra teria como alguem me ajudar

Code:
stock EndGuerra2()
{
    for(new x; x < MAX_ORGS; ++x){
	    new gStr[128];
		new orgid = GetPlayerOrg(x);
		if(TendoGuerra)
		{
		   	if(orgid==3||orgid==15||orgid==23)
			if(IsPlayerInGuerra(x) && orgid != -1)
			{
				 //GPTS[x]++;
		 		if(GPTS[orgid] == GPTS[orgid] || GPTS[orgid] > GPTS[orgid])
				{
    				format(gStr, sizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!", GetOrgNameTerrorista(orgid));
     				SendClientMessageToAll(GetPlayerColor(x), gStr);
					PSG[orgid] += 1;
				}
				else
				{
					SendClientMessageToAll(-1, "{FFFF00}[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
				}
				TimerMGuerra = (1)*60;
			}
	  	}
	}
	return 1;
}
VSxD is offline   Reply With Quote
Old 23/05/2020, 12:59 AM   #2
Hatiro
Huge Clucker
 
Hatiro's Avatar
 
Join Date: Mar 2019
Posts: 384
Reputation: 10
Default Re: Pontuação Guerra

testa
Code:
stock EndGuerra2()
{
    for(new x; x < MAX_ORGS; ++x){
	    new gStr[128];
		new orgid = GetPlayerOrg(x);
		if(TendoGuerra)
		{
		   	if(orgid==3||orgid==15||orgid==23)
			if(IsPlayerInGuerra(x) && orgid != -1)
			{
				 //GPTS[x]++;
		 		if(GPTS[orgid] == GPTS[orgid] || GPTS[orgid] > GPTS[orgid])
				{
    				format(gStr, sizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!", GetOrgNameTerrorista(orgid));
     				SendClientMessageToAll(GetPlayerColor(x), gStr);
					PSG[orgid] += 1;
				}
				else
				{
					SendClientMessageToAll(-1, "{FFFF00}[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
				}
				TimerMGuerra = (1)*60;
			}
	  	}
           break;
	}
	return 1;
}
__________________
https://pastebin.com/raw/KpFdDhaa]Projects
se eu lhe ajudei clique numa imagem assim perto da minha postagem para adicionar reputação,Scripts https://pastebin.com/u/Hatiro
Hatiro is offline   Reply With Quote
Old 23/05/2020, 05:28 PM   #3
VSxD
Big Clucker
 
VSxD's Avatar
 
Join Date: Jan 2013
Posts: 141
Reputation: -1
Default Re: Pontuação Guerra

Quote:
Originally Posted by Hatiro View Post
testa
Code:
stock EndGuerra2()
{
    for(new x; x < MAX_ORGS; ++x){
	    new gStr[128];
		new orgid = GetPlayerOrg(x);
		if(TendoGuerra)
		{
		   	if(orgid==3||orgid==15||orgid==23)
			if(IsPlayerInGuerra(x) && orgid != -1)
			{
				 //GPTS[x]++;
		 		if(GPTS[orgid] == GPTS[orgid] || GPTS[orgid] > GPTS[orgid])
				{
    				format(gStr, sizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!", GetOrgNameTerrorista(orgid));
     				SendClientMessageToAll(GetPlayerColor(x), gStr);
					PSG[orgid] += 1;
				}
				else
				{
					SendClientMessageToAll(-1, "{FFFF00}[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
				}
				TimerMGuerra = (1)*60;
			}
	  	}
           break;
	}
	return 1;
}
man ajudou tipo o flood de pontuação parou , só teria como me ajudar agr pq ta dando empate quando tem 2 da msm org no gangzone , sendo que era pra ganhar 1 Ponto por maioria
VSxD is offline   Reply With Quote
Old 25/05/2020, 05:16 PM   #4
VSxD
Big Clucker
 
VSxD's Avatar
 
Join Date: Jan 2013
Posts: 141
Reputation: -1
Default Re: Pontuação Guerra

upp alguem poderia me ajudar
VSxD is offline   Reply With Quote
Old 25/05/2020, 06:09 PM   #5
Hatiro
Huge Clucker
 
Hatiro's Avatar
 
Join Date: Mar 2019
Posts: 384
Reputation: 10
Default Re: Pontuação Guerra

não sei como as função dae ta mas pode tentar
Code:
stock EndGuerra2()
{
    for(new x; x < MAX_ORGS; ++x){
	    new gStr[128];
		new orgid = GetPlayerOrg(x);
		if(TendoGuerra)
		{
		   	if(orgid==3||orgid==15||orgid==23)
			if(IsPlayerInGuerra(x) && orgid != -1)
			{
				 //GPTS[x]++;
		 		if(GPTS[orgid] == GPTS[orgid] || GPTS[orgid] > GPTS[orgid])
				{
    				format(gStr, sizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!", GetOrgNameTerrorista(orgid));
     				SendClientMessageToAll(GetPlayerColor(x), gStr);
					PSG[orgid] = 1;
				}
				else
				{
					SendClientMessageToAll(-1, "{FFFF00}[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
				}
				TimerMGuerra = (1)*60;
			}
	  	}
           break;
	}
	return 1;
}
edit: se precisar coloca mas pontuação tem outras alternativa
__________________
https://pastebin.com/raw/KpFdDhaa]Projects
se eu lhe ajudei clique numa imagem assim perto da minha postagem para adicionar reputação,Scripts https://pastebin.com/u/Hatiro
Hatiro is offline   Reply With Quote
Old 26/05/2020, 03:21 PM   #6
VSxD
Big Clucker
 
VSxD's Avatar
 
Join Date: Jan 2013
Posts: 141
Reputation: -1
Default Re: Pontuação Guerra

Quote:
Originally Posted by Hatiro View Post
não sei como as função dae ta mas pode tentar
Code:
stock EndGuerra2()
{
    for(new x; x < MAX_ORGS; ++x){
	    new gStr[128];
		new orgid = GetPlayerOrg(x);
		if(TendoGuerra)
		{
		   	if(orgid==3||orgid==15||orgid==23)
			if(IsPlayerInGuerra(x) && orgid != -1)
			{
				 //GPTS[x]++;
		 		if(GPTS[orgid] == GPTS[orgid] || GPTS[orgid] > GPTS[orgid])
				{
    				format(gStr, sizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!", GetOrgNameTerrorista(orgid));
     				SendClientMessageToAll(GetPlayerColor(x), gStr);
					PSG[orgid] = 1;
				}
				else
				{
					SendClientMessageToAll(-1, "{FFFF00}[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
				}
				TimerMGuerra = (1)*60;
			}
	  	}
           break;
	}
	return 1;
}
edit: se precisar coloca mas pontuação tem outras alternativa
ta dando a mesma coisa , tipo não ta reconhecendo a quantia de players dentro da zona de guerra, se tem um empate ta saindo pontuação pra alguma ORG quando deveria tipo ninguem pontuar
VSxD is offline   Reply With Quote
Old 26/05/2020, 03:41 PM   #7
pWesley
Gangsta
 
Join Date: Feb 2011
Posts: 890
Reputation: 21
Default Re: Pontuação Guerra

Troca esse MAX_ORGS por MAX_PLAYERS
__________________
[Tutorial] Explicação rápida sobre a DIALOG_STYLE_PASSWORD
[Filterscript] Medkit de chão
pWesley is offline   Reply With Quote
Old 26/05/2020, 05:49 PM   #8
MateGPlay
Big Clucker
 
MateGPlay's Avatar
 
Join Date: Jan 2018
Location: Florianópolis, Santa Catarina
Posts: 105
Reputation: 1
Default Re: Pontuação Guerra

PHP Code:
stock EndGuerra2()
{
    new 
gStr[128], orgplayers[MAX_ORGS] = 0orgvencedora = -1;
    for(new 
0MAX_PLAYERSx++)
        if(
TendoGuerra && GetPlayerOrg(x) != -&& IsPlayerInGuerra(x))
            
orgplayers[GetPlayerOrg(x)]++;
    for(new 
0MAX_ORGSx++) {
        if(
orgplayers[GetPlayerOrg(x)] > orgplayers[GetPlayerOrg(x)+1])
            
orgvencedora GetPlayerOrg(x);
        else if(
orgplayers[GetPlayerOrg(x)] < orgplayers[GetPlayerOrg(x)+1])
            
orgvencedora GetPlayerOrg(x)+1;
    }
    if(
orgvencedora == -1)
        return 
SendClientMessageToAll(0xFFFF00"[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
    
format(gStrsizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!"GetOrgNameTerrorista(orgvencedora));
    
SendClientMessageToAll(GetPlayerColor(orgvencedora), gStr);
    
PSG[orgvencedora]++;
    
TimerMGuerra = (1)*60;
    return 
1;


Last edited by MateGPlay; 26/05/2020 at 10:20 PM.
MateGPlay is online now   Reply With Quote
Old 27/05/2020, 11:50 PM   #9
VSxD
Big Clucker
 
VSxD's Avatar
 
Join Date: Jan 2013
Posts: 141
Reputation: -1
Default Re: Pontuação Guerra

Quote:
Originally Posted by MateGPlay View Post
PHP Code:
stock EndGuerra2()
{
    new 
gStr[128], orgplayers[MAX_ORGS] = 0orgvencedora = -1;
    for(new 
0MAX_PLAYERSx++)
        if(
TendoGuerra && GetPlayerOrg(x) != -&& IsPlayerInGuerra(x))
            
orgplayers[GetPlayerOrg(x)]++;
    for(new 
0MAX_ORGSx++) {
        if(
orgplayers[GetPlayerOrg(x)] > orgplayers[GetPlayerOrg(x)+1])
            
orgvencedora GetPlayerOrg(x);
        else if(
orgplayers[GetPlayerOrg(x)] < orgplayers[GetPlayerOrg(x)+1])
            
orgvencedora GetPlayerOrg(x)+1;
    }
    if(
orgvencedora == -1)
        return 
SendClientMessageToAll(0xFFFF00"[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
    
format(gStrsizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria, estão com mais membros na zona de guerra!!"GetOrgNameTerrorista(orgvencedora));
    
SendClientMessageToAll(GetPlayerColor(orgvencedora), gStr);
    
PSG[orgvencedora]++;
    
TimerMGuerra = (1)*60;
    return 
1;

ooh man , ta certo só que tipo
tem 1 EXERCITO , 1 ASFARC , 1 GI , 1 membro de cada ORG não ta reconhecendo o empate ta dando ponto para uma das ORG
VSxD is offline   Reply With Quote
Old 28/05/2020, 11:37 PM   #10
MateGPlay
Big Clucker
 
MateGPlay's Avatar
 
Join Date: Jan 2018
Location: Florianópolis, Santa Catarina
Posts: 105
Reputation: 1
Default Re: Pontuação Guerra

Quote:
Originally Posted by VSxD View Post
ooh man , ta certo só que tipo
tem 1 EXERCITO , 1 ASFARC , 1 GI , 1 membro de cada ORG não ta reconhecendo o empate ta dando ponto para uma das ORG
PHP Code:
    stock EndGuerra2()
{
    new 
gStr[128], orgplayers[MAX_ORGS] = 0orgvencedora = -1;
    for(new 
0MAX_PLAYERSx++)
        if(
TendoGuerra && GetPlayerOrg(x) != -&& IsPlayerInGuerra(x))
            
orgplayers[GetPlayerOrg(x)]++;
    for(new 
0MAX_ORGSx++) {
        if(
orgplayers[GetPlayerOrg(x)] > orgplayers[GetPlayerOrg(x)+1])
            
orgvencedora GetPlayerOrg(x);
        else if(
orgplayers[GetPlayerOrg(x)] < orgplayers[GetPlayerOrg(x)+1])
            
orgvencedora GetPlayerOrg(x)+1;
        else if(
orgplayers[orgvencedora] == orgplayers[GetPlayerOrg(x)+1] && orgvencedora != -1)
            
orgvencedora = -1;
    }
    if(
orgvencedora == -1)
        return 
SendClientMessageToAll(0xFFFF00"[GUERRA]: {FFFFFF}Houve um empate de membros na Guerra, e nenhuma organização pontuou!");
    
format(gStrsizeof(gStr), "• A Organização (%s) acabaram de pontuar por maioria: %d, estão com mais membros na zona de guerra!!"GetOrgNameTerrorista(orgvencedora), orgplayers[orgvencedora]);
    
SendClientMessageToAll(GetPlayerColor(orgvencedora), gStr);
    
PSG[orgvencedora]++;
    
TimerMGuerra = (1)*60;
    return 
1;

Testa Assim
MateGPlay is online now   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda] Sistema de pontuação com Org e checkpoint! Yak Português/Portuguese 6 05/04/2015 06:09 PM
[PEDIDO]Pontuação makino Português/Portuguese 9 13/02/2012 11:15 AM
[AJUDA]Gangzones dominaveis por pontuação paulsinger Português/Portuguese 4 12/09/2011 11:46 PM
[AJUDA]Gangzones dominaveis por pontuação paulsinger Português/Portuguese 1 12/09/2011 10:29 PM
[Ajuda]sistema de pontuação luckvice Português/Portuguese 7 01/06/2011 12:30 AM


All times are GMT. The time now is 09:31 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.