[Anfänger] Textprobleme mit "string"

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hiho,
    ich arbeite mich gerade in das sa-mp Scripting ein und habe auch schon ein problem:
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    new autoplayer[MAX_PLAYER_NAME], string[44];
    new passenger, string[15];
    GetPlayerName(playerid, autoplayer, sizeof(autoplayer));
    // Fehler Start
    if (ispassenger == 0 )
    {
    passenger += "Als Fahrer"
    }
    else
    {
    passenger += "Als Beifahrer"
    }
    // Fehler Ende
    format(string, sizeof(string), "%s steigt in das Fahrzeug mit der ID %d als %s ein.",autoplayer,vehicleid,passenger);
    SendClientMessageToAll(0xFFFF00AA, string);
    return 1;
    }


    Also der Fehlerhafte teil ist markiert, der Text der ausgegeben werden soll wenn der Player als Passagier oder als Fahrer einsteigt soll angezeigt werden. Leider klappte das nicht wirklich so wie ich wollte:


    Code
    C:\server-samp\gamemodes\testscript.pwn(124) : error 021: symbol already defined: "string"
    C:\server-samp\gamemodes\testscript.pwn(128 -- 129) : error 033: array must be indexed (variable "-unknown-")
    C:\server-samp\gamemodes\testscript.pwn(132 -- 133) : error 033: array must be indexed (variable "-unknown-")



    Mein Ziel: Ausgabe des Playernamen der in das Fahrzeug einsteigt (evtl. sogar den Namen) als Fahrer oder Beifahrer.
    Anmerkung: ich habe bis jetzt nur mit PHP, Lua und Visual basic gearbeitet, daher die Umstiegsprobleme ^^"

    Ich helfe gerne, aber nur wenn die andere Person wenigstens versucht es zu schaffen.
    Solange sie nicht so dreist sind und mich beim Zocken zuspammen.

  • public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    new autoplayer[MAX_PLAYER_NAME], string[44];
    new passenger, string[15];
    GetPlayerName(playerid, autoplayer, sizeof(autoplayer));
    // Fehler Start
    if (ispassenger == 0 )
    {
    new state[12] = "Fahrer";
    }
    else
    {
    new state[12] = "Beifahrer";
    }
    // Fehler Ende
    format(string, sizeof(string), "%s steigt in das Fahrzeug mit der ID %d als %s ein.",autoplayer,vehicleid,state);
    SendClientMessageToAll(0xFFFF00AA, string);
    return 1;
    }

    Ungetestet


    was den ersten error angeht:
    Du hast 2x die varibale "string" drinnen. Und zwar direkt untereinander ;)



    MfG Firer

  • Ich bekomme da folgende Error:

    Zitat

    C:\server-samp\gamemodes\testscript.pwn(128) : error 001: expected token: "-identifier-", but found "state"
    C:\server-samp\gamemodes\testscript.pwn(132) : error 001: expected token: "-identifier-", but found "state"
    C:\server-samp\gamemodes\testscript.pwn(135) : error 001: expected token: "-identifier-", but found ")"

    Soll ich "state" mit "indetifier" oder was ist damit gemeint?

    Ich helfe gerne, aber nur wenn die andere Person wenigstens versucht es zu schaffen.
    Solange sie nicht so dreist sind und mich beim Zocken zuspammen.

  • public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    new autoplayer[MAX_PLAYER_NAME], string[128];
    GetPlayerName(playerid, autoplayer, sizeof(autoplayer));
    // Fehler Start
    if (ispassenger == 0 )
    {
    format(string, sizeof(string), "%s steigt in das Fahrzeug mit der ID %d als Fahrer ein.",autoplayer,vehicleid);
    SendClientMessageToAll(0xFFFF00AA, string);
    }
    else
    {
    format(string, sizeof(string), "%s steigt in das Fahrzeug mit der ID %d als Beifahrer ein.",autoplayer,vehicleid);
    SendClientMessageToAll(0xFFFF00AA, string);
    }
    // Fehler Ende
    return 1;
    }

    Ungetestet^^
    Versuchs aber mal so

  • Funktioniert Funktioniert, Danke dir :D


    (falls das nicht ins Thema passt sry)
    Und zwar mach ich gerade einen befehl, jedoch das Pawno mir, das das "Symol" "rand" nicht verhanden ist.
    if (strcmp("/randcar", cmdtext, true, 10) == 0)
    {
    /* Fehlerzeile */ new carid = rand(211)+400;
    if(carid < 400 || carid > 611) { SendClientMessage(playerid, COLOR_LIGHTGREEN, " Es können nur Fahrzeuge von ID 400 - 611 Gespawnt werden."); return 1; }
    new Float:cx,
    Float:cy,
    Float:cz;


    /* Fehlerzeile */ AddStaticVehicle(carid,cx,cy,cz,0,rand(9),rand(9));
    return 1;
    }
    return 0;


    Leider hab ich keine Ahnung wo ich "rand" als Symbol definieren soll.

    Ich helfe gerne, aber nur wenn die andere Person wenigstens versucht es zu schaffen.
    Solange sie nicht so dreist sind und mich beim Zocken zuspammen.