×
Einen neuen Artikel erstellen
Schreibe den Seitennamen hierhin:
Wir haben derzeit 9.055 Artikel auf Vaultpedia. Gib deinen Artikelnamen oberhalb von oder klicke auf einen der unten stehenden Titel und beginne zu schreiben! ein



    Vaultpedia
    9.055Artikel
    Tritt unserem Discord bei und informiere dich auf unserem Twitter-Kanal über die aktuellsten Themen rund um Fallout!

    Dies ist die Dokumentationsseite für Modul:Symbole

    Eine Bibliothek von Funktionen für die Anzeige von Symbolen auf Seiten oder in anderen Vorlagen. Für beste Leistung, eine Kette von Symbolen (in einer Reihe sitzen, ohne dass dazwischen etwas ist)sollte mit einem einzigen Anruf erledigt werden.

    Funktionen

    Dieses Modul basiert auf exists() und trim(), die in Module:Util2 enthalten sind. Allen Funktionsaufrufen von diesem Modul wird util vorangestellt, z. B. util.exists().

    _generate()

    Diese Funktion ist nur intern und das Hauptarbeitspferd für p.Icons() und p.innerIcon(). Diese Funktion erstellt die Funktionsliste. Die erste Aufgabe besteht darin, die Größe der Symbole zu bestimmen.

        if util.exists(iconSetting)  then 
        	iconSetting = util.trim(iconSetting)
            if util.exists(iconSize[iconSetting]) then
                iconSetting = iconSize[iconSetting]
            end
        else
            iconSetting = iconSize["medium"]
        end
        -- This is for calls from other Lua modules as the above will result in nil
        if util.exists(iconSetting) == false then
        	if util.exists(iconSize) then
    			iconSetting = iconSize
    		else
    			iconSetting = iconSize["medium"]
    		end
        end

    In WikiText Markup währe das equivalent zu:

    {{#ifeq:{{{iconSetting}}}|medium|{{#switch:{{{iconSetting}}}|a = x14px |b = 16px| c= 20px|...|#default = {{{iconSize|x14px}}}}}}}
    

    Der nächste Schritt besteht darin, die durch Kommas getrennten Listen in eine Tabelle aufzuteilen:

        if util.exists(iconLinks) then
            iconLinks = mw.text.split(iconLinks, ",")
        end
            
        if util.exists(tipOverride) then
            tipOverride = mw.text.split(tipOverride, ",")
        end
        
        if util.exists(iconClass)then
        	iconClass = "|class=" .. tostring(iconClass);
        else
        	iconClass = ""
        end

    Dies wäre gleichbedeutend mit der Verwendung mehrerer {{#explode:}}-Funktionen und -Variablen, um jedes Element als eigenes zu speichern.

    Sobald die Daten vorverarbeitet wurden, wird eine Schleife verwendet, um jedes Element in der Liste zu durchlaufen und die Symbolsammlung zu generieren:

        for k, v in ipairs(iconList) do
            newIcon = iconData[util.trim(v)]
            if util.exists(newIcon) then
                currentIcon = newIcon.icon
                if util.exists(tipOverride, k) then
                    currentTip = tipOverride[k]
                else
                    if util.exists(iconLinks, k) then
                        currentTip = iconLinks[k]
                    else
                        currentTip = newIcon.tip
                    end
                end
            else
                currentIcon = "Icon question.png"
                currentTip = "Unbekannter Symbolname"
                result = result .. "[[Kategorue:Module mit ungültigen Parametern]]"
            end
            
            --Create wikitext icon
    		dataLine = '[[File:' .. currentIcon .. '|' .. iconSetting
            if util.exists(iconLinks, k) then
                dataLine = dataLine .. '|link=' .. iconLinks[k]
            else
                dataLine = dataLine .. '|link='
            end
            if currentTip ~= nil then
                dataLine = dataLine .. '|' .. currentTip
            end
    
            dataLine = dataLine .. iconClass .. ']]'
    
    		createTip = mw.html.create('span')
            	createTip:addClass( 'va-icon' )
            	:attr('title', currentTip)
            	:wikitext(dataLine)
            result = result .. tostring(createTip)
            
            if k < table.getn(iconList) then
            	result = result .. " "
            end
        end

    Zeile 2 überprüft die Datenliste unter Module:Symbole/daten auf die Daten, die sich auf den Symbol-Shortcode beziehen, und gibt ein Ergebnis oder nil (existiert nicht) zurück, je nachdem, ob ein Ergebnis gefunden wurde Der Code wird fortgesetzt. Wenn es keine Übereinstimmung gibt, wird in den Zeilen 14/15 ein Dummy-Symbol bereitgestellt und in Zeile 16 eine Wartungskategorie hinzugefügt.

    Wenn eine Übereinstimmung gefunden wird, besteht die nächste Aufgabe darin, zu prüfen, ob der Tooltip überschrieben wird. Wenn er nicht überschrieben wird, wird geprüft, ob ein alternativer Seitenlink bereitgestellt wurde. Andernfalls wird auf den Standard-Tooltip zurückgegriffen.

    Das Wikitext-Äquivalent wäre:

    {{{tipOverride|{{{iconLinks|default}}}}}}
    

    Nachdem nun das richtige Symbol, der richtige Tooltip und der richtige Link vorliegen, erstellen die Zeilen 21-31 die Bilddatei im Format

    [[File:<icon>|<size>|link=<link>|<tooltip>|class=<class>]].
    

    Die Zeilen 33–37 erstellen den <span />, der das Symbol enthält und das Symbol darin einfügt. Beim Rendern wird dies als <nowik><span class="va-icon" title="<tooltip>">Symbol</nowiki> angezeigt.

    Schließlich prüfen die Zeilen 39–41, ob das zu erstellende Element das letzte in der Liste ist, das erstellt wird. Andernfalls wird am Ende der Zeichenfolge ein Leerzeichen eingefügt, sodass zwischen den Symbolen auf der Seite nach Fertigstellung Platz bleibt.

    Aufrufparameter

    Die Aufrufparameter werden von p.Icons(frame) oder p.innerIcon(iconList, iconSetting, iconLinks, tipOverride, iconClass, iconSize) übergeben. Die Variablen stimmen zwischen diesen drei Funktionen überein und das Folgende sollte als Erklärung für alle drei verstanden werden.

    Name Parameter Variable Beschreibung Erforderlich Beispiel
    Icons 1 iconList Eine Zeichenfolgenliste mit Symbol-Funktionscodes, die an das Modul weitergeleitet werden. Wenn mehrere Codes übergeben werden, sollten diese durch ein Komma (,) getrennt werden. Ja fo76,ww
    Icon Size 2 iconSetting Die Bildgröße, die an alle Symbole in der Liste übergeben werden soll. Es kann eine benutzerdefinierte Größe eingestellt werden (z. B. x26px) oder eine der Standardgrößen angewendet werden:
    • small = x10px
    • medium = x14px
    • normal = x14px
    • big = x20px

    Um sicherzustellen, dass alle Symbole eine einheitliche Größe haben, wird empfohlen, die Höhe (z. B. „x“ 14 Pixel) und nicht die Breite (z. B. 14 Pixel) zu steuern.

    Nein - Standardeinstellungen sind integriert
    Link 3 iconLinks Die Seite(n), auf die das/die Symbol(e) verlinkt. Bei mehreren Seiten werden Artikelnamen durch ein Komma (,) getrennt. Nein Fallout 76,Wild Wasteland
    Tooltip 4 tipOverride Die Tooltips, die angezeigt werden, wenn Sie mit der Maus über das/die Symbol(e) fahren. Bei mehreren Symbolen können die Tooltips durch ein Komma (') getrennt werden. Nein - Defaults are built in Fire, EMP
    CSS Class 4 iconClass CSS-Klassen, die auf die Symbole angewendet werden sollen. Wenn dies festgelegt ist, gilt es für alle Symbole in der Gruppe. Klassen werden ohne die Komponente class= geschrieben. Nein va-icon va-icon-blue

    p.Icons() und p.innerIcon()

    Diese beiden Funktionen sind Durchleitungsfunktionen an _generate(). Vor dem Durchlaufen wird die Liste der mitgelieferten Icons geteilt.

    Der Unterschied zwischen den Funktionen besteht darin, wo sie verwendet werden sollten und dass p.innerIcon() keine Tabelle mit Symbolgrößen durchläuft, sondern nur eine vorgegebene Größe und nur von anderen Lua-Modulen aufgerufen werden kann. p.Icons() gilt für alle anderen Namespaces und kann nicht von einem anderen Modul aufgerufen werden.

    Aufrufparameter

    Aufgrund der Nähe dieser beiden Funktionen und _generate() sind die Aufrufparameter dieselben wie oben aufgeführt.

    p.platforms()

    p.platforms() verwendet denselben Datensatz wie die anderen Funktionen, gibt jedoch nur Ergebnisse für Symbole zurück, die im Datensatz als Plattform markiert wurden. Darüber hinaus wird auch Semantic Mediawiki verwendet, sodass die zurückgegebenen Daten in Special:Ask abgefragt werden können.

    Sobald die Funktion bestätigt hat, dass das Symbol in der Liste eine gültige Plattform ist, erstellt sie einen versteckten <span /> mit dem semantischen Tag, der die standardmäßig zugewiesene Plattform angibt Tooltip [[Hat Plattform::<Plattform>]]. Der Code folgt dann weitgehend dem von _generate(), um das Symbol zu erstellen, mit einem leeren Link-Attribut. Anschließend werden die beiden Spannweiten zusammengefügt, bevor nach der nächsten Plattform gesucht wird.

    Wenn keine Plattformen gefunden werden, gibt der Code <sup>[Plattformen benötigt]</sup>[[Kategorie:Plattformen benötigt]] zurück.

    Aufrufparameter

    Der einzige Parameter, den diese Funktion übernimmt, ist der iconList-Parameter, der die Zeichenfolge der Funktionscodes enthält.

    p.documentation()

    p.documentation() ist eine selbstgenerierende Dokumentation, um das von jedem Funktionscode erzeugte Symbol anzuzeigen. Zunächst werden alle verfügbaren Datensätze in alphabetischer Reihenfolge sortiert und eine Tabellenüberschrift erstellt, die drei Symbole hintereinander zulässt. Für jeden Funktionscode wird der Funktionscode in die erste, dritte oder fünfte Spalte und das Symbol in die zweite, vierte oder sechste Spalte eingefügt, je nachdem, wo im sortierten Datensatz es sich befindet.

    Aufgrund der ständig wachsenden Symbolliste besteht die Gefahr, dass diese Funktion mit der Zeit überdimensioniert wird. Wenn die Zeichengröße überschritten wird, ist möglicherweise eine Aufteilung in zwei Funktionen erforderlich.

    Invocation parameters

    As a self contained function, there are not parameters that can be passed through.

    Verfügbare Symbole

    Präfix Symbol Präfix Symbol Präfix Symbol
    ability ac acid
    action agi aktion
    alcohol alkohol amber
    ammo ammo2 android
    ap apple ar
    armorwb atom attack
    auge ausd axed
    begleiter begrenzt bew
    big gun bigger gun bild
    blade bleed blunt
    bluten bonus effect bonus effekt
    boss brain bronze
    bugged unav bullion camp
    caps caravan cards
    cha chance chance fo76
    check check1 checkbrown
    chemlab chems chemst
    chr companion confidence
    cookst craft credit
    crippled leg crit crit effect
    cross crosshair cryo
    cut d20 dailyops
    damage dap dau
    dead defense detect
    detection dial dialog
    dialoge dialogue disease
    dislike distance distanz
    doctor doktor dps
    dr drink dt
    dur effect effekt
    electrical elektrisch emp
    end energie energy
    enslave entfernung erfahrung
    erfordert erkannt erkennung
    erkrankung erwähnt essential
    event eventpublic experience
    explmill explosion eye
    facebook faust fb
    fbg fbgagenda fbgaggressiv
    fbgaggressive fbgagility fbgapparel
    fbgarmor fbgasset fbgcharisma
    fbgcompanion fbgcritter fbgdangerous
    fbgdeadly fbgdieablhits fbgendurance
    fbgfreedom fbghit fbghuman
    fbgintelligence fbgloot fbgluck
    fbgmonster fbgnc fbgperception
    fbgquest fbgradiation fbgranged
    fbgretreat fbgrobot fbgsecurity
    fbgsettlement fbgstrength fbgsupermutant
    fbgvault109 fbgvault84 fbgwasteland
    fbgweapon fbgww fbs
    female ferkampf feuer
    feuerrate film fire
    firerate fist fnv
    fnvcs fnvdm fnvgra
    fnvhh fnvlr fnvowb
    fnvww fo fo1
    fo1st fo2 fo3
    fo3bs fo3mz fo3oa
    fo3pl fo3tp fo4
    fo4aut fo4cc fo4chain01
    fo4chain02 fo4chain03 fo4cw
    fo4fh fo4gencard fo4holo
    fo4key01 fo4key02 fo4key03
    fo4note fo4nw fo4vaultid
    fo4vr fo4vw fo4ww
    fo76 fo76fw fo76ib
    fo76ll fo76lr fo76mi
    fo76nm fo76nt fo76nw
    fo76ob fo76ow fo76sd
    fo76sr fo76tm fo76tp
    fo76wa fo76wl fobos
    fobos2 food foodpr
    fool fos foso
    fot fot2 fow
    foww fox fpb
    free frei frost
    fsbg fsbs fww
    fwwrpg game gamerscore
    gas geschenk geschick
    gesundheit getränk gewehr
    gift gift2 gold
    gold bullion goldbarren gp
    granate green grenade
    group gruppe grün
    gun handwerk hate
    healing healing rate health
    heart heilung heilungsrate
    herz hp händler
    image info instagram
    int ios ja
    jes jury karten
    keinhandel klinge kochst
    kreuz krit krit effekt
    laser lck legendary
    legendperk legendär level
    lh liebe like
    limited limitedtime linkedin
    loc love lunchbox
    mac macclassic mag
    male manchmal mann
    meinlager melee mentioned
    merchant mine mod
    muni muni2 mutate
    mutatiert mutation myspace
    nahkampf nahrung nein
    neu neutral neutralface
    new no note
    notiz notrade nukamix
    nw optional ort
    pa pail parmorst
    pbgame pc per
    percent pistol pistole
    plasma platinum poison
    poison2 possum possum dark
    present prozent ps3
    ps3 dark ps4 publicworkshop
    pv13 pve pvp
    quest question radiation
    random range rarity
    ratio red repair
    repeat required rifle
    rk robotwb rot
    rüstungswb schaden score
    scout scrip season
    seasonal seltenheit semi
    semi-required sequence sequenz
    shieldbronze shieldgold shieldsilver
    shotgun sic silber
    silver smg soda
    sound spawn spielerpunkte
    spooky spread sps
    ssch stamp star
    stempel stern stimpak
    str strahlung stumpf
    stä survival sw
    switch säure tadpole
    tadpole dark tar tea
    temp text tod
    torn tumblr twitch
    twitter täglicheops unarmed
    unbestätigt unused upcoming
    v76 vaultraid vaulttec
    vb versklavt verteidigung
    vt weapwb weiblich
    weight wiederhohlen wiki
    wild wasteland windows workshop
    ww xbox360 xboxone
    xp yes zufall

    Darüber hinaus können alle von {{Abb}} unterstützten Abkürzungen verwendet werden, um ein Symbol für das entsprechende Spiel zu erstellen.