'Float:X'
#1

So, I was making a car spawning list dialog, and when I compiled it I got a fuck ton of errors with 'X'. Idk why, my minds just gone blank.

Here's the script:

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
        if (dialogid == 9 && response)
        {
                switch (listitem)
                {
                        case 0:
                        {
                                ShowPlayerDialog(playerid, 8, DIALOG_STYLE_LIST, "Vehicle List!","Banshee\nBuffalo\nBullet\nCheetah\nSF Cruiser\nLS Cruiser\nLV Cruiser\nFBI Rancher\nFCR\nHuntley\nInfernus\nMaverick\nTurismo\nWindsor\nElegy\nSultan","Spawn Vehicle","Cancel");
                        }
                }
        }
        if (dialogid == 8 && response)
        {
                switch (listitem)
                {
                        case 0:
                        {
                        new vehicleid = CreateVehicle(429,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 1:
                        {
                        new vehicleid = CreateVehicle(402,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 2:
                        {
                        new vehicleid = CreateVehicle(541,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 3:
                        {
                        new vehicleid = CreateVehicle(415,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 4:
                        {
                        new vehicleid = CreateVehicle(597,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 5:
                        {
                        new vehicleid = CreateVehicle(596,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 6:
                        {
                        new vehicleid = CreateVehicle(598,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 7:
                        {
                        new vehicleid = CreateVehicle(490,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 8:
                        {
                        new vehicleid = CreateVehicle(521,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 9:
                        {
                        new vehicleid = CreateVehicle(579,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 10:
                        {
                        new vehicleid = CreateVehicle(429,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 11:
                        {
                        new vehicleid = CreateVehicle(411,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 12:
                        {
                        new vehicleid = CreateVehicle(451,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 13:
                        {
                        new vehicleid = CreateVehicle(555,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 14:
                        {
                        new vehicleid = CreateVehicle(562,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                        case 15:
                        {
                        new vehicleid = CreateVehicle(560,Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
                        PutPlayerInVehicle(playerid,vehicleid,0);
                        }
                }
        }


        return 1;
}
And i get this error:
error 017: undefined symbol "X"
Reply
#2

Add this before the "siwtch":

pawn Код:
new Float:X, Float:Y, Float:Z, Float:angle;
GetPlayerPos(playerid,X,Y,Z);
GetPlayerFacingAngle(playerid,angle);
Reply
#3

That's not the way we create variables!

pawn Код:
new
    Float: X,
    Float: Y,
    Float: Z,
    Float: angle
;
// Assign values to the variables, for example:

// GetPlayerPos( playerid, X, Y, Z );
// GetPlayerFacingAngle( playerid, angle );

CreateVehicle(562, X, Y, Z, angle, 0, 0, 500);
Reply
#4

You have to create new variables like this:
pawn Код:
new Float:X, Float:Y, Float:Z, Float:angle;
And then you have to assign them a value and use the variable name only without the "Float:".
Reply
#5

While we're at it; always avoid duplicated code. Here is an optimized and much cleaner version:
pawn Код:
new model;

switch (listitem)
{
    case 0:  model = 429;
    case 1:  model = 402;
    case 2:  model = 541;
    case 3:  model = 415;
    case 4:  model = 597;
    case 5:  model = 596;
    case 6:  model = 598;
    case 7:  model = 490;
    case 8:  model = 521;
    case 9:  model = 579;
    case 10: model = 429;
    case 11: model = 411;
    case 12: model = 451;
    case 13: model = 555;
    case 14: model = 562;
    case 15: model = 560;
}  

new vehicleid = CreateVehicle(model, X, Y, Z, angle, 0, 0, 500);
PutPlayerInVehicle(playerid,vehicleid,0);
Reply
#6

Was late.
Reply
#7

Quote:
Originally Posted by Vince
Посмотреть сообщение
While we're at it; always avoid duplicated code. Here is an optimized and much cleaner version:
pawn Код:
new model;

switch (listitem)
{
    case 0:  model = 429;
    case 1:  model = 402;
    case 2:  model = 541;
    case 3:  model = 415;
    case 4:  model = 597;
    case 5:  model = 596;
    case 6:  model = 598;
    case 7:  model = 490;
    case 8:  model = 521;
    case 9:  model = 579;
    case 10: model = 429;
    case 11: model = 411;
    case 12: model = 451;
    case 13: model = 555;
    case 14: model = 562;
    case 15: model = 560;
}  

new vehicleid = CreateVehicle(model, X, Y, Z, angle, 0, 0, 500);
PutPlayerInVehicle(playerid,vehicleid,0);
I done that, so it now looks like this:

pawn Код:
new model;

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
        if (dialogid == 9 && response)
        {

                switch (listitem)
                {
                        case 0:
                        {
                                ShowPlayerDialog(playerid, 8, DIALOG_STYLE_LIST, "Vehicle List!","Banshee\nBuffalo\nBullet\nCheetah\nSF Cruiser\nLS Cruiser\nLV Cruiser\nFBI Rancher\nFCR\nHuntley\nInfernus\nMaverick\nTurismo\nWindsor\nElegy\nSultan","Spawn Vehicle","Cancel");
                        }
                }
        }
        if (dialogid == 8 && response)
        {
switch (listitem)
{
    case 0:  model = 429;
    case 1:  model = 402;
    case 2:  model = 541;
    case 3:  model = 415;
    case 4:  model = 597;
    case 5:  model = 596;
    case 6:  model = 598;
    case 7:  model = 490;
    case 8:  model = 521;
    case 9:  model = 579;
    case 10: model = 429;
    case 11: model = 411;
    case 12: model = 451;
    case 13: model = 555;
    case 14: model = 562;
    case 15: model = 560;
}

new vehicleid = CreateVehicle(model, Float:X, Float:Y, Float:Z, Float:angle, 0, 0, 500);
PutPlayerInVehicle(playerid,vehicleid,0);
         }
        return 1;
    }

CMD:cars(playerid,params[])
{
ShowPlayerDialog(playerid, 8, DIALOG_STYLE_LIST, "Vehicle List!","Banshee\nBuffalo\nBullet\nCheetah\nSF Cruiser\nLS Cruiser\nLV Cruiser\nFBI Rancher\nFCR\nHuntley\nInfernus\nMaverick\nTurismo\nWindsor\nElegy\nSultan","Spawn Vehicle","Cancel");
return 1;
}
It compiles fine, but whenever I click on a car in game it doesn't spawn.
Reply
#8

FIRST thing first, you still haven't defined the variables X, Y, Z and angle. BESIDES that, understand that inside a function when you're passing the variable as param for the function, you DON'T NEED to specify the variable type, therefor remove "Float:" from CreateVehicle.
Reply
#9

Do you use it in a filterscript or gamemode?
Reply
#10

Quote:
Originally Posted by Cjgogo
Посмотреть сообщение
FIRST thing first, you still haven't defined the variables X, Y, Z and angle. BESIDES that, understand that inside a function when you're passing the variable as param for the function, you DON'T NEED to specify the variable type, therefor remove "Float:" from CreateVehicle.
I did define them, I just didn't add them into the script, as I thought it would've been fairly obvious ;_; And I removed the float, thanks
Quote:
Originally Posted by _Zeus
Посмотреть сообщение
Do you use it in a filterscript or gamemode?
Filterscript.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)