[AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
Rodrigo_LosT - 14.11.2010
Assim, eu nгo faзo idйia de como fazer o update, ja tentei de tudo, e apуs varias tentativas, eu percebi que o Update sу funciona na funзгo que cria... Se vocк botar em otro lugar nгo vai acontecer nada, e assim pra Deletar tbm...
Eu ja tentei fazer com que ela se destruisse e criasse otra, mais ela n se destroi... olhem como estб meu cуdigo...
Код:
public Carregar3DsBSH()
{
for(new h = 0; h < sizeof(HouseInfo); h++)
{
new Text3D:HouseLabel;
new Casa[256];
if(HouseInfo[h][hOwned] == 0)
{
if(DsBSH[h] == 1)
{
Delete3DTextLabel(HouseLabel);
}
format(Casa, sizeof(Casa), "[CASA A VENDA]\n|Nome: %s |\n|Nнvel: %d|\n|Preзo: US$%d|\n|Use /comprarcasa para esta propriedade.|",HouseInfo[h][hDiscription],HouseInfo[h][hLevel],HouseInfo[h][hValue]);
HouseLabel = Create3DTextLabel(Casa,0x006400FF,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],60,0,1);
DsBSH[h] = 1;
if(DsBSH[h] == 0)
{
DsBSH[h] = 1;
}
}
if(HouseInfo[h][hOwned] == 1)
{
if(DsBSH[h] == 1)
{
Delete3DTextLabel(HouseLabel);
}
format(Casa, sizeof(Casa), "[CASA]\n|Nome: %s |\n|Nнvel: %d|\n|Dono: %s|\n|Use /alugarquarto para alugar um quarto nesta propriedade.|",HouseInfo[h][hDiscription],HouseInfo[h][hLevel],HouseInfo[h][hOwner]);
HouseLabel = Create3DTextLabel(Casa,0x006400FF,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],60,0,1);
if(DsBSH[h] == 0)
{
DsBSH[h] = 1;
}
}
}
}
essa public й usada no "OnGameModeInit" e nos comandos de "/comprarcasa" e "/vendercasa", por isso o delete... e se eu botar o cуdigo desta maneira...
Код:
public Carregar3DsBSH()
{
for(new h = 0; h < sizeof(HouseInfo); h++)
{
new Text3D:HouseLabel;
new Casa[256];
if(HouseInfo[h][hOwned] == 0)
{
format(Casa, sizeof(Casa), "[CASA A VENDA]\n|Nome: %s |\n|Nнvel: %d|\n|Preзo: US$%d|\n|Use /comprarcasa para esta propriedade.|",HouseInfo[h][hDiscription],HouseInfo[h][hLevel],HouseInfo[h][hValue]);
HouseLabel = Create3DTextLabel(Casa,0x006400FF,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],60,0,1);
Update3DTextLabelText(HouseLabel, 0x006400FF, Casa);
}
if(HouseInfo[h][hOwned] == 1)
{
format(Casa, sizeof(Casa), "[CASA]\n|Nome: %s |\n|Nнvel: %d|\n|Dono: %s|\n|Use /alugarquarto para alugar um quarto nesta propriedade.|",HouseInfo[h][hDiscription],HouseInfo[h][hLevel],HouseInfo[h][hOwner]);
HouseLabel = Create3DTextLabel(Casa,0x006400FF,HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez],60,0,1);
Update3DTextLabelText(HouseLabel, 0x006400FF, Casa);
}
}
}
ele fika criando vбrios 3ds, um em cima do otro ._. ' PFF me ajudem, eu ja perdi MUITO tempo tentando fazer com que essa bosta fizesse update normalmente... Aguardo respostas...
Se for postar dizendo pra eu botar o "Update3DTextLabelText" no cmd, nem posta, pq eu ja testei isso...
Att,
Re: [AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
brunogysin - 14.11.2010
bom poderia criar um settime pra ver no que da.
Re: [AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
Rodrigo_LosT - 14.11.2010
Quote:
Originally Posted by brunogysin
bom poderia criar um settime pra ver no que da.
|
ja tentei tbm, e alem de dar um lag mais que fudido, nгo faz update ._.
Re: [AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
jonas_gabriel - 14.11.2010
No Topo do GM
Код:
new Text3D:TudoLabel[MAX_PLAYERS];
forward Atualizar3DText();
Em Ongamemodeinit
pawn Код:
for(new h = 0; h < sizeof(CasaInfo); h++)
{
if(CasaInfo[h][hOwned] == 0)
{
new Casa[128];
format(Casa, sizeof(Casa), \"Casa a Venda! \n Preco: $%d \n Informacoes: %s \n Nivel Necessario: %d\n Para comprar, Digite:/comprarcasa\", CasaInfo[h][hValue],CasaInfo[h][hDiscription], CasaInfo[h][hLevel]);
TudoLabel[h] = Create3DTextLabel(Casa,0x33FF00FF,CasaInfo[h][hEntrancex], CasaInfo[h][hEntrancey], CasaInfo[h][hEntrancez],10, 0, 1);
AddStaticPickup(1273, 2, CasaInfo[h][hEntrancex], CasaInfo[h][hEntrancey], CasaInfo[h][hEntrancez]);
pickups++;
}
if(CasaInfo[h][hOwned] == 1)
{
new Casa2[128];
format(Casa2, sizeof(Casa2), \"Dono da Casa %s \n Preco Aluguel: $%d \n Descricao: %s \n Para alugar, Digite: /alugarquarto\", CasaInfo[h][hOwner], CasaInfo[h][hRent], CasaInfo[h][hDiscription]);
TudoLabel[h] = Create3DTextLabel(Casa2,0x33FF00FF,CasaInfo[h][hEntrancex], CasaInfo[h][hEntrancey], CasaInfo[h][hEntrancez],10, 0, 1);
AddStaticPickup(1318, 1, CasaInfo[h][hEntrancex], CasaInfo[h][hEntrancey], CasaInfo[h][hEntrancez]);
pickups++;
}
}
for(new h = 0; h < sizeof(BizzInfo); h++)
{
if(BizzInfo[h][bOwned] == 0)
{
new empresa[128];
format(empresa,sizeof(empresa),\"%s \n Empresa a Venda! \n Preco: $%d \n Level Necessario: %d \n Para comprar, Digite: /compraremp.\", BizzInfo[h][bMessage],BizzInfo[h][bBuyPrice], BizzInfo[h][bLevelNeeded]);
TudoLabel[h] = Create3DTextLabel(empresa ,0x33FF00FF,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],10, 0, 1);
AddStaticPickup(1272,1,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],-1);
}
else if(BizzInfo[h][bOwned] == 1)
{
new empresa1[128];
format(empresa1,sizeof(empresa1),\"%s \n Dono: %s \n Extorcao: %s \n Taxa Entrada: $%d. \n Para Entrar, Aperte F.\",BizzInfo[h][bMessage],BizzInfo[h][bOwner], BizzInfo[h][bExtortion], BizzInfo[h][bEntranceCost]);
TudoLabel[h] = Create3DTextLabel(empresa1 ,0x33FF00FF,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],10, 0, 1);
AddStaticPickup(1318,1,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],-1);
}
}
for(new h = 0; h < sizeof(SBizzInfo); h++)
{
if(SBizzInfo[h][sbOwned] == 0)
{
new empresa3[128];
format(empresa3,sizeof(empresa3),\"Empresa a Venda! \n Preco: $%d \n Level Necessario: %d \n Para comprar, Digite: /compraremp.\", SBizzInfo[h][sbBuyPrice], SBizzInfo[h][sbLevelNeeded]);
TudoLabel[h] = Create3DTextLabel(empresa3 ,0x33FF00FF,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],10, 0, 1);
AddStaticPickup(1272,1,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],-1);
}
else if(SBizzInfo[h][sbOwned] == 1)
{
new empresa4[128];
format(empresa4,sizeof(empresa4),\"%s \n Dono: %s \n Extorcao: %s \n Taxa Entrada: $%d. \n Para Entrar, Aperte F.\",SBizzInfo[h][sbMessage],SBizzInfo[h][sbOwner], SBizzInfo[h][sbExtortion], BizzInfo[h][bEntranceCost]);
TudoLabel[h] = Create3DTextLabel(empresa4 ,0x33FF00FF,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],10, 0, 1);
AddStaticPickup(1318,1,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],-1);
}
}
crie um settimer logo abaixo
Код:
SetTimer("Atualizar3DText", 1000, 1);
crie uma public no final do game mode
pawn Код:
public Atualizar3DText()
{
for(new h = 0; h < sizeof(CasaInfo); h++)
{
if(CasaInfo[h][hOwned] == 0)
{
new Casa[128];
format(Casa, sizeof(Casa), \"Casa a Venda! \n Preco: $%d \n Informacoes: %s \n Nivel Necessario: %d\n Para comprar, Digite:/comprarcasa\", CasaInfo[h][hValue],CasaInfo[h][hDiscription], CasaInfo[h][hLevel]);
Update3DTextLabelText(TudoLabel[h], 0x33FF00FF, Casa);
AddStaticPickup(1273, 2, CasaInfo[h][hEntrancex], CasaInfo[h][hEntrancey], CasaInfo[h][hEntrancez]);
pickups++;
}
if(CasaInfo[h][hOwned] == 1)
{
new Casa2[128];
format(Casa2, sizeof(Casa2), \"Dono da Casa %s \n Preco Aluguel: $%d \n Descricao: %s \n Para alugar, Digite: /alugarquarto\", CasaInfo[h][hOwner], CasaInfo[h][hRent], CasaInfo[h][hDiscription]);
Update3DTextLabelText(TudoLabel[h], 0x33FF00FF, Casa2);
AddStaticPickup(1318, 1, CasaInfo[h][hEntrancex], CasaInfo[h][hEntrancey], CasaInfo[h][hEntrancez]);
pickups++;
}
}
for(new h = 0; h < sizeof(BizzInfo); h++)
{
if(BizzInfo[h][bOwned] == 0)
{
new empresa[128];
format(empresa,sizeof(empresa),\"%s \n Empresa a Venda! \n Preco: $%d \n Level Necessario: %d \n Para comprar, Digite: /compraremp.\", SBizzInfo[h][sbMessage],BizzInfo[h][bBuyPrice], BizzInfo[h][bLevelNeeded]);
Update3DTextLabelText(TudoLabel[h], 0x33FF00FF, empresa);
AddStaticPickup(1272,1,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],-1);
}
else if(BizzInfo[h][bOwned] == 1)
{
new empresa1[128];
format(empresa1,sizeof(empresa1),\"%s \n Dono: %s \n Extorcao: %s \n Taxa Entrada: $%d. \n Para Entrar, Aperte F.\",BizzInfo[h][bMessage],BizzInfo[h][bOwner], BizzInfo[h][bExtortion], BizzInfo[h][bEntranceCost]);
Update3DTextLabelText(TudoLabel[h], 0x33FF00FF, empresa1);
AddStaticPickup(1318,1,BizzInfo[h][bEntranceX], BizzInfo[h][bEntranceY], BizzInfo[h][bEntranceZ],-1);
}
}
for(new h = 0; h < sizeof(SBizzInfo); h++)
{
if(SBizzInfo[h][sbOwned] == 0)
{
new empresa3[128];
format(empresa3,sizeof(empresa3),\"%s \n Empresa a Venda! \n Preco: $%d \n Level Necessario: %d \n Para comprar, Digite: /compraremp.\", SBizzInfo[h][sbMessage],SBizzInfo[h][sbBuyPrice], SBizzInfo[h][sbLevelNeeded]);
Update3DTextLabelText(TudoLabel[h], 0x33FF00FF, empresa3);
AddStaticPickup(1272,1,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],-1);
}
else if(SBizzInfo[h][sbOwned] == 1)
{
new empresa4[128];
format(empresa4,sizeof(empresa4),\"%s \n Dono: %s \n Extorcao: %s \n Taxa Entrada: $%d. \n Para Entrar, Aperte F.\",SBizzInfo[h][sbMessage],SBizzInfo[h][sbOwner], SBizzInfo[h][sbExtortion], BizzInfo[h][bEntranceCost]);
Update3DTextLabelText(TudoLabel[h], 0x33FF00FF, empresa4);
AddStaticPickup(1318,1,SBizzInfo[h][sbEntranceX], SBizzInfo[h][sbEntranceY], SBizzInfo[h][sbEntranceZ],-1);
}
}
}
Creditos totalmente meu.
Re: [AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
Rodrigo_LosT - 14.11.2010
vo tentar, se der, fiko agradeзido... TESTANDO
Re: [AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
[]Fabricio[] - 14.11.2010
Quote:
Originally Posted by jonas_gabriel
Creditos totalmente meu.
|
Sei nгo hein, a um tempo atras, Rodrigo Vilhena postou um code identico ao seu.
Re: [AJUDA/DЪVIDA] Update das 3D's TextLabels's... -
Rodrigo_LosT - 14.11.2010
Resultado: Como eu disse, settimer nгo adiantou de nada... ' no update persiste
@EDIT
ja consigui aki... fiz umas coisa doida... vlw a todos mesmo assim.