Mein befehl will nicht wie ich es will || Auto System

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
  • Guten Abend Breadfish,


    Ich habe ein kleines Problem bei meinem /lock Befehl für die User
    Fahrzeuge wen ich online komme wird das Auto automatisch abgeschlossen
    und wen ich /lock mach steht da zwar das es aufgeschlossen wird und wen ich wieder /lock mache
    steht da auch das es abgeschlossen wird nur wen ich einsteigen möchte sendet er meine MSG raus das dieses Auto abgeschlossen ist
    ich habe dann ein test gemacht ob ich überhaubt in der nähe meines Fahrzeuges bin schreibt er die else naricht
    das bedeutet er ist nicht in der nähe doch mir ist kein fehler bekannt eventuell hab ich da was übersehen
    wäre nett wen mir jemand ein Tipp gibt


    hier die Codes


    Lock befehl:

    ocmd:lock(playerid,params[])
    {
    for(new i = 0; i < 3; i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,Autos[playerid][i][posx],Autos[playerid][i][posy],Autos[playerid][i][posz]))
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    if(strcmp(Autos[playerid][i][Name],name,false) == 0)
    {
    if(strcmp(Autos[playerid][i][Schloss],name,false) == 0)
    {
    new Autodatei[100];
    format(Autodatei,100,"/Autos/%s_Auto_%d.ini",name,i);
    dini_IntSet(Autodatei,"Autoopen",1);
    if(dini_Exists(Autodatei))
    {
    Autos[playerid][i][Schloss] = dini_Int(Autodatei,"Autoopen");
    }
    SendClientMessage(playerid,BLAU,"Du hast dein Auto aufgeschlossen!");
    return 1;
    }
    else
    {
    new Autodatei[100];
    format(Autodatei,100,(Autodatei),"/Autos/%s_Auto_%d.ini",name,i);
    dini_IntSet(Autodatei,"Autoopen",0);
    if(dini_Exists(Autodatei))
    {
    Autos[playerid][i][Schloss] = dini_Int(Autodatei,"Autoopen");
    }
    SendClientMessage(playerid,BLAU,"Du hast dein Auto abgeschlossen!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,0x00FF00,"Das ist nicht dein Auto!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist nicht in der nähe deines Autos!");
    return 1;
    }
    }
    return 1;
    }


    OnPlayerEnterVehicle:



    for(new i = 0; i < 3; i++)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    if(strcmp(Autos[playerid][i][Schloss],name,false) == 0 || IsANoTachoVehicle(vehicleid)){}
    else
    {
    Freeze(playerid);
    UnFreeze(playerid);
    SendClientMessage(playerid,ROT,"Das Fahrzeug ist Abgeschlossen");
    }
    }


    und noch mal zum anschauen die
    OnPlayerConnect:



    //==============[ AUTO LOADER]==============
    for(new i = 0; i < 3; i++)
    {
    new Autodatei[100],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    TextDrawShowForPlayer(playerid, anzeigen);
    format(Autodatei,sizeof(Autodatei),"/Autos/%s_Auto_%d.ini",name,i);
    if(dini_Exists(Autodatei))
    {
    Autos[playerid][i][modelid] = dini_Int(Autodatei,"modelid");
    Autos[playerid][i][HP] = dini_Int(Autodatei,"HP");
    Autos[playerid][i][Farbe1] = dini_Int(Autodatei,"Farbe1");
    Autos[playerid][i][Farbe2] = dini_Int(Autodatei,"Farbe2");
    Autos[playerid][i][Paintjob] = dini_Int(Autodatei,"Paintjob");
    format(Autos[playerid][i][Nummernschild],20,dini_Get(Autodatei,"Nummernschild"));
    Autos[playerid][i][Schloss] = dini_Int(Autodatei,"Autoopen");
    Autos[playerid][i][posx] = dini_Int(Autodatei,"posx");
    Autos[playerid][i][posy] = dini_Int(Autodatei,"posy");
    Autos[playerid][i][posz] = dini_Int(Autodatei,"posz");
    Autos[playerid][i][posa] = dini_Int(Autodatei,"posa");
    Autos[playerid][i][Spoiler] = dini_Int(Autodatei,"Spoiler");
    Autos[playerid][i][Wheels] = dini_Int(Autodatei,"Wheels");
    Autos[playerid][i][Nitro] = dini_Int(Autodatei,"Nitro");
    Autos[playerid][i][Roof] = dini_Int(Autodatei,"Roof");
    Autos[playerid][i][Hood] = dini_Int(Autodatei,"Hood");
    Autos[playerid][i][Sideskirt] = dini_Int(Autodatei,"Sideskirt");
    Autos[playerid][i][Lamps] = dini_Int(Autodatei,"Lamps");
    Autos[playerid][i][Exhaust] = dini_Int(Autodatei,"Exhaust");
    Autos[playerid][i][Stereo] = dini_Int(Autodatei,"Stereo");
    Autos[playerid][i][Hydraulics] = dini_Int(Autodatei,"Hydraulics");
    Autos[playerid][i][VentRight] = dini_Int(Autodatei,"VentRight");
    Autos[playerid][i][VentLeft] = dini_Int(Autodatei,"VentLeft");
    Autos[playerid][i][FrontBumper] = dini_Int(Autodatei,"FrontBumper");
    Autos[playerid][i][RearBumper] = dini_Int(Autodatei,"RearBumper");
    Spielercar[playerid][i] = CreateVehicle(Autos[playerid][i][modelid],Autos[playerid][i][posx],Autos[playerid][i][posy],Autos[playerid][i][posz]+1.5,Autos[playerid][i][posa],-1,-1,-1);
    SetVehicleNumberPlate(Spielercar[playerid][i],dini_Get(Autodatei,"Nummernschild"));
    SetVehicleParamsForPlayer(Spielercar[playerid][i],playerid,0,0);
    if(Autos[playerid][i][HP] > 250)
    {
    SetVehicleHealth(Spielercar[playerid][i],Autos[playerid][i][HP]);
    }
    else SetVehicleHealth(Spielercar[playerid][i],255.0);
    if(Autos[playerid][i][Paintjob] >= 0)
    {
    ChangeVehiclePaintjob(Spielercar[playerid][i],Autos[playerid][i][Paintjob]);
    }
    if(Autos[playerid][i][Farbe1] >= 0 || Autos[playerid][i][Farbe2] >= 0)
    {
    ChangeVehicleColor(Spielercar[playerid][i],Autos[playerid][i][Farbe1],Autos[playerid][i][Farbe2]);
    }
    if(Autos[playerid][i][Spoiler] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Spoiler]); }
    if(Autos[playerid][i][Hood] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Hood]); }
    if(Autos[playerid][i][Roof] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Roof]); }
    if(Autos[playerid][i][Sideskirt] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Sideskirt]); }
    if(Autos[playerid][i][Lamps] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Lamps]); }
    if(Autos[playerid][i][Nitro] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Nitro]); }
    if(Autos[playerid][i][Exhaust] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Exhaust]); }
    if(Autos[playerid][i][Wheels] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Wheels]); }
    if(Autos[playerid][i][Stereo] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Stereo]); }
    if(Autos[playerid][i][Hydraulics] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][Hydraulics]); }
    if(Autos[playerid][i][FrontBumper] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][FrontBumper]); }
    if(Autos[playerid][i][RearBumper] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][RearBumper]); }
    if(Autos[playerid][i][VentRight] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][VentRight]); }
    if(Autos[playerid][i][VentLeft] >= 1000) { AddVehicleComponent(Spielercar[playerid][i],Autos[playerid][i][VentLeft]); }
    }
    }


    und das Disconect



    for(new i = 0; i < 3; i++)
    {
    new Autodatei[100],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s_Auto_%d.ini",name,i);
    if(dini_Exists(Autodatei))
    {
    new Float:vhp;
    GetVehicleHealth(Spielercar[playerid][i],vhp);
    dini_IntSet(Autodatei,"Farbe1",Autos[playerid][i][Farbe1]);
    dini_IntSet(Autodatei,"Farbe2",Autos[playerid][i][Farbe2]);
    dini_IntSet(Autodatei,"Paintjob",Autos[playerid][i][Paintjob]);
    dini_FloatSet(Autodatei,"posx",Autos[playerid][i][posx]);
    dini_FloatSet(Autodatei,"posy",Autos[playerid][i][posy]);
    dini_FloatSet(Autodatei,"posz",Autos[playerid][i][posz]);
    dini_FloatSet(Autodatei,"posa",Autos[playerid][i][posa]);
    dini_FloatSet(Autodatei,"HP",vhp);
    dini_Set(Autodatei,"Nummernschild",Autos[playerid][i][Nummernschild]);
    dini_IntSet(Autodatei,"Autoopen",Autos[playerid][i][Schloss]);
    dini_IntSet(Autodatei,"Spoiler",GetVehicleComponentInSlot(Spielercar[playerid][i],0));
    dini_IntSet(Autodatei,"Hood",GetVehicleComponentInSlot(Spielercar[playerid][i],1));
    dini_IntSet(Autodatei,"Roof",GetVehicleComponentInSlot(Spielercar[playerid][i],2));
    dini_IntSet(Autodatei,"Sideskirt",GetVehicleComponentInSlot(Spielercar[playerid][i],3));
    dini_IntSet(Autodatei,"Lamps",GetVehicleComponentInSlot(Spielercar[playerid][i],4));
    dini_IntSet(Autodatei,"Nitro",GetVehicleComponentInSlot(Spielercar[playerid][i],5));
    dini_IntSet(Autodatei,"Exhaust",GetVehicleComponentInSlot(Spielercar[playerid][i],6));
    dini_IntSet(Autodatei,"Wheels",GetVehicleComponentInSlot(Spielercar[playerid][i],7));
    dini_IntSet(Autodatei,"Stereo",GetVehicleComponentInSlot(Spielercar[playerid][i],8));
    dini_IntSet(Autodatei,"Hydraulics",GetVehicleComponentInSlot(Spielercar[playerid][i],9));
    dini_IntSet(Autodatei,"FrontBumper",GetVehicleComponentInSlot(Spielercar[playerid][i],10));
    dini_IntSet(Autodatei,"RearBumper",GetVehicleComponentInSlot(Spielercar[playerid][i],11));
    dini_IntSet(Autodatei,"VentRight",GetVehicleComponentInSlot(Spielercar[playerid][i],12));
    dini_IntSet(Autodatei,"VentLeft",GetVehicleComponentInSlot(Spielercar[playerid][i],13));
    DestroyVehicle(Spielercar[playerid][i]);
    }
    }


    und zu guter letzt die Enum



    enum Ainfo
    {
    Name[35],
    modelid,
    Float:HP,
    Nummernschild[20],
    Schloss,
    Float:posx,
    Float:posy,
    Float:posz,
    Float:posa,
    Farbe1,
    Farbe2,
    Paintjob,
    Spoiler,
    Hood,
    Roof,
    Sideskirt,
    Lamps,
    Nitro,
    Exhaust,
    Wheels,
    Stereo,
    Hydraulics,
    FrontBumper,
    RearBumper,
    VentRight,
    VentLeft
    }


    mit freundlichen Grüßen


    Marvinmauric

  • for(new i = 0; i < 3; i++)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    if(strcmp(Autos[playerid][i][Schloss],name,false) == 0 || IsANoTachoVehicle(vehicleid))
    {
    Freeze(playerid);
    UnFreeze(playerid);
    SendClientMessage(playerid,ROT,"Das Fahrzeug ist Abgeschlossen");
    }
    else
    {
    return 1;
    }
    }


    Du hast die If Abfrage vertauscht ;)

    Zitat von Sharpadox

    Echt fantastisch, dieses "Google" ^^



  • Danke dir ich werde es mal ausprobieren


    okay hab es getestet es klappt zwar nur jetzt der fehler das dieses auto was ich abschließe
    noch betrettbar ist liegt es eventuell hier drann



    ocmd:lock(playerid,params[])
    {
    for(new i = 0; i < 3; i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,Autos[playerid][i][posx],Autos[playerid][i][posy],Autos[playerid][i][posz]))
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    if(strcmp(Autos[playerid][i][Name],name,false) == 0)
    {
    if(strcmp(Autos[playerid][i][Schloss],name,false) == 0)
    {
    new Autodatei[100];
    format(Autodatei,sizeof(Autodatei),"/Autos/%s_Auto_%d.ini",name,i);
    dini_IntSet(Autodatei,"Autoopen",1);
    Autos[playerid][i][Schloss] = dini_Int(Autodatei,"Autoopen");
    SendClientMessage(playerid,BLAU,"Du hast dein Auto aufgeschlossen!");
    return 1;
    }
    else
    {
    new Autodatei[100];
    format(Autodatei,sizeof(Autodatei),"/Autos/%s_Auto_%d.ini",name,i);
    dini_IntSet(Autodatei,"Autoopen",0);
    Autos[playerid][i][Schloss] = dini_Int(Autodatei,"Autoopen");
    SendClientMessage(playerid,BLAU,"Du hast dein Auto abgeschlossen!");
    return 1;
    }
    }
    }
    }
    return 1;
    }