Alpha: [OOP/LUA] Krischkros's Notificaiton Script v1


  • Externer Inhalt i.imgur.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    Willkommen in der Dokumentation für den dxNotification Skript.

    Wesentliches:

    Das Skript wurde objektorientiert geskriptet, soweit man es so nennen darf.
    Die einzelnen Objekte sind Rendereinheiten, die jeweils angesprochen werden können.
    Gegebenenfalls auch geändert und/oder entfernt werden.
    Der Konstruktor benötigt 13 Parameter.
    Diese werden vorerst als Attribut wahrgenommen und nach dem erstellen des
    Objekts in das Objekt eingeschleust.

    Funktionen:

    Die „Grundklasse“, so nenn' ich sie mal vorübergehend, muss
    in einer Variable initialisiert werden.
    Das läuft wie folgt:

    local NotificationObject = dxObj:new(...);
    …/Parameter = X-Position,
    Y-Position,
    Fensterbreite,
    Fensterfarbe,
    Animationslänge,
    Anzeigelänge,
    Animationstyp,
    Fensterkopfinhalt,
    Fensterkopffarbe,
    Fensterkopffont,
    Fensterkopffontgröße,
    Fensterkopftyp,
    Fensterinhalt (Tabelle)
    Wie die Parameter angewendet werden müssen btw. welche
    Werte erwartet werden, könnt ihr unter der Seite 3 nachschauen.

    So, nun ist das Objekt angelegt und ansprechbar (NotificationObject).
    Jetzt haben wir Zugriff auf folgende Funktionen:

    Fügt eine weitere Zeile in das Fenster hinzu:
    :addLine(Der Text, der in das Fenster eingefügt werden soll);

    Entfernt die als letztes eingegebene Zeile:
    :delLine();

    Entfernt alle Zeilen auf dem Fenster:
    :clearLines();

    Ändert die Kopfzeile vom Fenster:
    :changeCaption(Neuer Kopfzeilentext);

    Ändert wie Position des Fensters:
    :changePosition(X-Koordinate, Y-Koordinate);

    Ändert die Fensterfarbe vom Fenster:
    :changeWindowColor(Rot, Grün, Blau);
    P.S. Minwert = 0 & Maxwert = 255

    Ändert die Farbe der Schrift, die auf dem Fenster erscheint:
    :changeFontColor(Rot, Grün, Blau);
    Gleicher Tipp wie davor!

    Ändert die Anzahl der maximalen Zeilen im Fenster:
    :setMaxLines(neue Anzahl);


    Rendert das Objekt:
    Beachtet bitte, das ihr (in Version 1.0) das Objekt nur eine
    begrenzte Zeit habt. (Nämlich solange, wie ihr im :new(); Parameter übergeben habt)

    Beendet das Rendern dieses Objektes und löscht es komplett:
    :stopRender();

    Letztes Wort:

    Dieser Skript wurde von mir, Krischkros erstellt.
    Bitte ändert nicht das Copyright.
    Ich werde dafür keinen rechtlich belangen, dennoch sollte das als
    Gegenleistung selbstverständlich sein.
    Ein sogenannter guter Skripter achtet auf sowas!


    Screenshots:

    Externer Inhalt i.imgur.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    Beispielcode:

    Hier für die Copy&Paster unter uns:

    Lua
    addEventHandler("onClientResourceStart", root, function()
    	local notification = dxObj:new(0, 200, 400, {0, 0, 0}, 3000, 5000, 15, "Das ist eine Testkopfzeile..", {200, 200, 200}, "default-bold", 1, "center", {"Das ist ein Testkörper!"});
    	notification:addLine("Und das ist Zeile 2");
    	notification:addLine("Und das die unglaubliche dritte Zeile");
    	notification:changeCaption("Das ist der neue Kopfzeilentext");
    
    	-- Wenn alles erledigt ist könnt ihr es nun rendern:
    	notification:render();
    end)


    Genaue Parameterbeschreibung:

    x = X-Position (default = 0)
    y = Y-Position (default = 0)
    width = Fensterbreite (default = 500)
    color = Fensterfarbe (Tabelle) [OldVersion: (default = tocolor(0, 0, 0, 100))]
    animationtime = Animationslänge (in Millisekunden)
    endtime = Anzeigelänge (Millisekunden // Tick)
    animationstyp = Animationstyp (von 1 – 19) (default = 15)
    1 Linear
    2 InQuad
    3 OutQuad
    4 InOutQuad
    5 OutInQuad
    6 InElastic
    7 OutElastic
    8 InOutElastic
    9 OutInElastic
    10 InBack
    11 OutBack
    12 InOutBack
    13 OutInBack
    14 InBounce
    15 OutBounce
    16 InOutBounce
    17 OutInBounce
    18 SineCurve
    19 CosineCurve
    cap_text = Fensterkopfinhalt (default = "Test")
    cap_col = Fensterkopffarbe (Tabelle) [OldVersion: (default = tocolor(200, 200, 200))]
    cap_font = Fensterkopffont (default = "default-bold");
    cap_size = Fensterkopffontgröße (default = 1)
    cap_alignx = Fensterkopftyp (left, center, right);
    b_text = Fensterinhalt (Tabelle, pro \n neuer Tabelleneintrag)

    Was wird folgen?
    Die Fenster können entweder von alleine ausgeblendet werden oder geschlossen werden. (X Button).
    Die Fenster bekommen Icons.
    Das Design wird sich ändern, das ist nur das provisorische Design!

    Download - Dokumentations-PDF (153KB)
    Download - Skript v1

    ~ Signatur in Bearbeitung ~

    Einmal editiert, zuletzt von Krischkros (24. Oktober 2012 um 19:36)

  • Dieses Thema enthält 13 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind, bitte registrieren Sie sich oder melden Sie sich an um diese lesen zu können.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!