/invite

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 wollte mir ne /invite Funktion scripten.
    Habs auch soweit geschafft doch jetz wenn ich jemanden invite bekommt er zwar die Nachricht das er invited wurde, aber ich werde invited xD ( Also der der den Befehl ausführt )
    ps. : hab zum testen nur ein Team eingebaut^^


    Hier der Code :


    if(strcmp(strget(cmdtext,0), "/invite", true) ==0)
    {
    if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, FARBE_WEISS, "Benutze: /invite [ID]");
    {
    if(pInfo[playerid][gRank] >= 12 || IsPlayerAdmin(playerid))
    {
    new pname[MAX_PLAYER_NAME], path[200], gMember;
    gMember = strval(strget(cmdtext,1));
    if((pInfo[playerid][gTeam] >= 2)) return SendClientMessage(playerid, FARBE_WEISS, " Der Spieler ist in einer Fraktion !");
    GetPlayerName(playerid, sendername, sizeof(sendername));
    GetPlayerName(gMember, pname, sizeof(pname));
    format(path, sizeof(path), "/spieler/%s.ini", pname);

    if(pInfo[playerid][gTeam] == TEAM_VAGOS)
    {
    pInfo[gMember][gTeam] == TEAM_VAGOS;
    SetPlayerSkin(gMember, 109);
    pInfo[gMember][gRank] == 1;
    format(string, sizeof(string), "Du wurdest von %s in die %s eingeladen!",sendername, GetFaction(playerid));
    SendClientMessage(gMember, 0x01FCFFC8, string);
    if(pInfo[playerid][gRank] >= 12)
    {
    format(string, sizeof(string), "Du hast %s zu den %s eingeladen!",pname, GetFaction(playerid));
    SendClientMessage(playerid, 0x01FCFFC8, string);
    }
    }
    else SendClientMessage(playerid, FARBE_ROT, "Du bist in keiner Fraktion");
    }
    else SendClientMessage(playerid, FARBE_ROT, "Du brauchst mindestens Rank 12 um diesen Befehl auszuführen.");
    }
    return 1;
    }


    Bitte um Hilfe


    MfG


    x0rYyy




    /edit1-2: Rechtschreibfehler korrigiert

    2 Mal editiert, zuletzt von x0rYyy ()

  • Editierregel Beachten!


    Mein Tipp: Arbeite mit DCMD oder SII, leichter Commands zu erstellen sowie handhaben. Den Fehler erkenne ich gerade nicht doch wollte diesen Tipp dir hier lassen.. ;)

    Why do programmers always mix up Halloween and Christmas?
    Oct 31 == Dec 25

  • Editierregel Beachten!


    Mein Tipp: Arbeite mit DCMD oder SII, leichter Commands zu erstellen sowie handhaben. Den Fehler erkenne ich gerade nicht doch wollte diesen Tipp dir hier lassen.. ;)


    Wegen der Editierregeln: sry, wollte nur noch was einfügen was ich vergessen hab und evtl. wichtig hätte sein können um den Bug ( Den ich nicht finde ) zu entdecken.


    Zu dem Tipp: Hab ich zwar noch nie gemacht, aber trotzdem danke für den Tipp ;)

  • Ich würde an deiner Stelle, wie ZKX sagte, lieber mit dcmd arbeiten.


    Ich weiß nicht ob es den Fehler behebt aber anstatt:
    pInfo[gMember][gTeam] == TEAM_VAGOS;
    pInfo[gMember][gRank] == 1;

    würde das hier machen:
    pInfo[gMember][gTeam] = TEAM_VAGOS;
    pInfo[gMember][gRank] = 1;


    if((pInfo[playerid][gTeam] >= 2)) return SendClientMessage(playerid, FARBE_WEISS, " Der Spieler ist in einer Fraktion !");

    Dort Fragst du ab ob du selbst in einer Fraktion bist. Ich glaube du wolltest aber wissen ob der andere Spieler schon in einer Fraktion ist.


    if(pInfo[playerid][gRank] >= 12){
    format(string, sizeof(string), "Du hast %s zu den %s eingeladen!",pname, GetFaction(playerid));
    SendClientMessage(playerid, 0x01FCFFC8, string);}

    Die Abfrage kannst du dir sparen,da du weiter oben das gleiche Abgefragt hast. ;)
    Also würde das hier genügen:

    format(string, sizeof(string), "Du hast %s zu den %s eingeladen!",pname, GetFaction(playerid));
    SendClientMessage(playerid, 0x01FCFFC8, string)


    Sollte alles richtig sein was ich gesagt habe. Falls nicht entschuldige ich mich, denn ich bin selbst recht neu in der Scripter Szene.


    MfG,
    Bl4cky

  • Ok teste ich gleich /editire dann das ergebniss rein

    Zitat

    if((pInfo[playerid][gTeam] >= 2)) return SendClientMessage(playerid, FARBE_WEISS, " Der Spieler ist in einer Fraktion !");

    Dort Fragst du ab ob du selbst in einer Fraktion bist. Ich glaube du wolltest aber wissen ob der andere Spieler schon in einer Fraktion ist.

    Stimmt. danke




    Hatte seinen Grund :D
    /edit: Unterschied gefunden ^^
    /edit 2: Hat geklappt, dankeschön :)

    2 Mal editiert, zuletzt von x0rYyy ()