[AJUDA] OnPlayerDeath errado!!! (Pontuaзгo estranha)
#1

Bom estou fazendo 1 gamemode com o garfield mas estamos tendo problemas com as pontuaзхes.
Esta todas elas erradas O.O nenhuma funcionando!
Vou explicar a intenзгo de cada uma e me ajudem a arrumar por favor

pawn Код:
public OnPlayerDeath(playerid, killerid)
{
    for(new i; i < MAX_PLAYERS; i ++) //Funзгo pra aplicar a todos player
    {
    if(GetPlayerTeam(killerid) == Time_Marinha) // Se o matador for marinha, a equipe ganha 1 de score
    {
    Marinha[i] += 1; // score +1
    }else
    if(GetPlayerTeam(killerid) == Time_Exercito) // Se o matador for exercito, a equipe ganha 1 de score
    {
    Exercito[i] += 1; // score +1
    }
    }
   
    for(new i; i < MAX_PLAYERS; i ++)
    {
    if(GetPlayerTeam(playerid) == Time_Marinha){ // Se o morto for marinha, a equipe perde 1 de score
    Marinha[i] -= 1; //perde 1 score
    }else
    if(GetPlayerTeam(playerid) == Time_Exercito){ // Se o morto for exercito, a equipe perde 1 de score
    Exercito[i] -= 1; //perde 1 score
    }
    }

    if(Equipe[killerid] == Equipe[playerid]) // Se alguem matar alguem da mesma equipe
    {
    new warning[256];
    format(warning, sizeof(warning), "[Anti-TK]:Por matar um membro de sua gang vocк foi morto!");
    SendClientMessage(killerid, 0xFFFF00AA, warning); // msg de aviso
    SetPlayerHealth(killerid, 0); // mata o assasino
    SetPlayerScore(killerid,GetPlayerScore(playerid) -1); e tira 1 de score do assasino
    }
    else if(Equipe[playerid] != Equipe[playerid]) // se quem matar ou morre for de equipe diferente
    {
    SetPlayerScore(killerid,GetPlayerScore(killerid) +1); // add 1 score ao player matador
    GivePlayerMoney(playerid,GetPlayerMoney(playerid) -500); // tira 500 de money de quem morre
    SetPlayerScore(playerid,GetPlayerScore(playerid) -1); // tira 1 score de quem morre
    Exp[playerid] += 10; // adiciona exp +10 pra quem mata
    if(killerid == 10){ Nivel[killerid] += 1; } // ganha de 10 em 10 = 1 level
    if(killerid == 20){ Nivel[killerid] += 1; }
    if(killerid == 30){ Nivel[killerid] += 1; }
    if(killerid == 40){ Nivel[killerid] += 1; }
    if(killerid == 50){ Nivel[killerid] += 1; }
    if(killerid == 60){ Nivel[killerid] += 1; }
    if(killerid == 70){ Nivel[killerid] += 1; }
    if(killerid == 80){ Nivel[killerid] += 1; }
    if(killerid == 90){ Nivel[killerid] += 1; }
    if(killerid == 100){ Nivel[killerid] += 1; } // Eu queria por mais de 100kills como diminuir esse codigo e fazer funcionar que pra cada 10 kills = 1 nivel ?
    if(Exp[killerid] >= 110){ Exp[killerid] -= 100; } // quando a exp chegar a 110 volta a 10
    if(playerid >= 1){ Exp[playerid] -= 10; } // o morto perde 10 de exp
    if(Exp[playerid] <= 0){ Exp[playerid] += 0; } // se a exp ficar menor ou igual a 0 ele volta a 0 pra nгo fica negativa
    if(playerid >= 10){ Nivel[playerid] -= 1; } //se morrer 10 vezes perde 1 nivel
    }
    return 1;
}
eu notei alguns erros mas nгo to entendendo pq ta pontuando tudo errado
OBS: EXP SCORE DO PLAYER E NIVEL NГO ESTГO MUDANDO!
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)