Beiträge von maddin

    Wlan und vorallem bluetooth aus machen wenn es nicht benutzt wird. Das frisst extrem viel akku im standby.
    Und wenn du wirklich wieder zu WinMo zurück willst (schande über dich), versuch mal MGLDR neu rauf zu ziehen.


    BTW: Hast du HSPL drauf? Und was für ne Rom benutzt du? Vielleicht solltest du einfach mal überlegen auf eine andere umzusteigen.


    mfg.

    Options -> Show Functions List


    Der Beitrag ist zu kurz. Der Beitrag muss mindestens 15 Zeichen lang sein und 6 Wörter enthalten.

    bname[24] = strval(data[2]);
    aname[24] = strval(data[1]);
    breason[128] = strval(data[3]);
    Du machst einen string zu einem integer, und speicherst diesen wieder in einem string. Warum?^^


    sscanf(line, "p<|>ds[24]s[24]s[128]",data2[1],data[1],data[2],data[3]); //Splits the line with sscanf
    Hier das gleiche, du speicherst strings in einer einfachen variable. Kann ja nicht funktionieren^^



    Versuch es mal so:
    new
    data,
    aname[25],
    bname[25],
    breason[129]
    ;
    sscanf(line, "p<|>ds[24]s[24]s[128]",data,aname,bname,breason);
    SendClientMessage(playerid,COLOR_YELLOW,"You have been banned from this Server");
    format(string,sizeof(string),"Player Name: %s",bname);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    format(string,sizeof(string),"Ban Reason: %s",breason);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    format(string,sizeof(string),"Banned by: %s",aname);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    SendClientMessage(playerid,COLOR_YELLOW,"If you think you were banned for the wrong reason");
    SendClientMessage(playerid,COLOR_YELLOW,"Please make a screenshot of this and Post it at www.sfcnr.net");
    Kick(playerid);
    mysql_free_result();
    return 1;


    Und wenn du den ersten wert aus der tabelle (der durch sscanf in data gespeichert wird) nicht brauchst, kannst du ihn auch ausklammern. Also so:
    sscanf(line, "p<|>{d}s[24]s[24]s[128]",aname,bname,breason);
    { } sagt sscanf dass da zwar ein wert ist, dieser aber an keine variable weiter gegeben werden soll.



    //Edit: oh, hab das "hat sich erledigt" überlesen, sry.

    Entnommen aus dem Tips & Tricks Thread von Slice aus dem englischen Forum.


    Ein normales Array kann werte zwischen -2,147,483,648 und 2,147,483,647 enthalten. Da aber z.b ein Array in der z.b die playerid eines Spielers gespeichert werden soll nie im leben so einen hohen/negativen wert haben wird, kann man dafür ein Char Array benutzen.
    Char Arrays können nur werte zwischen 0 und 255 enthalten (keine negativen werte, -1 wird automatisch zu 255). Also wenn man genau weiss, das der Wert des Arrays nicht weniger als 0 und nicht mehr als 255 sein wird, warum dann nicht ein bisschen Sparen?
    new bool:g_IsPlayerSomething[ MAX_PLAYERS ]; // Zellengröße 500 * 4 bytes pro zelle = 2000 bytes!
    new bool:g_IsPlayerSomething[ MAX_PLAYERS char ]; // 500 bytes = .. 500 bytes!


    Aber: Bei der verwendung von Char Arrays muss man geschweifte klammern anstatt Eckigen klammern verwenden
    public OnPlayerConnect( playerid )
    {
    g_IsPlayerSomething{ playerid } = false;
    // ^ ^
    }


    public OnPlayerSpawn( playerid )
    {
    // v v
    if ( g_IsPlayerSomething{ playerid } )
    {
    // ..
    }
    }

    Zur abwechslung mal was ganz simples:
    #define MAX(%0, %1) (((%0)>(%1)) ? (%0) : (%1))
    Gibt den größeren der beiden angegebenen werte zurück.
    Beispiel:
    new
    var1 = 5,
    var2 = 7
    ;
    printf("Der größere wert ist %d !", MAX(var1, var2));
    Ergibt:
    "Der größere wert ist 7 !"

    dir fehlt where2[]
    mysql_SetFloat2("Bizs","a",BizInfo[bizid][a],"bid",bizid); //bid ändern in den namen der Spalte wo bizid gespeichert ist

    Nein, definitiv nein. Den Spamm können keine 100 Mods unter kontrolle bringen der da entsteht.
    Wer lust hat zu reden, einfach oben auf Chat klicken und sich zu uns gesellen.


    Mfg.

    Du musst vorher eine Variable bestimmen.
    haus[id][hausX] = mysql_fetch_field("EnterX", dest[0]);


    Nein, fetch_field returnt nur true bzw false. Der gesuchte wert wird in der variable dest gespeichert.


    Welches MySQL plugin benutzt du? Und dest muss ein string sein.

    Du musst ja nur eine query starten wo du alles aus der DB holst wo der Name = soundso ist, und das ergebniss dann zählen. Wenns 0 ist, heisst es das keine zeile geholt wurde, also existiert der account (noch) nicht.

    PHP
    $account_check = mysql_query("SELECT * FROM accounts WHERE Name LIKE ".mysql_real_escape_string($username)."") or die(mysql_error()); 
    if(mysql_num_rows($account_check) == 0)
    {
    	//Account existiert noch nicht
    }
    else
    {
    	//Account existiert schon
    }

    stock mysql_CountDB(Table[])
    {
    new
    nQuery[128],
    nRows,
    nEscapeString[64]
    ;
    mysql_real_escape_string(Table,nEscapeString);
    format(nQuery, 128, "SELECT * FROM %s",nEscapeString);
    mysql_query(nQuery);
    mysql_store_result();
    nRows = mysql_num_rows();
    mysql_free_result();
    return nRows;
    }
    Verwendung:
    printf("In der Tabelle 'accounts' sind %d Einträge vorhanden.", mysql_CountDB("accounts"));

    Keine Copyrights warscheinlich deshalb, weil man sonst nach einem ban oder bei unstimmigkeiten ankommt und verlangt das Design wieder raus zu nehmen.
    Ich denke aber schon das erwähnt wird von wem das Design ist...

    mysql_fetch_field("spalte1", dest[0]);
    spalte1 ist der name der Spalte, also für Coordinaten dann X oder wie du die spalte auch immer genannt hast bei dir. und in dest[0] wird der wert dann gespeichert.

    so z.b
    new str[512],dest[3][128];
    mysql_query("SELECT * FROM irgendwas WHERE irgendwas = irgendwas");
    mysql_store_result();
    while(mysql_fetch_row(str, "|"))
    {
    mysql_fetch_field("spalte1", dest[0]);
    mysql_fetch_field("spalte2", dest[1]);
    mysql_fetch_field("spalte3", dest[2]);
    if(IsPlayerInRangeOfPoint(playerid, 5.0, floatstr(dest[0]), floatstr(dest[1]), floatstr(dest[2])))
    {
    //Spieler ist in der nähe blabla
    break;
    }
    }

    Where2 muss ein string sein.
    Oder du schreibst die funktion um:
    stock mysql_SetFloat2(Table[], Field[], Float:To, Where[], Where2)
    {
    new query[128];
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    mysql_real_escape_string(Where2, Where2);
    format(query, 128, "UPDATE %s SET %s = '%.1f' WHERE %s = %d", Table, Field, To, Where, Where2);
    mysql_query(query);
    return true;
    }