20.11.2011, 16:28
Galera, to quebrando a cabeзa mais nгo tem geito.
O sistema que estou tentando fazer й o seguinte:
quando o player faz um comando para adquirir um veiculo
ele fica sendo proprietбrio do prуprio (ava) rs.
Entгo.. quando ele sair do veiculo queria que apareзe-se tipo:
me inspirei no sistema do Jimmy Carrey.
O problema й que quando o player sai do veiculo nгo apareзe o Attach3DTextLabelToVehicle
e quando tiro a definiзгo pra deletar o Attach3DTextLabelToVehicle na callback
o Nome do Player fica apareзendo enquanto ele estб em seu veiculo. TENSO
vo postar como estou usando, exemplo no comando /carro:
O script fico um pouco tenso, rs queria postar em pastebin mais achei melhor aqui, todos irгo visualizar.
Bom й isso galera. Espereзo que possam me ajudar. ABRAЗГO!
O sistema que estou tentando fazer й o seguinte:
quando o player faz um comando para adquirir um veiculo
ele fica sendo proprietбrio do prуprio (ava) rs.
Entгo.. quando ele sair do veiculo queria que apareзe-se tipo:
Код:
Veiculo de: %s ID: %d
O problema й que quando o player sai do veiculo nгo apareзe o Attach3DTextLabelToVehicle
e quando tiro a definiзгo pra deletar o Attach3DTextLabelToVehicle na callback
PHP код:
OnPlayerStateChange(playerid, newstate, oldstate)
vo postar como estou usando, exemplo no comando /carro:
PHP код:
#include <a_samp>
new Text3D:DonoVeiculo[MAX_PLAYERS];
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256],idx, tmp[256];
cmd = strtok(cmdtext, idx);
if(strcmp(cmdtext,"/c", true) == 0 || strcmp(cmdtext,"/carro", true) == 0)
{
if(GetPlayerInterior(playerid) != 0)return SendClientMessage(playerid, COR_VERMELHO,"[ERRO]: Vocк nгo Pode Criar Veнculos em Interiores");
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,COR_VERMELHO,"[ERRO]: Vocк Jб Possui um Veнculo.");
new string[128];
new Float: X, Float: Y, Float: Z, Float: Angle;
GetPlayerPos(playerid,X,Y,Z);
GetPlayerFacingAngle(playerid,Angle);
VeiculoID[playerid] = GetPlayerVehicleID(playerid); //
DestroyVehicle(VeiculoID[playerid]); //
DestroyVehicle(GetPVarInt(playerid,"Veiculo"));
PutPlayerInVehicle(playerid,CreateVehicle(411,X,Y, Z+2,Angle,-1,-1,-1),0);
new car = GetPlayerVehicleID(playerid);
AddVehicleComponent(car,1079);
SetPVarInt(playerid,"Veiculo",GetPlayerVehicleID(playerid));
format(string,sizeof(string),"Veiculo De:\n%s[ID:%d]", PlayerName(playerid), playerid);
DonoVeiculo[playerid] = Create3DTextLabel(string,0xFF8000FF,0,0,0,40.0,1);
Attach3DTextLabelToVehicle(DonoVeiculo[playerid], car, 0.0, 0.0, 1.0);
return 1;
}
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(GetPlayerVehicleID(playerid) == VeiculoID[playerid])
{
if(strcmp(VeiculoID[GetPlayerVehicleID(playerid)], PlayerName(playerid), true) == 0)
{
new string[128];
format(string, sizeof(string), "Veiculo De:\n%s[ID:%d]", PlayerName(playerid), playerid);
Update3DTextLabelText(DonoVeiculo[playerid], 0xFF8000FF, string);
}
}
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new str[256];
new oldnew;
if (newstate == 2 || newstate == 3)
{
if (oldnew == 0)
{
format(str, sizeof(str), "~g~%s",Veiculos[GetVehicleModel(GetPlayerVehicleID(playerid))-400]);
GameTextForPlayer(playerid, str, 3000, 1);
Update3DTextLabelText(DonoVeiculo[playerid], 0xFF8000FF, " ");
}
}
return 1;
}
Bom й isso galera. Espereзo que possam me ajudar. ABRAЗГO!