SA-MP Forums Archive
[AJUDA] Destruir certos veнculos - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA] Destruir certos veнculos (/showthread.php?tid=305451)



[AJUDA] Destruir certos veнculos - AW4Y - 22.12.2011

Bom eu uso um comando que cria carro com a variбvel Carro[playerid]...

Eu quero que quando eu digite "/rc" respawne os carros normais (essa parte jб tem no comando) e destrua os carros da variбvel Carro[playerid]

pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        return 1;
    }
Ajudem pls? Nгo sei como faзo


Re: [AJUDA] Destruir certos veнculos - [O.z]Caroline - 22.12.2011

pawn Код:
if(!strcmp(cmdtext,"/str", true))
{
    for(new i; i != sizeof(Carro); ++i)
    {
        DestroyVehicle(Carro[i]);
        printf("Veiculo destruido ( Carro[%i] )", i);
    }
    return 1;
}



Re: [AJUDA] Destruir certos veнculos - AW4Y - 22.12.2011

Desse jeito eu jб sabia, queria por no comando mesmo

Deixa quieto.


Re: [AJUDA] Destruir certos veнculos - Cristhian - 22.12.2011

pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
                else if(!IsPlayerInVehicle(i, Carro[i]))
                {
                    DestroyVehicle(Carro[i]);
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        return 1;
    }



Re: [AJUDA] Destruir certos veнculos - [O.z]Caroline - 22.12.2011

pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        for(new i; i != sizeof(Carro); ++i)
        {
            DestroyVehicle(Carro[i]);
            printf("Veiculo destruido ( Carro[%i] )", i);
        }
        return 1;
    }



Re: [AJUDA] Destruir certos veнculos - AW4Y - 22.12.2011

E como coloco pra nгo destruir os carros que estгo sendo usados?


Re: [AJUDA] Destruir certos veнculos - Cristhian - 22.12.2011

Quote:
Originally Posted by [O.z]Caroline
Посмотреть сообщение
pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        for(new i; i != sizeof(Carro); ++i)
        {
            DestroyVehicle(Carro[i]);
            printf("Veiculo destruido ( Carro[%i] )", i);
        }
        return 1;
    }
nгo usamos return dentro de um loop correto ?

@topic

no meu cуdigo sу serгo destruнdos os carros que nгo estiverem em uso.. tente testa-lo


Re: [AJUDA] Destruir certos veнculos - [O.z]Caroline - 22.12.2011

#Cristian: Sim.

pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        for(new i; i != sizeof(Carro); ++i)
        {
            for(new e; e != MAX_PLAYERS; ++e)
            {
                if(!IsPlayerInVehicle(e, Carro[i]))
                {
                    DestroyVehicle(Carro[i]);
                    printf("Veiculo destruido ( Carro[%i] )", i);
                }
            }
        }
        return 1;
    }



Re: [AJUDA] Destruir certos veнculos - AW4Y - 22.12.2011

Quote:
Originally Posted by Cristhian
Посмотреть сообщение
pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
                else if(!IsPlayerInVehicle(i, Carro[i]))
                {
                    DestroyVehicle(Carro[i]);
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        return 1;
    }
Valeu Cristian e Caroline, funcionou perfeitamente!

Dei rep aos 2!


Re: [AJUDA] Destruir certos veнculos - Cristhian - 22.12.2011

Quote:
Originally Posted by [O.z]Caroline
Посмотреть сообщение
#Cristian: Sim.

pawn Код:
if(strcmp(cmdtext, "/rc", true) == 0)
    {
        if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000, "[ERRO] VocК nгo estб logado na RCON.");
        new str[40], nome[24], bool:vehicle[MAX_VEHICLES];
        GetPlayerName(playerid, nome, 24);
        format(str, 40, "O Admin %s Respawnou os veiculos", nome);
        SendClientMessageToAll(-1, str);
        for(new j = 1; GetVehicleModel(j); ++j)
        {
            vehicle[j] = false;
            for(new i, p = GetMaxPlayers(); i < p; ++i)
            {
                if(!IsPlayerInAnyVehicle(i) || !IsPlayerConnected(i)) continue;
                if(IsPlayerInVehicle(i, j))
                {
                    vehicle[j] = true;
                    break;
                }
            }
            if(!vehicle[j]) SetVehicleToRespawn(j);
        }
        for(new i; i != sizeof(Carro); ++i)
        {
            for(new e; e != MAX_PLAYERS; ++e)
            {
                if(!IsPlayerInVehicle(e, Carro[i]))
                {
                    DestroyVehicle(Carro[i]);
                    printf("Veiculo destruido ( Carro[%i] )", i);
                }
            }
        }
        return 1;
    }
ah tб, outro dia o macintoch confundiu minha cabeзa quanto isso, dizendo que nгo tem nada a ver usar return dentro de loop's

@topic

pawn Код:
for(new i; i != sizeof(Carro); ++i)
no caso sizeof(Carro) seria MAX_PLAYERS entгo nгo precisaria usar 2 loop's