From GamingWiki
Jump to: navigation, search
 
(45 intermediate revisions by the same user not shown)
Line 1: Line 1:
<noinclude>{{Documentation}}</noinclude><!--
+
<!--
-->{{#vardefine:cols|{{{columns|6}}}}}<!--
+
 
 +
  @todo more sub-templates, like the skill block one
 +
 
 +
--><onlyinclude><!--
 +
 
 +
-->{{#parameterstohash: paramsHash}}<!--
 +
 
 +
-->{{#vardefine:cols  |{{{columns|6}}}}}<!--
 +
-->{{#vardefine:cols_l|{{#expr: ceil( {{#var: cols}} / 2 ) }} }}<!--
 +
-->{{#vardefine:cols_r|{{#expr: ( {{#var: cols}} - {{#var: cols_l}} ) }} }}<!--
 +
 
 +
-->{{#vardefine:contentcols  |{{#expr: ( {{#var: cols }} - 1 ) }} }}<!--
 +
-->{{#vardefine:contentcols_l|{{#expr: ( {{#var: cols_l}} - 1 ) }} }}<!--
 +
-->{{#vardefine:contentcols_r|{{#expr: ( {{#var: cols_r}} - 1 ) }} }}<!--
 +
 
 +
-->{{#vardefine:name|{{{charactername| {{{character name| {{{name}}} }}} }}} }}<!--
 +
-->{{#vardefine:campaign|{{{campaign<includeonly>|</includeonly>}}} }}<!--
  
 
-->
 
-->
 
{| class="infobox floatright {{{tableclass|}}}"
 
{| class="infobox floatright {{{tableclass|}}}"
! colspan="{{#var:cols}}" | {{{charactername| {{{character name| {{{name}}} }}} }}} <!--
+
! colspan="{{#var:cols}}" | {{#var:name}} <!--
-->{{#if: {{{campaign<includeonly>|</includeonly>}}}{{{player<includeonly>|</includeonly>}}}|<div class="campaign"><!--
+
--><div class="campaign"><!--
   --> {{#if: {{{campaign<includeonly>|</includeonly>}}}|<!--
+
   --> {{#if: {{#var:campaign}}| [[{{#var:campaign}}]] }} <!--
    --> [[{{{campaign}}}]] <!--
+
   --> {{#if: {{{player|}}}|([[User:{{{player}}}|{{{player}}}]]) }} <!--
    --><includeonly>[[Category: {{{campaign}}}]]</includeonly><!--
+
--></div>
  -->}} <!--
 
   --> {{#if: {{{player<includeonly>|</includeonly>}}}|<!--
 
    --> ([[{{{player}}}]]) <!--
 
  -->}} <!--
 
--></div>}}
 
 
|-<!--
 
|-<!--
  
Sections at the top of the sheet, such as High Concept and Trouble, in DFRPG.  
+
Sections at the top of the sheet, such as High Concept and Trouble.  
  
 
-->{{#hashdefine: topsectionhash }}<!--
 
-->{{#hashdefine: topsectionhash }}<!--
Line 53: Line 64:
  
 
   ASPECTS
 
   ASPECTS
 
+
-->{{#hashtotemplate: {{{aspect section template | Character sheet/FATE/Aspect section}}} | paramsHash }}<!--
-->{{Character sheet/section | columns = {{#var:cols}}
 
| subhead  = Aspects
 
| label1    = M_NUL
 
| data1    = <!--
 
-->{{#if: {{{image|}}} | [[Image:{{{image}}}{{!}}thumb{{!}}{{{caption|}}}]]}}<!--
 
-->{{#arraydefine: aspectsarray | {{{aspects}}} | ;; }}<!--
 
-->{{#arrayprint:  aspectsarray || @@@@ | <nowiki />
 
* <span class="aspect">@@@@</span> {{#set: has aspect = @@@@}} }}
 
}}<!-- end section --><!--
 
  
 
   SKILLS
 
   SKILLS
-->{{#ifeq:{{{skillblock|}}}|none|<!--
+
-->{{#hashtotemplate: {{{skill section template | Character sheet/FATE/Skill section}}} | paramsHash }}<!--
  --><!--{{Character sheet/section | columns = {{#var:cols}} | subhead = no skill block }}--><!--
 
  -->|<!--
 
  --><!--{{Character sheet/section | columns = {{#var:cols}} | subhead = upcoming skill block: }}--><!--
 
    We will pass a hash to a template.
 
  -->{{#parameterstohash: paramsHash}}<!--
 
  -->{{#hashinclude:      paramsHash | columns = {{#var:cols}} }}<!--
 
  -->{{#hashdefine:      skillParamsKeys | skillblock, skillclass, skilltypes, skillmarkers, skillranks }}<!--
 
 
 
  -->{{#hashdefine: skillblocks | {{#if:{{{skillblock|}}}|{{{skillblock}}}|skills;Skills}} }}<!--
 
  -->{{#hashprint:  skillblocks || @@@@ | %%%% |<!--
 
      -->{{#hashintersect: skillParamsHash | paramsHash | skillParamsKeys }}<!--
 
      -->{{#hashinclude:  skillParamsHash
 
        | label        = %%%%
 
        | skills      = {{{@@@@ |}}}
 
        | skills1      = {{{@@@@1|M_NUL}}}
 
        | skills2      = {{{@@@@2|M_NUL}}}
 
        | skills3      = {{{@@@@3|M_NUL}}}
 
        | skills4      = {{{@@@@4|M_NUL}}}
 
        | skills5      = {{{@@@@5|M_NUL}}}
 
      }}<!--
 
      -->{{#hashtotemplate:  Character sheet/FATE/Skill section | skillParamsHash }}<!--
 
  -->}}<!--
 
 
 
-->}}<!--
 
END SKILLS
 
  
 
   STUNTS
 
   STUNTS
 
+
-->{{#hashtotemplate: {{{stunt section template | Character sheet/FATE/Stunt section}}} | paramsHash }}<!--
-->{{Character sheet/section | columns = {{#var:cols}} <!--
 
-->| subhead = Stunts <!--
 
-->}}<!--
 
 
 
-->{{#arraydefine: stuntsary | {{{stunts|}}} | ;; }}<!--
 
-->{{#arrayprint:  stuntsary || @@@@ | <!--
 
  -->{{#arraydefine: thestuntarray | @@@@ | /\/\// }}<!--
 
  -->{{#vardefine: stuntname | {{#arrayindex:thestuntarray|0|}} }}<!--
 
  -->{{#vardefine: stuntcost | {{#arrayindex:thestuntarray|1|}} }}<!--
 
  -->{{#vardefine: stuntdesc | {{#arrayindex:thestuntarray|2|}} }}<!--
 
  -->{{Character sheet/section | columns = {{#var:cols}} <!--
 
  -->| label1    = M_NUL <!--
 
  -->| data1      = {{#var:stuntname}} <!--
 
  -->| rdata1    = {{#if:{{#var:stuntcost}}<!--
 
      --><!-- |{{#rmatch: {{#var: stuntcost}} |^\s*([-+]?\d+)\s*$| [\1] | ({{#var:stuntcost}}) }} --><!--
 
      -->|{{#var: stuntcost}}<!--
 
      -->|M_NUL}}<!--
 
  -->| label2    = M_NUL <!--
 
  -->| data2      = {{#if:{{#var:stuntdesc}}| ''{{#var:stuntdesc}}'' |}}<!--
 
  -->| dataclass2 = stunt-description <!--
 
  -->}}<!--
 
  -->{{#arrayreset: thestuntarray }}<!--
 
-->}}<!--
 
-->{{#arrayreset: stuntsary }}<!--
 
 
 
  
 
Extra sections
 
Extra sections
Line 128: Line 80:
 
   -->{{{data{{#var: sectnum}}|}}}<!--
 
   -->{{{data{{#var: sectnum}}|}}}<!--
 
-->|<!--
 
-->|<!--
   -->{{#if:{{{header{{#var: sectnum}}|}}}|<!--
+
   -->{{#if:{{#vardefineecho:sectheader|{{{header{{#var: sectnum}}|}}}}}|<!--
    Draw a header
+
        Draw a header
     -->{{Character sheet/section | columns = {{#var:cols}} <!--
+
     -->{{Character sheet/section subhead |{{#var:sectheader}}g| columns = {{#var:cols}} }}<!--
        -->| header1 = {{{header{{#var: sectnum}}|}}} <!--
+
    --><!--{{Character sheet/section | columns = {{#var:cols}} --><!--
    -->}}<!--
+
        --><!--| header1 = {{{header{{#var: sectnum}}|}}} --><!--
    --><!-- <nowiki />
+
    --><!--}}--><!--
{{!}}-
 
{{!}} colspan="{{#var:cols}}" class="subhead" {{!}} {{{header{{#var: sectnum}}|}}} --><!--
 
 
   -->|<!-- if no header
 
   -->|<!-- if no header
 
     -->{{Character sheet/section | columns = {{#var:cols}} <!--
 
     -->{{Character sheet/section | columns = {{#var:cols}} <!--
         -->| label1 = {{{label{{#var: sectnum}}|}}} <!--
+
         -->| label1 = {{{label{{#var: sectnum}}|}}}h <!--
         -->| data1  = {{{data{{#var: sectnum}}|}}} <!--
+
         -->| data1  = {{{data{{#var: sectnum}}|}}}j <!--
 
     -->}}<!--
 
     -->}}<!--
    --><!-- <nowiki />
 
{{!}}-
 
{{!}} class="shaded" {{!}} {{{label{{#var: sectnum}}|}}}
 
{{!}} colspan="3"    {{!}} {{{data{{#var: sectnum}}|}}}
 
    --><!--
 
 
   -->}}<!-- end if
 
   -->}}<!-- end if
 
   -->{{#vardefine: sectnum | {{#expr: {{#var: sectnum}} + 1}} }}<!--
 
   -->{{#vardefine: sectnum | {{#expr: {{#var: sectnum}} + 1}} }}<!--
Line 162: Line 107:
 
     -->}}<!--
 
     -->}}<!--
  
Stress tracks
+
  STRESS AND CONSEQUENCES
Stress and consequences
+
-->{{#hashtotemplate: {{{stress section template | Character sheet/FATE/Stress and Consequences section}}} | paramsHash }}<!--
  
We want to place stress and consequences side-by-side.
+
  FOOTER
  
-->
+
--><nowiki/>
 
|-
 
|-
| colspan="3" class="subhead" | Stress Tracks
+
| colspan="{{#var:cols}}" | {{navbar|{{{template name|Character sheet/FATE}}}|mini=1}}
| colspan="3" class="subhead" | Consequences <!--
+
|}<!--
  
-->{{#vardefine: defaultstress | {{{defaultstress|5}}} }}<!--
 
-->{{#vardefine: scidx | 0 }}<!--
 
-->{{#while: | <!-- stress tracks and consequence types
 
  -->{{#vardefineecho: thetrack | {{#explode: {{{stresstracks|health//endurance::composure//resolve}}} |::| {{#var:scidx}} }} }}<!--
 
  --><!-- consequence types
 
  -->{{#vardefineecho: severity | {{#explode: {{{consequencetypes|mild moderate severe}}} | | {{#var:scidx}} }} }}<!--
 
-->|<!--
 
  -->{{#vardefine:trackname | {{#explode:{{#var: thetrack}}|//|0}} }}<!--
 
  -->{{#vardefine:trackskil | {{#explode:{{#var: thetrack}}|//|1}} }}<!--
 
  -->{{#vardefine:trackmod  | {{#expr: ceil(({{#var: skillValue{{#var:trackskil}}}} + 0) / 2)}} }}<!--
 
  -->{{#vardefine:defstress | {{#expr: {{#var:defaultstress}} + {{#var:trackmod}} }}}}<!--
 
  -->{{#vardefine:thestress | <!--
 
    -->{{#if:{{{ {{#var: trackname}}|}}}|{{{ {{#var: trackname}} }}}|{{#var:defstress}}//0}}<!--
 
  -->}}<!--
 
  -->{{#vardefine:totstress | {{#explode:{{#var: thestress}}|//|0}} }}<!--
 
  -->{{#vardefine:curstress | {{#explode:{{#var: thestress}}|//|1}} }}<!--
 
  --><nowiki />
 
{{!}}-
 
{{!}} class="shaded" {{!}} {{#var: trackname}} <!--
 
      --><!--({{#var:trackskil}} {{#var: skillValue{{#var:trackskil}}}} / {{#var:trackmod}}) --><!-- debug -->
 
{{!}} colspan="2" {{!}} <!--
 
  -->{{#if:{{#var: trackname}} |<!--
 
    --><table class="fate stressbox"><!--
 
    --><tr>{{#loop: stressloop | 1 | {{#var:totstress}} | <!--
 
      --><td class="{{#ifexpr: {{#var: stressloop}} <= {{#var:curstress|0}} | full }}"><div>&nbsp;</div></td><!--
 
    -->}}</tr><!--
 
    --></table><!--
 
  -->}}<!--
 
  
  --><nowiki />
 
{{!}} class="label" {{!}} {{#var: severity}}
 
{{!}} colspan="2" {{!}} <!--
 
  -->{{#if:{{#var: severity}} |<!--
 
    -->{{#vardefine: conidx | 0 }}<!--
 
    -->{{#vardefine: cons | 0 }}<!--
 
    -->{{#while: | <!-- consequences
 
      -->{{#vardefineecho: consequence | {{#explode: {{{consequences|}}} | :: | {{#var:conidx}} }} }}<!--
 
    -->|<!--
 
      -->{{#ifeq: {{#explode: {{#var:consequence}} |//| 1}}| {{#var: severity}} |<!--
 
        -->{{#ifeq: {{ #var: cons }} | 1 |,&nbsp; }}<!--
 
        -->{{aspect |{{#explode: {{#var:consequence}} |//| 0}}}}<!--
 
        -->{{#vardefine: cons | 1 }}<!--
 
      -->}}<!-- end ifeq
 
      -->{{#vardefine: conidx | {{#expr: {{#var: conidx}} + 1}} }}<!--
 
    -->}}<!-- end while consequences
 
  -->}}<!--
 
  
  -->{{#vardefine: scidx | {{#expr: {{#var: scidx}} + 1}} }}<!--
+
--><includeonly><!--
-->}}<!-- end while stress tracks and consequence types
 
 
 
-->
 
|-
 
| colspan="{{#var:cols}}" | {{navbar|{{{template name|Character sheet/FATE}}}|mini=1}}
 
|}<includeonly><!--
 
  
 
   Semantic MediaWiki keys and categories for any *page* using this template
 
   Semantic MediaWiki keys and categories for any *page* using this template
  
--><!-- [[Category:Character sheets]] --><!--
+
-->{{#set: campaign      = {{{campaign}}}      }}<!-- @todo: remove this
 +
-->{{#set: is in campaign = {{{campaign}}}      }}<!--
 +
-->{{#if:{{#var:name}}|{{#set: has name ={{#var:name}}}}}}<!--
 +
-->{{#if:{{{status|}}}|{{#set: has status ={{{status}}}}}}}<!--
 +
-->{{#ifeq:{{lc:{{{player}}}}} | npc <!--
 +
-->|<!--
 +
    -->{{#set: player        = NPC          | is a = NPC | NPC in campaign = {{#var:campaign}} }}<!--
 +
    -->[[Category: Non-player characters in {{#var:campaign}}]]<!--
 +
-->|<!--
 +
      player name is not "npc".
 +
  -->{{#if:{{{player|}}} <!--
 +
  -->|<!--
 +
      -->{{#set: player        = {{{player}}} | is a = PC  | PC in campaign = {{#var:campaign}}  }}<!--
 +
      -->[[Category: Player characters in {{#var:campaign}}]]<!--
 +
  -->|<!--
 +
      no player name set at all
 +
      -->[[Category: Characters in {{#var:campaign}}]]<!--
 +
  -->}}<!--
 +
-->}}<!--
 +
-->{{#if:{{{blurb|}}}        |{{#set: blurb          = {{{blurb}}}        }}}}<!--
  
-->{{#if:{{{charactername|}}}|{{#set: character name = {{{charactername}}} }}}}<!--
+
  If we have relationships defined, save the information.
-->{{#ifeq:{{lc:{{{player}}}}} | npc      |<!--
+
-->{{#if: {{{relationships|}}} | <!--
    -->{{#set: player        = NPC        | is a = NPC }}<!--
+
  -->{{#arraydefine: relationsarray | {{{relationships|}}} | ;; }}<!--
    -->[[Category: Non-player characters]]<!--
+
  -->{{#arrayprint: relationsarray | | @@@@ | <!--
  -->{{#if:{{{campaign|}}}    | {{#set: NPC in      = {{{campaign}}}      }} }}<!--
+
      -->{{#arraydefine: relationsfields | @@@@ | :: }}<!--
-->|{{#if:{{{player|}}}      |<!--
+
      -->{{Relationship <!--
    -->{{#set: player        = {{{player}}} | is a = PC      }}<!--
+
        -->| {{#arrayindex: relationsfields | 1 }} <!--
    -->[[Category: Player characters]]<!--
+
        -->| {{#arrayindex: relationsfields | 0 }} <!--
  -->{{#if:{{{campaign|}}}    | {{#set: PC in      = {{{campaign}}}      }} }}<!--
+
      -->}}<!--
    -->}}<!--
+
  -->}}<!--
 
-->}}<!--
 
-->}}<!--
-->{{#if:{{{campaign|}}}    |<!--
 
    -->{{#set: campaign      = {{{campaign}}}      }}<!--
 
    -->[[Category: {{{campaign}}}]]<!--
 
    -->}}<!--
 
-->{{#if:{{{blurb|}}}        |{{#set: blurb          = {{{blurb}}}        }}}}<!--
 
  
 
--></includeonly><!--
 
--></includeonly><!--
 +
--></onlyinclude><!--
 +
 +
  
 
--><noinclude><!--
 
--><noinclude><!--
Line 258: Line 169:
 
-->{{#set: game system    = FATE            }}<!--
 
-->{{#set: game system    = FATE            }}<!--
 
-->{{#set: parent template = Template:Character_Sheet }}<!--
 
-->{{#set: parent template = Template:Character_Sheet }}<!--
 +
 +
-->{{Documentation}}<!--
  
 
--></noinclude><!--  
 
--></noinclude><!--  
  
 
-->
 
-->

Latest revision as of 17:39, 3 February 2016

{{{name}}}
[[{{{campaign}}}]]
Aspects
Skills
Stunts
FP 5 Refresh 5
health
 
 
 
 
 
composure
 
 
 
 
 
mild
moderate
severe

{{#set: game system = FATE }}{{#set: parent template = Template:Character_Sheet }}

[create]
Error creating thumbnail: File missing
Template documentation