Tag Missmatch?

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
  • Hey. Ich weiß nicht wo hier ein Tag missmatch ist.
    if(Autospawn == 0)
    {
    new Float:X,Float:Y,Float:Z,Float:Angle,carid;
    GetPlayerPos(playerid, Float:X,Float:Y,Float:Z);
    GetPlayerFacingAngle(playerid, Float:Angle);
    carid = GetPlayerVehicleID(playerid);
    carid = CreateVehicle(strval(inputtext), Foat:X,Float:Y,Float:Z,-1,-1,600);
    PutPlayerInVehicle(playerid,carid,0);
    TogglePlayerControllable(playerid, true);
    SendClientMessage(playerid, GRÜN,"Du hast ein Auto gespawnt. Mit {FFA000}Fahrzeug löschen{0FFF00}im Menü, kannst du es wieder Zerstören!");
    vehCar[carid] = true;
    return 1;
    }
    Danke im Vorraus
    MFG
    Kempfer

  • Also da steht ne Zeile wenn du Errors bekommst nur so als Info


    Edit:


    CreateVehicle(strval(inputtext), X,Y,Z,-1,-1,600);


    CreateVehicle(strval(inputtext), Foat:X,Float:Y,Float:Z,-1,-1,600);


    Auch wenn das falsch ist das kann doch nets ien das sieht mans osofrt das es nicht Foat hessit achja du musst nur Float bei der deklarierung der Variable schreiben nicht bei der anwendung

  • Ist mir klar...
    Als zeile ist die Angegeben:
    carid = CreateVehicle(strval(inputtext), Foat:X,Float:Y,Float:Z,-1,-1,600);
    weiß aber trotzdem nicht wo der Tag Missmatch ist.


    MFG
    Kempfer

  • Hey. Ich weiß nicht wo hier ein Tag missmatch ist.


    Eine Zeile wäre von Vorteil :rolleyes:


    //Edit:

    Foat:X,Float:Y,Float:Z


    Du hast bei dem X Foat: geschrieben und das gibt es nichts..lösch überall das Foat bzw Float ;)



    Aber hier einige Tipps & Möglichkeiten:


    GetPlayerPos(playerid, Float:X,Float:Y,Float:Z);


    Die Variablen sind schon Floats, in den Funktionen wo du sie verwendest musst du den Tag nicht nocheinmal angeben außer du willst sie casten ;)


    carid = GetPlayerVehicleID(playerid);


    Wofür diese Zeile...du machst mit dem Wert doch nichts? :huh:


    vehCar[carid] = true;


    Vielleicht ist vehCar kein boolean?


    strval(inputtext)


    Du solltest oben erstmal abfragen ob er überhaupt einen inputtext eingegeben hat...falls man sich mal verklickt oder so..zudem würde dann CreateVehicle einen Fehler ausgeben, also checken ob die modelid von dem Fahrzeug im validen Bereich liegt (400 - 611) ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • if(!Autospawn){
    new Float:_Pos[4],carid;
    GetPlayerPos(playerid,_Pos[0],_Pos[1],_Pos[2]),GetPlayerFacingAngle(playerid,_Pos[3]);
    carid=CreateVehicle(inputtext,_Pos[0],_Pos[1],_Pos[2],_Pos[3],-1,-1,600);
    PutPlayerInVehicle(playerid,carid,0);
    TogglePlayerControllable(playerid,1);
    SendClientMessage(playerid,GRÜN,"Du hast ein Auto gespawnt. Mit {FFA000}Fahrzeug löschen{0FFF00} im Menü, kannst du es wieder Zerstören!");
    return vehCar[carid]=true;
    }
    Du hast so wie ich das gesehen habe die Z-Angel vergessen ;)

  • Du hast so wie ich das gesehen habe die Z-Angel vergessen


    Ja in der Tat, dass hat er, allerdings ist das kein Tag mismatch Error, sondern wäre nur ein warning 202: number of arguments does not match definition ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • ausserdem müssen die Floats: weg wenn du das anwendest die müssen nur bei der Variablendeklarieung hinb!


    Naja "müssen" sie nicht.


    Damit würde er nur die Floats in Floats casten. Grundsätzlich kann man das machen, macht aber in diesem Fall gar keinen Sinn, da es schon Floats sind :D


    Aber bei Integer Variablen z.B. ist dies eine gute Methode:


    printf("%f",Float:0); //Output: 0.000000


    mf. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Ich frage hier ab, ob die eingabe zwischen 400 und 611 liegt, aber ich bekomme nie eine fehlermeldung... warum?
    if(strval(inputtext)>400||strval(inputtext)<611)

    Einmal editiert, zuletzt von Kempfer ()

  • Und noch ein frage :D
    Er sagt mir auf einmal (von einem auf den nächsten moment) das in dieser Zeile ein unrechable Code ist:
    if(sscanf(params,"us",sID))return SendClientMessage(playerid, ROT,"Verwendung: /Unfreeze[playerid]!");
    MFG
    Kempfer

  • das in dieser Zeile ein unrechable Code ist:


    Poste mal ein paar Zeilen drüber :P


    //Edit: btw da steht "us"...das heißt du brauchst 2 Attribute...1x sID für die spielerid und dann noch einen String.. :rolleyes:


    mfg. :rolleyes:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • dcmd_freeze(playerid, params[])
    {
    new sID, freeze[MAX_PLAYERS];
    if(sscanf(params,"us",sID)) return SendClientMessage(playerid, ROT,"Verwendung: /freeze [playerid]!");
    {
    if(!IsPlayerConnected(sID)) return SendClientMessage(playerid, ROT,"Dieser Spieler ist nicht Online!");
    {
    if(!IstSpielerAdmin(playerid, 3)) return SendClientMessage(playerid, ROT,"Du bist kein Admin, oder hast nicht die benörigten Rechte!");
    {
    if(freeze[sID] == 1) return SendClientMessage(playerid, ROT,"Dieser Spieler ist bereits gefreezed. Du kannst ihn m it /unfreeze[playerid] unfreezen!");
    {
    new string[64],string2[64];
    format(string,sizeof string, "Du wurdest von %s gefreezed!",getPlayerName(playerid));
    format(string2,sizeof string2, "Du hast %s erfolgreich gefreezed!",getPlayerName(sID));
    SendClientMessage(sID, GRÜN,string);
    SendClientMessage(playerid, GRÜN, string2);
    TogglePlayerControllable(sID,false);
    freeze[sID] = 1;
    return 1;
    }
    }
    }
    }
    if(sscanf(params,"us",sID))return SendClientMessage(playerid, ROT,"Verwendung: /Unfreeze[playerid]!");
    {
    if(!IsPlayerConnected(sID)) return SendClientMessage(playerid,ROT,"Dieser Spieler ist nicht Online!");
    {
    if(!IstSpielerAdmin(playerid, 3)) return SendClientMessage(playerid, ROT,"Du bist kein Admin, oder hast nicht die benötigten Rechte!");
    {
    if(freeze[sID] == 0) return SendClientMessage(playerid, ROT,"Dieser Spieler ist nicht gefreezed! Du kannst ihn mit /freeze [playerid] freezen!");
    {
    new string[64],string2[64];
    format (string, sizeof string,"Du wurdest von %s geunfreezed!",getPlayerName(playerid));
    format (string2,sizeof string2,"Du hast %s erfolgreich geunfreezed!",getPlayerName(sID));
    TogglePlayerControllable(sID,true);
    freeze[sID] = 0;
    return 1;
    }
    }
    }
    }
    }
    Das ist der Komplette befehl

  • Das ist der Komplette befehl


    Schreib das so, dann funktioniert es auch :D


    static bool:freeze[MAX_PLAYERS char]; //Oben global deklarieren


    dcmd_freeze(playerid, params[])
    {
    if(!IstSpielerAdmin(playerid, 3)) return SendClientMessage(playerid, ROT,"Du bist kein Admin, oder hast nicht die benörigten Rechte!");
    if(!params[0]) return SendClientMessage(playerid, ROT,"Verwendung: /freeze [playerid]!");
    if(!IsPlayerConnected(strval(params))) return SendClientMessage(playerid, ROT,"Dieser Spieler ist nicht Online!");
    if(freeze{strval(params)}) return SendClientMessage(playerid, ROT,"Dieser Spieler ist bereits gefreezed. Du kannst ihn m it /unfreeze[playerid] unfreezen!");
    new string[64];
    format(string,sizeof string, "Du wurdest von %s gefreezed!",getPlayerName(playerid));
    SendClientMessage(strval(params), GRÜN,string);
    format(string,sizeof string, "Du hast %s erfolgreich gefreezed!",getPlayerName(strval(params)));
    SendClientMessage(playerid, GRÜN, string);
    return TogglePlayerControllable(strval(params),false),freeze{strval(params)} = true,1;
    }
    dcmd_unfreeze(playerid, params[])
    {
    if(!IstSpielerAdmin(playerid, 3)) return SendClientMessage(playerid, ROT,"Du bist kein Admin, oder hast nicht die benörigten Rechte!");
    if(!params[0]) return SendClientMessage(playerid, ROT,"Verwendung: /unfreeze [playerid]!");
    if(!IsPlayerConnected(strval(params))) return SendClientMessage(playerid, ROT,"Dieser Spieler ist nicht Online!");
    if(!freeze{strval(params)}) return SendClientMessage(playerid, ROT,"Dieser Spieler ist nicht gefreezed! Du kannst ihn mit /freeze [playerid] freezen!");
    new string[64];
    format (string, sizeof string,"Du wurdest von %s geunfreezed!",getPlayerName(playerid));
    SendClientMessage(strval(params), GRÜN,string);
    format (string,sizeof string,"Du hast %s erfolgreich geunfreezed!",getPlayerName(strval(params)));
    SendClientMessage(playerid, GRÜN, string);
    return TogglePlayerControllable(strval(params),true),freeze{strval(params)} = false,1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

    Einmal editiert, zuletzt von Kaliber ()