Es funktioniert einfach nicht bitte um hilfe

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
  • Ingame kommt immer die Message"Kein Gegner online" auch wenn gegner online sind :S
    if(ispassenger == 0)
    {
    if(vehicleid == PDVehs[1] || vehicleid == BVehs[1])
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))//Hier editier !!
    {
    new Cops;
    new Bloods;
    if(IsPlayerConnected(i))
    {
    if(sSpieler[i][Gang] == 1)
    {
    Cops += 1;
    }
    if(sSpieler[i][Gang] == 2)
    {
    Bloods += 1;
    }
    }
    if(sSpieler[playerid][Gang] == 1)
    {
    if(Bloods == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Es sind keine Gegner online");
    TogglePlayerControllable(playerid,0);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }
    if(sSpieler[playerid][Gang] == 2)
    {
    if(Cops == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Es sind keine Gegner online");
    TogglePlayerControllable(playerid,0);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }

    }
    }
    }
    }
    diese If Abfragen sind fehlerhaft, bitte um hilfe :)
    if(Bloods == 0)
    if(Cops == 0)


    15 Beiträge [X]
    50 Beiträge [X]
    75 Beiträge [_]
    100 Beiträge [_]
    115 Beiträge [_]
    150 Beiträge [_]
    175 Beiträge [_]
    200 Beiträge [_]

    3 Mal editiert, zuletzt von Goech ()

  • Hi


    Vereinfach den Code mal etwas. Du fragst zum Beispiel 2 Mal IsPlayerConnected ab. Machs mal so



    if(ispassenger == 0)
    {
    if(vehicleid == PDVehs[1] || vehicleid == BVehs[1])
    {
    new Cops;
    new Bloods;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))//Hier editier !!
    {
    //new Cops;
    //new Bloods;
    if(sSpieler[i][Gang] == 1)
    {
    Cops += 1;
    }
    if(sSpieler[i][Gang] == 2)
    {
    Bloods += 1;
    }
    }
    }
    if(sSpieler[playerid][Gang] == 1)
    {
    if(Bloods == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Es sind keine Gegner online");
    TogglePlayerControllable(playerid,0);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }
    if(sSpieler[playerid][Gang] == 2)
    {
    if(Cops == 0)
    {
    SendClientMessage(playerid,COLOR_RED,"Es sind keine Gegner online");
    TogglePlayerControllable(playerid,0);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }
    }
    }


    Und dann darfste Cops und Bloods nicht in der Schleife haben, da sie sonst nach jedem Durchlauf resettet werden ;)


    Edit Ferner darfste erst am Ende prüfen, ob jemand online (Wenn = Cops/Bloods online sind Meldung) ist, also nimm die Abfrage ob Cops/Bloods on sind aus der MAX_PLAYERS Schleife Done, aber ich würds auch so machen, dass er ne Meldung bekommt, wenn kein Cop on ist und er aber Bloods ist ;)

  • Er sollte seine abfragen drausen haben



    if(ispassenger == 0){
    if(vehicleid == PDVehs[1] || vehicleid == BVehs[1]){
    new Cops,Bloods,i=0;
    for(; i < MAX_PLAYERS; i++){
    if(IsPlayerConnected(i)){
    switch(sSpieler[i][Gang]){
    case 1:Cops++;
    case 2:Bloods++;
    }
    }
    }
    switch(sSpieler[playerid][Gang){
    case 1:{
    if(Bloods == 0){
    SendClientMessage(playerid,COLOR_RED,"Es sind keine Gegner online");
    TogglePlayerControllable(playerid,0);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }
    case 2:{
    if(Cops == 0){
    SendClientMessage(playerid,COLOR_RED,"Es sind keine Gegner online");
    TogglePlayerControllable(playerid,0);
    TogglePlayerControllable(playerid,1);
    return 1;
    }
    }
    }
    }
    }


    und bei deinen zwei abfragen
    if(sSpieler[i][Gang] == 1)


    if(sSpieler[i][Gang] == 2)


    kannst du else if verwenden oder case


    das gilt auch für die unteren

  • Edit : Es Funktiert jz weil ich mal if(sSpieler[playerid][Gang] == 1) aus der schleife genommen :) danke ihr 2


    15 Beiträge [X]
    50 Beiträge [X]
    75 Beiträge [_]
    100 Beiträge [_]
    115 Beiträge [_]
    150 Beiträge [_]
    175 Beiträge [_]
    200 Beiträge [_]

    2 Mal editiert, zuletzt von Goech ()