[Ajuda] ajuda colete
#1

eu tenho em um GM aqui um sistema q quando se й cop e esta com colete..aparece um colete(objeto) no player.
porйm ele sу estб aparecendo para mim,,outros players q tbm sгo cop ficam sem o colete.. Pq o colete sу esta aparecendo para mim? alguem me ajuda por favor
Cуdigo:
pawn Код:
new Float:Colete[MAX_PLAYERS];//colete objeto
pawn Код:
if(IsPlayerConnected(i))
        {
        //=================================colete objeto============================//
            GetPlayerArmour(i,Colete[i]);
            if(IsACop(i))
            if(Colete[i] > 0)
                SetPlayerAttachedObject(i,4,19142,1,0.1,0.05,0.0,0.0,0.0,0.0);
              //SetPlayerAttachedObject(i,4,373,1,0.1,0.05,0.0,0.0,0.0,0.0);
            else
                RemovePlayerAttachedObject(i,4);
        //========================================================================//
Reply
#2

Eu tenho um sistema de colete feito por min se quiser add msn: petrick_schoba@live.com
Reply
#3

Obrigado cara..mas eu queria arrumar este meu aqui
Reply
#4

pawn Код:
forward CheckarColete(playerid);

public OnGameModeInit()
{
    SetTimer("CheckarColete", 1000, true); // Verifica se o jogador possui colete a cada segundo.
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    RemovePlayerAttachedObject(playerid, 1);
    return 1;
}

public CheckarColete(playerid)
{
    new Float:Colete;
    GetPlayerArmour(playerid, Colete);
    if(IsACop(playerid))
    {
        if(Colete >= 1)
        {
            SetPlayerAttachedObject(playerid,1,19142,1,0.1,0.05,0.0,0.0,0.0,0.0);
        }
        else
        {
            RemovePlayerAttachedObject(playerid, 1);
        }
    }
    return 1;
}
Fiz este sistema, teste ai

P.S: Voce deve setar o colete para o jogador, nгo para todos os jogadores conectados. Apartir do momento em que um objecto й agregado ao PLAYERID, todos os outros jogadores vгo conseguir ver esse objecto.
Reply
#5

Nao funcionou cara..continua aparecendo em uma pessoa apenas.

(obs: O problema nгo й uma pessoa apenas ver, o objeto(colete) aparece sу em uma pessoa,por exemplo,se o colete estiver em mim,nenhuma outra pessoa podera usar junto,como se sу existisse um)
Reply
#6

lembre-se, tens que usar settimex para publics com parвmetros.
Reply
#7

mas esse nao й o caso cara,,pois senao ele n funcionaria de forma correta..pelo contrario,,ele funciona,,mas sу para um player
Reply
#8

Isto deve resolver o seu problema .


Coloque :


pawn Код:
//No OnGameModeInit:


SetTimer("ColocarColete", 1000, true);



//E, no Final do GM:


forward ColocarColete();
public ColocarColete()
{
    for(new x = 0, y = GetMaxPlayers(); x != y; x++)
    {
        if(!IsPlayerConnected(x) | !IsACop(x))   continue;
        new Float:TotalColete;
        GetPlayerArmour(x, TotalColete);
        if(TotalColete > 0.0)       SetPlayerAttachedObject(x, 4, 19142, 1, 0.1, 0.05, 0.0, 0.0, 0.0, 0.0);
        else    RemovePlayerAttachedObject(x, 4);
    }
    return true;
}


Espero ter ajudado .
Reply
#9

Deve funcionar:

pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid) {

    if(IsACop(playerid)) {
        static Float: coleteChecar;
        GetPlayerArmour(playerid, coleteChecar);
   
        if(coleteChecar > 0.0) {
            SetPlayerAttachedObject(x, 4, 19142, 1, 0.1, 0.05, 0.0, 0.0, 0.0, 0.0);
        }
        else {
            RemovePlayerAttachedObject(playerid, 4);
        }
    }
   
    return 1;
}
Reply
#10

Rjjj funcionou o seu code,,sу tem um probleminha..o colete fica invisivel..ou seja,,a skin fica invisivel no peito..kkk..como arruma isso?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)