[Pedido] Update3DTextLabelText - Pegar o ID
#1

Olб, criei um comando de criar casas no meu servidor e jб cria o Pickup, e Texto flutuante.. jб armazena nas pastas e tudo certinho.. dai entгo criei um comando para editar "a casa" tipo, definir se estб a venda, preзo, dono etc..

o comando estб bem bangunзado mas (EU) entendo.. o problema que quero entender й como pegar o ID de uma Text3DLabelText. o comando padrгo de criaзгo de Textos flutuante nгo pedem ID.. entгo como posso obter este ID??


OBS: uso DOF2 e zCMD
(Nгo uso streamer por conta dos erros que jб tentei solucionar atй hoje e nгo resolvi.)
Reply
#2

PHP код:
new
    
id;
id Create3DTextLabel(...); 
Reply
#3

Quote:
Originally Posted by 1sbedx
Посмотреть сообщение
PHP код:
new
    
id;
id Create3DTextLabel(...); 
meu comando de criaзгo estб assim
PHP код:
//-----------------------COMANDO PARA CRIAR CASAS-------------------------------
CMD:ccasa(playeridparams[])
{
    
//verificar se possui permissгo
    
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playeridCor_Vermelha"| ERRO | Vocк nгo tem permissгo para usar este comando!");
    
//criar as variaveis necessarias
    
new Float:pos[3], tmp_casaidtmp_var_format_casa[256], str_pnome[MAX_PLAYER_NAME], str_format[128];
    
//pegar o id digitado para criaзгo da casa
    
if(sscanf(params"d"tmp_casaid)) return SendClientMessage(playeridCor_Vermelha"| ERRO | Modo de uso: /Ccasa [ID da Casa]");
    
//pegar o nome do jogador
    
GetPlayerName(playeridstr_pnomesizeof(str_pnome));
    
//formatar para receber o destino onde salvara a casa
    
format(str_formatsizeof(str_format), pTodasCasastmp_casaid);
    
//pegar a posiзгo atual
    
GetPlayerPos(playeridpos[0], pos[1], pos[2]);
    
//verificar se o arquivo existe, se nгo existir vai criar
    
if(DOF2_FileExists(str_format))
    {
        
//avisar que jб possui uma casa com o ID informado
        
SendClientMessage(playeridCor_Vermelha"| ERRO | Jб existe uma casa registrada com este ID.");
    }
    else
    {
        
//criar icone de casa vermelha flutuante
        
CreatePickup(195221pos[0]+0.03pos[1]-0.03pos[2], 0);
        
//Formatar a mensagem que mostrara flutuante
        
format(tmp_var_format_casasizeof(tmp_var_format_casa), "{00ff00}Casa \n{ffffff}ID: {FF8000}%d \n{FF0000}Bloqueada"tmp_casaid);
        
//criar o texto da casa flutuante
        
Create3DTextLabel(tmp_var_format_casaCor_Vermelhapos[0], pos[1], pos[2]+0.615.000);
        
//criar o arquivo na pasta (casa) com ID informado
        
DOF2_CreateFile(str_format);
        
DOF2_WriteFile(); //comeзar escrever no arquivo
        
DOF2_SetInt(str_format"CasaID"tmp_casaid); //definir o ID da casa
        
DOF2_SetInt(str_format"CasaInterior"0); //definir o interior da casa (ainda vou mudar)
        
DOF2_SetFloat(str_format"CasaPosX"pos[0]); //posiзгo X da casa
        
DOF2_SetFloat(str_format"CasaPosY"pos[1]); //posiзгo Y da casa
        
DOF2_SetFloat(str_format"CasaPosZ"pos[2]); //posiзгo Z da casa
        
DOF2_SaveFile(); //salvar o que foi escrito no arquivo
        
new format_tmpcasaid[256]; //formatar a mensagem de sucesso e enviar
        
format(format_tmpcasaidsizeof(format_tmpcasaid), "| Casas | Vocк criou uma nova casa com sucesso! ID: {00ff00}%d"tmp_casaid);
        
SendClientMessage(playeridCor_Laranjaformat_tmpcasaid);
        
cCasaNova true//definir que foi criado uma casa
        
cCasaNovaID tmp_casaid//definir o id global da casa para usar no comando de ediзгo da casa
        //posiзхes global para uso de teleporte no dialogo de ediзгo
        
cCasaNovaPos[0] = pos[0];
        
cCasaNovaPos[1] = pos[1];
        
cCasaNovaPos[2] = pos[2];
    }
    return 
1;

eu devo colocar no topo ou juntamente do comando? v: sou iniciante, sei o basico, bem basico
Reply
#4

Quote:
Originally Posted by 1sbedx
Посмотреть сообщение
PHP код:
new
    
