[Ajuda] Pequena Ajuda com DeletePlayer3DTextLabel :\
#1

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.
Reply
#2

UP Aqui Por Favor Alguйm
Reply
#3

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;
}
Reply
#4

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 :\
Reply
#5

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
Reply
#6

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
Reply
#7

tenta

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

*-* ...
Reply
#9

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.
Reply
#10

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 ?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)