Vorlage:NUMBEROFCARDS: Unterschied zwischen den Versionen

aus Kamelopedia, der wüsten Enzyklopädie
Zur Navigation springen Zur Suche springen
KKeine Bearbeitungszusammenfassung
keine Ahnung, ob's die alle gibt, aber ein paar davon brauchen wir auf jeden Fall
 
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
<!--
{{#expr: {{Karten
--    Erstmal die Teilstring für das includematch definieren
|size={{{size|100}}}
--
|float={{{float|left}}}
-->{{#vardefine:nr|{{#if:{{{nr|}}}|.*\¦\s*nr\s*=\s*{{{nr}}}\s*}}}}<!--
|!nr={{{!nr|}}}
-->{{#vardefine:typ|{{#if:{{{typ|}}}|.*\¦\s*typ\s*=\s*{{{typ|}}}\s*}}}}<!-- 
|!hk={{{!hk|}}}
-->{{#vardefine:hk|{{#if:{{{hk|}}}|.*\¦\s*hk\s*=\s*{{{hk|}}}\s*}}}}<!--
|!name={{{!name|}}}
-->{{#vardefine:name|{{#if:{{{name|}}}|.*\¦\s*name\s*=\s*{{{name|}}}\s*}}}}<!--
|!typ={{{!typ|}}}
-->{{#vardefine:bild|{{#if:{{{bild|}}}|.*\¦\s*bild\s*=\s*{{{bild|}}}\s*}}}}<!--
|!bild={{{!bild|}}}
-->{{#vardefine:ap|{{#if:{{{ap|}}}|.*\¦\s*ap\s*=\s*{{{ap|}}}\s*}}}}<!--
|!handicap={{{!handicap|}}}
-->{{#vardefine:dp|{{#if:{{{dp|}}}|.*\¦\s*dp\s*=\s*{{{dp|}}}\s*}}}}<!--
|!ap={{{!ap|}}}
-->{{#vardefine:lp|{{#if:{{{lp|}}}|.*\¦\s*lp\s*=\s*{{{lp|}}}\s*}}}}<!--
|!dp={{{!dp|}}}
-->{{#vardefine:d|{{#if:{{{d|}}}|.*\¦\s*d\s*=\s*{{{d|}}}\s*}}}}<!--
|!lp={{{!lp|}}}
-->{{#vardefine:klasse|{{#if:{{{klasse|}}}|.*\¦\s*klasse\s*=\s*{{{klasse|}}}\s*}}}}<!--
|!d={{{!d|}}}
-->{{#vardefine:rasse|{{#if:{{{rasse|}}}|.*\¦\s*rasse\s*=\s*{{{rasse|}}}\s*}}}}<!--
|!angriff={{{!angriff|}}}
-->{{#vardefine:abwehr|{{#if:{{{abwehr|}}}|.*\¦\s*abwehr\s*=\s*{{{abwehr|}}}\s*}}}}<!--
|!abwehr={{{!abwehr|}}}
-->{{#vardefine:text|{{#if:{{{text|}}}|.*\¦\s*text\s*=\s*{{{text|}}}\s*}}}}<!--
|!klasse={{{!klasse|}}}
-->{{#vardefine:handicap|{{#if:{{{handicap|}}}|.*\¦\s*handicap\s*=\s*{{{handicap|}}}\s*}}}}<!--
|!rasse={{{!rasse|}}}
-->{{#vardefine:autor|{{#if:{{{autor|}}}|.*\¦\s*autor\s*=\s*{{{autor|}}}\s*}}}}<!--
|!text={{{!text|}}}
-->{{#vardefine:datum|{{#if:{{{datum|}}}|.*\¦\s*datum\s*=\s*{{{datum|}}}\s*}}}}<!--
|!serie={{{!serie|}}}
--
|nr={{{nr|}}}
--    Nun den string zusammensetzen
|hk={{{hk|}}}
--
|name={{{name|}}}
-->{{#vardefine:includematch|/{{#var:typ}}{{#var:hk}}{{#var:name}}{{#var:bild}}{{#var:ap}}{{#var:dp}}{{#var:lp}}{{#var:d}}{{#var:klasse}}{{#var:rasse}}{{#var:angriff}}{{#var:abwehr}}{{#var:text}}{{#var:handicap}}{{#var:autor}}{{#var:datum}}\n/s}}<!--
|typ={{{typ|}}}
--
|bild={{{bild|}}}
--
|handicap={{{handicap|}}}
--    Jetzt das Ganze für includenotmatch
|ap={{{ap|}}}
--
|dp={{{dp|}}}
-->{{#vardefine:nr!|{{#if:{{{nr!|{{{nr !|}}}}}}|.*\¦\s*nr\s*=\s*{{{nr!|{{{nr !|}}}}}}\s*}}}}<!--
|lp={{{lp|}}}
-->{{#vardefine:typ!|{{#if:{{{typ!|{{{typ !|}}}}}}|.*\¦\s*typ\s*=\s*{{{typ!|{{{typ !|}}}}}}\s*}}}}<!-- 
|d={{{d|}}}
-->{{#vardefine:hk!|{{#if:{{{hk!|{{{hk !|}}}}}}|.*\¦\s*hk\s*=\s*{{{hk!|{{{hk !|}}}}}}\s*\}}}}<!--
|angriff={{{angriff|}}}
-->{{#vardefine:name!|{{#if:{{{name!|{{{name !|}}}}}}|.*\¦\s*name\s*=\s*{{{name!|{{{name !|}}}}}}\s*}}}}<!--
|abwehr={{{abwehr|}}}
-->{{#vardefine:bild!|{{#if:{{{bild!|{{{bild !|}}}}}}|.*\¦\s*bild\s*=\s*{{{bild!|{{{bild !|}}}}}}}\s*}}}}<!--
|klasse={{{klasse|}}}
-->{{#vardefine:ap!|{{#if:{{{ap!|{{{ap !|}}}}}}|.*\¦\s*ap\s*=\s*{{{ap!|{{{ap !|}}}}}}\s*}}}}<!--
|rasse={{{rasse|}}}
-->{{#vardefine:dp!|{{#if:{{{dp!|{{{dp !|}}}}}}|.*\¦\s*dp\s*=\s*{{{dp!|{{{dp !|}}}}}}\s*}}}}<!--
|text={{{text|}}}
-->{{#vardefine:lp!|{{#if:{{{lp!|{{{lp !|}}}}}}|.*\¦\s*lp\s*=\s*{{{lp!|{{{lp !|}}}}}}\s*}}}}<!--
|serie={{{serie|}}}
-->{{#vardefine:d!|{{#if:{{{d!|{{{d !|}}}}}}|.*\¦\s*d\s*=\s*{{{d!|{{{d !|}}}}}}\s*}}}}<!--
|noresults=²{nix}²
-->{{#vardefine:klasse!|{{#if:{{{klasse!|{{{klasse !|}}}}}}|.*\¦\s*klasse\s*=\s*{{{klasse!|{{{klasse !|}}}}}}\s*}}}}<!--
|output=!-dpl-counter
-->{{#vardefine:rasse!|{{#if:{{{rasse!|{{{rasse !|}}}}}}|.*\¦\s*rasse\s*=\s*{{{rasse!|{{{rasse !|}}}}}}\s*\}}}}<!--
-->{{#vardefine:abwehr!|{{#if:{{{abwehr!|{{{abwehr !|}}}}}}|.*\¦\s*abwehr\s*=\s*{{{abwehr!|{{{abwehr !|}}}}}}\s*}}}}<!--
-->{{#vardefine:text!|{{#if:{{{text!|{{{text !|}}}}}}|.*\¦\s*text\s*=\s*{{{text!|{{{text !|}}}}}}\s*}}}}<!--
-->{{#vardefine:handicap!|{{#if:{{{handicap!|{{{handicap !|}}}}}}|.*\¦\s*handicap\s*=\s*{{{handicap!|{{{handicap !|}}}}}}\s*}}}}<!--
-->{{#vardefine:autor!|{{#if:{{{autor!|{{{autor !|}}}}}}|.*\¦\s*autor\s*=\s*{{{autor!|{{{autor !|}}}}}}\s*}}}}<!--
-->{{#vardefine:datum!|{{#if:{{{datum!|{{{datum !|}}}}}}|.*\¦\s*datum\s*=\s*{{{datum!|{{{datum !|}}}}}}\s*}}}}<!--
--
--    Bei includenotmatch müssen wir erstmal prüfen, ob der string nicht leer ist
--
-->{{#vardefine:includenotmatch|{{#if:{{#var:typ!}}{{#var:hk!}}{{#var:name!}}{{#var:bild!}}{{#var:ap!}}{{#var:dp!}}{{#var:lp!}}{{#var:d!}}{{#var:klasse!}}{{#var:rasse!}}{{#var:angriff!}}{{#var:abwehr!}}{{#var:text!}}{{#var:handicap!}}{{#var:autor!}}{{#var:datum!}}|/{{#var:typ!}}{{#var:hk!}}{{#var:name!}}{{#var:bild!}}{{#var:ap!}}{{#var:dp!}}{{#var:lp!}}{{#var:d!}}{{#var:klasse!}}{{#var:rasse!}}{{#var:angriff!}}{{#var:abwehr!}}{{#var:text!}}{{#var:handicap!}}{{#var:autor!}}{{#var:datum!}}\n/s}}}}<!--
--
--    Nun stecken wir das in die Datenbankabfrage; aber statt Karten spuckt
--    hier jeder Treffer nur "+1" aus. Das Zählen wir zusammen und erhalten
--    die Anzahl entsprechender Karten
--
-->{{#expr:{{#dpl:mode=userformat
|noresultsheader=0
|namespace=Projekt
|titlematch=Ka-Mel-Oh!/Datenbank/%
|category=Ka-Mel-Oh!/Datenbank
|includematch={{#var:includematch}}
|includenotmatch={{#var:includenotmatch}}
|include={Ka-Mel-Oh}!/NUMBEROFCARDS
}}}}<noinclude>
}}}}<noinclude>


----
<div class="hs-box" style="background-color:ivory;border:1px solid #ffa500; font-size:1; padding:-5px;">
Diese Vorlage zeigt die aktuelle Anzahl an [[Projekt:Ka-Mel-Oh!|Ka-Mel-Oh!-Karten]] an, die sich in den Datenbanken ...
{{#dpl:
|namespace=Projekt
|titlematch=Ka-Mel-Oh!/Datenbank/%
|category=Ka-Mel-Oh!/Datenbank
}}
... befinden. Man kann ihr die gleichen Parameter übergeben wie der [[Vorlage:Ka-Mel-Oh!]]:
<pre>
{{NUMBEROFCARDS
| nr =
| typ =
| hk =
| name =
| bild =
| ap =
| dp =
| lp =
| d =
| klasse =
| rasse =
| angriff =
| abwehr =
| text =
| handicap =
| autor =
| datum =
}}
</pre>
Und erhält dann die Anzahl an Karten, die über die entsprechende Eigenschaft verfügen. Etwa ergibt <code><nowiki>{{NUMBEROFCARDS|typ = monster}}</nowiki></code> die Anzahl der Monster-Karten: <code>{{NUMBEROFCARDS|typ = monster}}</code> (ohne [[Zusammenrottung]]en und [[Mutation]]en, s.u.), <code><nowiki>{{NUMBEROFCARDS|hk = 1}}</nowiki></code> die Anzahl der ganz [[bösonders]] seltenen Karten: <code>{{NUMBEROFCARDS|hk = 1}}</code> (die mit dem [[Bild:Kartenhäufigkeit1.png|15px]]) oder <code><nowiki>{{NUMBEROFCARDS|handicap = sonder}}</nowiki></code> die Anzahl der Sonderkarten: <code>{{NUMBEROFCARDS|handicap = sonder}}</code>. Mit <code><nowiki>{{NUMBEROFCARDS|autor</nowiki> = {{USERNAME|''Dein Kamelname''}}}}</code> kannst Du dir die Anzahl der von dir gestalteten Karten anzeigen lassen.<br>Diese Übergabeparameter lassen sich beliebig kombinieren, so ergibt <code><nowiki>{{NUMBEROFCARDS|ap = 20|dp = 20}}</nowiki></code> die Anzahl der Karten, die sowohl 20 Angriffs-, als auch 20 Defensivpunkte besitzen: <code>{{NUMBEROFCARDS|ap = 20|dp = 20}}</code>.
Durch Voranstellen eines <code>!</code> vor das <code>=</code>  lassen sich Werte (wie in [[Wikipedia:de:JavaScript|JavaScript]]) auf ungleich überprüfen:
<pre>
{{NUMBEROFCARDS
| nr !=
| typ !=
| hk !=
| name !=
| bild !=
| ap !=
| dp !=
| lp !=
| d !=
| klasse !=
| rasse !=
| angriff !=
| abwehr !=
| text !=
| handicap !=
| autor !=
| datum !=
}}
</pre>
<code><nowiki>{{NUMBEROFCARDS|typ != monster}}</nowiki></code> ergibt die Anzahl aller Karten, die keine Monster sind, also Items, Zusammenrottungs- bzw. Mutationsitems, Zusammenrottungen und Mutationen: <code>{{NUMBEROFCARDS|typ != monster}}</code>. Um nun die Anzahl an Monsterkarten inklusive der Mutations-Monster und Zusammenrottungen zu erhalten, lassen sich [[wikipedia:de:Regulärer Ausdruck|reguläre Ausrücke]] verwenden, z.B. <code><nowiki>{{NUMBEROFCARDS|typ = (zm-)?monster}}</nowiki></code>, <code><nowiki>{{NUMBEROFCARDS|typ = .*monster}}</nowiki></code> oder <code><nowiki>{{NUMBEROFCARDS|typ = (monster¦zm-monster)}}</nowiki></code>: <code>{{NUMBEROFCARDS|typ = (monster¦zm-monster)}}</code>
Das Prüfen auf Gleicheit und Ungleichheit lässt sich ebenfalls kombinieren; <code><nowiki>{{NUMBEROFCARDS|typ = monster|handicap != sonder}}</nowiki></code> gibt die Anzahl an ''spielbaren'' Monster-Karten an: <code>{{NUMBEROFCARDS|typ = monster|handicap != sonder}}</code>


===Wichtig!===
===Wichtig!===


Bitte für einfache Abfragen ohne Parameter [[Vorlage:NUMBEROFCARDSS]] verwenden.
Bitte für einfache Abfragen ohne Parameter [[Vorlage:NUMBEROFCARDSS]] verwenden.
</div>[[Kategorie:Vorlagen für Ka-Mel-Oh!]]</noinclude>
[[Kategorie:Vorlagen für Ka-Mel-Oh!]]</noinclude>

Aktuelle Version vom 14. Juli 2011, 20:11 Uhr

440


Wichtig!

Bitte für einfache Abfragen ohne Parameter Vorlage:NUMBEROFCARDSS verwenden.