SA-MP Forums Archive
[Ajuda] Pequena Ajuda com DeletePlayer3DTextLabel :\ - 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] Pequena Ajuda com DeletePlayer3DTextLabel :\ (/showthread.php?tid=386738)



Pequena Ajuda com DeletePlayer3DTextLabel :\ - Lucas-Fc - 21.10.2012

Oi Galera. Tenho um cуdigo que Anexar um rуtulo de texto 3D para jogador. ( Attach3DTextLabelToPlayer ) De Acordo com a Organizaзгo dele.

Se ele For do Exйrcito Fica em cima da cabeзa dele, ( Militar ) se Terrorista ( Terrorista ).

Mais, se o player morre, ou escolhe outra organizaзгo, os Textos 3D Ficam Bugados. ( Um em cima do outro )

Dai eu Pensei, em fazer uma funзгo, para que quando ele morre-se, ou trocasse de Time, o Texto3D Fosse Deletada.

Tentei fazer com a funзгo :
DeletePlayer3DTextLabel na Public OnPlayerDeath e na Public OnPlayerRequestClass

Mais nгo da certo.

Vou Postar aqui os cуdigos .


pawn Код:
public OnPlayerSpawn(playerid)
{
    if(GetPlayerTeam(playerid) == 1)
    {
    new Text3D:text = Create3DTextLabel("Militar",Azul_Claro, 30.0, 40.0, 10.0, 40.0,0);
    Attach3DTextLabelToPlayer(text, playerid, 0.0, 0.0, 0.7);
    }
    if(GetPlayerTeam(playerid) == 2)
    {
    new Text3D:text = Create3DTextLabel("Terrorista",Verde_Claro, 30.0, 40.0, 10.0, 40.0,0);
    Attach3DTextLabelToPlayer(text, playerid, 0.0, 0.0, 0.7);
    }
    return 1;
}
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
        DeletePlayer3DTextLabel(playerid,text);
    return 1;
}
Esse Erro :

pawn Код:
C:\Users\Lucas\Desktop\Servidor\gamemodes\GM.pwn(282) : error 017: undefined symbol "text"
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase

1 Error.
Tentei definir no Topo do GM , Com uma variбvel Global, mais tambйm nгo dб certo.

pawn Код:
new text;
Preciso de Ajuda.


Re: Ajuda aqui Por Favor. - Lucas-Fc - 21.10.2012

UP Aqui Por Favor Alguйm


Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Sky™ - 21.10.2012

tente assim!

pawn Код:
// Topo
new Text3D:TextLabel[MAX_PLAYERS];

//Onplayerspawn



if(GetPlayerTeam(playerid) == 1)
{
    TextLabel[playerid] = CreateDynamic3DTextLabel("Militar", Azul_Claro, 0.0, 0.0, 0.4, 20.0, playerid, INVALID_VEHICLE_ID, 1, -1, -1, -1, 200.0);
    UpdateDynamic3DTextLabelText(TextLabel[playerid]);
}
if(GetPlayerTeam(playerid) == 2)
{
    TextLabel[playerid] = CreateDynamic3DTextLabel("Terrorista",Verde_Claro, 0.0, 0.0, 0.4, 20.0, playerid, INVALID_VEHICLE_ID, 1, -1, -1, -1, 200.0);
    UpdateDynamic3DTextLabelText(TextLabel[playerid]);
}


//para destroir
if(IsValidDynamic3DTextLabel(TextLabel[playerid]))
{
    DestroyDynamic3DTextLabel(TextLabel[playerid]);
    TextLabel[playerid] = Text3D:INVALID_3DTEXT_ID;
}



Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Lucas-Fc - 21.10.2012

Quote:
Originally Posted by Sky_.
Посмотреть сообщение
tente assim!

pawn Код:
// Topo
new Text3D:TextLabel[MAX_PLAYERS];

//Onplayerspawn



if(GetPlayerTeam(playerid) == 1)
{
    TextLabel[playerid] = CreateDynamic3DTextLabel("Militar", Azul_Claro, 0.0, 0.0, 0.4, 20.0, playerid, INVALID_VEHICLE_ID, 1, -1, -1, -1, 200.0);
    UpdateDynamic3DTextLabelText(TextLabel[playerid]);
}
if(GetPlayerTeam(playerid) == 2)
{
    TextLabel[playerid] = CreateDynamic3DTextLabel("Terrorista",Verde_Claro, 0.0, 0.0, 0.4, 20.0, playerid, INVALID_VEHICLE_ID, 1, -1, -1, -1, 200.0);
    UpdateDynamic3DTextLabelText(TextLabel[playerid]);
}


