Portal SAMP
[Ajuda] GetPlayerVirtualWorld - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] GetPlayerVirtualWorld (/showthread.php?tid=981)



GetPlayerVirtualWorld - Rev - 26/03/2021

Estou modificando um sistema de tdm onde as equipes spawnam no mesmo interior porem com VW diferentes para quando forem sair do interior cada um vai para uma coordenada diferente da equipe.
estou com dificuldade na identificação do VW, tentei fazer assim, como no código a baixo, porem não funcionou, alguém me da uma dica?


Código PHP:
        switch(gTeam[playerid])
    
    {
    
        case SouthCreekBloods:
    
        {    
        
        new VwEquipe GetPlayerVirtualWorld(playerid);
        
        if(VwEquipe == 1)
        
        {
                    if(
IsPlayerInRangeOfPoint(playerid1.0460.5563,-88.5414,999.5547))
                    {
                        
SetPlayerPos(playerid2395.3953,693.5065,11.4531);
                        
SetPlayerFacingAngle(playerid3.2065);
                        
SetPlayerInterior(playerid0);
                        
SetPlayerVirtualWorld(playerid0);
                        
SetCameraBehindPlayer(playerid);
                        
CargarMapa(playerid);
                    }
    
            }
    
        



RE: GetPlayerVirtualWorld - xbruno1000x - 26/03/2021

Código incompleto, não é possível ajudá-lo. Onde está a parte onde você seta o jogador pro Vw = 1? Mande o código completo.


RE: GetPlayerVirtualWorld - Rev - 26/03/2021

(26/03/2021 09:26)Rev Escreveu: Estou modificando um sistema de tdm onde as equipes spawnam no mesmo interior porem com VW diferentes para quando forem sair do interior cada um vai para uma coordenada diferente da equipe.
estou com dificuldade na identificação do VW, tentei fazer assim, como no código a baixo, porem não funcionou, alguém me da uma dica?


Código PHP:
        switch(gTeam[playerid])
    
    {
    
        case SouthCreekBloods:
    
        {    
        
        new VwEquipe GetPlayerVirtualWorld(playerid);
        
        if(VwEquipe == 1)
        
        {
                    if(
IsPlayerInRangeOfPoint(playerid1.0460.5563,-88.5414,999.5547))
                    {
                        
SetPlayerPos(playerid2395.3953,693.5065,11.4531);
                        
SetPlayerFacingAngle(playerid3.2065);
                        
SetPlayerInterior(playerid0);
                        
SetPlayerVirtualWorld(playerid0);
                        
SetCameraBehindPlayer(playerid);
                        
CargarMapa(playerid);
                    }
    
            }
    
        

A parte que seta pro 1 ta funcionando, testei com comando e as partes que estão setando nos vw está funcionando, eu só quero saber como eu vou fazer para identificar que ele ta no vw 1, entendeu?
como essa é a porte que usa o IsPlayerInRangeOfPoint pra identificar que o player ta no ponto X, mandei só essa parte do código, não é que ele esteja incompleto, mas ja que não da pra ajudar, ta de boa.


RE: GetPlayerVirtualWorld - Levi.M - 26/03/2021

Acho que ao invés de ser variável local, deveria ser global, não?

Código PHP:
new VwEquipe[MAX_PLAYERS];

new 
VwEquipe GetPlayerVirtualWorld(playerid);
VwEquipe[playerid] = GetPlayerVirtualWorld(playerid); 



RE: GetPlayerVirtualWorld - Dayvison - 26/03/2021

Olá, seu código está certo, tudo depende de aonde você está usando ele, qual callback, etc...

Dica: Não use os números referentes aos VWs, ou qualquer coisa diretamente, melhora a legibilidade do código e para você não se perder futuramente.