All user data for FoundryVTT. Includes worlds, systems, modules, and any asset in the "foundryuserdata" directory. Does NOT include the FoundryVTT installation itself.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

347 lines
17 KiB

  1. <!-- HEALTH -->
  2. <div class="sidebar_title">
  3. <h2>{{localize "PF2E.HitPointsHeader"}}</h2>
  4. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{options.id}}-hp-modifiers">
  5. <i class="fas fa-eye"></i> {{localize "PF2E.ModifiersTitle"}}
  6. </button>
  7. </div>
  8. <div class="hitpoints">
  9. <div class="hp-big">
  10. <div class="container temp-hp">
  11. <label for="{{options.id}}-pc-hp-temp" class="sidebar_label">{{localize "PF2E.TempHitPointsShortLabel"}}</label>
  12. <div class="data-value" title="{{localize "PF2E.TempHPTitle"}}">
  13. <input name="system.attributes.hp.temp" id="{{options.id}}-pc-hp-temp" type="number" value="{{data.attributes.hp.temp}}" placeholder="0" />
  14. </div>
  15. </div>
  16. <div class="container current-hp">
  17. <label for="{{options.id}}-pc-hp" class="sidebar_label">{{localize "PF2E.CurrentHitPointsShortLabel"}}</label>
  18. <div class="data-value" title="{{localize "PF2E.CurrentHPTitle"}}">
  19. <input name="system.attributes.hp.value" id="{{options.id}}-pc-hp" type="number" value="{{data.attributes.hp.value}}" placeholder="10" />
  20. </div>
  21. </div>
  22. <div class="container max-hp">
  23. <span class="sidebar_label">{{localize "PF2E.MaxHitPointsShortLabel"}}</span>
  24. <div class="data-value">
  25. <h2>
  26. {{~data.attributes.hp.max~}}
  27. {{~#if data.attributes.hp.unrecoverable~}}
  28. <span class="unrecoverable" data-tooltip="{{localize "PF2E.Actor.HitPoints.Unrecoverable" value=data.attributes.hp.unrecoverable}}">*</span>
  29. {{~/if~}}
  30. </h2>
  31. </div>
  32. </div>
  33. </div>
  34. <div class="hp-small">
  35. <a class="rollable roll-icon{{#if (not data.attributes.dying.value)}} disabled{{/if}}" data-action="recovery-check" title="{{localize "PF2E.Check.Specific.Recovery"}}">
  36. {{> "systems/pf2e/templates/actors/character/icons/d20.hbs"}}
  37. </a>
  38. <a class="dots dying" title="{{localize "PF2E.condition.dying.summary"}}">
  39. <span class="sidebar_label">{{localize "PF2E.condition.dying.name"}}</span>
  40. {{> "systems/pf2e/templates/actors/partials/dying-pips.hbs"}}
  41. </a>
  42. <a class="dots wounded" title="{{localize "PF2E.condition.wounded.summary"}}">
  43. <span class="sidebar_label">{{localize "PF2E.condition.wounded.name"}}</span>
  44. <span class="pips">
  45. {{#times data.attributes.wounded.value}}<i class="fas fa-dot-circle"></i>{{/times}}
  46. {{#times dying.remainingWounded}}<i class="far fa-circle"></i>{{/times}}
  47. </span>
  48. </a>
  49. <a class="roll-icon rest" data-action="rest" title="{{localize "PF2E.Actor.Character.Rest.Label"}}">
  50. <i class="fas fa-bed"></i>
  51. </a>
  52. </div>
  53. </div>
  54. {{#with data.attributes.hp}}
  55. {{> "systems/pf2e/templates/actors/partials/modifiers-tooltip.hbs" title="PF2E.HitPointsHeader"}}
  56. {{/with}}
  57. <!-- STAMINA (if enabled) -->
  58. {{#if hasStamina}}
  59. <div class="sidebar_title">
  60. <h2>{{localize "PF2E.StaminaPointsHeader"}}</h2>
  61. </div>
  62. <ol class="stamina">
  63. <li class="sp">
  64. <label for="{{options.id}}-pc-stamina" class="sidebar_label">{{localize "PF2E.StaminaPointsShortLabel"}}</label>
  65. <span class="hp-current stamina-group" title="{{localize "PF2E.CurrentStaminaTitle"}}">
  66. <input
  67. id="{{options.id}}-pc-stamina"
  68. class="left"
  69. type="number"
  70. inputmode="numeric"
  71. min="0"
  72. max="{{data.attributes.sp.max}}"
  73. name="system.attributes.sp.value"
  74. value="{{data.attributes.sp.value}}"
  75. />
  76. <span class="divider">&sol;</span>
  77. <input class="right" type="number" value="{{data.attributes.sp.max}}" disabled="disabled" />
  78. </span>
  79. </li>
  80. <li class="resolve">
  81. <label for="{{options.id}}-pc-resolve" class="sidebar_label">{{localize "PF2E.ResolvePointsShortLabel"}}</label>
  82. <span class="hp-max stamina-group" title="{{localize "PF2E.ResolveTitle"}}">
  83. <input
  84. id="{{options.id}}-pc-resolve"
  85. class="left"
  86. type="number"
  87. inputmode="numeric"
  88. min="0"
  89. max="{{data.attributes.resolve.max}}"
  90. name="system.attributes.resolve.value"
  91. value="{{data.attributes.resolve.value}}"
  92. />
  93. <span class="divider">&sol;</span>
  94. <input class="right" type="number" value="{{data.attributes.resolve.max}}" disabled="disabled" />
  95. </span>
  96. </li>
  97. </ol>
  98. {{/if}}
  99. <!-- ARMOR CLASS -->
  100. <div class="sidebar_title">
  101. <h2>{{localize "PF2E.ArmorClassLabel"}}</h2>
  102. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{options.id}}-armor-modifiers">
  103. <i class="fas fa-eye"></i> {{localize "PF2E.ModifiersTitle"}}
  104. </button>
  105. </div>
  106. <div class="armor-class">
  107. <div class="shield ac">
  108. <div class="data-value">
  109. <h2>{{data.attributes.ac.value}}</h2>
  110. </div>
  111. <span class="sidebar_label">{{localize "PF2E.ArmorClassShortLabel"}}</span>
  112. </div>
  113. <div class="shield hp">
  114. <div class="data-value">
  115. <input id="{{@root.options.id}}-shield-hp" type="number" placeholder="0" name="system.attributes.shield.hp.value" value="{{data.attributes.shield.hp.value}}" title="{{localize "PF2E.ShieldCurrentTitle"}}" />
  116. </div>
  117. <label for="{{@root.options.id}}-shield-hp" class="sidebar_label">{{localize "PF2E.ShieldCurrentLabel"}}</label>
  118. </div>
  119. <div class="shield-stats">
  120. <ol>
  121. <li>
  122. <div class="shield-label">
  123. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.9 14">
  124. <path
  125. d="M5.9 13.5c-.9-.4-1.9-1-2.7-1.6-.7-.5-1.3-1.1-1.9-1.7C.8 9.6.5 8.9.5 8.1v-6L6 .5l5.4 1.6v6c0 .7-.3 1.5-.8 2.1-.6.7-1.2 1.3-1.9 1.7-.9.6-1.8 1.2-2.8 1.6z"
  126. fill="#fff"
  127. />
  128. <text x="6" y="8.5" font-family="Verdana" text-anchor="middle" font-size="5" fill="black">{{localize "PF2E.ArmorClassShortLabel"}}</text>
  129. </svg>
  130. </div>
  131. <span class="data-value" title="{{localize "PF2E.ShieldACBonusTitle"}}">
  132. <input type="number" placeholder="0" value="{{data.attributes.shield.ac}}" title="{{localize "PF2E.ShieldACBonusTitle"}}" readonly="readonly" />
  133. </span>
  134. </li>
  135. <li>
  136. <div class="shield-label">
  137. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.9 14">
  138. <path
  139. d="M5.9 13.5c-.9-.4-1.9-1-2.7-1.6-.7-.5-1.3-1.1-1.9-1.7C.8 9.6.5 8.9.5 8.1v-6L6 .5l5.4 1.6v6c0 .7-.3 1.5-.8 2.1-.6.7-1.2 1.3-1.9 1.7-.9.6-1.8 1.2-2.8 1.6z"
  140. fill="#fff"
  141. />
  142. <text x="6" y="8.5" font-family="Verdana" text-anchor="middle" font-size="5" fill="black">{{localize "PF2E.ShieldHardnessShortLabel"}}</text>
  143. </svg>
  144. </div>
  145. <span class="data-value" title="{{localize "PF2E.ShieldHardnessTitle"}}">
  146. <input type="number" placeholder="0" value="{{data.attributes.shield.hardness}}" readonly="readonly" />
  147. </span>
  148. </li>
  149. <li>
  150. <div class="shield-label">
  151. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.9 14">
  152. <path
  153. d="M5.9 13.5c-.9-.4-1.9-1-2.7-1.6-.7-.5-1.3-1.1-1.9-1.7C.8 9.6.5 8.9.5 8.1v-6L6 .5l5.4 1.6v6c0 .7-.3 1.5-.8 2.1-.6.7-1.2 1.3-1.9 1.7-.9.6-1.8 1.2-2.8 1.6z"
  154. fill="#fff"
  155. />
  156. <text x="6" y="8.5" font-family="Verdana" text-anchor="middle" font-size="5" fill="black">{{localize "PF2E.ShieldBTShortLabel"}}</text>
  157. </svg>
  158. </div>
  159. <span class="data-value" title="{{localize "PF2E.ShieldBTTitle"}}">
  160. <input type="number" value="{{data.attributes.shield.brokenThreshold}}" readonly="readonly" />
  161. </span>
  162. </li>
  163. </ol>
  164. </div>
  165. <div class="armor_footer">
  166. <div class="shield-max">
  167. <label for="{{@root.options.id}}-shield-max" class="sidebar_label" title="{{localize "PF2E.ShieldMaxTitle"}}">
  168. {{localize "PF2E.ShieldLabel"}}<br />{{localize "PF2E.MaxHitPointsShortLabel"}}
  169. </label>
  170. <span class="data-value" title="{{localize "PF2E.ShieldMaxTitle"}}">
  171. <input id="{{@root.options.id}}-shield-max" type="number" placeholder="0" value="{{data.attributes.shield.hp.max}}" readonly="readonly" />
  172. </span>
  173. </div>
  174. <div class="shield-status">
  175. {{#if data.attributes.shield.destroyed}}
  176. <span class="sidebar_label">{{localize "PF2E.Item.Physical.Destroyed"}}</span>
  177. <i class="far fa-times-circle"></i>
  178. {{else}}
  179. <span class="sidebar_label">{{localize "PF2E.Item.Physical.Broken"}}</span>
  180. {{#if data.attributes.shield.broken}}<i class="far fa-times-circle"></i>{{else}}<i class="far fa-circle"></i>{{/if}}
  181. {{/if}}
  182. </div>
  183. </div>
  184. </div>
  185. {{#with data.attributes.ac}}
  186. {{> "systems/pf2e/templates/actors/partials/modifiers-tooltip.hbs" title="PF2E.ArmorClassLabel"}}
  187. {{/with}}
  188. <!-- Perception -->
  189. <div class="sidebar_title">
  190. <h2>{{localize "PF2E.PerceptionHeader"}}</h2>
  191. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{options.id}}-perception-modifiers">
  192. <i class="fas fa-eye"></i> {{localize "PF2E.ModifiersTitle"}}
  193. </button>
  194. </div>
  195. <div class="roll-data perception-sidebar">
  196. <a class="roll-icon attribute-name" data-action="perception-check" title="{{localize "PF2E.Check.Specific.Perception.Label"}}">
  197. {{> "systems/pf2e/templates/actors/character/icons/d20.hbs"}}
  198. </a>
  199. <a class="roll-icon attribute-name" data-action="perception-check" data-secret="true" title="{{localize "PF2E.Check.Specific.Perception.Secret"}}">
  200. <i class="fas fa-eye-slash"></i>
  201. </a>
  202. <h3>{{numberFormat data.attributes.perception.value decimals=0 sign=true}}</h3>
  203. <div class="perception-prof button-group skill-container">
  204. <select class="perception-proficiency pf-rank adjust-stat-select{{#if rank.immutable}} readonly{{/if}}" data-property="system.attributes.perception.rank" data-rank="{{data.attributes.perception.rank}}" data-dtype="Number">
  205. {{> "systems/pf2e/templates/actors/character/partials/proficiencylevels-dropdown.hbs" proflevel=data.attributes.perception.rank}}
  206. </select>
  207. </div>
  208. </div>
  209. {{#with data.attributes.perception}}
  210. {{> "systems/pf2e/templates/actors/partials/modifiers-tooltip.hbs" title="PF2E.PerceptionHeader"}}
  211. {{/with}}
  212. <!-- Initiative -->
  213. <div class="sidebar_title">
  214. <h2>{{localize "PF2E.InitiativeLabel"}}</h2>
  215. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{options.id}}-initiative-modifiers">
  216. <i class="fas fa-eye"></i> {{localize "PF2E.ModifiersTitle"}}
  217. </button>
  218. </div>
  219. <div class="roll-data initiative-sidebar">
  220. <a class="roll-icon roll-init" data-action="roll-initiative">
  221. {{> "systems/pf2e/templates/actors/character/icons/d20.hbs"}}
  222. </a>
  223. <h3>{{numberFormat data.attributes.initiative.totalModifier decimals=0 sign=true}}</h3>
  224. <h4 class="initiative-select">
  225. <select name="system.attributes.initiative.statistic">
  226. {{#select data.attributes.initiative.statistic}}
  227. <option value="perception">{{localize "PF2E.PerceptionLabel"}}</option>
  228. {{#each data.skills as |skill|}}
  229. <option value="{{skill.slug}}">{{localize skill.label}}</option>
  230. {{/each}}
  231. {{/select}}
  232. </select>
  233. </h4>
  234. </div>
  235. {{#with data.attributes.initiative}}
  236. {{> "systems/pf2e/templates/actors/partials/modifiers-tooltip.hbs" title=label}}
  237. {{/with}}
  238. <!-- Saves -->
  239. <div class="sidebar_title">
  240. <h2>{{localize "PF2E.SavesHeader"}}</h2>
  241. </div>
  242. <ul class="sidebar-saves">
  243. {{#each data.saves as |save sid|}}
  244. <li class="roll-data" data-save="{{sid}}">
  245. <h2 class="sidebar_label">{{localize save.label}}</h2>
  246. <div class="save-prof button-group skill-container">
  247. <select class="save-proficiency pf-rank adjust-stat-select{{#if rank.immutable}} readonly{{/if}}" data-property="system.saves.{{sid}}.rank" data-rank="{{save.rank}}" data-dtype="Number">
  248. {{> "systems/pf2e/templates/actors/character/partials/proficiencylevels-dropdown.hbs" proflevel=save.rank}}
  249. </select>
  250. </div>
  251. <div class="save-roll">
  252. <a class="roll-icon save-name">
  253. {{> "systems/pf2e/templates/actors/character/icons/d20.hbs"}}
  254. </a>
  255. <h3>{{numberFormat save.totalModifier decimals=0 sign=true}}</h3>
  256. </div>
  257. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{@root.options.id}}-{{save.slug}}-modifiers">
  258. {{localize "PF2E.ModifiersTitle"}}
  259. </button>
  260. {{#with save}}
  261. {{> "systems/pf2e/templates/actors/partials/modifiers-tooltip.hbs" title=label}}
  262. {{/with}}
  263. </li>
  264. {{/each}}
  265. </ul>
  266. <!-- Class DC -->
  267. {{#if classDCs.dcs}}
  268. <div class="sidebar_title">
  269. <h2>{{#if (gt classDCs.dcs.length 1)}}{{localize "PF2E.Actor.Character.ClassDC.Plural"}}{{else}}{{localize "PF2E.Actor.Character.ClassDC.Label"}}{{/if}}</h2>
  270. {{#unless classDCs.perDCDetails}}
  271. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{options.id}}-{{classDCs.primary}}-modifiers"><i class="fas fa-eye"></i> {{localize "PF2E.ModifiersTitle"}}</button>
  272. {{/unless}}
  273. </div>
  274. {{#each classDCs.dcs as |classDC|}}
  275. <div class="roll-data difficulty-checks class-dc{{#unless classDC.primary}} secondary{{/unless}}">
  276. <h3>
  277. {{classDC.dc}}
  278. {{#if ../classDCs.perDCDetails}}<span class="sidebar_label">{{classDC.label}}</span>{{/if}}
  279. </h3>
  280. <div class="classdc-rank">
  281. <span class="pf-rank {{classDC.rankSlug}}">{{classDC.rankName}}</span>
  282. {{#if ../classDCs.perDCDetails}}
  283. <button type="button" class="modifiers_button hover" data-tooltip-content="#{{../options.id}}-{{classDC.slug}}-modifiers"><i class="fas fa-eye"></i></button>
  284. {{/if}}
  285. </div>
  286. {{#with classDC}}
  287. {{> "systems/pf2e/templates/actors/partials/modifiers-tooltip.hbs" title="PF2E.Actor.Character.ClassDC.Label"}}
  288. {{/with}}
  289. </div>
  290. {{/each}}
  291. {{/if}}
  292. <!-- Immunities -->
  293. <div class="sidebar_title">
  294. <h2>{{localize "PF2E.ImmunitiesLabel"}}</h2>
  295. </div>
  296. <ol class="immunities tags">
  297. {{#each data.attributes.immunities as |immunity|}}
  298. <li class="tag tag_secondary" data-immunity="{{immunity.type}}">{{immunity.label}}</li>
  299. {{/each}}
  300. {{#if editable}}
  301. <li class="tag edit-btn">
  302. <a data-action="edit-immunities" title="{{localize "PF2E.NPC.EditImmunities"}}"><i class="fa-solid fa-edit"></i></a>
  303. </li>
  304. {{/if}}
  305. </ol>
  306. <!-- Weaknesses -->
  307. <div class="sidebar_title">
  308. <h2>{{localize "PF2E.WeaknessesLabel"}}</h2>
  309. </div>
  310. <ol class="weaknesses tags">
  311. {{#each data.attributes.weaknesses as |weakness|}}
  312. <li class="tag tag_secondary" data-weakness="{{weakness.type}}">{{weakness.label}}</li>
  313. {{/each}}
  314. {{#if editable}}
  315. <li class="tag edit-btn">
  316. <a data-action="edit-weaknesses" title="{{localize "PF2E.NPC.EditWeaknesses"}}"><i class="fa-solid fa-edit"></i></a>
  317. </li>
  318. {{/if}}
  319. </ol>
  320. <!-- Resistances -->
  321. <div class="sidebar_title">
  322. <h2>{{localize "PF2E.ResistancesLabel"}}</h2>
  323. </div>
  324. <ol class="resistances tags">
  325. {{#each data.attributes.resistances as |resistance|}}
  326. <li class="tag tag_secondary" data-resistance="{{resistance.type}}">{{resistance.label}}</li>
  327. {{/each}}
  328. {{#if editable}}
  329. <li class="tag edit-btn">
  330. <a data-action="edit-resistances" title="{{localize "PF2E.NPC.EditResistances"}}"><i class="fa-solid fa-edit"></i></a>
  331. </li>
  332. {{/if}}
  333. </ol>