Beiträge von Kisa

    Habe nun ein anderen Textdraw Editor genutzt.
    Hab auch die Kordinaten erhalten mit Hilfe einer Box.
    So schaut das ganze aus:

    LoginScreen[playerid][4] = CreatePlayerTextDraw(playerid, 116.399314, 169.407562, "EINLOGGEN");
    PlayerTextDrawLetterSize(playerid, LoginScreen[playerid][4], 0.400000, 1.600000);
    PlayerTextDrawTextSize(playerid, LoginScreen[playerid][4], 0.000000, 76.000000);
    PlayerTextDrawAlignment(playerid, LoginScreen[playerid][4], 2);
    PlayerTextDrawColor(playerid, LoginScreen[playerid][4], -1768515841);
    PlayerTextDrawSetShadow(playerid, LoginScreen[playerid][4], 0);
    PlayerTextDrawSetOutline(playerid, LoginScreen[playerid][4], 1);
    PlayerTextDrawBackgroundColor(playerid, LoginScreen[playerid][4], 255);
    PlayerTextDrawFont(playerid, LoginScreen[playerid][4], 1);
    PlayerTextDrawSetProportional(playerid, LoginScreen[playerid][4], 1);
    PlayerTextDrawSetShadow(playerid, LoginScreen[playerid][4], 0);
    PlayerTextDrawSetSelectable(playerid, LoginScreen[playerid][4], true);


    SelectTextDraw(playerid, -1);


    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
    if(playertextid == LoginScreen[playerid][4])
    {
    SendClientMessage(playerid, -1, "Geht");
    CancelSelectTextDraw(playerid);
    }
    return 1;
    }


    Jetzt kann ich die aber leider immer noch nicht Anklicken.
    Klappt es vielleicht bei euch?


    Textdraw wird erstellt, Mauszeiger bekomme ich auch, aber die Farbe wenn man darüber geht ändert sich nicht bzw. wenn ich drauf Klicke passiert ebenfalls nichts.


    Mit freundlichen Grüßen,


    //e Komplett Text überarbeitet

    Guten Morgen,
    ich möchte gerne das man mein Textdraw Anklicken kann, das klappt auch, nur ist der Radius zum Anklicken sehr Groß,
    Habe auch die Funktion gefunden wie ich dies ändern kann, nur weiß ich nicht wie die 'X' und 'Y' Position herraus finde.


    Kann mir da einer Helfen?


    Mit freundlichen Grüßen,

    @xFlacti0n So ein AllInOne PC finde ich selbst lohnt sich nicht.
    Die kosten meist mehr als ein "gutes" Notebook. Würde ein Desktop PC kaufen oder für das Geld lieber
    ein Notebook.


    Ins Geld wird dies gehen, da wenn man die Rückseite öffnet meist die Garatie Verlust erhält.
    Die Abwärme bei so einem Desktop PC kann man nicht so Gut abgeben als wie bei meinem Desktop-PC.


    Mit freundlichen Grüßen,

    <p>Guten Abend,</p><p>ich habe das Problem, das mir im Dialog immer nur der erste Eintrag angezeigt wird.</p><p>Kann mir einer Helfen und sagen wie dies am besten Fixen kann?</p><p>@@@wcf_empty_line@@@</p><p>
    public OnUserFriends(playerid)
    {
    new rows, string[512], string2[512];
    cache_get_field_count(rows);
    if(rows != 0)
    {
    cache_get_value_name(0, "friendname", FriendInfo[playerid][FriendName], MAX_PLAYER_NAME);
    FriendInfo[playerid][TotalFriends] ++;

    printf("friendname: %s", FriendInfo[playerid][FriendName]);

    if(IsFriendOnline(FriendInfo[playerid][FriendName]))
    {
    format(string, sizeof(string), ""#FARBE_WEISS"%s - "#FARBE_GRUEN"Online\n", FriendInfo[playerid][FriendName]);
    strcat(string2, string);
    }
    else
    {
    format(string, sizeof(string), ""#FARBE_WEISS"%s - "#FARBE_ROT"Offline\n", FriendInfo[playerid][FriendName]);
    strcat(string2, string);
    }
    ShowPlayerDialog(playerid, DIALOG_FRIENDS, DIALOG_STYLE_MSGBOX, "Deine Freunde", string, "Schliessen", "");
    }
    return 1;
    }

    Habe drei Einträge, aber nur der erste list er immer aus.</p><p>@@@wcf_empty_line@@@</p><p>Mit freundlichen Grüßen,

    Habe mal zum Testen den Befehl gemacht


    ocmd:addfriend(playerid, params[]){ new name[24], query[256], string[144]; if(sscanf(params, "s[24]", name))return SendClientMessage(playerid, -1, "/addfriend NAME"); mysql_format(Handle, query, sizeof(query), "INSERT INTO `freundesliste` (`username`, `friendname`) VALUES ('%e', '%e')", sInfo[playerid][sName], name); mysql_pquery(Handle, query); format(string, sizeof(string), "Du hast %s zu deinem Freund gemacht!", name); SendClientMessage(playerid, -1, string); return 1;}


    Jetzt kommt mir die MySQL Log und sagt mir: [02:23:29] [plugins/mysql] À/Z


    Mit freundlichen Grüßen,


    //e Problem gelöst, lag an meine Datenbank

    @Kaliber Danke, das läuft nun so wie es soll.
    Habe aber nun ein anderes Problem. Mein Befehl um ein Freund hinzufügen spinnt nun total rum.



    ocmd:addfriend(playerid, params[])
    {
    new pID, query[256], string[144];
    if(sscanf(params, "u", pID))return SendClientMessage(playerid, -1, "/addfriend NAME");
    mysql_format(Handle, query, sizeof(query), "INSERT INTO `freundesliste` (`username`, `friendname`) VALUES ('%e', '%e')", sInfo[playerid][sName], sInfo[pID][sName]);
    mysql_pquery(Handle, query);
    format(string, sizeof(string), "Du hast %s zu deinem Freund gemacht!", sInfo[pID][sName]);
    SendClientMessage(playerid, -1, string);
    return 1;
    }


    Aber meine Konsole rastet nun aus und es gibt auch kein Eintrag mehr in der Datenbank.



    [02:16:46] [debug] Run time error 4: "Array index out of bounds"
    [02:16:46] [debug] Attempted to read/write array element at index 65535 in array of size 1000
    [02:16:46] [debug] AMX backtrace:
    [02:16:46] [debug] #0 00009618 in public ocmd_addfriend (0, 265588) from Selfmade.amx
    [02:16:46] [debug] #1 native CallLocalFunction () from samp-server.exe
    [02:16:46] [debug] #2 00006200 in public OnPlayerCommandText (0, 265528) from Selfmade.amx


    Kannst mir da auch ein Tipp geben woran es liegen könnte/würde ?


    Mit freundlichen Grüßen,

    @m4a_X Habe getan, hab es ja ausgeklammert, wenn ich die Funktion nutze, dann kommt der Dialog gar nicht erst auf.
    Weil die Log Meckert das der cache wohl nicht Aktiv sein soll,weiß nicht wie ich das "beheben" soll.


    MfG.

    Gerne, hier: query: SELECT * FROM `freundesliste` WHERE `username` = 'Y3ttiSpielt'


    Er ließt halt den Eintrag in der Tabelle nicht aus.


    //e Die MySQL Log spuckt mir aber auch etwas aus: cache_get_value_name: no active cache


    MfG.

    @Tommyx3
    Habe ich so getan, aber es auch printen lassen, der Name wird leider immer noch nicht aus der Tabelle ausgelesen.


    Mit freundlichen Grüßen,


    //e
    pquery wird aber richtig ausgeführt, im Print zeigt mir auch die Daten an die geladen wurden, nur im Dialog wird der Name nicht gezeigt.


    @Jeffry, @Kaliber einer von euch eine Idee?

    Guten Abend,
    ich habe ein "Freundes System" Geschrieben, jetzt ist aber das Problem, ich bekomme es nicht hin, das meine Freunde die in der Datenbank stehen
    in dem Dialog angezeigt wird. Der Dialog kommt, und schaut dann so aus. " - Online" obwohl dort ja zB "Y3tti - Online" stehen sollte.



    ocmd:friends(playerid, params[])
    {
    new query[256], name[128], string[512], string2[512], rows;
    mysql_format(Handle, query, sizeof(query), "SELECT * FROM `freundesliste` WHERE `username` = '%e'", sInfo[playerid][sName]);
    mysql_pquery(Handle, query);

    //cache_get_field_count(rows);
    //if(rows != 0)
    //{
    FriendInfo[playerid][TotalFriends] ++;
    cache_get_value_name(0, "friendname", FriendInfo[playerid][FriendName]);
    printf("fr_name: %s", name);
    if(IsFriendOnline(name))
    {
    format(string, sizeof(string), ""#FARBE_WEISS"%s - "#FARBE_GRUEN"Online\n", FriendInfo[playerid][FriendName]);
    strcat(string2, string);
    }
    else
    {
    format(string, sizeof(string), ""#FARBE_WEISS"%s - "#FARBE_ROT"Offline\n", FriendInfo[playerid][FriendName]);
    strcat(string2, string);
    }
    ShowPlayerDialog(playerid, DIALOG_FRIENDS, DIALOG_STYLE_MSGBOX, "Deine Freunde", string, "Schliessen", "");
    //}
    return 1;
    }
    }


    Habe das Cache mal ausgeklammert, wenn ich es nicht ausklammer dann kommt der Dialog auch gar nicht erst.


    Mit freundlichen Grüßen,

    Der Code ist aber nicht schön...besonders das sizeof(str) ist da fehl am Platz..es reicht hier folgendes zu machen:
    cache_get_value_name(0, "sName", sData[sName]);

    Da hat Kaliber recht, so würde ich es ja eigentlich machen.
    ABER: Ich brauche den Namen ja "nur" einmal, daher ist es eigentlich "unnötig" dafür ein Enum zu machen.


    Kaliber? Hast du eine Idee wie ich das Problem gelöst bekomme?


    Mit freundlichen Grüßen,

    Mein Vater hat sich den hier geholt vor kurzem, er ist Top Zufrieden mit der Geschichte.


    Aber man ganz ehrlich, für 1.500€ steht dir die TV Welt offen!
    Geh zum Saturn/Media Markt schau dir dort ein paar TVs an mit deinem Vater und schaue dann über Handy was er Online kostet.
    Ist da ein großer Unterschied bestellt ihn, wenn nicht, Kaufst ihn direkt im Laden. (Mache ich auch so, und bestimmt viele andere auch)


    MfG.