Plötzliche Errors

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
  • Guten Morgen liebe Brotfische,
    da ich nach einiger Zeit mal wieder Lust hatte ein wenig zu scripten habe ich mein Selfmade mal geöffnet und wollte es bearbeiten. Nach ein paar Sachen habe ich es compilt und plötzlich Errormeldungen bekommen die vorher nie da waren, das seltsame daran ist das das was mir gemeldet wurde eigentlich schon im Script eingestellt ist.
    Da ich nicht der beste Scripter bin und nun nicht weiter komme, wollte ich euch mal nach Hilfe fragen.


    Folgende Fehlermeldungen bekomme ich an mehreren Stellen im Script:

    Spoiler anzeigen
    C:\Users\Spectra\Desktop\Scripts\RP Selfmade\gamemodes\selfmade.pwn(1803) : error 017: undefined symbol "isPlayerInFrakt"

    Spoiler anzeigen
    C:\Users\Spectra\Desktop\Scripts\RP Selfmade\gamemodes\selfmade.pwn(1866) : error 017: undefined symbol "SpielerSpeichern"


    Allerdings habe ich die Funktion im Script bereits eingebaut und vorher nie solche Meldungen bekommen.

    Spoiler anzeigen
    stock isPlayerInFrakt(playerid,fraktid)
    {
    if(GetPVarInt(playerid,"Fraktion")==fraktid)return 1;
    return 0;
    }
    und

    Spoiler anzeigen
    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel")); dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    //...und so weiter
    dini_IntSet(Spielerdatei,"Job",GetPVarInt(playerid,"Job"));
    }
    return 1;
    }


    Würde mich freuen wenn ihr mir bei dem Problem helft bzw. mir sagt was ich falsch gemacht habe und wie ich es beheben kann. Notfalls habe ich auch Teamviewer falls jemand lieber direkt reinschauen möchte.



    Mit freundlichen Grüßen,
    Spectrater

  • wie hast du die funktion genutzt?

    [tabmenu][tab='Angebote','http://cdn3.iconfinder.com/data/icons/glyph/227/Tag-48.png']

    + Die Preise liegen bei 5-100+€ Ablauf:
    + Entweder ihr addet mich in Skype (PN vorher Schreiben) oder Ihr schreibt eine PN an mich (Betreff - Euer Wunsch z.B. Filterscript)
    + So nun schreibt ihr mir was ihr alles in dem Script haben wollt ich werd euch dann sagen ob ich es hinbekomme.
    + Dann machen wir ein groben Preis aus. Ich werde das Script erstellen und es zusammen mit dem Kunden Testen.



    [tab='Kontakt','http://cdn3.iconfinder.com/data/icons/line/36/person_add-48.png']
    edmix23

    + Bitte beim Adden angeben wer ihr seit oder per PN bescheid sagen!
    [tab='Zahlungs Methoden','https://cdn3.iconfinder.com/data/icons/line/36/check_money-32.png']
    +Paypal!
    +Direkte Banküberweisung

  • wie hast du die funktion genutzt?

    isPlayerInFrakt für Befehle über ocmd und bei OnPlayerSpawn für Fraktionsabfragen etc.
    SpielerSpeichern bei OnPlayerDisconnect, nach dem Krankenhausaufenthalt und wenn ihm ein Job zugeteilt wird nach einem Dialog um den Account in den Scriptfiles zu speichern.

  • Eigentlich nicht, allerdings zeigt der Compiler auch nicht mehr als 26 Errors an, es sind allerdings auch weitere stocks die davon betroffen sind. Die Adminabfrage und Jobabfrage hat er auch schon als undefiniert gemeldet...

  • Das ist sicherlich ein {} Fehler.
    Analysier doch dein Komplettes Script mal Hier -> http://www.woerter-zaehlen.de/
    Wenn du dann mehr { als } hast ist das das Problem.
    Es kann aber auch sein (wie mir schonmal passiert ist) das ich anstatt die Funktion mit } zu schließen am Ende eine { gemacht habe...

    Erst wenn
    der letzte Baum gerodet,
    der letzte Fisch vergiftet
    und der letzte Fisch gefangen ist,
    werdet ihr feststellen,
    dass man Gold nicht essen kann.

  • Sagte ich doch es ist ein Fehler mit den Klammern. geh am besten mal jede funkiton genau durch. JE nach dem wie lang den Skript ist wird das natürlich ein wenig dauern. Am besten machst du es mit einem Stock. Wenn der Stock im Compiler fehler wirft, so muss die Zu schliessende klammer über den Stock im Skirpt irgendwo fehlen