id;
id Create3DTextLabel(...); 
Uma pequena correзгo...
PHP код:
new
    
Text3D:id;
id Create3DTextLabel(...); 
Nesse caso do exemplo do jovem acima a variбvel id armazenaria o id da 3DTextLabel criada
Reply
#5

Quote:
Originally Posted by GM_KoDi
Посмотреть сообщение
Uma pequena correзгo...
PHP код:
new
    
Text3D:id;
id Create3DTextLabel(...); 
Nesse caso do exemplo do jovem acima a variбvel id armazenaria o id da 3DTextLabel criada
Obrigado, deu tudo certo. ++rep
Reply
#6

PHP код:
new Text3D:HouseLabel[MБXIMO];
CMD:ccasa(playeridparams[]) 

    
//verificar se possui permissгo 
    
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playeridCor_Vermelha"| ERRO | Vocк nгo tem permissгo para usar este comando!"); 
    
//criar as variaveis necessarias 
    
new Float:pos[3], tmp_casaidtmp_var_format_casa[256], str_pnome[MAX_PLAYER_NAME], str_format[128]; 
    
//pegar o id digitado para criaзгo da casa 
    
if(sscanf(params"d"tmp_casaid)) return SendClientMessage(playeridCor_Vermelha"| ERRO | Modo de uso: /Ccasa [ID da Casa]"); 
    
//pegar o nome do jogador 
    
GetPlayerName(playeridstr_pnomesizeof(str_pnome)); 
    
//formatar para receber o destino onde salvara a casa 
    
format(str_formatsizeof(str_format), pTodasCasastmp_casaid); 
    
//pegar a posiзгo atual 
    
GetPlayerPos(playeridpos[0], pos[1], pos[2]); 
    
//verificar se o arquivo existe, se nгo existir vai criar 
    
if(DOF2_FileExists(str_format)) 
    { 
        
//avisar que jб possui uma casa com o ID informado 
        
SendClientMessage(playeridCor_Vermelha"| ERRO | Jб existe uma casa registrada com este ID."); 
    } 
    else 
    { 
        
//criar icone de casa vermelha flutuante 
        
CreatePickup(195221pos[0]+0.03pos[1]-0.03pos[2], 0); 
        
//Formatar a mensagem que mostrara flutuante 
        
format(tmp_var_format_casasizeof(tmp_var_format_casa), "{00ff00}Casa \n{ffffff}ID: {FF8000}%d \n{FF0000}Bloqueada"tmp_casaid); 
        
//criar o texto da casa flutuante 
        
HouseLabel[tmp_casaid] = Create3DTextLabel(tmp_var_format_casaCor_Vermelhapos[0], pos[1], pos[2]+0.615.000); 
        
//criar o arquivo na pasta (casa) com ID informado 
        
DOF2_CreateFile(str_format); 
        
DOF2_WriteFile(); //comeзar escrever no arquivo 
        
DOF2_SetInt(str_format"CasaID"tmp_casaid); //definir o ID da casa 
        
DOF2_SetInt(str_format"CasaInterior"0); //definir o interior da casa (ainda vou mudar) 
        
DOF2_SetFloat(str_format"CasaPosX"pos[0]); //posiзгo X da casa 
        
DOF2_SetFloat(str_format"CasaPosY"pos[1]); //posiзгo Y da casa 
        
DOF2_SetFloat(str_format"CasaPosZ"pos[2]); //posiзгo Z da casa 
        
DOF2_SaveFile(); //salvar o que foi escrito no arquivo 
        
new format_tmpcasaid[256]; //formatar a mensagem de sucesso e enviar 
        
format(format_tmpcasaidsizeof(format_tmpcasaid), "| Casas | Vocк criou uma nova casa com sucesso! ID: {00ff00}%d"tmp_casaid); 
        
SendClientMessage(playeridCor_Laranjaformat_tmpcasaid); 
        
cCasaNova true//definir que foi criado uma casa 
        
cCasaNovaID tmp_casaid//definir o id global da casa para usar no comando de ediзгo da casa 
        //posiзхes global para uso de teleporte no dialogo de ediзгo 
        
cCasaNovaPos[0] = pos[0]; 
        
cCasaNovaPos[1] = pos[1]; 
        
cCasaNovaPos[2] = pos[2]; 
    } 
    return 
1
}  
CMD:qualquer(playeridparams[])
{
    new 
tmp_casaid;
    if(
sscanf(params"d"tmp_casaid)) return SendClientMessage(playeridCor_Vermelha"| ERRO | Modo de uso: /qualquer [ID da Casa]"); 
    
Update3DTextLabelText(HouseLabel[tmp_casaid], -1"Olб!");
    return 
1;

Vocк precisa armazenar o ID da label criada para poder edita-la ou atй mesmo deletar a mesma.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)