Invalid Function or declaration

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 und zwar habe ich da ein Problem, ich wollte gerade ein Gate scripten aber bekomme nun diese 4 Errors :


    C:\Users\Kai\Desktop\German Life Roleplay\gamemodes\projekt.pwn(18229) : error 010: invalid function or declaration
    C:\Users\Kai\Desktop\German Life Roleplay\gamemodes\projekt.pwn(18233) : error 010: invalid function or declaration
    C:\Users\Kai\Desktop\German Life Roleplay\gamemodes\projekt.pwn(18236) : error 010: invalid function or declaration
    C:\Users\Kai\Desktop\German Life Roleplay\gamemodes\projekt.pwn(18240) : error 010: invalid function or declaration




    Im Script sieht es so aus :


    if (strcmp("/mv", cmdtext, true, 10) == 0)
    {
    MoveObject(Gate, -2180.65527344,-209.78320312,32.00415039,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    return 1;
    }


    if (strcmp("/mv", cmdtext, true, 10) == 0)
    {
    MoveObject(Gate, -2180.65576172,-209.78392029,36.22919464,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    return 1;
    }

  • Das wird so nicht klappen, das Tor wird nie zu gehen.
    Schreibe es so:
    if(strcmp("/mv", cmdtext, true) == 0)
    {
    static torStatus; //Static Variablen behalten ihren Wert
    if(!torStatus)
    {
    MoveObject(Gate, -2180.65527344,-209.78320312,32.00415039,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    }
    else
    {
    MoveObject(Gate, -2180.65576172,-209.78392029,36.22919464,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    }
    torStatus = !torStatus;
    return 1;
    }


    Die Errors kommen wohl, weil du es an einer falschen Stelle stehen hast.
    Du musst es bei OnPlayerCommandText einfügen, also so:


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    //...Zeug...
    //...
    //...usw....

    //Ganz unten:
    if(strcmp("/mv", cmdtext, true) == 0)
    {
    static torStatus; //Static Variablen behalten ihren Wert
    if(!torStatus)
    {
    MoveObject(Gate, -2180.65527344,-209.78320312,32.00415039,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    }
    else
    {
    MoveObject(Gate, -2180.65576172,-209.78392029,36.22919464,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    }
    torStatus = !torStatus;
    return 1;
    }

    //Als allerletztes:
    return 0;
    }




  • Hab weiterhin die 5 Errors invalid function or declaration

  • public OnPlayerCommandText(playerid,cmdtext[])
    {
    new string[128];
    format(string,sizeof(string),""#SERVERTAG" : Der Befehl existiert nicht! %s (/hilfe)",cmdtext);
    SendClientMessage(playerid,WEISS,string);
    TextDrawShowForPlayer(playerid,InfoSign);
    format(string,sizeof(string),"~w~"#SERVERTAG" : Der Befehl existiert nicht!~n~%s (/hilfe)",cmdtext);
    PlayerTextDrawSetString(playerid,INFOdraw[playerid][2],string);
    PlayerTextDrawShow(playerid,INFOdraw[playerid][2]);
    StopAudioStreamForPlayer(playerid);
    PlayAudioStreamForPlayer(playerid,ServerSounds[13],0.0,0.0,0.0);
    return SetTimerEx("HideInfoBox",3000,0,"i",playerid);
    }


    //Ganz unten:
    if(strcmp("/mv", cmdtext, true) == 0)
    {
    static torStatus;
    if(!torStatus)
    {
    MoveObject(Gate, -2180.65527344,-209.78320312,32.00415039,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    }
    else
    {
    MoveObject(Gate, -2180.65576172,-209.78392029,36.22919464,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    }
    torStatus = !torStatus;
    return 1;
    }


    //Als allerletztes:
    return 0;
    }

  • Ah, sowas hast du da. Dann muss es so aussehen:
    public OnPlayerCommandText(playerid,cmdtext[])
    {
    //======================================================================
    // Befehle
    //======================================================================
    if(strcmp("/mv", cmdtext, true) == 0)
    {
    static torStatus;
    if(!torStatus)
    {
    MoveObject(Gate, -2180.65527344,-209.78320312,32.00415039,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geöffnet!");
    }
    else
    {
    MoveObject(Gate, -2180.65576172,-209.78392029,36.22919464,4);
    SendClientMessage(playerid,0x9ACD32AA,"Tor wird geschlossen!");
    }
    torStatus = !torStatus;
    return 1;
    }

    //======================================================================
    // Falschen Befehl abfangen
    //======================================================================
    new string[128];
    format(string,sizeof(string),""#SERVERTAG" : Der Befehl existiert nicht! %s (/hilfe)",cmdtext);
    SendClientMessage(playerid,WEISS,string);
    TextDrawShowForPlayer(playerid,InfoSign);
    format(string,sizeof(string),"~w~"#SERVERTAG" : Der Befehl existiert nicht!~n~%s (/hilfe)",cmdtext);
    PlayerTextDrawSetString(playerid,INFOdraw[playerid][2],string);
    PlayerTextDrawShow(playerid,INFOdraw[playerid][2]);
    StopAudioStreamForPlayer(playerid);
    PlayAudioStreamForPlayer(playerid,ServerSounds[13],0.0,0.0,0.0);
    return SetTimerEx("HideInfoBox",3000,0,"i",playerid);
    }



  • Danke erstmal dafür keine Errors sind mehr vorhanden. Aber im Spiel drin wenn ich vor dem Gate stehe und /mv eingebe steht kein Tor in der nähe woran kann das liegen ? koordinaten hab ich eig alle richtig eingetragen für das tor