Zuerst kaufen, dann verwenden- funktion

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 Leute,
    ich hab mal eine kleine Frage. Und zwar möchte ich, dass wenn man z.B. noch kein Bier gekauft hat, kein Bier trinken kann.
    Ich habe jezt if (strcmp("/bierkaufen", cmdtext, true, 10) == 0)
    {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s hat sich ein Bier gekauft.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=1;
    return 1;
    }
    if (strcmp("/biertrinken", cmdtext, true, 10) == 0)
    if(hatgekauft[playerid]==1) {
    } else {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s trinkt jezt sein Bier.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=0;
    return 1;
    Und das klappt halbwegs. Ich möchte aber, dass man, wenn man sein Bier getrunken hat, erst wieder ein neues Kaufen muss, wenn man wieder trinken möchte! Danke schonmal für eure Hilfe




    GER-Clan - Seit 2007 - WIEDER DA!

  • Du hattest mich falsch verstanden^^
    if (strcmp("/bierkaufen", cmdtext, true) == 0)
    {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s hat sich ein Bier gekauft.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=1;
    return 1;
    }
    if (strcmp("/biertrinken", cmdtext, true) == 0)
    if(hatgekauft[playerid]==1) {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s trinkt jezt sein Bier.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=0; }
    return 1;
    }

  • Aber hier bekomme ich

    Code
    (508) : error 010: invalid function or declaration

    Zeile 508 ist das return 0; welches den Public OnPlayerCommandText schließt.


    //Edit : Wenn ich eine Klammer { hinzufüge , ist der Error behoben und alles so, wie ich es oben beschrieben habe




    GER-Clan - Seit 2007 - WIEDER DA!

    Einmal editiert, zuletzt von Wayne_Waylay ()

  • vill so


    if (!strcmp(cmdtext,"/bierkaufen", true) == 0)
    {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s hat sich ein Bier gekauft.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=1;
    return 1;
    }
    if (!strcmp( cmdtext,"/biertrinken", true) == 0)
    if(hatgekauft[playerid]==1) {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s trinkt jezt sein Bier.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=0; }
    return 1;
    }



    oder so


    if (!strcmp(cmdtext,"/bierkaufen", true))


    {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s hat sich ein Bier gekauft.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=1;
    return 1;
    }
    if (!strcmp( cmdtext,"/biertrinken", true))
    if(hatgekauft[playerid]==1) {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s trinkt jezt sein Bier.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=0; }
    return 1;
    }

    Lust auf russisch roulette ?
    Okay...
    ... Ich hol mal meine Automatik ;D

  • if (strcmp("/bierkaufen", cmdtext, true) == 0)
    {
    if(hatgekauft[playerid]==0) {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s hat sich ein Bier gekauft.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=1; }
    return 1;
    }
    if (strcmp("/biertrinken", cmdtext, true) == 0) {
    if(hatgekauft[playerid]==1) {
    new pname[MAX_PLAYER_NAME];
    new string[100];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "%s trinkt jezt sein Bier.", pname);
    SendClientMessageToAll(FARBE_BIERMSG, string);
    hatgekauft[playerid]=0; }
    return 1;
    }