(обновление данных) |
(обновление данных) |
||
Строка 11: | Строка 11: | ||
-->}}<!-- |
-->}}<!-- |
||
-->}}}}}<!-- |
-->}}}}}<!-- |
||
+ | |||
⚫ | |||
+ | -->{{#vardefine:di:manual|{{#fornumargs:k|v|{{#ifeq:{{#var:k}}|1||{{#var:v}}₪}}}}}}<!-- store data to a list, skip $1 |
||
⚫ | |||
// get all mode information |
// get all mode information |
||
− | -->{{#vardefine:di:modes|<!-- |
+ | -->{{#vardefine:di:modes|{{#cargo_compound_query:<!-- auto data |
⚫ | |||
− | -->{{#cargo_compound_query:<!-- |
||
− | + | -->|tables=Drops;fields=MIN(expert),MAX(expert);where=item="{{#var:di:item}}"<!-- |
|
− | + | -->|fields=MIN(master),MAX(master);tables=Drops;where=item="{{#var:di:item}}"<!-- avoid duplicate "tables=" parameter |
|
⚫ | |||
− | -->|fields=MIN(master),MAX(master);tables=Drops;where=item="{{#var:di:item}}"<!-- avoid duplicate "tables=" parameter |
||
+ | -->}}}}<!-- |
||
⚫ | |||
+ | -->{{#if:{{#var:di:manual}}|<!-- manual data |
||
⚫ | |||
+ | -->|insep=₪|outsep=,|indextoken=°°|token=§§§§|pattern=<esc>{{#ifexpr:°° mod 3 = 0|<!-- |
||
+ | -->{{#switch:{{lc:{{#sub:§§§§|-7}}}}<!-- |
||
+ | -->|#expert=011<!-- expert and above |
||
+ | -->|#master=001<!-- master and above (equal to @master, since there is nothing above master) |
||
+ | -->|@normal=100<!-- only normal |
||
+ | -->|@expert=010<!-- only expert |
||
+ | -->|@master=001<!-- only master |
||
⚫ | |||
⚫ | |||
+ | -->}}</esc><!-- |
||
+ | -->}}|,|,}}}}<!-- |
||
+ | -->{{#vardefine:di:modes|<!-- |
||
+ | // bitwise OR on di:modes and di:modes-manual |
||
+ | -->{{max|{{#sub:{{#var:di:modes}}|0|1}}|{{#ifexpr:{{#lstmap:{{#var:di:modes-manual}}|,|@@@@|<esc>{{#sub:@@@@|0|1}}</esc>|}}|1|0}}}}<!-- |
||
+ | -->{{max|{{#sub:{{#var:di:modes}}|1|1}}|{{#ifexpr:{{#lstmap:{{#var:di:modes-manual}}|,|@@@@|<esc>{{#sub:@@@@|1|1}}</esc>|}}|1|0}}}}<!-- |
||
+ | -->{{max|{{#sub:{{#var:di:modes}}|2|1}}|{{#ifexpr:{{#lstmap:{{#var:di:modes-manual}}|,|@@@@|<esc>{{#sub:@@@@|2|1}}</esc>|}}|1|0}}}}<!-- |
||
-->}}<!-- |
-->}}<!-- |
||
-->}}<!-- |
-->}}<!-- |
||
Строка 58: | Строка 80: | ||
-->}}<!-- |
-->}}<!-- |
||
⚫ | |||
⚫ | |||
− | -->{{#vardefine:di: |
+ | -->{{#vardefine:di:rowcount_non-custom|{{#cargo_query:tables=Drops|fields=count(name)|where=item="{{#var:di:item}}" AND custom IS NULL|no html}}}}<!-- |
⚫ | |||
⚫ | |||
+ | |||
+ | -->{{#vardefine:di:rowcount_total|{{#expr:<!-- |
||
+ | -->(0{{#lstcnt:{{#var:di:manual}}|₪}}/3)<!-- |
||
+ | -->+0{{#var:di:rowcount_non-custom}}<!-- |
||
+ | -->+0{{#var:di:rowcount_custom}}<!-- |
||
+ | -->}}}}<!-- |
||
------ START OUTPUT ------ |
------ START OUTPUT ------ |
||
+ | -->{{#vardefine:di:box-collapseclass|{{#if:{{{collapsible|}}}||<!-- |
||
⚫ | |||
+ | -->mw-collapsible <!-- |
||
⚫ | |||
+ | -->{{#switch:{{{collapse|{{{collapsed}}}}}}<!-- |
||
− | |||
+ | -->|y|yes=<!-- |
||
⚫ | |||
+ | -->|n|no=mw-collapsed<!-- |
||
⚫ | |||
+ | -->|#default={{#ifexpr:{{#var:di:rowcount_total}}>5|mw-collapsed}}<!-- |
||
⚫ | |||
+ | -->}}<!-- |
||
-->}}}}<!-- |
-->}}}}<!-- |
||
⚫ | |||
⚫ | |||
⚫ | |||
+ | --><div class="mw-collapsible-content"><!-- |
||
− | -->{{#ifexpr:{{#var:di: |
+ | -->{{#ifexpr:{{#var:di:rowcount_total}}|<!-- |
// print mode tabs |
// print mode tabs |
||
Строка 84: | Строка 115: | ||
// NON-CUSTOM TABLE |
// NON-CUSTOM TABLE |
||
− | -->{{#ifexpr:{{#var:di:rowcount_non-custom}}|<!-- |
+ | -->{{#ifexpr:{{#var:di:rowcount_non-custom}}{{#lstcnt:{{#var:di:manual}}|₪}}|<!-- |
// set class for the "Entity"/"Quantity"/"Rate" heading |
// set class for the "Entity"/"Quantity"/"Rate" heading |
||
− | -->{{#vardefine:di:subtable-modeclass|{{# |
+ | -->{{#vardefine:di:subtable-modeclass|{{#cargo_compound_query:<!-- get classes for auto data |
⚫ | |||
− | -->{{#cargo_compound_query:<!-- |
||
− | + | -->|tables=Drops;fields=MIN(expert),MAX(expert);where=item="{{#var:di:item}}" AND custom IS NULL<!-- |
|
− | + | -->|fields=MIN(master),MAX(master);tables=Drops;where=item="{{#var:di:item}}" AND custom IS NULL<!-- avoid duplicate "tables=" parameter |
|
+ | -->|format=template|template=max<!-- |
||
⚫ | |||
− | + | -->}}}}<!-- |
|
+ | -->{{#if:{{#var:di:manual}}|<!-- |
||
+ | -->{{#vardefine:di:subtable-modeclass-manual|{{#lstuniq:{{#listmap:list={{#var:di:manual}}<!-- get classes for manual data |
||
+ | -->|insep=₪|outsep=,|indextoken=°°|token=§§§§|pattern=<esc>{{#ifexpr:°° mod 3 = 0|<!-- |
||
+ | -->{{#switch:{{lc:{{#sub:§§§§|-7}}}}<!-- |
||
+ | -->|#expert=011<!-- expert and above |
||
+ | -->|#master=001<!-- master and above (equal to @master, since there is nothing above master) |
||
+ | -->|@normal=100<!-- only normal |
||
+ | -->|@expert=010<!-- only expert |
||
+ | -->|@master=001<!-- only master |
||
+ | -->|#default=111<!-- |
||
+ | -->}}<!-- |
||
+ | -->}}</esc><!-- |
||
+ | -->}}|,|,}}}}<!-- |
||
+ | -->{{#vardefine:di:subtable-modeclass|<!-- |
||
+ | // bitwise OR on di:subtable-modeclass and di:subtable-modeclass-manual |
||
+ | -->{{max|{{#sub:{{#var:di:subtable-modeclass}}|0|1}}|{{#ifexpr:{{#lstmap:{{#var:di:subtable-modeclass-manual}}|,|@@@@|<esc>{{#sub:@@@@|0|1}}</esc>|}}|1|0}}}}<!-- |
||
+ | -->{{max|{{#sub:{{#var:di:subtable-modeclass}}|1|1}}|{{#ifexpr:{{#lstmap:{{#var:di:subtable-modeclass-manual}}|,|@@@@|<esc>{{#sub:@@@@|1|1}}</esc>|}}|1|0}}}}<!-- |
||
+ | -->{{max|{{#sub:{{#var:di:subtable-modeclass}}|2|1}}|{{#ifexpr:{{#lstmap:{{#var:di:subtable-modeclass-manual}}|,|@@@@|<esc>{{#sub:@@@@|2|1}}</esc>|}}|1|0}}}}<!-- |
||
-->}}<!-- |
-->}}<!-- |
||
+ | -->}}<!-- |
||
+ | -->{{#vardefine:di:subtable-modeclass|{{#switch:{{#var:di:subtable-modeclass}}<!-- |
||
-->|001=m-master<!-- only master |
-->|001=m-master<!-- only master |
||
-->|010=m-expert<!-- only expert |
-->|010=m-expert<!-- only expert |
||
-->|011=m-expert-master<!-- expert and master |
-->|011=m-expert-master<!-- expert and master |
||
-->|100=m-normal<!-- only normal |
-->|100=m-normal<!-- only normal |
||
+ | -->|#default=<!-- |
||
-->}}}}<!-- |
-->}}}}<!-- |
||
// start output |
// start output |
||
Строка 110: | Строка 162: | ||
-->|indextoken=°°<!-- |
-->|indextoken=°°<!-- |
||
-->|token=§§§§<!-- |
-->|token=§§§§<!-- |
||
− | -->| |
+ | -->|pattern=<esc>{{#ifeq:§§§§|@@@@||<!-- |
− | -- |
+ | -->{{#ifexpr:°° mod 3 = 0|<!-- |
+ | -->{{#vardefine:_thiscell|{{#sub:§§§§|0|-7}}}}<!-- |
||
+ | -->{{#vardefine:_modeclass|{{#switch:{{lc:{{#sub:§§§§|-7}}}}<!-- |
||
+ | -->|#expert=m-expert-master<!-- expert and above |
||
+ | -->|#master=m-master<!-- master and above (equal to @master, since there is nothing above master) |
||
+ | -->|@normal=m-normal<!-- only normal |
||
+ | -->|@expert=m-expert<!-- only expert |
||
+ | -->|@master=m-master<!-- only master |
||
+ | -->|#default={{#vardefine:_thiscell|§§§§}}<!-- |
||
+ | -->}}}}<!-- |
||
+ | --><tr class="{{#var:_modeclass}}">{{#var:_row}}<td>{{#var:_thiscell}}</td></tr><!-- output row |
||
+ | -->{{#vardefine:_row|}}<!-- |
||
+ | -->|<!-- |
||
+ | -->{{#vardefine:_row|{{#var:_row}}<td>§§§§</td>}}<!-- store data of cells 1 and 2 |
||
+ | -->}}<!-- |
||
+ | -->}}</esc><!-- |
||
-->|outsep=<!-- |
-->|outsep=<!-- |
||
⚫ | |||
-->}}<!-- |
-->}}<!-- |
||
// print data from cargo |
// print data from cargo |
||
Строка 146: | Строка 212: | ||
-->|indextoken=°°<!-- |
-->|indextoken=°°<!-- |
||
-->|token=§§§§<!-- |
-->|token=§§§§<!-- |
||
− | -->| |
+ | -->|pattern=<esc>{{#ifeq:§§§§|@@@@||<!-- |
− | -- |
+ | -->{{#ifexpr:°° mod 3 = 0|<!-- |
+ | -->{{#vardefine:_thiscell|{{#sub:§§§§|0|-7}}}}<!-- |
||
+ | -->{{#vardefine:_modeclass|{{#switch:{{lc:{{#sub:§§§§|-7}}}}<!-- |
||
+ | -->|#expert=m-expert-master<!-- expert and above |
||
+ | -->|#master=m-master<!-- master and above (equal to @master, since there is nothing above master) |
||
+ | -->|@normal=m-normal<!-- only normal |
||
+ | -->|@expert=m-expert<!-- only expert |
||
+ | -->|@master=m-master<!-- only master |
||
+ | -->|#default={{#vardefine:_thiscell|§§§§}}<!-- |
||
+ | -->}}}}<!-- |
||
+ | --><tr class="{{#var:_modeclass}}">{{#var:_row}}<td>{{#var:_thiscell}}</td></tr><!-- output row |
||
+ | -->{{#vardefine:_row|}}<!-- |
||
+ | -->|<!-- |
||
+ | -->{{#vardefine:_row|{{#var:_row}}<td>§§§§</td>}}<!-- store data of cells 1 and 2 |
||
+ | -->}}<!-- |
||
+ | -->}}</esc><!-- |
||
-->|outsep=<!-- |
-->|outsep=<!-- |
||
⚫ | |||
-->}}}}<!-- |
-->}}}}<!-- |
||
--></table><!-- |
--></table><!-- |
||
Строка 212: | Строка 292: | ||
-->}}<!-- end of if |
-->}}<!-- end of if |
||
+ | --></div><!-- |
||
--></div><!-- |
--></div><!-- |
||
Версия от 04:02, 15 сентября 2020
Документация Документация, указанная ниже, находится на странице «Шаблон:Drop infobox/док». (править | история)
[обновить]
См. также этот шаблон на английском языке: Template:Drop infobox. В нём может содержаться более полная или подробная информация.
Шаблон используется в статьях о предметах, которые могут выпасть при убийстве существа или при разбивании объекта. Размещается непосредственно под {{карточка предмета}} (используйте для этого шаблон {{обтекание}}).
Использование
Если количество противников/объектов превышает 4, то сообщите об этом на страницу обсуждения шаблона.
{{карточка дропа | заголовок = необязательный параметр, если хотите использовать отличное название карточки от «Выпадает с» | противник1 | количество | шанс ... | противник4 | количество | шанс }}
Пример
Выпадает с
Классика
Эксперт
Мастер
Сущность | Кол‑во | Шанс |
---|---|---|
15-20 | 100% | Демонический глаз |
{{карточка дропа | заголовок = Пример карточки | Зомби | 15-20 | 100% | Демонический глаз | 100500 | 0.1% }}