[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Deine Skriptstruktur ist nicht gerade gut und somit schlechter nachvollziehbarer.
    Verwende für die DialogID's bitte switch und case.
    Zudem kannst du deine PVar's effizienter setzten.
    SetPVarInt(playerid,"Team",1); //setzte direkt das Team als nummer
    if(team1 < 2 && team2 < 2) return TogglePlayerControllable(playerid, 0), SCM(playerid, color, "Die Runde beginnt gleich!"), team1++;;
    for(new i = 0; MAX_PLAYERS > i; i++) TogglePlayerControllable(playerid, 1); //Spieler werden entfreezt
    SetTimer("rundentimer",120000,1); //dein Rundentimer
    Start=1;
    team1++;


    Versuch das mal als Basis bzw. Vorlage zu nehmen.
    Es kann sein, dass ich das ein oder andere vergessen habe, weil ich mich leider nicht in deinen Kotext versetzen kann ^^.


    L.G. :thumbup:


    /e1: Bei weiteren Fragen kannst du dich gerne auf meinen Teamspeak melden.

  • Hey,
    Wollte mir mal wieder n kleines Komplexes Biz system basteln, soweit so gut.
    Wenn ich nun die Label und Pickups Laden lassen möchte erscheinen diese nicht.
    Finde einfach keinen Fehler, die Positionen werden auch erfolgreich geladen.

    Spoiler anzeigen


    stock LoadBiz(data[50]=0,i=0)
    {
    new string[400];
    mysql_query("SELECT * FROM biz");
    mysql_store_result();
    while(mysql_retrieve_row())
    {
    mysql_fetch_field_row(data,"id");
    i = strval(data);
    mysql_fetch_field_row(data,"Name");
    format(BizInfo[i][Name],40,"%s",data);
    mysql_fetch_field_row(data,"Typ");
    BizInfo[i][Typ] = strval(data);
    mysql_fetch_field_row(data,"Besitzer");
    format(BizInfo[i][Besitzer],30,"%s",data);
    mysql_fetch_field_row(data,"Vergeben");
    BizInfo[i][Vergeben] = strval(data);
    mysql_fetch_field_row(data,"Level");
    BizInfo[i][Level] = strval(data);
    mysql_fetch_field_row(data,"Preis");
    BizInfo[i][Preis] = strval(data);
    mysql_fetch_field_row(data,"X");
    BizInfo[i][X] = floatstr(data);
    mysql_fetch_field_row(data,"Y");
    BizInfo[i][Y] = floatstr(data);
    mysql_fetch_field_row(data,"Preis");
    BizInfo[i][Z] = strval(data);
    BizInfo[i][erstellt]=true;

    Spoiler anzeigen
    if(BizInfo[i][Vergeben]==0)
    {
    BizInfo[i][bPickup] = CreateDynamicPickup(19470, 1, BizInfo[i][X],BizInfo[i][Y],BizInfo[i][Z]);
    format(string,400,"Business Zu Verkaufen!\nName: %s\nPreis: %d\nLevel: %d\n\n/buy zum Kaufen",BizInfo[i][Name],BizInfo[i][Preis],BizInfo[i][Level]);
    BizInfo[i][bLabel] = CreateDynamic3DTextLabel(string, hellblau, BizInfo[i][X],BizInfo[i][Y],BizInfo[i][Z]+1, 10.0);
    printf("%f, %f, %f",BizInfo[i][X],BizInfo[i][Y],BizInfo[i][Z]);
    }
    }
    mysql_free_result();
    return print(" [MySQL] Business wurden erfolgreich geladen");
    }

  • Kommen die Sachen denn, wenn du es "normal" erstellst, also ohne den Streamer (CreatePickup / Create3DTextLabel)?
    Falls ja, liegt es am Streamer.
    Falls nein, versuche es mal auf einem leeren Server, einfach irgendwo ein Pickup/Label anzuzeigen. Wenn es da geht, hast du wohl das Limit erreicht.

  • Kleine frage ich will das nur leute aus der Fraktion und Admins Level 1337 mit fraktions Fahrzeugen fahren können aber es geht i-wie nicht


    so werd ich als Admin auch wieder Rausgeworfen


    if(newstate == PLAYER_STATE_DRIVER)
    {
    for(new i = 0; i<sizeof(policeCars); i++)
    {
    if(GetPlayerVehicleID(playerid) == policeCars[i])
    {
    if(isPlayerInFrakt(playerid, 1) && isAdmin(playerid,1337))
    {
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,ROT,"Du bist kein Mitglied des LSPD's!");
    }
    }
    }
    }


    und jetze habe ich es so versucht so Klappt es aber dann sendet er mir Die Nachricht


    if(newstate == PLAYER_STATE_DRIVER)
    {
    for(new i = 0; i<sizeof(policeCars); i++)
    {
    if(GetPlayerVehicleID(playerid) == policeCars[i])
    {
    if(isPlayerInFrakt(playerid, 1) && isAdmin(playerid,1337)) return
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,ROT,"Du bist kein Mitglied des LSPD's!");
    }
    }
    }

  • Ich wollte gerade den Gangs waffen beim spawn geben aber es funktioniert nicht wenn ich da hinter der r cordinate ,24,50,29,250 eingebe bekomme ich errors ?



    new fInfo[][fraktEnum] = {
    {"Zivilist",369.8406,-2055.3186,7.8359,356.8666,0,0},
    {"LSPD",219.6863,69.0100,1005.0391,290.2877,6,1},
    {"Medic",350.7579,163.5592,1019.9912,325.7878,3,2},
    {"Oamt",349.0692,162.0779,1025.7891,270.6080,3,5},
    {"News",349.0692,162.0779,1025.7891,270.6080,3,11},
    {"Fahrschule",-2023.1954,-114.4999,1035.1719,92.8690,3,12},
    {"Groove Street",2807.5854,-1168.1516,1025.5703,178.8052,8,14},
    {"Ballas",2807.5854,-1168.1516,1025.5703,178.8052,8,15},
    {"Los Santos Vagos",2807.5854,-1168.1516,1025.5703,178.8052,8,16},
    {"Varios Los Aztecas",2807.5854,-1168.1516,1025.5703,178.8052,8,17},
    {"S.F Rifa",2807.5854,-1168.1516,1025.5703,178.8052,8,18},
    {"LCN",2807.5854,-1168.1516,1025.5703,178.8052,8,8},
    {"Yakuza",2807.5854,-1168.1516,1025.5703,178.8052,8,9},
    {"Russen",2807.5854,-1168.1516,1025.5703,178.8052,8,19},
    {"Hitman",-688.1939,935.9031,13.6328,359.6828,0,10}
    };