[AJUDA]Setar o mesmo interior do carro para o player
#1

O problema e o seguinte se o carro tiver num interior buga o player poir nao setar o interior a ele
PHP код:
    if(strcmp(cmd"/ircarro"true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
            if (
PlayerInfo[playerid][pAdmin] >= 4000)
            {
                if(
PlayerInfo[playerid][pATrabalhar] < && PlayerInfo[playerid][pAdmin] != 5000 && PlayerInfo[playerid][pAdmin] != 6000)
                {
                    
SendClientMessage(playeridCOLOR_WARNING"Vocк nгo estб trabalhando! (/adm)");
                    return 
1;
                }
                new 
testcar;
                if(
unformat(cmdtext"s[30]i",Comando,testcar))
                {
                    
SendClientMessage(playeridCOLOR_GRAD1"USE: /ircarro [carro id]");
                    return 
1;
                }
                if(
testcar || testcar CAR_AMOUNT) { SendClientMessage(playeridCOLOR_WARNING"** ID do veiculo invalido"); return 1; }
                new 
Float:cwx2,Float:cwy2,Float:cwz2;
                
GetVehiclePos(testcarcwx2cwy2cwz2);
                new 
mundocarro GetVehicleVirtualWorld(testcar);
                new 
tmpcar GetPlayerVehicleID(playerid);
                if (
GetPlayerState(playerid) == 2)
                {
                    
SetVehiclePos(tmpcarcwx2cwy2cwz2);
                    
LinkVehicleToInterior(tmpcarGetPlayerInterior(playerid));
                    
SetVehicleVirtualWorld(tmpcarmundocarro);
                }
                else
                {
                    
SetPlayerPos(playeridcwx2cwy2cwz2);
                    
SetPlayerInterior(playeridmundocarro);
                    
SetPlayerVirtualWorld(playeridmundocarro);
                }
                
SendClientMessage(playeridCOLOR_GRAD1"Vocк foi teleportado pelo Admin!");
                
SetPlayerInterior(playerid,0);
            }
            else
            {
                
SendClientMessage(playeridCOLOR_WARNING"*** Voce nao tem permissao para usar esse comando.");
            }
        }
        return 
1;
    } 
como setar o interior ao player se nao esiste funca de pegar interior do carro ?

Desde ja agradeзo a ajuda e compreensгo ! ! !
Reply
#2

https://sampwiki.blast.hk/wiki/LinkVehicleToInterior
Reply
#3

e pegar o interior esse ai seta o interior desse eu ja sabia ja tem no Codigo
Reply
#4

pawn Код:
if(strcmp(cmd, "/ircarro", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if (PlayerInfo[playerid][pAdmin] >= 4000)
            {
                if(PlayerInfo[playerid][pATrabalhar] < 1 && PlayerInfo[playerid][pAdmin] != 5000 && PlayerInfo[playerid][pAdmin] != 6000)
                {
                    SendClientMessage(playerid, COLOR_WARNING, "Vocк nгo estб trabalhando! (/adm)");
                    return 1;
                }
                new testcar;
                if(unformat(cmdtext, "s[30]i",Comando,testcar))
                {
                    SendClientMessage(playerid, COLOR_GRAD1, "USE: /ircarro [carro id]");
                    return 1;
                }
                if(testcar < 1 || testcar > CAR_AMOUNT) { SendClientMessage(playerid, COLOR_WARNING, "** ID do veiculo invalido"); return 1; }
                new Float:cwx2,Float:cwy2,Float:cwz2;
                GetVehiclePos(testcar, cwx2, cwy2, cwz2);
                new mundocarro = GetVehicleVirtualWorld(testcar);
                new tmpcar = GetPlayerVehicleID(playerid);
                if (GetPlayerState(playerid) == 2)
                {
                    SetVehiclePos(tmpcar, cwx2, cwy2, cwz2);
                    LinkVehicleToInterior(tmpcar, GetPlayerInterior(playerid));
                    SetVehicleVirtualWorld(tmpcar, mundocarro);
                    SetPlayerVirtualWorld(playerid, mundocarro);
                }
                else
                {
                    SetPlayerPos(playerid, cwx2, cwy2, cwz2);
                    SetPlayerVirtualWorld(playerid, mundocarro);
                }
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк foi teleportado pelo Admin!");
                SetPlayerInterior(playerid,0);
                SetPlayerVirtualWorld(playerid, 0);
            }
            else
            {
                SendClientMessage(playerid, COLOR_WARNING, "*** Voce nao tem permissao para usar esse comando.");
            }
        }
        return 1;
    }
Reply
#5

nгo da pq no seu ainda esta
PHP код:
LinkVehicleToInterior(tmpcarGetPlayerInterior(playerid)); 
nao tem como pegar interior se ao menos o player ta em interior

pra entenderem melhor um exemplo da funзгo q eu preciso mais nгo existe
PHP код:
GetVehicleInterior(testcar
se tem como pegar o interior do veiculo q estou indo
Reply
#6

teste o codigo do player.

caso nгo tenha reparado, o codigo dele estб assim:
pawn Код:
LinkVehicleToInterior(tmpcar, GetPlayerInterior(playerid));
ou seja, ele estб getando o interior do jogador e setando o veнculo para o mesmo do player
Reply
#7

como ele pega o interior do player se ao menos o player conseguiu chegar no interior ? preciso conseguir pegar o inerior do veiculo q estou indo pra setar os demais no comando
Reply
#8

Coloque este cуdigo :


pawn Код:
//No Topo do GM:

new InterioresVeiculos[MAX_VEHICLES];

stock New_LinkVehicleToInterior(vehicleid, interiorid)
{
    if((vehicleid - 1) >= 0 && (vehicleid - 1) < sizeof(InterioresVeiculos)) InterioresVeiculos[vehicleid - 1] = interiorid;
    return LinkVehicleToInterior(vehicleid, interiorid);
}

#if defined _ALS_LinkVehicleToInterior
    #undef LinkVehicleToInterior
#else
    #define _ALS_LinkVehicleToInterior
#endif
#define LinkVehicleToInterior New_LinkVehicleToInterior

stock New_DestroyVehicle(vehicleid)
{
    if((vehicleid - 1) >= 0 && (vehicleid - 1) < sizeof(InterioresVeiculos)) InterioresVeiculos[vehicleid - 1] = 0;
    return DestroyVehicle(vehicleid);
}

#if defined _ALS_DestroyVehicle
    #undef DestroyVehicle
#else
    #define _ALS_DestroyVehicle
#endif
#define DestroyVehicle New_DestroyVehicle


stock GetVehicleInterior(vehicleid)     return ((vehicleid - 1) >= 0 && (vehicleid - 1) < sizeof(InterioresVeiculos)) ? InterioresVeiculos[vehicleid - 1] : 0;


E passe a utilizar a funзгo GetVehicleInterior para conseguir o ID do interior do veнculo :


pawn Код:
printf("ID do interior do veнculo de ID 20: %d", GetVehicleInterior(20));

Ela retorna 0 se o veнculo nгo existir, assim como o GetVehicleVirtualWorld.



Espero ter ajudado .
Reply
#9

nao funciono ainda nao pega o interior o player cai do ceu

@EDIT
alguem mais disponibiliza ajudar ?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)