carkey befehl

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
  • Hallo,
    ich würde gerne wenn man /carkey eingibt, dss dann ein Dioalog kommt und ich das fahrzweug auswählen kann.
    Wie mach ich das?


    if (strcmp("/carkey", cmdtext, true, 10) == 0)
    {
    new mv = MaxVeh;
    if(mv > 1)
    {
    Dtc_PlayerKey[playerid] += 1;
    if(Dtc_PlayerKey[playerid] == MaxVeh)
    {
    Dtc_PlayerKey[playerid] = 0;
    }
    if(Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]])
    {
    format(string, sizeof(string), "Du nimmst deinen %dten Auto-Schlüssel, für deinen %s!",Dtc_PlayerKey[playerid]+1,CarName[PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarModel]-400]);
    }
    else
    {
    format(string, sizeof(string), "Du nimmst deinen %dten Auto-Schlüssel, doch hast für diesen Schlüssel noch kein Auto!",Dtc_PlayerKey[playerid]+1);
    }
    SendClientMessage(playerid,COLOR_YELLOW,string);
    }
    return 1;
    }

  • Sollte so funktionieren:


    Nichts für ungut, habe es mal gekürzt ;)
    //OnPlayerCommandText
    if(strcmp("/carkey", cmdtext, true, 10) == 0)
    {
    new dialog[300];
    format(dialog, sizeof(dialog), "Schlüssel 1 | %s\nSchlüssel 2 | %s\nSchlüssel 3 | %s", GetKeyStatus(playerid, 0),GetKeyStatus(playerid, 1),GetKeyStatus(playerid, 2));
    return ShowPlayerDialog(playerid, 2337, DIALOG_STYLE_LIST, "Fahrzeug Schlüssel", dialog, "Auswählen","Schließen");
    }



    //OnDialogResponse
    if(dialogid == 2337)
    {
    if(!response) return 1;
    new forstring[60];
    format(forstring,60,"Du nimmst deinen %i. Schlüssel!", listitem+1);
    Dtc_PlayerKey[playerid] = listitem;
    return SendClientMessage(playerid, COLOR_GRAD2, forstring);
    }


    // GetKeyStatus
    GetKeyStatus(playerid, key)
    {
    new status[50];
    if(!Dtc_PlayerHaveCar[playerid][key]) format(status,sizeof(status), "Kein Fahrzeug");
    else format(status, sizeof(status), "%s", CarName[PlayerCar[playerid][key][CarModel]-400]);
    return status;
    }