[Ajuda] Progress Bar mostrando quando nгo devia
#1

Galera eu to com um pequeno problema, eu jб usei progress bar em velocimetros e tudo mais, e sempre funcionou corretamente, sу aparecia quando entrava no carro, porйm agora estб dando problemas nгo sei por qual motivo, ela estб aparecendo quando conecta no server, coisa que nгo deveria, ela deveria aparecer apenas quando o player spawna, e quando morre deveria sumir, e nгo estб sumindo tambйm...
segue as ibagens:


ignorem as mensagens, estou tentando arrumar esse sisteminha ai...
Codes:
pawn Код:
/*________________________| Sistema de Fome Sede |____________________________*/
new Bar:fsBarFome[MAX_PLAYERS] = {INVALID_BAR_ID, ...};
new Bar:fsBarSede[MAX_PLAYERS] = {INVALID_BAR_ID, ...};

//ongamemodeinit
        fsBarFome[i] = CreateProgressBar(526.00, 137.00, 82.50, 4.19, verde, 100.0);
        fsBarSede[i] = CreateProgressBar(526.00, 146.00, 82.50, 4.19, verde, 100.0);
//onplayerconnect
    SetTimerEx("AtualizarFomeSede", true, 1000, "i", playerid);
    SetTimerEx("DiminuirFomeSede", false, 1000*60*2, "i", playerid);
    HideProgressBarForPlayer(playerid, fsBarFome[playerid]);//tentei atй isso mas nгo adiantou nada
    HideProgressBarForPlayer(playerid, fsBarSede[playerid]);
//onplayerspawn
    ShowProgressBarForPlayer(playerid, fsBarFome[playerid]);
    ShowProgressBarForPlayer(playerid, fsBarSede[playerid]);
//onplayerdeath
    HideProgressBarForPlayer(playerid, fsBarFome[playerid]);
    HideProgressBarForPlayer(playerid, fsBarSede[playerid]);
Agradeзo desde jб
Reply
#2

por que nunca ninguйm responde as minhas duvidas?? serб que й tгo difнcil assim?
Reply
#3

Eu para lhe ser sincero com o codigo que vc passou й dificil ajudar.
Reply
#4

poisй amigo o problema й que nгo tem nada de errado com o cуdigo, sinceramente eu nгo sei por que ele estб fazendo isso, qual code vocк precisa para tentar ajudar?
Reply
#5

pawn Код:
SetTimerEx("AtualizarFomeSede", true, 1000, "i", playerid);
SetTimerEx("DiminuirFomeSede", false, 1000*60*2, "i", playerid);
o que tem dentro dessas variaveis? acho que vai ter de criar uma variavel para verificar se spawnou ou nao para ser usada nessas callbacks
Reply
#6

@EDIT:
Como pode a localizaзгo de tal funзгo mudar um sistema inteiro neh hehe deu certo jб aqui PT fiz o que eu falei ali e coloquei em OnPlayerSpawn e um KillTimer no OnPlayerDeath tah funcionando 100% agora hehe

ta aqui PT, boa idйia vo por esses timers na public OnPlayerSpawn, ver se dб certo, assim sу irб contar apartir do momento que o player spawnar
pawn Код:
forward AtualizarFomeSede(playerid);
public AtualizarFomeSede(playerid)
{
    if(fsBarFome[playerid] != INVALID_BAR_ID)
    {
        SetProgressBarValue(fsBarFome[playerid], InfoJogador[playerid][iFome]);
        UpdateProgressBar(fsBarFome[playerid], playerid);
        if(InfoJogador[playerid][iFome] < 70 && InfoJogador[playerid][iFome] > 20)
        {
            SetProgressBarColor(fsBarFome[playerid], 0xFFC801C8);
        }
        if(InfoJogador[playerid][iFome] < 20)
        {
            SetProgressBarColor(fsBarFome[playerid], vermelho);
        }
        else if(InfoJogador[playerid][iFome] > 70)
        {
            SetProgressBarColor(fsBarFome[playerid], groove);
        }
    }
    if(fsBarSede[playerid] != INVALID_BAR_ID)
    {
        SetProgressBarValue(fsBarSede[playerid], InfoJogador[playerid][iSede]);
        UpdateProgressBar(fsBarSede[playerid], playerid);
        if(InfoJogador[playerid][iSede] < 70 && InfoJogador[playerid][iSede] > 20)
        {
            SetProgressBarColor(fsBarSede[playerid], 0xFFC801C8);
        }
        if(InfoJogador[playerid][iSede] < 20)
        {
            SetProgressBarColor(fsBarSede[playerid], vermelho);
        }
        else if(InfoJogador[playerid][iSede] > 70)
        {
            SetProgressBarColor(fsBarSede[playerid], groove);
        }
    }
    return 1;
}

forward DiminuirFomeSede(playerid);
public DiminuirFomeSede(playerid)
{
    SetTimerEx("DiminuirFomeSede", false, 1000*60*2, "i", playerid);
    if(InfoJogador[playerid][iSede] > 0)
    {
        InfoJogador[playerid][iSede]--;
    }
    if(InfoJogador[playerid][iFome] > 0)
    {
        InfoJogador[playerid][iFome]--;
    }
    if(InfoJogador[playerid][iFome] < 20)
    {
        MP(playerid, grad3, "Vб comer algo, vocк estб faminto!");
    }
    else if(InfoJogador[playerid][iFome] < 60 && InfoJogador[playerid][iFome] > 20)
    {
        MP(playerid, grad3, "Vocк estб ficando com fome, melhor procurar algo para comer!");
    }
    if(InfoJogador[playerid][iSede] < 20)
    {
        MP(playerid, grad3, "Vб beber algo, vocк estб com muita sede!");
    }
    else if(InfoJogador[playerid][iSede] < 60 && InfoJogador[playerid][iSede] > 20)
    {
        MP(playerid, grad3, "Vocк estб ficando com sede, melhor procurar algo para beber!");
    }
    return 1;
}
Reply
#7

sim tambem podera colocar no OnPlayerSpawn creio que funcionara como quer.
Reply
#8

Quote:
Originally Posted by PT
Посмотреть сообщение
sim tambem podera colocar no OnPlayerSpawn creio que funcionara como quer.
jб ageitei sim PT vlw
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)