Problem mit dem Interview ^^

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
  • Hallöle, und zwar kommen wir direkt zur Sache:
    Ich will ein Spieler Interviewen, aber ich kann die ID des Spielers nicht mal eingeben. Sprich
    Ich mach /interview einladen dann bekomme direkt ICH die Anfrage.
    PS: Das ist nur der halbe Befehl, den ganzen brauchen wir ja nicht ;)
    Grüße,



    CMD:interview(playerid,params[])
    {
    if(GetPVarInt(playerid,"Eingeloggt") != 1)return SendClientMessage(playerid,Grau,"Info: Du musst eingeloggt sein, um diesen Befehl zu nutzen.");
    new cmd[10];
    if(SpielerInfo[playerid][pFraktion]!=7)return SendClientMessage(playerid,Grau,"Info: Du bist dazu nicht befugt! Verwende {B1EB13}/hilfe");
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 582)return SendClientMessage(playerid,Grau,"Hinweis: Du sitzt nicht in einem News Van!");
    {
    if(sscanf(params,"s[10]",cmd))return SendClientMessage(playerid,Rot,"Verwende: /interview [einladen/beenden]");
    if(strcmp(cmd,"einladen",true) == 0)
    {
    new pID,einladen[200],einladen1[200];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Verwende: /interview einladen [SpielerName/ID]");
    if(pID==playerid) return SendClientMessage(playerid, Grau, "Info: Du kannst dich nicht selbst Interviewen!");
    format(einladen,sizeof(einladen),"Dir wurde von Reporter %s ein Interview angeboten. /annehmen interview um das Interview anzunehmen!",SpielerName(playerid));
    SendClientMessage(pID,Hellblau,einladen);
    format(einladen1,sizeof(einladen1),"Du hast Spieler %s ein Interview angeboten.",SpielerName(pID));
    SendClientMessage(playerid,Hellblau,einladen1);
    return 1;
    }

  • Wie es ausschaut, ist dir die Funktionsweiße von sscanf() nicht geläufig oder du hast es schlichtweg übersehen: In Zeile 12 sollten 2 Variabeln angegeben werden, vorweg cmd und folgend pID. Auch wäre die Verwendung von strcmp() in Zeile 9 fehlerhaft, würde dir da dann zu strfind() raten.

  • Wie es ausschaut, ist dir die Funktionsweiße von sscanf() nicht geläufig oder du hast es schlichtweg übersehen: In Zeile 12 sollten 2 Variabeln angegeben werden, vorweg cmd und folgend pID. Auch wäre die Verwendung von strcmp() in Zeile 9 fehlerhaft, würde dir da dann zu strfind() raten.

    Könntest du mir den da irgendwie vor machen, da ich grad wirklich ein bisschen 8| bin.


    Grüße.

  • Könntest du mir den da irgendwie vor machen, da ich grad wirklich ein bisschen 8| bin.


    Grüße.


    Könntest du mir den da irgendwie vor machen, da ich grad wirklich ein bisschen 8| bin.


    Grüße.


    if(strfind(cmd,"einladen",true) != -1)
    {
    new pID,einladen[200],einladen1[200];
    if(sscanf(params,"s[10]u",cmd,pID))return SendClientMessage(playerid,Grau,"Verwende: /interview einladen [SpielerName/ID]");
    Die Verwendung von strfind() ist deshalb nötig, da in der Variable cmd beispielsweiße "einladen 10" stehen würde und somit der Vergleich durch strcmp() fehlschlagen würde -> Bedingung wäre nicht erfüllt.


    /edit: Grammatikfehler behoben.