[Ajuda] Velocimetro
#1

Bom, preciso da ajuda de vocкs, oque acontece й bem simples, estou usando um velocimetro que foi postado pelo dimmy a muito tempo, eu o adaptei a minha GM colocando o meu sistema de gasolina e tals, quando eu entro em qualquer veiculo tudo fuciona perfeitamente, mais eu criei um sistema de Veiculo RC, que pode ser usado atravez do meu sistema de inventario, tudo fuciona mais ou menos assim:

pawn Код:
new RC[MAX_PLAYERS];

RC[playerid] = CreateVehicle( .... );
PutPlayerInVehicle(playerid, RC[playerid], 0);
ate ai, o veiculo й criado, e o player й colocado nele, mais quando apacere o velocimetro, nao aparece o nome do veiculo, coisa que deveria aparecer, fica vazio, essa parte, e tem mais, quando eu entro em qualquer outro veiculo, nao aparece mais o nome dos demais veiculos.

segue as SS abaixo:

http://imgur.com/a/gQRl6

se alguem souber de algo que ajude, pf comentar sem dу rsrs.
Reply
#2

Como й "puxado" o nome do veнculo? Comece por esta parte. Provavelmente deve ser um valor proveniente de uma matriz, e alguns veнculos possuem nome em branco.
Reply
#3

Quote:
Originally Posted by arakuta
Посмотреть сообщение
Como й "puxado" o nome do veнculo? Comece por esta parte. Provavelmente deve ser um valor proveniente de uma matriz, e alguns veнculos possuem nome em branco.
olha :

pawn Код:
em OnPlayerState....

if ( newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
     {
         new string_velo[100];
         new carro = GetPlayerVehicleID(playerid);
         format(string_velo, sizeof (string_velo), "%s",     getVehicleName(carro));
         PlayerTextDrawSetString(playerid, textPlayerVelocimetro[0][playerid], string_velo );
         for( new text; text != 5; text++) PlayerTextDrawShow(playerid, textVelocimetro[text][playerid]);
         for( new text; text != 4; text++)
         {
         PlayerTextDrawColor(playerid,textPlayerVelocimetro[text][playerid],0xffffff80);
         PlayerTextDrawShow(playerid, textPlayerVelocimetro[text][playerid]);
         }
     }
     else
     {
        for( new text; text != 5; text++) PlayerTextDrawHide(playerid, textVelocimetro[text][playerid]);
        for( new text; text != 4; text++) PlayerTextDrawHide(playerid, textPlayerVelocimetro[text][playerid]);
     }
isso й para aparecer tudo velocimetro, ocorre tudo bem com qualquer outro veiculo,

em OnPlayerUpdate, й onte atualiza a gasosa do veiculo, velocidade, e lataria, nao tem nada a respeito de nome de veiculo lб.


a stock que uso pra getar o nome do veiculo.

pawn Код:
stock getVehicleName(vehicleid)
{
        new vehmodel = GetVehicleModel(vehicleid);
        new nameVeh[75];

        if (vehmodel < 400 || vehmodel > 611)
        {
                strcat(nameVeh, "Nenhum");
                return nameVeh;
        }
        strcat(nameVeh, VehicleNames[vehmodel - 400]);
        return nameVeh;
}
lб no topo do GM, onde armazena os nomes dos veiculos

pawn Код:
new VehicleNames[212][] =
{
    {"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
    {"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
    {"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
    {"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
    {"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
    {"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
    {"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
    {"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
    {"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
    {"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
    {"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
    {"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
    {"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
    {"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
    {"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
    {"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
    {"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
    {"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
    {"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
    {"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
    {"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
    {"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
    {"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
    {"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
    {"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
    {"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
    {"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
    {"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
    {"Utility Trailer"}
};
Reply
#4

Nao acontece sу com este modelo de veiculo nao, acontece com qualquer 1, acho que й a funcao PutPlayerInVehicle... pq jeja as SS abaixo:

http://imgur.com/a/M85uQ

eu crio um RC ( um veiculo ) dai eu pego ele no inventario, ai acontece a mesma coisa, bem estranho eu acho, as outras informaзхes aparecem normal, sу o nome do veiculo RC que nao, deve ser a funзгo de colocar o player no veiculo, oque acha ?
Reply
#5

Agora entendi. Mas atй onde eu saiba, PutPlayerInVehicle faz que o jogador mude de estado, entгo seu bloco de cуdigo que faz o nome do veнculo aparecer й executado.

Existe alguma coisa no seu cуdigo que faz o texto sumir, ou ficar em branco logo apуs vocк entrar no veнculo. O Nome aparece e logo some, ou nao chega a aparecer?
Reply
#6

Quote:
Originally Posted by arakuta
Посмотреть сообщение
Agora entendi. Mas atй onde eu saiba, PutPlayerInVehicle faz que o jogador mude de estado, entгo seu bloco de cуdigo que faz o nome do veнculo aparecer й executado.
se PutPlayerInVehicle muda de estado, qual funзгo ataca o player no veiculo ?
Reply
#7

Faзa um debug. Coloque isto como primeiro item na callback OnPlayerStateChange

PHP код:
printf("OnPlayerStateChange | %d | %d | %d",playerid,newstate,oldstate); 
Faзa o procedimento normal de pegar o veнculo que nгo aparece o nome, e me diga o que apareceu no console.
Reply
#8

Quote:
Originally Posted by arakuta
Посмотреть сообщение
Faзa um debug. Coloque isto como primeiro item na callback OnPlayerStateChange

PHP код:
printf("OnPlayerStateChange | %d | %d | %d",playerid,newstate,oldstate); 
Faзa o procedimento normal de pegar o veнculo que nгo aparece o nome, e me diga o que apareceu no console.
observe, nao entendi bem mais ta ai http://imgur.com/a/ZiFlG
Reply
#9

Tudo OK com esta parte... O problema й com a atualizaзгo do nome, portanto. Procure em seu cуdigo o bloco responsбvel por atualizar o nome do veнculo e faзa um debug tambйm por lб. Me mostre o resultado dos dois casos: o primeiro quando entra em um veнculo normalmente, e o segundo quando usa esse seu comando.

Creio eu, que haverб discrepвncias.

Este tуpico pode lhe ser ъtil: https://sampforum.blast.hk/showthread.php?tid=216163

@edit

Afinal, vocк usa OnPlayerUpdate mesmo para atualizar o nome do veнculo? Se sim, me diga como estбs fazendo
Reply
#10

Quote:
Originally Posted by arakuta
Посмотреть сообщение
Tudo OK com esta parte... O problema й com a atualizaзгo do nome, portanto. Procure em seu cуdigo o bloco responsбvel por atualizar o nome do veнculo e faзa um debug tambйm por lб. Me mostre o resultado dos dois casos: o primeiro quando entra em um veнculo normalmente, e o segundo quando usa esse seu comando.

Creio eu, que haverб discrepвncias.

Este tуpico pode lhe ser ъtil: https://sampforum.blast.hk/showthread.php?tid=216163

@edit

Afinal, vocк usa OnPlayerUpdate mesmo para atualizar o nome do veнculo? Se sim, me diga como estбs fazendo
nao eu nao atualizo o nome do veiculo, a string da textdraw que mostra o nome do veiculo sу й alterada quando o player entra no veiculo, ou quando й colocado nele.

vou procurar saber onde esta esse erro , se solber de algo pf me avise rsrs

de qualquer forma muito obg pela ajuda ate agora
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)