Vorlage:Karten: Unterschied zwischen den Versionen

aus Kamelopedia, der wüsten Enzyklopädie
Zur Navigation springen Zur Suche springen
K (→‎Wichtig!: tippo)
Zeile 1: Zeile 1:
<!--
+
<includeonly>{{#dpl:mode=userformat
--    Erstmal die Teilstring für das includematch definieren
 
--
 
-->{{#vardefine:nr|{{#if:{{{nr|}}}|.*\¦\s*nr\s*=\s*{{{nr}}}\s*}}}}<!--
 
-->{{#vardefine:typ|{{#if:{{{typ|}}}|.*\¦\s*typ\s*=\s*{{{typ|}}}\s*}}}}<!-- 
 
-->{{#vardefine:hk|{{#if:{{{hk|}}}|.*\¦\s*hk\s*=\s*{{{hk|}}}\s*}}}}<!--
 
-->{{#vardefine:name|{{#if:{{{name|}}}|.*\¦\s*name\s*=\s*{{{name|}}}\s*}}}}<!--
 
-->{{#vardefine:bild|{{#if:{{{bild|}}}|.*\¦\s*bild\s*=\s*{{{bild|}}}\s*}}}}<!--
 
-->{{#vardefine:ap|{{#if:{{{ap|}}}|.*\¦\s*ap\s*=\s*{{{ap|}}}\s*}}}}<!--
 
-->{{#vardefine:dp|{{#if:{{{dp|}}}|.*\¦\s*dp\s*=\s*{{{dp|}}}\s*}}}}<!--
 
-->{{#vardefine:lp|{{#if:{{{lp|}}}|.*\¦\s*lp\s*=\s*{{{lp|}}}\s*}}}}<!--
 
-->{{#vardefine:d|{{#if:{{{d|}}}|.*\¦\s*d\s*=\s*{{{d|}}}\s*}}}}<!--
 
-->{{#vardefine:klasse|{{#if:{{{klasse|}}}|.*\¦\s*klasse\s*=\s*{{{klasse|}}}\s*}}}}<!--
 
-->{{#vardefine:rasse|{{#if:{{{rasse|}}}|.*\¦\s*rasse\s*=\s*{{{rasse|}}}\s*}}}}<!--
 
-->{{#vardefine:abwehr|{{#if:{{{abwehr|}}}|.*\¦\s*abwehr\s*=\s*{{{abwehr|}}}\s*}}}}<!--
 
-->{{#vardefine:text|{{#if:{{{text|}}}|.*\¦\s*text\s*=\s*{{{text|}}}\s*}}}}<!--
 
-->{{#vardefine:handicap|{{#if:{{{handicap|}}}|.*\¦\s*handicap\s*=\s*{{{handicap|}}}\s*}}}}<!--
 
-->{{#vardefine:autor|{{#if:{{{autor|}}}|.*\¦\s*autor\s*=\s*{{{autor|}}}\s*}}}}<!--
 
-->{{#vardefine:datum|{{#if:{{{datum|}}}|.*\¦\s*datum\s*=\s*{{{datum|}}}\s*}}}}<!--
 
--
 
--    Nun den string zusammensetzen
 
--
 
-->{{#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}}<!--
 
--
 
--
 
--    Jetzt das Ganze für includenotmatch
 
--
 
-->{{#vardefine:nr!|{{#if:{{{nr!|{{{nr !|}}}}}}|.*\¦\s*nr\s*=\s*{{{nr!|{{{nr !|}}}}}}\s*}}}}<!--
 
-->{{#vardefine:typ!|{{#if:{{{typ!|{{{typ !|}}}}}}|.*\¦\s*typ\s*=\s*{{{typ!|{{{typ !|}}}}}}\s*}}}}<!-- 
 
-->{{#vardefine:hk!|{{#if:{{{hk!|{{{hk !|}}}}}}|.*\¦\s*hk\s*=\s*{{{hk!|{{{hk !|}}}}}}\s*\}}}}<!--
 
-->{{#vardefine:name!|{{#if:{{{name!|{{{name !|}}}}}}|.*\¦\s*name\s*=\s*{{{name!|{{{name !|}}}}}}\s*}}}}<!--
 
-->{{#vardefine:bild!|{{#if:{{{bild!|{{{bild !|}}}}}}|.*\¦\s*bild\s*=\s*{{{bild!|{{{bild !|}}}}}}}\s*}}}}<!--
 
-->{{#vardefine:ap!|{{#if:{{{ap!|{{{ap !|}}}}}}|.*\¦\s*ap\s*=\s*{{{ap!|{{{ap !|}}}}}}\s*}}}}<!--
 
-->{{#vardefine:dp!|{{#if:{{{dp!|{{{dp !|}}}}}}|.*\¦\s*dp\s*=\s*{{{dp!|{{{dp !|}}}}}}\s*}}}}<!--
 
-->{{#vardefine:lp!|{{#if:{{{lp!|{{{lp !|}}}}}}|.*\¦\s*lp\s*=\s*{{{lp!|{{{lp !|}}}}}}\s*}}}}<!--
 
-->{{#vardefine:d!|{{#if:{{{d!|{{{d !|}}}}}}|.*\¦\s*d\s*=\s*{{{d!|{{{d !|}}}}}}\s*}}}}<!--
 
-->{{#vardefine:klasse!|{{#if:{{{klasse!|{{{klasse !|}}}}}}|.*\¦\s*klasse\s*=\s*{{{klasse!|{{{klasse !|}}}}}}\s*}}}}<!--
 
-->{{#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 die Kartennummern aus
 
--
 
--><includeonly>{{#dpl:mode=userformat
 
 
|noresultsheader=Es wurden keine entsprechenden Karten gefunden.
 
|noresultsheader=Es wurden keine entsprechenden Karten gefunden.
 
|namespace=Projekt
 
|namespace=Projekt
 
|titlematch=Ka-Mel-Oh!/Datenbank/%
 
|titlematch=Ka-Mel-Oh!/Datenbank/%
 
|category=Ka-Mel-Oh!/Datenbank
 
|category=Ka-Mel-Oh!/Datenbank
|includematch={{#var:includematch}}
+
|includematch=/
|includenotmatch={{#var:includenotmatch}}
+
{{{fulltext|{{Ka-Mel-Oh!/AutoRegExpr|nr|{{{nr|}}}|numerisch}}
|include={Ka-Mel-Oh}!¦size={{{size|100}}}¦float={{{float|left}}}
+
{{Ka-Mel-Oh!/AutoRegExpr|typ|{{{typ|}}}}}
}}</includeonly><noinclude>
+
{{Ka-Mel-Oh!/AutoRegExpr|hk|{{{hk|}}}|numerisch}}
----
+
{{Ka-Mel-Oh!/AutoRegExpr|name|{{{name|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|bild|{{{bild|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|ap|{{{ap|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|dp|{{{dp|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|lp|{{{lp|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|d|{{{d|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|klasse|{{{klasse|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|rasse|{{{rasse|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|abwehr|{{{abwehr|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|text|{{{text|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|handicap|{{{handicap|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|autor|{{{autor|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|datum|{{{datum|}}}}}}}}
 +
/s
 +
|includenotmatch={{#if:{{{!nr|}}}{{{!typ|}}}{{{!hk|}}}{{{!name|}}}{{{!bild|}}}{{{!ap|}}}{{{!dp|}}}{{{!lp|}}}{{{!d|}}}{{{!klasse|}}}{{{!rasse|}}}{{{!abwehr|}}}{{{!text|}}}{{{!handicap|}}}{{{!autor|}}}{{{!datum|}}}{{{!fulltext|}}}|/
 +
{{{!fulltext|{{Ka-Mel-Oh!/AutoRegExpr|nr|{{{!nr|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|typ|{{{!typ|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|hk|{{{!hk|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|name|{{{!name|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|bild|{{{!bild|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|ap|{{{!ap|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|dp|{{{!dp|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|lp|{{{!lp|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|d|{{{!d|}}}|numerisch}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|klasse|{{{!klasse|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|rasse|{{{!rasse|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|abwehr|{{{!abwehr|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|text|{{{!text|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|handicap|{{{!handicap|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|autor|{{{!autor|}}}}}
 +
{{Ka-Mel-Oh!/AutoRegExpr|datum|{{{!datum|}}}}}}}}
 +
/s}}
 +
|include={Ka-Mel-Oh}{{{output|!¦size={{{size|100}}}¦float={{{float|left}}}}}}
 +
}}</includeonly></noinclude>{{Ka-Mel-Oh!-Vorlagen|1=hier kommt demnächst eine ausführliche Erklärung hin. Erstmal nur soviel:
  
 
+
<pre>
<div class="hs-box" style="background-color:ivory;border:1px solid #ffa500; font-size:1; padding:-5px;">
+
{{Karten|typ = monster|ap = 20|dp = 20 - 35|!d = 2}}
Diese Vorlage erzeugt [[Projekt:Ka-Mel-Oh!|Ka-Mel-Oh!-Karten]] mit bestimmten Eigenschaften, 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>  
 
{{Karten
 
| nr =
 
| typ =
 
| hk =
 
| name =
 
| bild =
 
| ap =
 
| dp =
 
| lp =
 
| d =
 
| klasse =
 
| rasse =
 
| angriff =
 
| abwehr =
 
| text =
 
| handicap =
 
| autor =
 
| datum =
 
}}
 
 
</pre>
 
</pre>
Und erhält dann die Karten, die über die entsprechende Eigenschaft verfügen. Etwa ergibt <code><nowiki>{{Karten|typ = monster}}</nowiki></code> alle Monster-Karten (ohne [[Zusammenrottung]]en und [[Mutation]]en, s.u.), <code><nowiki>{{Karten|hk = 1}}</nowiki></code> die ganz [[bösonders]] seltenen Karten (die mit dem [[Bild:Kartenhäufigkeit1.png|15px]]) oder <code><nowiki>{{Karten|handicap = sonder}}</nowiki></code> die Sonderkarten. Mit <code><nowiki>{{Karten|autor</nowiki> = {{USERNAME|''Dein Kamelname''}}}}</code> kannst du alle von dir gestalteten Karten anzeigen lassen.<br>Diese Übergabeparameter lassen sich beliebig kombinieren, so ergibt <code><nowiki>{{Karten|ap = 20|dp = 20}}</nowiki></code> alle Karten, die sowohl 20 Angriffs-, als auch 20 Defensivpunkte besitzen. Beispiel: {{Karten|ap = 20|dp = 20}}{{clear}}
 
  
Durch Voranstellen eines <code>!</code> vor das <code>=</code>  lassen sich Werte (wie in [[Wikipedia:de:JavaScript|JavaScript]]) auf ungleich überprüfen:
+
macht:
<pre>
 
{{Karten
 
| nr !=
 
| typ !=
 
| hk !=
 
| name !=
 
| bild !=
 
| ap !=
 
| dp !=
 
| lp !=
 
| d !=
 
| klasse !=
 
| rasse !=
 
| angriff !=
 
| abwehr !=
 
| text !=
 
| handicap !=
 
| autor !=
 
| datum !=
 
}}
 
</pre>
 
<code><nowiki>{{Karten|typ != monster}}</nowiki></code> ergibt die Karten, die keine Monster sind, also Items, Zusammenrottungs- bzw. Mutationsitems, Zusammenrottungen und Mutationen. Um die 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>{{Karten|typ = (zm-)?monster}}</nowiki></code>, <code><nowiki>{{Karten|typ = .*monster}}</nowiki></code> oder <code><nowiki>{{Karten|typ = (monster¦zm-monster)}}</nowiki></code>.
 
  
Das Prüfen auf Gleicheit und Ungleichheit lässt sich ebenfalls kombinieren; <code><nowiki>{{Karten|typ = monster|handicap != sonder}}</nowiki></code> ergibt alle ''spielbaren'' Monster-Karten.
+
{{Karten|typ = monster|ap = 20|dp = 20 - 35|!d = 2}}
 
 
Mit <code><nowiki>{{Karten| ... |size = x}}</nowiki></code> lassen sich die ausgegebenen Karten skalieren, wobei <code>x</code> für Prozent steht. Beispiel <code><nowiki>{{Karten|ap = 20|dp = 20|size = 50}}</nowiki></code>:
 
 
 
{{Karten|ap = 20|dp = 20|size = 50}}
 
 
{{clear}}
 
{{clear}}
Mit <code><nowiki>{{Karten| ... |float = y}}</nowiki></code> lässt sich das Text-Umbruchs-Verhalten der Karten bestimmen:
 
*<code>float = left</code> → Karten sind links ausgerichtet und nachfolgender Text steht ggf. rechts neben den Karten (standard-Einstellung)
 
*<code>float = right</code> → Karten sind rechts ausgerichtet und nachfolgender Text steht ggf. links neben den Karten
 
*<code>float = none</code> → jede einzelne(!) Karte erzeugt einen Zeilenumbruch. Das ist bei der Anzeige mehrer Karten unschön.
 
 
===Wichtig!===
 
 
Bitte für einzelne Karten [[Vorlage:Karte]] verwenden.
 
  
Die Vorlage hat bislang noch keine Sicherheits-features, d.h. ohne Angabe von Such-Parametern werden alle {{NUMBEROFCARDSS}} Karten erzeugt, was zu extrem langen Ladezeiten und mitunter zu Timeout-Fehlern führen kann. Bitte die Vorlage sparsam und mit Vorsicht einsetzen.
+
Man beachte das <code><nowiki>|</nowiki>dp = 20 - 35</code>, das erfasst alle Karten mit einem Defensivwert zwischen 20 und 30 ... *boah* Und das <code><nowiki>|</nowiki>!d = 2</code> schmeißt alle Karten raus, die 2 Datteln kosten.
</div>[[Kategorie:Vorlagen für Ka-Mel-Oh!]]</noinclude>
+
}}</noinclude>

Version vom 4. Mai 2009, 16:16 Uhr