/frespawn-Problem

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 zusammen,
    ich habe das Problem, dass mir immer angezeigt wird, "Dieser Befehl existiert nicht."
    Die Fahrzeuge werden respawnt, die Nachricht kommt jedoch nicht.


    Hier der Code:
    ocmd:frespawn(playerid,params[])
    {
    if(!IsPlayerRang(playerid,11))return SendClientMessage(playerid,DARKRED,"Du bist kein (Co)Leader.");
    switch(SpielerInfo[playerid][pFraktion])
    {
    case 2:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(SAPD[i]);
    }
    }

    case 4:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(mediccar[i]);
    }
    }

    case 5:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(drivingschoolcar[i]);
    }
    }

    case 8:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(sacracoronacar[i]);
    }
    }
    }
    SendFrakMessage(SpielerInfo[playerid][pFraktion],GELB,"** Alle Fraktionsfahrzeuge wurden respawnt **");
    return 1;
    }


    Danke im Vorraus ;)


  • ocmd:frespawn(playerid,params[])
    {
    if(!IsPlayerRang(playerid,11))return SendClientMessage(playerid,DARKRED,"Du bist kein (Co)Leader.");
    switch(SpielerInfo[playerid][pFraktion])
    {
    case 2:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(SAPD[i]);
    }
    }

    case 4:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(mediccar[i]);
    SendFrakMessage(SpielerInfo[playerid][pFraktion],GELB,"** Alle Fraktionsfahrzeuge wurden respawnt **");
    return 1; }
    }

    case 5:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(drivingschoolcar[i]);
    SendFrakMessage(SpielerInfo[playerid][pFraktion],GELB,"** Alle Fraktionsfahrzeuge wurden respawnt **");
    return 1; }
    }

    case 8:
    {
    for(new i = 1; i <= MAX_VEHICLES; i++)
    {
    SetVehicleToRespawn(sacracoronacar[i]);
    SendFrakMessage(SpielerInfo[playerid][pFraktion],GELB,"** Alle Fraktionsfahrzeuge wurden respawnt **");
    return 1;
    }
    }
    }
    }


    probiers mal so indem du in jedem case ein return 1; ausgibst und am ende das return 1 entfernst.

  • Mich wundert es, dass es funktioniert.
    Dass die Nachricht nicht gesendet wird, ist logisch, weil Du die schleife zu lange laufen lässt.


    for(new i; i < sizeof(SAPD); i++)
    Als Beispiel für das SAPD.
    Musst du auf die anderen Fraktionen anpassen.



    Mit dem Plugin CrashDetect würdest du bei der jetzigen Version einen Error bekommen, dass du einen nicht vorhanden Array-Eintrag verwendest ;)
    Oder "Array Index out of Bounds".



    //EDIT: Gerade noch einen Fehler entfernt.
    Sämtliche Arrays starten bei 0 und nicht bei 1.
    Somit wäre der Erste Eintrag (Das erste Fahrzeug) übersprungen worden.
    Ist oben gerade behoben.