Include Erstellung Help

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
  • Hi all.
    Ich wollte mal ein eigendes Include schreiben.
    Doch wenn ich oben #include <Language> mache kommen 17 Errors und ich weiß nicht warum!
    Errors:

    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(40) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(42) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(45) : Variable wurde bereits definiert: "ShowPlayerLanguageDialog"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(48) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(51) : Variable wurde bereits definiert: "LoadDialog"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(53) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(55) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(56) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(58) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(63) : Unbekannte Funktion
    Zeile (458) : Variable wird nie benutzt: "PlayerLanguage"


    22 Errors, 1 Warnungen
    Du hast Errors im Skript. Kompilierung abgebrochen


    PWNMod Compiler Version 1.2
    (c) Trooper[Y]
    In Kooperation mit GTA-Servers.de


    Include

    #if defined _Language_included
    #endinput
    #endif
    #define _Language_included


    native GetPlayerLanguage(playerid);
    native SetPlayerLanguage(playerid,Language[]);
    native SendLanguageMessage(playerid,color,English,German);
    native ShowPlayerLanguageDialog(playerid);
    native LoadDialog();


    foeward LoadDialog();
    forward ShowPlayerLanguageDialog(playerid);
    forward SendLanguageMessage(playerid,color,English,German);
    forward SetPlayerLanguage(playerid,language[]);
    forward GetPlayerLanguage(playerid);


    new PlayerLanguage[MAX_PLAYERS char];
    #define German 9991
    #define English 9992
    #define LanguageDialog 9993


    public GetPlayerLanguage(playerid)
    {
    return PlayerLanguage[playerid];
    }


    public SetPlayerLanguage(playerid,language)
    {
    PlayerLanguage[playerid] = language)
    return 1;
    }


    public SendLanguageMessage(playerid,color,English[],German[])
    {
    switch(PlayerLanguage[playerid])
    {
    case German: SendClientMessage(playerid,color,German);
    case English: SendClientMessage(playerid,color,English02:22 28.07.2011);
    }
    return 1;
    }


    public ShowPlayerLanguageDialog(playerid)
    {
    ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    return 1;
    }


    public LoadDialog()
    {
    if(dialogid == LanguageDialog)
    {
    if(!response) return ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.);
    PlayerLanguage[playerid] = German;
    }
    case 1:
    {
    SendClientMessage(playerid,0xFF0000FF,"You Choosen the English Language");
    PlayerLanguage[playerid] = English;
    }
    }
    }
    }



    obwohl ich nichtma irgendeine funktion genutzt habe und definiert sind sie im fs auch nicht.
    kann mir einer dieses problem beheben ?


    Danke im vorraus


    EDIT: Kann mir keiner helfen ?

    Einmal editiert, zuletzt von RedStyle ()

  • 1. natives immer als Kommentare, heißt:
    /*native GetPlayerLanguage(playerid);
    native SetPlayerLanguage(playerid,Language[]);
    native SendLanguageMessage(playerid,color,English,German);
    native ShowPlayerLanguageDialog(playerid);
    native LoadDialog();/*
    // oder so, was aber schwachsinnig wäre

    2. forward nicht foeward:
    forward LoadDialog();
    3. Nur ein Tipp: Für normale Funktionen sollte man stocks verwenden (kann man ggf. auch weglassen), da sie schneller und ressourcenschonender sind. Positiver Nebeneffekt: Man braucht kein forward.


    //Edit: PlayerLanguage[playerid] = language) musst du zu PlayerLanguage[playerid] = language; ändern.
    Zeichenketten müssen immer beendet/geschlossen werden:
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.");

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • Moin ja hab ich
    und bekomm noch immer folgende errors:

    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(28) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(28) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(28 -- 30) : Unbekannte Funktion
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(28 -- 30) : Zuviele Fehler in einer Zeile


    5 Errors, 0 Warnungen
    Du hast Errors im Skript. Kompilierung abgebrochen


    PWNMod Compiler Version 1.2
    (c) Trooper[Y]
    In Kooperation mit GTA-Servers.de


    include

    #if defined _Language_included
    #endinput
    #endif
    #define _Language_included


    //native GetPlayerLanguage(playerid);
    //native SetPlayerLanguage(playerid,Language[]);
    //native SendLanguageMessage(playerid,color,English,German);
    //native ShowPlayerLanguageDialog(playerid);
    //native LoadDialog();


    new PlayerLanguage[MAX_PLAYERS char];
    #define German 9991
    #define English 9992
    #define LanguageDialog 9993


    stock GetPlayerLanguage(playerid)
    {
    return PlayerLanguage{playerid};
    }


    stock SetPlayerLanguage(playerid,language)
    {
    PlayerLanguage[playerid] = language;
    return 1;
    }


    stock SendLanguageMessage(playerid,color,English[],German[])
    {
    switch(GetPlayerLanguage[playerid])
    {
    case German: SendClientMessage(playerid,color,German);
    case English: SendClientMessage(playerid,color,English);
    }
    return 1;
    }


    stock ShowPlayerLanguageDialog(playerid)
    {
    ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    return 1;
    }


    stock LoadDialog()
    {
    if(dialogid == LanguageDialog)
    {
    if(!response) return ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.);
    PlayerLanguage[playerid] = German;
    }
    case 1:
    {
    SendClientMessage(playerid,0xFF0000FF,"You Choosen the English Language");
    PlayerLanguage[playerid] = English;
    }
    }
    }
    }

  • Das Kommentieren war mein Fehler bzw. ein Schreibfehler, nicht /* und /*, ist ja klar, sondern /* und */.


    Du kannst eine Funktion nicht wie eine Variable/Array aufrufen:
    switch(GetPlayerLanguage(playerid))
    Dann immer noch:
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.");

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • bekomm dieselben errors wie oben und mit {} ist schon gefixxt :)

    #if defined _Language_included
    #endinput
    #endif
    #define _Language_included


    //native GetPlayerLanguage(playerid);
    //native SetPlayerLanguage(playerid,Language[]);
    //native SendLanguageMessage(playerid,color,English,German);
    //native ShowPlayerLanguageDialog(playerid);
    //native LoadDialog();


    new PlayerLanguage[MAX_PLAYERS char];
    #define German 9991
    #define English 9992
    #define LanguageDialog 9993


    stock GetPlayerLanguage(playerid)
    {
    return PlayerLanguage(playerid);
    }


    stock SetPlayerLanguage(playerid,language)
    {
    PlayerLanguage[playerid] = language;
    return 1;
    }


    stock SendLanguageMessage(playerid,color,English[],German[])
    {
    switch(GetPlayerLanguage(playerid))
    {
    case German: SendClientMessage(playerid,color,German);
    case English: SendClientMessage(playerid,color,English);
    }
    return 1;
    }


    stock ShowPlayerLanguageDialog(playerid)
    {
    ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    return 1;
    }


    stock LoadDialog()
    {
    if(dialogid == LanguageDialog)
    {
    if(!response) return ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.");
    PlayerLanguage[playerid] = German;
    }
    case 1:
    {
    SendClientMessage(playerid,0xFF0000FF,"You Choosen the English Language");
    PlayerLanguage[playerid] = English;
    }
    }
    }
    }


    EDIT: Laut Error liegen die errors nur in zeile 28-30

  • Bei SendLanguageMessage(playerid,color,English[],German[]) musst du English und German umbennen/kleinschreiben, da es schon eine Definition dafür gibt.

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • Danke hab ich übersehen. nur bekomm ich nu in folgender zeile folgende fehler:

    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(46) : Unbekannte Variable : "dialogid"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(48) : Unbekannte Variable : "response"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(48) : Unbekannte Variable : "playerid"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(49) : Unbekannte Variable : "listitem"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(53) : Unbekannte Variable : "playerid"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(54) : Unbekannte Variable : "playerid"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(58) : Unbekannte Variable : "playerid"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(59) : Unbekannte Variable : "playerid"
    C:\Users\Tieger\Desktop\Server\pawno\include\Language.inc(63) : warning 209: function "LoadDialog" should return a value


    8 Errors, 1 Warnungen
    Du hast Errors im Skript. Kompilierung abgebrochen


    PWNMod Compiler Version 1.2
    (c) Trooper[Y]
    In Kooperation mit GTA-Servers.de

    bei

    stock LoadDialog()
    {
    if(dialogid == LanguageDialog)
    {
    if(!response) return ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.");
    PlayerLanguage[playerid] = German;
    }
    case 1:
    {
    SendClientMessage(playerid,0xFF0000FF,"You Choosen the English Language");
    PlayerLanguage[playerid] = English;
    }
    }
    }
    }


    wenn ich LoadDialog rausnehme bekomm ich keine errors

  • Kein Wunder...
    Entweder übergibst du die Variablen als Parameter (Funktion unter OnDialogResponsedarunter und listitem, playerid und response als Parameter übergeben) oder du packst einfach den gesamten Code unter OnDialogResponse.

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.


  • public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    //anderer code
    LoadDialog();
    return 1;
    }


    kann man onplayerdialogresponse irgendwie im include machen ? das es z.B in include sien kann als auch im fs/gm


  • // OnDialogResponse
    LoadDialog(playerid, dialogid, response, listitem);
    // LoadDialog
    stock LoadDialog(playerid, dialogid, response, listitem)
    {
    if(dialogid == LanguageDialog)
    {
    if(!response) return ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.");
    PlayerLanguage[playerid] = German;
    }
    case 1:
    {
    SendClientMessage(playerid,0xFF0000FF,"You Choosen the English Language");
    PlayerLanguage[playerid] = English;
    }
    }
    }
    }


    // Edit: Klar geht das:

    // oben
    forward OnLanguageDialogResponse(playerid, dialogid, response, listitem, inputtext[]);


    // unten
    public OnLanguageDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == LanguageDialog)
    {
    if(!response) return ShowPlayerDialog(playerid,LanguageDialog,DIALOG_STYLE_LIST,"Select your Language","German\nEnglish","Choose","Choose");
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFF0000FF,"Du wählst die deutsche Sprache aus.");
    PlayerLanguage[playerid] = German;
    }
    case 1:
    {
    SendClientMessage(playerid,0xFF0000FF,"You Choosen the English Language");
    PlayerLanguage[playerid] = English;
    }
    }
    }
    return 1;
    }
    #define OnLanguageDialogResponse OnDialogResponse

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

    Einmal editiert, zuletzt von dead ()