.:: /anhan Befehl geht nicht ::.

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 habe ein Problem mit meinen Anhan Befehl.


    Was ist /ahnhan ?
    Das ist ein Admin Command, womit man jedes Fahrzeug mit jeden Abschleppen kann.
    Und der Geht bei mir nicht. Richtiges Adminlevel habe ich. Aber es geht halt nicht.
    Also kurz gesagt es passiert nichts bei der Eingabe.


    Der Befehl ?
    if(strcmp("/anhan",cmdtext,true)==0)
    {
    if(PlayerInfo[playerid][pAdmin] == 3)
    {
    for(new i = 0; i<MAX_AUTOS; i++)
    {
    new Float:xc,
    Float:yc,
    Float:zc;
    GetVehiclePos(i,xc,yc,zc);
    if(IsPlayerInRangeOfPoint(playerid,8.8,xc,yc,zc))
    {
    AttachTrailerToVehicle(i,GetPlayerVehicleID(playerid));
    }
    }
    return 1;
    }
    }
    Ich hoffe ihr könnt mir Helfen

  • Du solltest vielleicht eine Anweisung einbauen, die überprüft,
    ob der Admin in einem Fahrzeug ist und in Reichweite des Fahrzeugs,
    dessen ID du ebenfalls als Parameter mit einfließen lassen solltest.


    Konkret: /anhan [vehicle ID]

  • Wieso willst du ein Code haben ?
    Wenn dann brauch ich den Code.
    Das war ja nicht gerade eine so hilfreiche Antwort von beiden nicht.
    Also bitte macht mir ein Beispiel.
    Und Batista hälst dich mal hier raus, wenn du keine Ahnung hast ja.

  • Hier bitte sollte so perfekt gehen IsValidVehicle bitte oben einfügen oder in die a_samp include


    native IsValidVehicle(vehicleid);
    if(!strcmp("/anhan",cmdtext,true))
    {
    if(PlayerInfo[playerid][pAdmin] < 3)return SendClientMessage(playerid,0xFFFF0000,"Du bist nicht befugt dazu!");
    if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,0xFFFF0000,"Du bist in keinem Fahrzeug!");
    new Float:Pos[3],i,veh= GetPlayerVehicleID(playerid);
    for(; i<MAX_VEHICLES; ++i)
    {
    if(!IsValidVehicle(i))continue;
    GetVehiclePos(i,Pos[0],Pos[1],Pos[2]);
    if(IsPlayerInRangeOfPoint(playerid,8.8,Pos[0],Pos[1],Pos[2]))AttachTrailerToVehicle(i,veh);
    }
    return 1;
    }

  • Die einfachere und richtig Lösung folgt unten.


    Noch ein Tipp:


    Wir helfen dir aus eigenen Interesse und nicht aus
    der Tatsache, dass du meinst, wir dir helfen zu müssen.
    Und niemand ist dazu da, sich um deine Dinge kümmern zu müssen.

    if(strcmp(cmd, "/anhan", true) == 0)
    {
    var = strtok(cmdtext, idx);
    if(!strlen(var)) return SendClientMessage(playerid, -1, "[BENUTZE] /anhan [vehicleID]");

    if(PlayerInfo[playerid][pAdmin] == 3)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(strval(var) != INVALID_VEHICLE_ID)
    {
    for(new c = 0; c < MAX_VEHICLES; c++)
    {
    AttachTrailerToVehicle(strval(var), GetPlayerVehicleID(playerid));
    }

    SendClientMessage(playerid, -1, "Das Fahrzeug wurde angehängt.");

    return 1;
    }
    }
    }
    }


  • Bitte fass dir mal an die Nase und überdenke deinen code


    for(new c = 0; c < MAX_VEHICLES; c++)
    {
    AttachTrailerToVehicle(strval(var), GetPlayerVehicleID(playerid));
    }
    Zu dem kannst du noch ein return 1; setzen es sei den es sollte beabsichtigt sein wenn der spieler nicht die bedingungen erfüllt das UNKNOWN COMMAND kommt

  • Bitte fass dir mal an die Nase und überdenke deinen code


    Uhhh...
    Da habe ich ja mal gar nicht hingeschaut.
    Natürlich hast du Recht und ich habe mächtig "getrieft".


    if(strcmp(cmd, "/anhan", true) == 0)
    {
    var = strtok(cmdtext, idx);
    if(!strlen(var)) return SendClientMessage(playerid, -1, "[BENUTZE] /anhan [vehicleID]");

    if(PlayerInfo[playerid][pAdmin] == 3)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(strval(var) != INVALID_VEHICLE_ID)
    {
    AttachTrailerToVehicle(strval(var), GetPlayerVehicleID(playerid));
    SendClientMessage(playerid, -1, "Das Fahrzeug wurde angehängt.");
    return 1;
    }
    }
    }
    }

  • Es gibt 4 Errors
    Bitte fixen
    C:\Users\steffen\Desktop\GF\gamemodes\evo.pwn(32694) : error 033: array must be indexed (variable "-unknown-")
    C:\Users\steffen\Desktop\GF\gamemodes\evo.pwn(32695) : error 035: argument type mismatch (argument 1)
    C:\Users\steffen\Desktop\GF\gamemodes\evo.pwn(32700) : error 035: argument type mismatch (argument 1)
    C:\Users\steffen\Desktop\GF\gamemodes\evo.pwn(32702) : error 035: argument type mismatch (argument 1)
    C:\Users\steffen\Desktop\GF\gamemodes\evo.pwn(32694) : warning 204: symbol is assigned a value that is never used: "var"