//para destroir
if(IsValidDynamic3DTextLabel(TextLabel[playerid]))
{
    DestroyDynamic3DTextLabel(TextLabel[playerid]);
    TextLabel[playerid] = Text3D:INVALID_3DTEXT_ID;
}
Assim deu mais de 16 Erros Cara.

Creio que nгo irб funcionar :\



Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Sky™ - 21.10.2012

Cara se Olho direitinho o Code n fiz pra vc dar Ctrl+v la e sim para vc ter base no mesmo para conseguir fazer este й o geito melhor de fazer tb da pra fazer do seu mais dб pra melhorar usando o que te falei
Olhe os erros ...

vc uso isto para Compilar??
https://sampforum.blast.hk/showthread.php?tid=102865


Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Lucas-Fc - 21.10.2012

Quote:
Originally Posted by Sky_.
Посмотреть сообщение
Cara se Olho direitinho o Code n fiz pra vc dar Ctrl+v la e sim para vc ter base no mesmo para conseguir fazer este й o geito melhor de fazer tb da pra fazer do seu mais dб pra melhorar usando o que te falei
Olhe os erros ...
Mesmo assim cara. Nгo Compila


Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - s4kuL - 21.10.2012

tenta

PHP код:
new Text3D:text DeletePlayer3DTextLabel(playerid,text); 



Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Sky™ - 21.10.2012

*-* ...


Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Don_Speed - 21.10.2012

Usa a logica amigo...
PHP код:
new Text3D:Donlabel[MAX_PLAYERS];
public 
OnPlayerSpawn(playerid)
{
    if(
GetPlayerTeam(playerid) == 1)
    {
        
Donlabel[playerid] = Create3DTextLabel("Militar",Azul_Claro30.040.010.040.0,0);
        
Attach3DTextLabelToPlayer(Donlabel[playerid], playerid0.00.00.7);
    }
    if(
GetPlayerTeam(playerid) == 2)
    {
        
Donlabel[playerid] = Create3DTextLabel("Terrorista",Verde_Claro30.040.010.040.0,0);
        
Attach3DTextLabelToPlayer(Donlabel[playerid], playerid0.00.00.7);
    }
    return 
1;
}
public 
OnPlayerDeath(playeridkilleridreason)
{
    
DeletePlayer3DTextLabel(playerid,Donlabel[playerid]);
    return 
1;


Pedido de mau_tito para te ajudar!


@edit1
usar logica e simples sevoce vai criar ela em uma callback pra destruir em outra cria a varieavel global.



Re: Pequena Ajuda com DeletePlayer3DTextLabel :\ - Lucas-Fc - 21.10.2012

Quote:
Originally Posted by Don_Speed
Посмотреть сообщение
Usa a logica amigo...
PHP код:
new Text3D:Donlabel[MAX_PLAYERS];
public 
OnPlayerSpawn(playerid)
{
    if(
GetPlayerTeam(playerid) == 1)
    {
        
Donlabel[playerid] = Create3DTextLabel("Militar",Azul_Claro30.040.010.040.0,0);
        
Attach3DTextLabelToPlayer(Donlabel[playerid], playerid0.00.00.7);
    }
    if(
GetPlayerTeam(playerid) == 2)
    {
        
Donlabel[playerid] = Create3DTextLabel("Terrorista",Verde_Claro30.040.010.040.0,0);
        
Attach3DTextLabelToPlayer(Donlabel[playerid], playerid0.00.00.7);
    }
    return 
1;
}
public 
OnPlayerDeath(playeridkilleridreason)
{
    
DeletePlayer3DTextLabel(playerid,Donlabel[playerid]);
    return 
1;


Pedido de mau_tito para te ajudar!


@edit1
usar logica e simples sevoce vai criar ela em uma callback pra destruir em outra cria a varieavel global.
pawn Код:
warning 213: tag mismatch
pawn Код:
DeletePlayer3DTextLabel(playerid,Donlabel[playerid]);
Como isso ?