Template:Cell performance for charge: Difference between revisions

From Caves of Qud Wiki
Jump to navigation Jump to search
(Include liquid-fueled cells in ChargeUse tooltip for Item infobox)
m (Update to use new Cargo table)
Line 1: Line 1:
<includeonly>{{#vardefine:charge_consumed|{{{1}}}}}{{Tooltip
<includeonly>{{#vardefine:charge_consumed|{{{1}}}}}{{Tooltip
|{{#cargo_query:
|{{#cargo_query:
   |tables=ItemsTable
   |tables=ArtifactData=AD,PhysicalProperties=PP
   |fields=_pageName,CONCAT(CASE WHEN MaxCharge IS NOT NULL THEN MaxCharge ELSE ChargePerDram * MaxVolume END)=MaxCharge,FLOOR((CASE WHEN MaxCharge IS NOT NULL THEN MaxCharge ELSE ChargePerDram * MaxVolume END) / {{#var:charge_consumed}})=Uses
  |join on=AD.JoinKey=PP.JoinKey
   |where=MaxCharge IS NOT NULL OR (ChargePerDram IS NOT NULL AND MaxVolume IS NOT NULL)
   |fields=_pageName,CONCAT(CASE WHEN AD.MaxCharge IS NOT NULL THEN AD.MaxCharge ELSE AD.ChargePerDram * PP.MaxVolume END)=MaxCharge,FLOOR((CASE WHEN AD.MaxCharge IS NOT NULL THEN AD.MaxCharge ELSE AD.ChargePerDram * PP.MaxVolume END) / {{#var:charge_consumed}})=Uses
   |where=AD.MaxCharge IS NOT NULL OR (AD.ChargePerDram IS NOT NULL AND PP.MaxVolume IS NOT NULL)
   |order by=Uses ASC
   |order by=Uses ASC
   |format=template
   |format=template

Revision as of 17:20, 7 October 2021


Specify an item's charge use as the first parameter.

Shows how many uses can be obtained from each type of energy cell as a hoverable tooltip.

Example

{{cell performance for charge | 7500 }}

7500

Error 1052: Column '_pageName' in field list is ambiguous (localhost)

Function: CargoSQLQuery::run Query: SELECT `_pageName` AS `_pageName`,CONCAT(CASE WHEN `AD`.`MaxCharge` IS NOT NULL THEN `AD`.`MaxCharge` ELSE `AD`.`ChargePerDram` * `PP`.`MaxVolume` END) AS `MaxCharge`,FLOOR((CASE WHEN `AD`.`MaxCharge` IS NOT NULL THEN `AD`.`MaxCharge` ELSE `AD`.`ChargePerDram` * `PP`.`MaxVolume` END) / 7500) AS `Uses` FROM `ArtifactData` `AD` LEFT OUTER JOIN `PhysicalProperties` `PP` ON ((`AD`.`JoinKey`=`PP`.`JoinKey`)) WHERE `AD`.`MaxCharge` IS NOT NULL OR (`AD`.`ChargePerDram` IS NOT NULL AND `PP`.`MaxVolume` IS NOT NULL) ORDER BY `Uses` LIMIT 100