[Ajuda] Camera
#1

Eae, Terminei recentemente um sistema de casa e tava pensando em colocar Imobiliбria para comprar / anunciar й "Ver casa" que e meu problema, quando ele coloca o id da casa no INPUT ele vai ate a casa e seta uma cвmera no player para ele ver a casa.

Alguem tem uma ideia de como fazer?

Atй +

Reply
#2

Usa o editor de mapa do sa-mp, tem um botгo nele p pegar coordenada da camera, ex:

SetPlayerCameraPos(playerid, 1728.5601, -1318.1866, 34.4206);
SetPlayerCameraLookAt(playerid, 1727.7589, -1318.7825, 34.0756);
Reply
#3

Nгo й bem isso, Nгo serб sу 1 casa.

E que tipo, minha ideia e quando ele coloca o id da casa no INPUT eu seto ele ate a casa e seto uma camera nele e afasto a cвmera do player para mostrar toda a casa.

A 1° coisa que eu pensei foi desse jeito mas eu pensei que nгo seria apenas 1 casa, e sim tive essa ideia, ou mesmo colocar por exemplo:

PHP код:
SetPlayerPos(playeridDOF2::GetFloat(File"CasaX"), DOF2::GetFloat(File"CasaY"), DOF2::GetFloat(File"CasaZ"));
SetPlayerCameraPos(playeridDOF2::GetFloat(File"CasaX"), DOF2::GetFloat(File"CasaY"), DOF2::GetFloat(File"CasaZ"));
SetPlayerCameraLookAt(playeridDOF2::GetFloat(File"CasaX"), DOF2::GetFloat(File"CasaY"), DOF2::GetFloat(File"CasaZ")); 
Mas tenho que afastar a cвmera
Reply
#4

PHP код:
CMD:vercasa(playeridparams[])
{
    
ShowPlayerDialog(playerid3DIALOG_STYLE_INPUT"Casas""Digite o id da casa""Visualizar""Cancelar");
    return 
1;

PHP код:
    if(dialogid == 3)
    {
        
escolha[playerid] = strval(inputtext);
          if(!
response)
        {
            
SendClientMessage(playerid, -1"Vocк nгo quer ver");
            return 
1;
        }
        if(!
strval(inputtext))
        {
        
SendClientMessage(playerid, -1"Digite somente numeros!");
           
ShowPlayerDialog(playerid3DIALOG_STYLE_INPUT"Casas""Digite o id da casa""Visualizar""Cancelar");
        return 
1;
        }
            if(
escolha[playerid] == 1)
            {
                
SetPlayerCameraPos(playerid2003.3597, -1720.679029.8490);
                
SetPlayerCameraLookAt(playerid2002.3553, -1720.661529.2091);
                
SendClientMessage(playerid, -1"Casas 01!");
                                return 
1;
            }
            if(
escolha[playerid] == 2)
            {
                
SetPlayerCameraPos(playerid2000.9430, -1682.832525.5212);
                
SetPlayerCameraLookAt(playerid1999.9388, -1682.816725.0712);
                
SendClientMessage(playerid, -1"Casas 02!");
                                return 
1;
            }
        
SendClientMessage(playerid, -1"Casas disponiveis!");
        return 
1;
    } 
Se for poucas casa, da para fazer assim
Reply
#5

Kkk, Tava testando aqui algumas formas mas nгo sei qual posiзгo exata para olhar um вngulo bom da casa

PHP код:
SetPlayerPos(playeridDOF2::GetFloat(File"CasaX"), DOF2::GetFloat(File"CasaY"), DOF2::GetFloat(File"CasaZ"));
SetPlayerCameraPos(playeridDOF2::GetFloat(File"CasaX")+30.0DOF2::GetFloat(File"CasaY")+30.0DOF2::GetFloat(File"CasaZ")+30.0);
SetPlayerCameraLookAt(playeridDOF2::GetFloat(File"CasaX"), DOF2::GetFloat(File"CasaY"), DOF2::GetFloat(File"CasaZ")); 
Ou eu faзo com InterpolateCameraPos e coloco um timer para ir mudando a camera para ver toda a casa, Para isso eu preciso saber os вngulos

Vo tentar usar o editor para ver se consigo algo.
Reply
#6

Sгo muitas casas? Dessa forma q eu fiz fica legal mano.

pelo id acho q fica melhor e menos trabalhoso. Da p pegar a coordenada certa da casa e afastar a camera ( n lembro qual й q afasta, se й o x,y ou z).

Fiz uma alteraзгozinha

PHP код:

    
if(dialogid == 3)
    {
        
escolha[playerid] = strval(inputtext);
          if(!
response)
        {
            
SendClientMessage(playerid, -1"Vocк nгo quer ver");
            return 
1;
        }
        if(!
strval(inputtext))
        {
        
SendClientMessage(playerid, -1"Digite somente numeros!");
           
ShowPlayerDialog(playerid3DIALOG_STYLE_INPUT"Casas""Digite o id da casa""Visualizar""Cancelar");
        return 
1;
        }
            if(
escolha[playerid] == 1)
            {
                
SetPlayerCameraPos(playerid2003.3597, -1720.679029.8490);
                
SetPlayerCameraLookAt(playerid2002.3553, -1720.661529.2091);
                
SendClientMessage(playerid, -1"Casas 01!");
                
SendClientMessage(playerid, -1"Digite /sair, para parar de visualizar!");
                return 
1;
            }
            if(
escolha[playerid] == 2)
            {
                
SetPlayerCameraPos(playerid2000.9430, -1682.832525.5212);
                
SetPlayerCameraLookAt(playerid1999.9388, -1682.816725.0712);
                
SendClientMessage(playerid, -1"Casas 02!");
                   
SendClientMessage(playerid, -1"Digite /sair, para parar de visualizar!");
                   return 
1;
            }
            if(
escolha[playerid] > 2)
            {
            
SendClientMessage(playerid, -1"Id invalido!");
            return 
1;
            }
        
SendClientMessage(playerid, -1"Casas disponiveis!");
        return 
1;
    }
    return 
1;

PHP код:
forward Voltar(playerid);
public 
Voltar(playerid)
{
    
SetPlayerPos(playeridpPosX[playerid],  pPosY[playerid], pPosZ[playerid]);
    
SetCameraBehindPlayer(playerid);
    return 
1;

Reply
#7

O Problema e que eu quero colocar uns 3 Вngulos diferentes, Para isso eu quero usar InterpolateCameraPos pra ficar mais legal, Desse jeito que vc ta fazendo vai dar trabalho.

Amanhг eu continuo isso, e tbm coloco Comprar / Anunciar e Ver Casa na Imobiliбria tenho que colocar as casas disponнveis para comprar na Imobiliбria que tbm n faзo ideia de como fazer
Reply
#8

Vou tentar trazer um exemplo pra vocк amanhг, hoje eu tenho aula e tenho que acordar um pouco cedo.
Reply
#9

Sugestгo:

Faz o player dono do imovel adicionar na imobiliбria.

Ss daria mto trabalho, assim й bom p poucas unidades.
Reply
#10

Sim, no dialog da imobiliбria tem Casas disponiveis / Anunciar / Ver Casa, no caso se o player tiver uma casa ele pode anunciб-la na imobiliбria para outros jogadores comprar, Quando anunciada ela vai para Casas disponiveis e o jogador verб o id da casa disponivel e pode ver ela no " Ver Casa " antes de comprб-la.

Tenho que dar um jeito de colocar meu sistema de casa nesse acima, Ou entгo fazer outro e apenas deixar os dialogs.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)