[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
  • Ah, so rum hast du es gemacht.
    Aber auch da brauchst du - wenn auch nur Dummy-Weise - eine "ID" Spalte, damit phpMyAdmin weiß, wo es den Wert aktualisieren soll.


    Füge eine Spalte ID hinzu, setze sie auf UNIQUE und schreibe eine 1 rein. Kannst sie auch Dummy nennen. Hauptsache du hast eine Unique-Spalte.

  • Die Variablen werden nicht in die MySQL DB gespeichert
    Wird aufgerufen bei OnGameModeExit -> Ich schalte den Server mit exit aus.

    stock SaveServer()
    {
    new query[500];
    format(query, sizeof(query), "UPDATE server SET login=%d, registration=%d, teamchange=%d, deathmatch=%d, weapondrop=%d, dgl=%d, mp5=%d, shotgun=%d, m4=%d, sniper=%d, weste=%d, roadblock=%d, nagelband=%d WHERE dummy=0",
    Server[s_Login], Server[s_Registration], Server[s_TeamChange], Server[s_DeathMatch], Server[s_DropWeapons], Server[s_Dgl], Server[s_MP5], Server[s_Shotgun], Server[s_M4], Server[s_Sniper], Server[s_Weste], Server[s_Roadblock], Server[s_Nagelband]);
    mysql_tquery(handle, query);
    return 1;
    }

    MySQL Tabelle: http://abload.de/img/unbenanntlhu51.png
    In der MySQL Log stehen keine warnings / errors.

  • @Jeffry


    Ich habe kürzlich Textdraws erstellt und habe ein kleines Problem, ich weiß nicht wie ich das beheben soll. Wenn ich mit der Maus über einem Text "hover", soll diese rot erscheinen.
    Das klappt auch nur sind da 2 ungewollte Fehler:



    1) Bei einem der 3 Textdraws geht es nicht.
    2) Wenn ich über dem 2. "hover" und etwas runter gehe zum dritten, sind beide rot markiert. Ich möchte aber das nur einer zur gleichen Zeit markiert werden kann.



    Screen um es besser zu zeigen:


    Brauchst du da den Code um es genau zu sagen oder habe ich einen Allgemeinen Fehler gemacht?





    [hide]http://imgur.com/R3mMIqQ[/hide]


    Mit freundlichen Grüßen
    JustMe.77 8)

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • @Jeffry


    Bittesehr:



    PlayerMainText2[playerid] = CreatePlayerTextDraw(playerid, 189.000000, 158.000000, "_"); //Button Register or Login
    PlayerTextDrawBackgroundColor(playerid, PlayerMainText2[playerid], 255);
    PlayerTextDrawFont(playerid, PlayerMainText2[playerid], 2);
    PlayerTextDrawLetterSize(playerid, PlayerMainText2[playerid], 0.200000, 1.200000);
    PlayerTextDrawColor(playerid, PlayerMainText2[playerid], -1);
    PlayerTextDrawSetOutline(playerid, PlayerMainText2[playerid], 1);
    PlayerTextDrawSetProportional(playerid, PlayerMainText2[playerid], 1);


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Du musst die Größe das anklickbaren Bereiches mit PlayerTextDrawTextSize anpassen. https://wiki.sa-mp.com/wiki/PlayerTextDrawTextSize
    Der X Wert ist die Position PLUS die Größe des nach rechts anklickbaren Bereiches. Der Y Wert ist die geschätzte Höhe.


    Angenommen du erstellst dein Textdraw bei X = 120 und Y = 90. Dann machst du den Text "Hallo Welt" da rein. Sagen wir, der Text ist so groß, dass er in etwa über ein Zehntel deines Bildschirmes geht (musst du abschätzen, oder mit einem Lineal abmessen), dann heißt das 640 durch 10, das wäre 64. Somit ist PlayerTextDrawTextSize-X = 120 + 64 = 184.
    Nun misst, bzw. schätzt, du die Höhe des Textdraws, sagen wir mal du bekommst den Text in etwa 20 mal untereinander hin, bis dein Bildschirm von oben nach unten voll damit wäre. Heißt also: 480 durch 20, das gibt 24. Somit wäre PlayerTextDrawTextSize-Y = 24.


    640 und 480 sind die vollen Werte für Breite und Höhe, unabhängig von der Auflösung.



    Als Hilfestellung kannst du in diesen Thread schauen, da habe ich es an Hand eines Textdraws beispielhaft erklärt.
    Bitte um Hilfe bei Skin Auswahl per TextDraw



    Schau mal ob du so damit klar kommst.

  • @Jeffry


    Dankesehr, war hilfreich. Das Problem 2) ist nun gelöst, fehlt nur noch Problem 1).


    Das Problem hierbei ist das ich nicht über den Text "hovern" kann, sprich die Farbe bleibt weiß. Das liegt eventuell daran das ich das anders erstellt habe als 2 und 3, da dass davon abhängt ob man registriert ist oder nicht.


    Also hier der Code:



    PlayerMainText2[playerid] = CreatePlayerTextDraw(playerid, 189.000000, 158.000000, "_"); //Button Register or Login
    PlayerTextDrawBackgroundColor(playerid, PlayerMainText2[playerid], 255);
    PlayerTextDrawFont(playerid, PlayerMainText2[playerid], 2);
    PlayerTextDrawLetterSize(playerid, PlayerMainText2[playerid], 0.200000, 1.200000);
    PlayerTextDrawColor(playerid, PlayerMainText2[playerid], -1);
    PlayerTextDrawSetOutline(playerid, PlayerMainText2[playerid], 1);
    PlayerTextDrawSetProportional(playerid, PlayerMainText2[playerid], 1);
    PlayerTextDrawTextSize(playerid, PlayerMainText2[playerid], 300.0, 15.0)



    Und



    Mit freundlichen Grüßen
    JustMe.77 8)