[Ajuda] Erro Dinheiro do Cifrгo
#1

Olб galera, tudo bem?

Entгo, estб dando erro na public OnPlayerPickUpPickup (Aonde pega o Cifrгo) do GameMod, nгo sei o que estб errado =/ me ajude ae galera, preciso muito consertar este erro.

Код:
public OnPlayerPickUpPickup(playerid, pickupid)
{
 	for(new i=0;i<MAX_GZS;i++)
	{
	    if(pickupid == Cifroes[i])
	    {
	        if(PlayerInfo[playerid][pAdmin] == 5) return SendClientMessage(playerid,COR_ERRO,"Erro: Vocк nгo pode fazer isto!");
		 	if((TempoCifrao[0] == 0 && PlayerInfo[playerid][pGang] == 1) || (TempoCifrao[1] == 0 && PlayerInfo[playerid][pGang] == 2) || (TempoCifrao[2] == 0 && PlayerInfo[playerid][pGang] == 3) || (TempoCifrao[3] == 0 && PlayerInfo[playerid][pGang] == 4) || (TempoCifrao[4] == 0 && PlayerInfo[playerid][pGang] == 5) || (TempoCifrao[5] == 0 && PlayerInfo[playerid][pGang] == 6) || (TempoCifrao[6] == 0 && PlayerInfo[playerid][pGang] == 7) || (TempoCifrao[7] == 0 && PlayerInfo[playerid][pGang] == 8) || (TempoCifrao[8] == 0 && PlayerInfo[playerid][pGang] == 9) || (TempoCifrao[9] == 0 && PlayerInfo[playerid][pGang] == 10) || (TempoCifrao[10] == 0 && PlayerInfo[playerid][pGang] == 11) || (TempoCifrao[11] == 0 && PlayerInfo[playerid][pGang] == 12))
	        {
	            new string[256];
                GivePlayerMoney(playerid,100000);
				if(PlayerInfo[playerid][pGang] == 1)
					TempoCifrao[0] = 60;
				else if(PlayerInfo[playerid][pGang] == 2)
                    TempoCifrao[1] = 60;
				else if(PlayerInfo[playerid][pGang] == 3)
				    TempoCifrao[2] = 60;
				else if(PlayerInfo[playerid][pGang] == 4)
				    TempoCifrao[3] = 60;
    			else if(PlayerInfo[playerid][pGang] == 5)
				    TempoCifrao[4] = 60;
				else if(PlayerInfo[playerid][pGang] == 6)
				    TempoCifrao[5] = 60;
			 	else if(PlayerInfo[playerid][pGang] == 7)
				    TempoCifrao[6] = 60;
				else if(PlayerInfo[playerid][pGang] == 8)
				    TempoCifrao[7] = 60;
				else if(PlayerInfo[playerid][pGang] == 9)
				    TempoCifrao[8] = 60;
				else if(PlayerInfo[playerid][pGang] == 10)
				    TempoCifrao[9] = 60;
				else if(PlayerInfo[playerid][pGang] == 11)
				    TempoCifrao[10] = 60;
 				else if(PlayerInfo[playerid][pGang] == 12)
				    TempoCifrao[11] = 60;
			}
		}
	}
	return 1;
}
Erro que estб dando:
Код:
C:\Users\xxxx\Downloads\gamemodes\Gang1.pwn(12406) : error 075: input line too long (after substitutions)



Linha do erro:
Код:
if((TempoCifrao[0] == 0 && PlayerInfo[playerid][pGang] == 1) || (TempoCifrao[1] == 0 && PlayerInfo[playerid][pGang] == 2) || (TempoCifrao[2] == 0 && PlayerInfo[playerid][pGang] == 3) || (TempoCifrao[3] == 0 && PlayerInfo[playerid][pGang] == 4) || (TempoCifrao[4] == 0 && PlayerInfo[playerid][pGang] == 5) || (TempoCifrao[5] == 0 && PlayerInfo[playerid][pGang] == 6) || (TempoCifrao[6] == 0 && PlayerInfo[playerid][pGang] == 7) || (TempoCifrao[7] == 0 && PlayerInfo[playerid][pGang] == 8) || (TempoCifrao[8] == 0 && PlayerInfo[playerid][pGang] == 9) || (TempoCifrao[9] == 0 && PlayerInfo[playerid][pGang] == 10) || (TempoCifrao[10] == 0 && PlayerInfo[playerid][pGang] == 11) || (TempoCifrao[11] == 0 && PlayerInfo[playerid][pGang] == 12))
Valeu..
Reply
#2

