SA-MP Forums Archive
[Ajuda] Comando - 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] Comando (/showthread.php?tid=572936)



Comando - neymar1477 - 03.05.2015

Galera estou adicionando um efeito, no carro. Como faзo para proibir que o mesmo efeito seja colocado 2 vezes? porque se colocam ele 2 vezes, ele buga e nгo remove !!! Olha o code !!!

pawn Код:
public OnPlayerSelectedMenuRow(playerid, row)
{
    new Menu: Current = GetPlayerMenu(playerid);
    if (Current == outrosmenu)
        {
        switch (row)
                {
        case 0:
            ShowMenuForPlayer(outrosmenu, playerid);
        }
    }
       
    if (Current == outrosmenu)
        {
        switch(row)
        {
        case 0: // Outros
                    {   // Mini
                            TogglePlayerControllable(playerid, true);
                        SetPVarInt( playerid, "minigun", 1 );
                        SetPVarInt( playerid, "minigun", CreateObject( 362,0,0,0,0,0,0 ));
                        SetPVarInt( playerid, "minigun2", CreateObject( 362,0,0,0,0,0,0 ));
                        AttachObjectToVehicle( GetPVarInt( playerid, "minigun" ), GetPlayerVehicleID( playerid ), -1.200000,0.075000,0.150000,-2.700001,27.000005,-264.599853 );
                        AttachObjectToVehicle( GetPVarInt( playerid, "minigun2" ), GetPlayerVehicleID( playerid ), 1.274999,0.075000,0.150000,-2.700001,27.000005,-264.599853 );
                        SendClientMessage( playerid, 0xFFFFFFAA, "Minigun de enfeite Instalada" );
                    }



Re: Comando - Rhayziin - 03.05.2015

Uй, acho que й sу vocк remover antes de adicionar o efeito. Daн, toda vez que o jogador for instalar o efeito, ficarб apenas um.


Re: Comando - neymar1477 - 03.05.2015

Quote:
Originally Posted by Rhayziin
Посмотреть сообщение
Uй, acho que й sу vocк remover antes de adicionar o efeito. Daн, toda vez que o jogador for instalar o efeito, ficarб apenas um.
Nгo ajudou


Re: Comando - GabrielDias_Invision - 03.05.2015

Eu nгo entendo mt desse sistema de PVar mas acho que se vc botar um if ja resolve:
Код:
if(GetPVarInt(playerid, "minigun") != 0)
    return SendClientMessage(playerid, -1, "[ERRO] Seu carro jб tem minigun");



Re: Comando - neymar1477 - 03.05.2015

Eu coloquei um cуdigo pra remover os efeito quando sair do veiculo, se o player coloca 1 vez ele remove normalmente, agora se ele colocar o mesmo efeito mais de 1 vez , o efeito nгo remove...

pawn Код:
public OnPlayerExitVehicle(playerid, vehicleid)
{
DestroyObject( GetPVarInt( playerid, "minigun" ));
DeletePVar( playerid, "minigun" );
DestroyObject( GetPVarInt( playerid, "minigun2" ));
DeletePVar( playerid, "minigun" );

return 1;
}



Re: Comando - GabrielDias_Invision - 03.05.2015

Onde vocК adicionou o codigo q te passei?


Re: Comando - neymar1477 - 03.05.2015

Quote:
Originally Posted by GabrielDias_Invision
Посмотреть сообщение
Onde vocК adicionou o codigo q te passei?
Aqui

pawn Код:
public OnPlayerSelectedMenuRow(playerid, row)
{
    new Menu: Current = GetPlayerMenu(playerid);
    if (Current == outrosmenu)
        {
        switch (row)
                {
        case 0:
            ShowMenuForPlayer(outrosmenu, playerid);
        }
    }
       
    if (Current == outrosmenu)
        {
        switch(row)
        {
        case 0: // Outros
if(GetPVarInt(playerid, "minigun") != 0) //<<<<<<<<<<<<
                    {   // Mini
                            TogglePlayerControllable(playerid, true);
                        SetPVarInt( playerid, "minigun", 1 );
                        SetPVarInt( playerid, "minigun", CreateObject( 362,0,0,0,0,0,0 ));
                        SetPVarInt( playerid, "minigun2", CreateObject( 362,0,0,0,0,0,0 ));
                        AttachObjectToVehicle( GetPVarInt( playerid, "minigun" ), GetPlayerVehicleID( playerid ), -1.200000,0.075000,0.150000,-2.700001,27.000005,-264.599853 );
                        AttachObjectToVehicle( GetPVarInt( playerid, "minigun2" ), GetPlayerVehicleID( playerid ), 1.274999,0.075000,0.150000,-2.700001,27.000005,-264.599853 );
                        SendClientMessage( playerid, 0xFFFFFFAA, "Minigun de enfeite Instalada" );
return SendClientMessage(playerid, -1, "[ERRO] Seu carro jб tem minigun"); //<<<<<<<<<<
                    }



Re: Comando - GabrielDias_Invision - 03.05.2015

Vocк adicionou errado.

Uso correto:
Код:
public OnPlayerSelectedMenuRow(playerid, row)
{
    new Menu: Current = GetPlayerMenu(playerid);
    if (Current == outrosmenu)
        {
        switch (row)
                {
        case 0:
            ShowMenuForPlayer(outrosmenu, playerid);
        }
    }

    if (Current == outrosmenu)
    {
        switch(row)
        {
            case 0:// Mini
            {
                if(GetPVarInt(playerid, "minigun") != 0)
                    return SendClientMessage(playerid, -1, "[ERRO] Seu carro jб tem minigun");

                TogglePlayerControllable(playerid, true);
                SetPVarInt( playerid, "minigun", 1 );
                SetPVarInt( playerid, "minigun", CreateObject( 362,0,0,0,0,0,0 ));
                SetPVarInt( playerid, "minigun2", CreateObject( 362,0,0,0,0,0,0 ));
                AttachObjectToVehicle( GetPVarInt( playerid, "minigun" ), GetPlayerVehicleID( playerid ), -1.200000,0.075000,0.150000,-2.700001,27.000005,-264.599853 );
                AttachObjectToVehicle( GetPVarInt( playerid, "minigun2" ), GetPlayerVehicleID( playerid ), 1.274999,0.075000,0.150000,-2.700001,27.000005,-264.599853 );
                SendClientMessage( playerid, 0xFFFFFFAA, "Minigun de enfeite Instalada" );
            }



Re: Comando - neymar1477 - 03.05.2015

Boa cara funcionou !!! Sу tem mais 1 probleminha, tipo, quando eu adiciono o mesmo efeito na segunda vez, ele bloqueia certinho, mais em contrapartida o carro fica travado, nao anda !!!


Re: Comando - GabrielDias_Invision - 03.05.2015

Quote:
Originally Posted by neymar1477
Посмотреть сообщение
Boa cara funcionou !!! Sу tem mais 1 probleminha, tipo, quando eu adiciono o mesmo efeito na segunda vez, ele bloqueia certinho, mais em contrapartida o carro fica travado, nao anda !!!
Esqueci deste detalhe, sу editar para:
Код:
if(GetPVarInt(playerid, "minigun") != 0)
                {
                    SendClientMessage(playerid, -1, "[ERRO] Seu carro jб tem minigun");
                    TogglePlayerControllable(playerid, true);
                    return 1;
                }