Befehl funktioniert nicht so wie gewollt.

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,
    Hab hier ein kleines Problem mit dem befehl "/Flock" ingame funktioniert auch aber ich muss dafür im Fahrzeug sitzen aber steht dort nirgends und will es so haben es soll inerhalb des Fahrzeugs und außerhalb des Fahrzeugs funktionieren.


    if(strcmp(cmdtext,"/flock",true)==0)
    {
    if(GetPlayerFaction(playerid) == FactionCars[fc][fFaction][f])
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    new Float:fX,Float:fY,Float:fZ;
    GetVehiclePos(FactionCars[fc][fCarid],fX,fY,fZ);
    if(IsPlayerInRangeOfPoint(playerid,10.0,fX,fY,fZ))
    {
    if(GetPlayerVehicleID(playerid) == FactionCars[fc][fCarid])
    {
    for(new f;f<5;f++)
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    PlayerPlaySound(playerid,1145,0.0,0.0,0.0);
    if(FactionCars[fc][fLock] == true)
    {
    FactionCars[fc][fLock] = false;
    fUnlockCar(FactionCars[fc][fCarid]);
    GameTextForPlayer(playerid,"~w~Fahrzeug~n~~g~Aufgeschlossen",5000,3);
    }
    else if(FactionCars[fc][fLock] == false)
    {
    fLockCar(FactionCars[fc][fCarid]);
    FactionCars[fc][fLock] = true;
    GameTextForPlayer(playerid,"~w~Fahrzeug~n~~r~Abgeschlossen",5000,3);
    }break;
    }
    }return true;
    }
    }return true;
    }
    }return true;
    }


    MfG

    German Projekt Reallife

    87.98.244.35:3434

  • wo is das problem ?


    du machs einfach ne fahrzeug abfrage mit einer schleife zb so bei OnGameModeInet


    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    FactionCars[fc][fLock] = true;
    }

    und schon hast du alle autos zu beim laden.. bzw sollte so gehen kenne das system net :)

  • Beitrag von John Wayne ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Hab das mal so gemacht:
    for(new i = 0; i < sizeof(NagelBand); i++)
    {
    ForAllPlayers(i)
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611 && FactionCars[fc][fCarid] != -255)
    {
    if(FactionCars[fc][fLock] == true)
    {
    SetVehicleParamsForPlayer(FactionCars[fc][fCarid],i,false,true);
    //new engine, lights, alarm, doors, bonnet, boot, objective;
    //SetVehicleParamsEx(FactionCars[fc][fCarid], engine, lights, alarm, doors, bonnet, boot, objective);
    }
    }
    }
    }
    }


    aber es Funktioniert nicht.. eine Idee?

    German Projekt Reallife

    87.98.244.35:3434

  • public LockFactionCarDoors()
    {
    for(new f = 0; f < sizeof(NagelBand); f++)
    {
    for(new i = 0; i < sizeof(NagelBand); i++)
    {
    ForAllPlayers(i)
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    if(FactionCars[fc][fLock] == true)
    {
    SetVehicleParamsForPlayerEx(FactionCars[fc][fVehid],i,false,true);
    new engine, lights, alarm, bonnet, boot, objective;
    SetVehicleParamsEx(FactionCars[fc][fVehid], engine, lights, alarm, 1, bonnet, boot, objective);
    }
    }fc++;
    }
    }
    }
    }return true;
    }


    Hab das so gemacht und unter Start_Frac & OnVehicleSpawn LockFactionCarDoors(); eingefügt aber wen ich ein Carrespawn machen geht der Server down..

    German Projekt Reallife

    87.98.244.35:3434

    Einmal editiert, zuletzt von KinG. ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Wieso hast du in dem Public noch die for schleifen von f<sizeof(Nagelband) und die for schleife i<sizeof(Nagelband) ? ?(
    Wenn der Public doch aber nur für Fraktions Cars sein soll für den Status von Türen etc. ? O_o
    Irgendwie passt dein gesamter public nicht meiner Meinung nach 8|

  • Sollte das so gehen?
    public LockFactionCarDoors()
    {
    for(new f = 0; f < sizeof(FactionCars); f++)
    {
    for(new i = 0; i < sizeof(FactionCars); i++)
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fLock] == true)
    {
    ForAllPlayers(i)
    SetVehicleParamsForPlayerEx(FactionCars[fc][fVehid],i,false,true);
    new engine, lights, alarm, bonnet, boot, objective;
    SetVehicleParamsEx(FactionCars[fc][fVehid], engine, lights, alarm, 1, bonnet, boot, objective);
    }
    }
    }
    }return true;
    }

    German Projekt Reallife

    87.98.244.35:3434

  • Mach das mal so:
    public LockFactionCarDoors()
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fLock] == true)
    {
    new engine,lights,alarm,doors,bonnet,boot,objective;
    GetVehicleParamsEx(FactionCars[fc][fVehid],engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(FactionCars[fc][fVehid],engine,lights,alarm,VEHICLE_PARAMS_OFF,bonnet,boot,objective);
    }
    }
    return 1;
    }

  • ich benutze "LockFactionCarDoors();" damit die Fahrzeuge beim Spawn/Respawn geschlossen sind schon richtig oder?


    Hab was vergessen:
    public LockFactionCarDoors()
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fLock] == true)
    {
    new engine,lights,alarm,doors,bonnet,boot,objective;
    GetVehicleParamsEx(FactionCars[fc][fVehid],engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(FactionCars[fc][fVehid],engine,lights,alarm,VEHICLE_PARAMS_OFF,bonnet,boot,objective);
    FactionCars[FactionCars[fc][fVehid]][fLock] = false;
    }
    }
    return 1;
    }


    Wo wendest du das denn an?
    Dir ist schon bewusst, dass du mit diesem Public ALLE Fraktionfahrzeuge abschließt, die Offen sind?

  • FactionCars[FactionCars[fc][fVehid]][fLock] = false;
    das öffnet doch die Türen oder irre ich mich da?


    Ich weiß nicht, wie dein System aufgebaut ist.
    true sollte offen sein, false geschlossen.
    Mit diesem Public gehst du durch ALLE Fraktionsfahrzeuge und schließt Sie ab, falls die Variable auf true ist.


    /edit
    Zeig mal deinen Respawn Befehl.

  • stock fLockCar(vehicleid)
    {
    for(new i = 0; i < sizeof(FactionCars); i++)
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    if(FactionCars[fc][fLock] == true)
    {
    ForAllPlayers(i)
    SetVehicleParamsForPlayer(vehicleid,i,false,true);
    }
    }
    }
    }
    return true;
    }
    nur mal so neben bei, das ist das fLockCar
    dazu einfacher den befehl:
    if(strcmp(cmdtext,"/flock",true)==0)
    {
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    for(new f;f<5;f++)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    if(GetPlayerFaction(playerid) == FactionCars[fc][fFaction])
    {
    new Float:fX,Float:fY,Float:fZ;
    GetVehiclePos(FactionCars[fc][fCarid],fX,fY,fZ);
    if(FactionCars[fc][fLock] == true)
    {
    if(IsPlayerInRangeOfPoint(playerid,4.0,fX,fY,fZ))
    {
    FactionCars[fc][fLock] = false;
    fUnlockCar(FactionCars[fc][fCarid]);
    {
    fUnlockCar(FactionCars[fc][fCarid]);
    PlayerPlaySound(playerid,1145,0.0,0.0,0.0);
    }return GameTextForPlayer(playerid,"~w~Fahrzeug~n~~g~Aufgeschlossen",5000,3);
    }
    }
    else if(FactionCars[fc][fLock] == false)
    {


    if(IsPlayerInRangeOfPoint(playerid,4.0,fX,fY,fZ))
    {
    FactionCars[fc][fLock] = true;
    fLockCar(FactionCars[fc][fCarid]);
    {
    fLockCar(FactionCars[fc][fCarid]);
    PlayerPlaySound(playerid,1145,0.0,0.0,0.0);
    }return GameTextForPlayer(playerid,"~w~Fahrzeug~n~~r~Abgeschlossen",5000,3);
    }
    }
    }
    }fc++;
    }
    }return true;
    }

    German Projekt Reallife

    87.98.244.35:3434