Por que vocк nгo tenta ler o erro? ^^'
Erro: linha de entrada muito longo

Olha o tamanho da sua restriзгo e olha o erro. Precisa mesmo responder?
Reply
#3

pawn Код:
if((TempoCifrao[0] == 0 && PlayerInfo[playerid][pGang] == 1) || (TempoCifrao[1] == 0 && PlayerInfo[playerid][pGang] == 2) || (TempoCifrao[2] == 0 && PlayerInfo[playerid][pGang] == 3)
|| (TempoCifrao[3] == 0 && PlayerInfo[playerid][pGang] == 4) || (TempoCifrao[4] == 0 && PlayerInfo[playerid][pGang] == 5) || (TempoCifrao[5] == 0 && PlayerInfo[playerid][pGang] == 6)
|| (TempoCifrao[6] == 0 && PlayerInfo[playerid][pGang] == 7) || (TempoCifrao[7] == 0 && PlayerInfo[playerid][pGang] == 8) || (TempoCifrao[8] == 0 && PlayerInfo[playerid][pGang] == 9)
|| (TempoCifrao[9] == 0 && PlayerInfo[playerid][pGang] == 10) || (TempoCifrao[10] == 0 && PlayerInfo[playerid][pGang] == 11) || (TempoCifrao[11] == 0 && PlayerInfo[playerid][pGang] == 12))
tenta pular uma linha sempre que o cуdigo chegar na divisгo entre a lista de codes do pawno
Reply
#4

