Beiträge von IPrototypeI

    du speicherst doch bestimmt den ban oder lässt was auf einen bestimmten wert setzen und dies überprüfst du


    zum beispiel

    if(SpielerInfo[playerid][sBan] == 1)
    {
    SendClientMessage(playerid,Weiss,"Du bist gebannt!");
    Kick(playerid);
    }
    was ist daran so schwer dies solltest du nach dem laden überprüfen

    Also von eurem Youtubeaccount sieht die erste map, welche ihr dort hochgeladen habt ganz nett aus.Ich wünsch euch viel glück und ich denke
    wenn ihr einzigartige maps verkauft wie die, welche unserer Rocky bisher raus gebracht hat werdet ihr bestimmt auch so gut geld damit verdienen
    mit dem Projekt.

    Mit dem normalen MoveObject sollte es auf jedenfall gehen bei MoveDynamicObject hast du das native nich beachtet
    darum kam es zu den fehlern


    native MoveDynamicObject(objectid, Float:x, Float:y, Float:z, Float:speed, Float:rx = -1000.0, Float:ry = -1000.0, Float:rz = -1000.0);

    xD sry habs oben vergessen zu ändern


    {$query = mysql_query('SELECT * FROM accounts WHERE name="'.$user.'" AND passwort="'.md5($pass).'"');


    accounts ist hier ja die datenbank


    und name oder passwort ist die tabelle


    jedoch frage ich mich


    $pass = addslashes($_REQUEST["password"]);
    ist jedoch auf grund AND passwort geh ich auch davon aus das hier die tabelle gemeint ist und dafür solltest du den namen deiner Tabelle einfügen Key


    dazu ist es auch noch ratsam mit dem neuen mysql plugin zu arbeiten oder wenigstens OnQueryFinish zu verwenden um
    Lags oder Servercrashes, die in Verbindung mit MySQL auftreten können zu vermieden

    dan änder doch ganz einfach passwort in key um und das md5 entfernst du dir als vorlage
    $user nimmst


    bsp:
    {$query = mysql_query('SELECT * FROM accounts WHERE name="'.$user.'" AND passwort="'.md5($pass).'"');{$query = mysql_query('SELECT * FROM accounts WHERE name="'.$user.'" AND passwort="'.$pass.'"');



    ich geh mal davon aus aber naja ich bin kein php held eher gesagt hab ich noch nie groß mit php zu tun gehabt außer
    das ich zusammen mit einem kumpel paar fehler gesucht habe bei seinem ucp für mta

    du solltest mal in dne scriptfiles schauen nach dem m_bot vllt steht dort dein name drinne was anderes ist mir nicht bekannt vllt mal die ip
    ändern per hotspotshield falls es ein rangeban sein sollte obwohl die kannst du auch per console entbannen

    arbeite am besten mit sscanf da dies schneller ist und auch einfacher und du brauchst kein strtok


    hier ein beispiel für solche ein command der sollte so gehen


    ocmd:prison(playerid,params[])
    {
    new pID,geld,grund[64],string[128], pName[MAX_PLAYER_NAME], pIDName[MAX_PLAYER_NAME];
    if(sscanf(params,"uds",pID,geld,grund)) return SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /prison [ID/Name] [Betrag] [Grund]");
    if(PlayerInfo[playerid][pAdmin] < 2) return SendClientMessage(playerid, COLOR_GREY, "Du bist nicht befugt !");
    if(IsPlayerConnected(pID)) return SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist nicht da!");
    GetPlayerName(pID, pIDName, sizeof(pIDName));
    GetPlayerName(playerid, pName, sizeof(pName));
    format(string, sizeof(string), "AdmCMD:Du hast %s in das Admin Prison gesteckt Grund: %s.", pIDName, grund);
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "Du wurdest von Admin %s in das Admin Prison gesteckt Grund: %s.", pName, grund);
    SendClientMessage(pID, COLOR_LIGHTRED, string);
    GameTextForPlayer(pID, "~w~Willkommen im ~n~~r~ Admin Prison !", 5000, 3);
    WantedPoints[pID] = 0;
    WantedLevel[pID] = 0;
    GivePlayerMoney(pID,-geld);
    SetPlayerWantedLevel(pID,0);
    PlayerInfo[pID][pJailed] = 2;
    PlayerInfo[pID][pJailTime] = 3600;
    ResetPlayerWeapons(playerid);
    SetPlayerInterior(playerid,0);
    return 1;
    }

    test es mal so

    if(strcmp(cmd,"/respawncars",true) == 0)
    {
    if(PlayerInfo[playerid][pLeader] == 1){
    for(new v=0; v<sizeof(Copcars); v++){
    for(new i=0;i< MAX_PLAYERS; i++){
    if(IsPlayerConnected(i)){
    if(GetPlayerVehicleID(i) != Copcars[v]){
    SetVehicleToRespawn(Copcars[v]);
    SendClientMessage(playerid, COLOR_WHITE,"* Fraktionsfahrzeuge respawnt.");
    GivePlayerMoney(playerid, -1500);
    }
    }
    }
    }
    }else{ return SendClientMessage(playerid,COLOR_RED," Du bist nicht Berechtigt!"); }
    return 1;
    }

    kennst du überhaupt das native von moveobjekt


    MoveObject(MVTor3, 1548.6528,-1628.4587,9-13.3828, 9, 3.0);


    MoveObject(objectid, Float:X, Float:Y, Float:Z, Float:Speed)


    dann siehst ja den fehler


    und zu den anderen errors könntest du mal bitte die direkt angeben
    ahja der warning unreachable code kann auch durch eine zeilen verschiebung ausgelöst werden
    bsp:
    ForceClassSelection(playerid);
    ..TogglePlayerSpectating(playerid, 0);

    Onplayerdisconnect musst du doch arbeiten !!


    8| erstmal überlegen das posten. Er sollte erstmal eine Variabel anlegen welche er auch speichert und ladet.
    Dan bei dem jeweiligen ereignis zieht er mit gettime das datum raus. welches er mit der anzahl der gewünschten Zeit addiert.
    Diese er auch speichert und dies sollte er auch zum schluss wenn der spieler sich auch einloggt wieder abfragen oder ein timer machen der dies checkt jedoch ist das nicht so sinnvoll. Beim einloggen sollte er das datum vergleichen welches er auch noch speichern sollte und die varaibel auf 0 setzen.

    mit der funktion


    Function ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5)
    {
    if(IsPlayerConnected(playerid))
    {
    new Float:posx, Float:posy, Float:posz;
    new Float:oldposx, Float:oldposy, Float:oldposz;
    new Float:tempposx, Float:tempposy, Float:tempposz;
    GetPlayerPos(playerid, oldposx, oldposy, oldposz);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(!BigEar[i])
    {
    GetPlayerPos(i, posx, posy, posz);
    tempposx = (oldposx -posx);
    tempposy = (oldposy -posy);
    tempposz = (oldposz -posz);
    //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
    if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
    {
    SendClientMessage(i, col1, string);
    }
    else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
    {
    SendClientMessage(i, col2, string);
    }
    else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
    {
    SendClientMessage(i, col3, string);
    }
    else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
    {
    SendClientMessage(i, col4, string);
    }
    else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
    {
    SendClientMessage(i, col5, string);
    }
    }
    else
    {
    SendClientMessage(i, col1, string);
    }
    }
    }
    }
    return 1;
    }


    geht das sehr leicht
    native:
    ProxDetector(radius, playerid, string,Farbe1,Farbe2,Farbe3,Farbe4,Farbe5);


    und zur frage 2
    dazu könntest du ein textdraw erstellen für den spieler und es auch wieder entfernen oder du setzt den spielervector an manche punkte wo es sehr dunkel ist
    bsp tief ins meer. und wenn er enttiet wird musst die camera wieder hinter den Spieler setzen mit SetCameraBehindPlayer