Suche /entführen 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 Brotfische,


    Ich suche einen Befehl z.B /entführen ID Fahrer
    Es solte so ablaufen...


    Um jemanden entführen zu können, braucht man ein Auto + Fahrer der im Auto sitzt und einen der das opfer von außen ins Auto zieht...


    Währe sehr Gut wenn es ein Filterscript wird...
    Danke

  • Schaffst du selbst zu erstellen. Simple Abfrage:


    if(strcmp(cmd, "/kidnap", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if( HIER ABFRAGEN OB ER IN EINER FRAKTION IST )
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GREY, "Befehl: /kidnap [playerid] [Sitz: 0 = hinten links, 1 = hinten rechts]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != playerid)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GREY, "Befehl: /kidnap [playerid] [Sitz: 0 = hinten links, 1 = hinten rechts]");
    return 1;
    }
    new sit = strval(tmp);
    if(sit < 0 || sit > 1) { SendClientMessage(playerid, COLOR_GREY, "Wähle den Sitzplatz nicht unter 0 oder über 1!"); return 1; }
    if(GetDistanceBetweenPlayers(playerid, giveplayerid) < 2)
    {
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if( HIER ABFRAGEN OB ' i ' IN DER GLEICHEN FRAKTION IST )
    {
    if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
    {
    if(GetDistanceBetweenPlayers(playerid, i) < 2)
    {
    new car = GetPlayerVehicleID(i);
    if(sit == 0)
    {
    PutPlayerInVehicle(giveplayerid, car, 2);
    }
    else if(sit == 1)
    {
    PutPlayerInVehicle(giveplayerid, car, 3);
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht in der Nähe eines Fahrers mit einem Auto!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Der Spieler aus deiner Fraktion ist nicht am Steuer!");
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Das Opfer ist nicht in deiner Nähe!");
    }
    }
    }
    }
    }
    }


    So in etwa geht es.


    (Ungetestet, eben mal schnell erstellt)

  • Hallo,



    Müsste so sein oder ?


    if(strcmp(cmd, "/kidnap", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(SpielerInfo[playerid][Fraktion] = ??)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GREY, "Befehl: /kidnap [playerid] [Sitz: 0 = hinten links, 1 = hinten rechts]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != playerid)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GREY, "Befehl: /kidnap [playerid] [Sitz: 0 = hinten links, 1 = hinten rechts]");
    return 1;
    }
    new sit = strval(tmp);
    if(sit < 0 || sit > 1) { SendClientMessage(playerid, COLOR_GREY, "Wähle den Sitzplatz nicht unter 0 oder über 1!"); return 1; }
    if(GetDistanceBetweenPlayers(playerid, giveplayerid) < 2)
    {
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(SpielerInfo[playerid][pfraktion] = ??)
    {
    if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
    {
    if(GetDistanceBetweenPlayers(playerid, i) < 2)
    {
    new car = GetPlayerVehicleID(i);
    if(sit == 0)
    {
    PutPlayerInVehicle(giveplayerid, car, 2);
    }
    else if(sit == 1)
    {
    PutPlayerInVehicle(giveplayerid, car, 3);
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht in der Nähe eines Fahrers mit einem Auto!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Der Spieler aus deiner Fraktion ist nicht am Steuer!");
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Das Opfer ist nicht in deiner Nähe!");
    }
    }
    }
    }
    }
    }



    Nun weiß ich aber nicht wohin das IM Gamemode rein muss :(

  • Das muss so sein:


    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(SpielerInfo[i][pfraktion] = ??) //<--- da muss nicht playerid, sondern ' i ' hin, weil es ja der fahrer ist
    {
    ...


    Und beachte: Oben hast du PlayerInfo[...][Fraktion] und unten PlayerInfo[...][pfraktion], setz es richtig.


    Alles andere ist richtig. Das setzt du jetzt unter "public OnPlayerCommandText".