Quote:
Originally Posted by hard_dalzot
Посмотреть сообщение
pawn Код:
if((TempoCifrao[0] == 0 && PlayerInfo[playerid][pGang] == 1) || (TempoCifrao[1] == 0 && PlayerInfo[playerid][pGang] == 2) || (TempoCifrao[2] == 0 && PlayerInfo[playerid][pGang] == 3)
|| (TempoCifrao[3] == 0 && PlayerInfo[playerid][pGang] == 4) || (TempoCifrao[4] == 0 && PlayerInfo[playerid][pGang] == 5) || (TempoCifrao[5] == 0 && PlayerInfo[playerid][pGang] == 6)
|| (TempoCifrao[6] == 0 && PlayerInfo[playerid][pGang] == 7) || (TempoCifrao[7] == 0 && PlayerInfo[playerid][pGang] == 8) || (TempoCifrao[8] == 0 && PlayerInfo[playerid][pGang] == 9)
|| (TempoCifrao[9] == 0 && PlayerInfo[playerid][pGang] == 10) || (TempoCifrao[10] == 0 && PlayerInfo[playerid][pGang] == 11) || (TempoCifrao[11] == 0 && PlayerInfo[playerid][pGang] == 12))
tenta pular uma linha sempre que o cуdigo chegar na divisгo entre a lista de codes do pawno
Nгo vai resolver. O negocio й separar em 2 bools ou fazer um loop < mais prбtico >.
pawn Код:
bool check = false;
for(int k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
Reply
#5

Quote:
Originally Posted by Kuddy
Посмотреть сообщение
Nгo vai resolver. O negocio й separar em 2 bools ou fazer um loop < mais prбtico >.
pawn Код:
bool check = false;
for(int k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
tu й nivel hardcore hein kkkkkkkk serviu atй pra mim aprender melhor sobre como diminuir a quantia de linhas vlw Kuddy
Reply
#6

Quote:
Originally Posted by Kuddy
Посмотреть сообщение
Nгo vai resolver. O negocio й separar em 2 bools ou fazer um loop < mais prбtico >.
pawn Код:
bool check = false;
for(int k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
vaai dar erro no int ( error 017: undefined symbol "int" )

tem de ser new

pawn Код:
bool check = false;
for(new k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
Reply
#7

Quote:
Originally Posted by Noturnobk
Посмотреть сообщение
Код:
public OnPlayerPickUpPickup(playerid, pickupid)
{
 	for(new i=0;i<MAX_GZS;i++)
	{
	    if(pickupid == Cifroes[i])
	    {
	        if(PlayerInfo[playerid][pAdmin] == 5) return SendClientMessage(playerid,COR_ERRO,"Erro: Vocк nгo pode fazer isto!");
		 	if((TempoCifrao[0] == 0 && PlayerInfo[playerid][pGang] == 1) || (TempoCifrao[1] == 0 && PlayerInfo[playerid][pGang] == 2) || (TempoCifrao[2] == 0 && PlayerInfo[playerid][pGang] == 3) || (TempoCifrao[3] == 0 && PlayerInfo[playerid][pGang] == 4) || (TempoCifrao[4] == 0 && PlayerInfo[playerid][pGang] == 5) || (TempoCifrao[5] == 0 && PlayerInfo[playerid][pGang] == 6) || (TempoCifrao[6] == 0 && PlayerInfo[playerid][pGang] == 7) || (TempoCifrao[7] == 0 && PlayerInfo[playerid][pGang] == 8) || (TempoCifrao[8] == 0 && PlayerInfo[playerid][pGang] == 9) || (TempoCifrao[9] == 0 && PlayerInfo[playerid][pGang] == 10) || (TempoCifrao[10] == 0 && PlayerInfo[playerid][pGang] == 11) || (TempoCifrao[11] == 0 && PlayerInfo[playerid][pGang] == 12))
	        {
	            new string[256];
                GivePlayerMoney(playerid,100000);
				if(PlayerInfo[playerid][pGang] == 1)
					TempoCifrao[0] = 60;
				else if(PlayerInfo[playerid][pGang] == 2)
                    TempoCifrao[1] = 60;
				else if(PlayerInfo[playerid][pGang] == 3)
				    TempoCifrao[2] = 60;
				else if(PlayerInfo[playerid][pGang] == 4)
				    TempoCifrao[3] = 60;
    			else if(PlayerInfo[playerid][pGang] == 5)
				    TempoCifrao[4] = 60;
				else if(PlayerInfo[playerid][pGang] == 6)
				    TempoCifrao[5] = 60;
			 	else if(PlayerInfo[playerid][pGang] == 7)
				    TempoCifrao[6] = 60;
				else if(PlayerInfo[playerid][pGang] == 8)
				    TempoCifrao[7] = 60;
				else if(PlayerInfo[playerid][pGang] == 9)
				    TempoCifrao[8] = 60;
				else if(PlayerInfo[playerid][pGang] == 10)
				    TempoCifrao[9] = 60;
				else if(PlayerInfo[playerid][pGang] == 11)
				    TempoCifrao[10] = 60;
 				else if(PlayerInfo[playerid][pGang] == 12)
				    TempoCifrao[11] = 60;
			}
		}
	}
	return 1;
}
[/code]
Dб pra optmizar bastante seu cуdigo ai cara k, primeiro foi com o cуdigo do Kuddy e tambйm ai tem vбrios else if desnecessбrio auehaue

Primeiro, poderia ter feito assim:
pawn Код:
switch(PlayerInfo[playerid][pGang]) {
    case 1: TempoCifrao[0] = 60;
    case 2: TempoCifrao[1] = 60;
    case 3: TempoCifrao[2] = 60;
    case 4: TempoCifrao[3] = 60;
    case 5: TempoCifrao[4] = 60;
    case 6: TempoCifrao[5] = 60;
    case 7: TempoCifrao[6] = 60;
    case 8: TempoCifrao[7] = 60;
    case 9: TempoCifrao[8] = 60;
    case 10: TempoCifrao[9] = 60;
    case 11: TempoCifrao[10] = 60;
    case 12: TempoCifrao[11] = 60;
}
Se vocк quer mesmo deixar todos com o tempo igual, entгo poderia atй resumir assim.
pawn Код:
if(PlayerInfo[playerid][pGang] > 0 && PlayerInfo[playerid][pGang] <= 12)
    TempoCifrao[PlayerInfo[playerid][pGang] - 1] = 60;
Hehe

E resolvendo seu erro lб, repostando o que o PT disse.
pawn Код:
bool check = false;
for(new k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
Reply
#8

Quote:
Originally Posted by PT
Посмотреть сообщение
vaai dar erro no int ( error 017: undefined symbol "int" )

tem de ser new

pawn Код:
bool check = false;
for(new k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
Fiz uma mistura linda de c# e pawn huehue

Ainda estб errado, o certo seria:
pawn Код:
new bool:check = false;
for(new k=1; k < 12; k++){
 if(TempoCifrao[k-1] == 0 && PlayerInfo[playerid][pGang] == k) {
    check = true;
    break;
  }
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)