GetVehicleName(modelid) simply doesn't work
#1

Good Evening(?) all,
Okay it's time to ask a really nooby question

I have an array with all the vehicle names in, and a function to return the vehicle name. However, the function doesn't return anything. I know it doesn't return anything because i am attempting to update a text draw using it - and it doesn't update. (TextDrawSetString(veh_name[playerid], GetVehicleName(GetVehicleModel(GetPlayerVehicleID( playerid))));
However it simply doesn't work.

Here is the array and the function to go with it.

pawn Код:
new VehicleNames[][] = {
    "Landstalker","Bravura","Buffalo","Linerunner","Pereniel","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","Previon","Coach","Cabbie","Stallion",
    "Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","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","ZR3 50","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","Hotring Racer","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","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster","Monster","Uranus","Jester",
    "Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer","Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley",
    "Stafford","BF-400","Newsvan","Tug","Trailer","Emperor","Wayfarer","Euros","Hotdog","Club","Trailer","Trailer","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","Luggage Trailer","Stair Trailer","Boxville","Farm Plow","Utility Trailer"
};

stock GetVehicleName(modelid)
{
    return VehicleNames[modelid-400];
}
The actual array i got from the Useful Functions thread, and the function is a modification of the one that came with it. It is based on exactly the same idea, just simply doesn't work.

Has anyone got any ideas?

Thanks,
Ash
Reply
#2

This is what i use:

pawn Код:
#define \
         GetVehicleName(%0)      vNames[(%0) - 400]
pawn Код:
vNames[ 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-6_0_0"},          {"Faggio"},             {"Freeway"},        {"RC Baron"},       {"RC Raider"},      {"Glendale"},       {"Oceanic"},
            {"Sanchez"},        {"Sparrow"},            {"Patriot"},            {"Quad"},           {"Coastguard"},     {"Dinghy"},         {"Hermes"},         {"Sabre"},
            {"Rustler"},        {"ZR-3_5_0"},           {"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 _LVPD"},   {"Police Ranger"},      {"Picador"},            {"SWAT. Van"},      {"Alpha"},          {"Phoenix"},        {"Glendale"},
            {"Sadler"},         {"Luggage Trailer A"}{"Luggage Trailer B"}{"Stair Trailer"},{"Boxville"},         {"Farm Plow"},
            {"Utility Trailer"}

    };
And works just fine!
Reply
#3

How do you call TextDrawSetString ?
Reply
#4

Quote:
Originally Posted by Zh3r0
Посмотреть сообщение
This is what i use:

And works just fine!
Hmm... Thanks
Thats practically the same as mine, i wonder why mine isn't working...

Quote:
Originally Posted by MadeMan
Посмотреть сообщение
How do you call TextDrawSetString ?
As a player gets in the vehicle, it calls "ShowDash(playerid)" and "TextDrawSetString" after it. It's not the way its being called, because if i stick "Test" in instead of GetVehicleName, it causes "Test" to be displayed.
Reply
#5

Quote:
Originally Posted by funky1234
Посмотреть сообщение
Hmm... Thanks
Thats practically the same as mine, i wonder why mine isn't working...


As a player gets in the vehicle, it calls "ShowDash(playerid)" and "TextDrawSetString" after it. It's not the way its being called, because if i stick "Test" in instead of GetVehicleName, it causes "Test" to be displayed.
I guess because you didn't set an actual value of the vehicle count.. And i guess you are returning a null string.
My way doesn't return, just converts.
Reply
#6

Quote:
Originally Posted by Zh3r0
Посмотреть сообщение
I guess because you didn't set an actual value of the vehicle count.. And i guess you are returning a null string.
My way doesn't return, just converts.
Point. And I suppose, but when a function hasn't worked in TextDrawSetString before, it's crashed my (test) server. So it must of been returning SOMETHING, it just didn't alter the TD?
Reply
#7

Quote:
Originally Posted by funky1234
Посмотреть сообщение
Point. And I suppose, but when a function hasn't worked in TextDrawSetString before, it's crashed my (test) server. So it must of been returning SOMETHING, it just didn't alter the TD?
Sometimes returning null may cause server to crash. Especially on textdraws and 3D text labels.
Reply
#8

Quote:
Originally Posted by funky1234
Посмотреть сообщение
As a player gets in the vehicle...
What callback is it?
Reply
#9

Quote:
Originally Posted by Zh3r0
Посмотреть сообщение
Sometimes returning null may cause server to crash. Especially on textdraws and 3D text labels.
True, True

Quote:
Originally Posted by MadeMan
Посмотреть сообщение
What callback is it?
It's fixed now, however the callback was:
OnPlayerStateChange (if(newstate = PLAYER_STATE_DRIVER)) - it had nothing to do with the way it was called
Reply
#10

Quote:
Originally Posted by funky1234
Посмотреть сообщение
It's fixed now, however the callback was:
OnPlayerStateChange (if(newstate = PLAYER_STATE_DRIVER)) - it had nothing to do with the way it was called
What was the problem then?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)