| BULK ALLOWANCE |
<#assign overburdened = pcstring('WEIGHT.Overburdened')?number>
| Light |
${pcstring('WEIGHT.LIGHT')} |
Encumbered |
${pcstring('WEIGHT.Encumbered')} |
Overburdened |
${overburdened+1} |
<#if (pcvar("COUNT[EQTYPE.LightSource]") > 0)>
| ILLUMINATION |
| Light Source |
Bright |
Shadowy |
Duration |
<@loop from=0 to=pcvar('COUNT[EQTYPE.LightSource]-1') ; light , light_has_next>
<#if (light % 2 = 0)><#else> #if>
| ${pcstring('EQTYPE.LightSource.${light}.NAME')} |
${pcstring('EQTYPE.LightSource.${light}.QUALITY.Bright Illumination')} |
${pcstring('EQTYPE.LightSource.${light}.QUALITY.Shadowy Illumination')} |
${pcstring('EQTYPE.LightSource.${light}.QUALITY.Duration')} |
@loop>
#if>
| MONEY |
<@loop from=0 to=pcvar('COUNT[EQTYPE.Coin]')-1 ; count , count_has_next>
${pcstring('EQTYPE.Coin.${count}.NAME')}: ${pcstring('EQTYPE.Coin.${count}.QTY')}
@loop>
<@loop from=0 to=pcvar('COUNT[EQTYPE.Gem]')-1 ; count , count_has_next>
${pcstring('EQTYPE.Gem.%.QTY')}x${pcstring('EQTYPE.Gem.${count}.NAME')} (${pcstring('EQTYPE.Gem.${count}.COST')})
@loop>
${pcstring('MISC.FUNDS')} Unspent Funds = ${pcstring('GOLD.TRUNC')} |
<#if (pcvar("FOLLOWERTYPE.Familiar") > 0) >
| Familiar: ${pcstring('FOLLOWERTYPE.FAMILIAR.0.NAME')} (${pcstring('FOLLOWERTYPE.FAMILIAR.0.RACE')}) |
| FORT: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.CHECK.FORTITUDE.TOTAL')} |
REF: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.CHECK.REFLEX.TOTAL')} |
WILL: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.CHECK.2.TOTAL')} |
HP: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.HP')} |
AC: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.AC.Total')} |
INIT: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.INITIATIVEMOD')} |
<@loop from=0 to=pcvar('COUNT[FOLLOWERTYPE.FAMILIAR.0.EQTYPE.WEAPON]-1') ; wep , wep_has_next><#-- TODO: Loop was of early exit type 1 -->
| ${pcstring('FOLLOWERTYPE.FAMILIAR.0.WEAPON.${wep}.NAME')} |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.WEAPON.${wep}.TOTALHIT')} |
DAMAGE: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.WEAPON.${wep}.DAMAGE')} |
CRITICAL: |
<#if (pcstring("FOLLOWERTYPE.FAMILIAR.0.WEAPON.${wep}.QUALITY.Critical") = "")>
- |
<#else>)
${pcstring('FOLLOWERTYPE.FAMILIAR.0.WEAPON.${wep}.QUALITY.Critical')} |
#if>
@loop>
| Special: |
${pcstring('FOLLOWERTYPE.FAMILIAR.0.SPECIALLIST')} |
#if>
<#if (pcvar("FOLLOWERTYPE.SPECIAL MOUNT") > 0) >
| Special Mount: ${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.NAME')} (${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.RACE')}) |
| FORT: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.CHECK.FORTITUDE.TOTAL')} |
REF: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.CHECK.REFLEX.TOTAL')} |
WILL: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.CHECK.2.TOTAL')} |
HP: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.HP')} |
AC: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.AC.Total')} |
INIT: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.INITIATIVEMOD')} |
<@loop from=0 to=pcvar('COUNT[FOLLOWERTYPE.SPECIAL MOUNT.0.EQTYPE.WEAPON]-1') ; wep , wep_has_next><#-- TODO: Loop was of early exit type 1 -->
| ${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.WEAPON.${wep}.NAME')} |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.WEAPON.${wep}.TOTALHIT')} |
DAMAGE: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.WEAPON.${wep}.DAMAGE')} |
CRITICAL: |
<#if (pcstring("FOLLOWERTYPE.SPECIAL MOUNT.0.WEAPON.${wep}.QUALITY.Critical") = "")>
- |
<#else>)
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.WEAPON.${wep}.QUALITY.Critical')} |
#if>
@loop>
| Special: |
${pcstring('FOLLOWERTYPE.SPECIAL MOUNT.0.SPECIALLIST')} |
#if>
<#if (pcvar("FOLLOWERTYPE.ANIMAL COMPANION") > 0) >
<@loop from=0 to=pcvar('COUNT[FOLLOWERTYPE.ANIMAL COMPANION]-1') ; anm , anm_has_next>
| Animal Companion: ${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.NAME')} (${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.RACE')}) |
| FORT: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.CHECK.FORTITUDE.TOTAL')} |
REF: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.CHECK.REFLEX.TOTAL')} |
WILL: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.CHECK.2.TOTAL')} |
HP: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.HP')} |
AC: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.AC.Total')} |
INIT: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.INITIATIVEMOD')} |
<@loop from=0 to=pcvar('COUNT[FOLLOWERTYPE.ANIMAL COMPANION.${anm}.EQTYPE.WEAPON]-1') ; wep , wep_has_next><#-- TODO: Loop was of early exit type 1 -->
| ${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.WEAPON.${wep}.NAME')} |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.WEAPON.${wep}.TOTALHIT')} |
DAMAGE: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.WEAPON.${wep}.DAMAGE')} |
CRITICAL: |
<#if (pcstring("FOLLOWERTYPE.ANIMAL COMPANION.${anm}.WEAPON.${wep}.QUALITY.Critical") = "")>
- |
<#else>)
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.WEAPON.${wep}.QUALITY.Critical')} |
#if>
@loop>
| Special: |
${pcstring('FOLLOWERTYPE.ANIMAL COMPANION.${anm}.SPECIALLIST')}
|
@loop>
#if>
<#if (pcvar("FOLLOWERTYPE.FOLLOWERS") > 0) >
| HENCHMEN |
|
<@loop from=0 to=pcvar('COUNT[FOLLOWERTYPE.FOLLOWERS]-1') ; follower , follower_has_next><#-- TODO: Loop was of early exit type 1 -->
${pcstring('FOLLOWERTYPE.FOLLOWERS.${follower}.NAME')},
@loop>
|
#if>
<#if (pcvar("MISC.COMPANIONS") > 0) >
| OTHER COMPANIONS |
| ${pcstring('MISC.COMPANIONS')} |
#if>
<#if (pcstring("TEMPLATELIST") != '') >
| TEMPLATES |
${pcstring('TEMPLATELIST')}
|
#if>
<#if (pcvar("MISC.MAGIC") > 0) >
| MAGIC |
| ${pcstring('MISC.MAGIC')} |
#if>
<#if (pcvar("PROHIBITEDLIST") > 0) >
| PROHIBITED |
${pcstring('PROHIBITEDLIST')}
|
#if>
<#if (pcstring("DOMAIN.1") != "") >
| Cleric of ${pcstring('DEITY')} |
Domain
|
Granted Power
|
<@loop from=1 to=pcvar('COUNT[DOMAINS]') ; count , count_has_next>
${pcstring('DOMAIN.${count}')}
| ${pcstring('DOMAIN.${count}.POWER')}
|
@loop>
#if>
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","ASPECT=TurnType")-1') ; turncount , turncount_has_next>
<#assign turnLevel = pcvar('((ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnLevel)+0)')> <#-- create variable x -->
| ${pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnType')} ${pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnKind')} |
TURNING CHECK RESULT |
AFFECTED (MAX HIT DICE) |
TURN LEVEL |
${turnLevel} |
| TURN DAMAGE |
${pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnDamage')} |
| Up to 0 |
${turnLevel-4} |
TURNING CHECK |
1d20${pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnCheck.INTVAL.SIGN.NOZERO')} |
| 1 - 3 |
${turnLevel-3} |
TURNS/DAY |
${pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnTimes.INTVAL')} |
| 4 - 6 |
${turnLevel-2} |
<@loop from=0 to=pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnTimes.INTVAL')?number-1> ☐ @loop>
|
| 7 - 9 |
${turnLevel-1} |
${pcstring('ABILITYALL.Special Ability.${turncount}.ASPECT=TurnType.ASPECT.TurnNotes')}
|
| 10 - 12 |
${turnLevel} |
| 13 - 15 |
${turnLevel+1} |
| 16 - 18 |
${turnLevel+2} |
| 19 - 21 |
${turnLevel+3} |
| 22+ |
${turnLevel+4} |
@loop>
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","ASPECT=ChannelingType")-1') ; channelingcount , channelingcount_has_next>
<#assign ChannelingLevel = pcvar('((ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingLevel)+0)')> <#-- create variable x -->
| ${pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingType')} ${pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingKind')} |
CHANNELING CHECK RESULT |
AFFECTED (MAX HIT DICE) |
CHANNELING LEVEL |
${ChannelingLevel} |
| MAGNITUDE |
${pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.Magnitude')} |
| Up to 0 |
${ChannelingLevel-8} |
CHANNELING CHECK |
1d20${pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingCheck.INTVAL.SIGN.NOZERO')} |
| 1 - 3 |
${ChannelingLevel-7} |
USES/DAY |
${pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingUses.INTVAL')} |
| 4 - 6 |
${ChannelingLevel-6} |
<@loop from=0 to=pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingUses.INTVAL')?number-1> ☐ @loop>
|
| 7 - 9 |
${ChannelingLevel-5} |
${pcstring('ABILITYALL.Special Ability.${channelingcount}.ASPECT=ChannelingType.ASPECT.ChannelingNotes')}
|
| 10 - 12 |
${ChannelingLevel-4} |
| 13 - 15 |
${ChannelingLevel-3} |
| 16 - 18 |
${ChannelingLevel-2} |
| 19 - 21 |
${ChannelingLevel-1} |
| 22 - 25 |
${ChannelingLevel} |
| 26+ |
${ChannelingLevel+1} |
@loop>
<@loop from=nextWeaponIdx to=pcvar('COUNT[EQTYPE.Weapon]-1') ; weap , weap_has_next><#-- TODO: Loop was of early exit type 1 -->
<#if (pcstring("WEAPON.${weap}.NAME") != "") >
<@weaponBlock weap=weap />
#if>
@loop>
| 1H-P: One handed, primary hand. 1H-O: One handed, off hand. 2H: Two handed. 2W-P-(OH): 2 weapons, primary hand (off hand weapon is heavy). 2W-P-(OL): 2 weapons, primary hand (off hand weapon is light). 2W-OH:2 weapons, off hand. |
|
| LANGUAGES |
${pcstring('LANGUAGES')} ${pcstring('ABILITYALL.ANY.0.ASPECT=Language.ASPECT.Language')}
|
<#if (pcvar('count("ABILITIES","CATEGORY=Proficiency","TYPE=Proficiency","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Proficiencies |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Proficiency","TYPE=Proficiency","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; proficiency , proficiency_has_next>
<#if (proficiency % 2 = 0)><#else> #if>
| ${pcstring('ABILITYALL.Proficiency.VISIBLE.${proficiency}.TYPE=Proficiency')} |
[${pcstring('ABILITYALL.Proficiency.VISIBLE.${proficiency}.TYPE=Proficiency.SOURCE')}] |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Archetype","TYPE=Archetype","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Archetypes |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Archetype","TYPE=Archetype","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; archetype , archetype_has_next>
<#if (archetype % 2 = 0)><#else> #if>
| ${pcstring('ABILITYALL.Archetype.VISIBLE.${archetype}.TYPE=Archetype')}
${pcstring('ABILITYALL.Archetype.VISIBLE.${archetype}.TYPE=Archetype.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Afflictions","TYPE=Affliction","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Afflictions |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Afflictions","TYPE=Affliction","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; affliction , affliction_has_next>
<#if (affliction % 2 = 0)><#else> #if>
| ${pcstring('ABILITYALL.Afflictions.VISIBLE.${affliction}.TYPE=Affliction')} |
[${pcstring('ABILITYALL.Afflictions.VISIBLE.${affliction}.TYPE=Affliction.SOURCE')}] |
<#if (affliction % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Afflictions.VISIBLE.${affliction}.TYPE=Affliction.DESC')}
|
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=Trait","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Traits |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=Trait","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; trait , trait_has_next>
<#if (trait % 2 = 0)><#else> #if>
| ${pcstring('ABILITYALL.Special Ability.VISIBLE.${trait}.TYPE=Trait')} |
[${pcstring('ABILITYALL.Special Ability.VISIBLE.${trait}.TYPE=Trait.SOURCE')}] |
<#if (trait % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Special Ability.VISIBLE.${trait}.TYPE=Trait.DESC')}
|
@loop>
#if>
<#macro typeOfAbilitySuffix typeOfAbility >
<#if (typeOfAbility?contains("extraordinary"))>
(Ex)
#if>
<#if (typeOfAbility?contains("supernatural"))>
(Su)
#if>
<#if (typeOfAbility?contains("spelllike"))>
(Sp)
#if>
<#if (typeOfAbility?contains("psilike"))>
(Ps)
#if>
#macro>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=SpecialAttack","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| SPECIAL ATTACKS |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=SpecialAttack","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; specialAttack , specialAttack_has_next>
<#if (specialAttack % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Special Ability.VISIBLE.${specialAttack}.TYPE=SpecialAttack.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Special Ability.VISIBLE.${specialAttack}.TYPE=SpecialAttack.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialAttack}.TYPE=SpecialAttack.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialAttack}.TYPE=SpecialAttack')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialAttack}.TYPE=SpecialAttack.SOURCE')}] |
<#if (specialAttack % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialAttack}.TYPE=SpecialAttack.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=Prestige Award Display","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Prestige Awards |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=Prestige Award Display","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; prestigeAward , prestigeAward_has_next>
<#if (prestigeAward % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Special Ability.VISIBLE.${prestigeAward}.TYPE=Prestige Award Display.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Special Ability.VISIBLE.${prestigeAward}.TYPE=Prestige Award Display.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${prestigeAward}.TYPE=Prestige Award Display.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${prestigeAward}.TYPE=Prestige Award Display')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Special Ability.VISIBLE.${prestigeAward}.TYPE=Prestige Award Display.SOURCE')}] |
<#if (prestigeAward % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Special Ability.VISIBLE.${prestigeAward}.TYPE=Prestige Award Display.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Ability","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY","TYPE=AnimalTrick")') = 0)>
<#else>
| ANIMAL TRICKS |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY","TYPE=AnimalTrick")-1') ; animalTrick , animalTrick_has_next>
<#if (animalTrick % 2 = 0)><#else> #if>
| ${pcstring('ABILITYALL.Special Ability.VISIBLE.${animalTrick}.TYPE=AnimalTrick')}
${pcstring('ABILITYALL.Special Ability.VISIBLE.${animalTrick}.TYPE=AnimalTrick.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=SpecialQuality","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| SPECIAL QUALITIES |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=SpecialQuality","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; specialQuality , specialQuality_has_next>
<#if (specialQuality % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Special Ability.VISIBLE.${specialQuality}.TYPE=SpecialQuality.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Special Ability.VISIBLE.${specialQuality}.TYPE=SpecialQuality.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialQuality}.TYPE=SpecialQuality.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialQuality}.TYPE=SpecialQuality')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialQuality}.TYPE=SpecialQuality.SOURCE')}] |
<#if (specialQuality % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Special Ability.VISIBLE.${specialQuality}.TYPE=SpecialQuality.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Racial Trait","TYPE=Racial Trait","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| RACIAL TRAITS |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Racial Trait","TYPE=Racial Trait","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; RacialTrait , RacialTrait_has_next>
<#if (RacialTrait % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Racial Trait.VISIBLE.${RacialTrait}.TYPE=Racial Trait.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Racial Trait.VISIBLE.${RacialTrait}.TYPE=Racial Trait.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Racial Trait.VISIBLE.${RacialTrait}.TYPE=Racial Trait.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Racial Trait.VISIBLE.${RacialTrait}.TYPE=Racial Trait')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Racial Trait.VISIBLE.${RacialTrait}.TYPE=Racial Trait.SOURCE')}] |
<#if (RacialTrait % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Racial Trait.VISIBLE.${RacialTrait}.TYPE=Racial Trait.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Ancestry","TYPE=Ancestry","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Ancestry Features |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Ancestry","TYPE=Ancestry","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; Ancestry , Ancestry_has_next>
<#if (Ancestry % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.SOURCE')}] |
<#if (Ancestry % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Background","TYPE=Background","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Background |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Background","TYPE=Background","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; Background , Background_has_next>
<#if (Background % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Background.VISIBLE.${Background}.TYPE=Background.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Background.VISIBLE.${Background}.TYPE=Background.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Background.VISIBLE.${Background}.TYPE=Background.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Background.VISIBLE.${Background}.TYPE=Background')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Background.VISIBLE.${Background}.TYPE=Background.SOURCE')}] |
<#if (Background % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Background.VISIBLE.${Background}.TYPE=Background.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Ancestry","TYPE=Ancestry","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| AncestryS |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Ancestry","TYPE=Ancestry","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; Ancestry , Ancestry_has_next>
<#if (Ancestry % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.SOURCE')}] |
<#if (Ancestry % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Ancestry.VISIBLE.${Ancestry}.TYPE=Ancestry.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Class Feature","TYPE=Class Feature","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Class Features |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Class Feature","TYPE=Class Feature","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; ClassFeature , ClassFeature_has_next>
<#if (ClassFeature % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Class Feature.VISIBLE.${ClassFeature}.TYPE=Class Feature.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Class Feature.VISIBLE.${ClassFeature}.TYPE=Class Feature.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Class Feature.VISIBLE.${ClassFeature}.TYPE=Class Feature.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Class Feature.VISIBLE.${ClassFeature}.TYPE=Class Feature')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Class Feature.VISIBLE.${ClassFeature}.TYPE=Class Feature.SOURCE')}] |
<#if (ClassFeature % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Class Feature.VISIBLE.${ClassFeature}.TYPE=Class Feature.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Power List","TYPE=Alchemy","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Alchemy |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Power List","TYPE=Alchemy","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; Alchemy , Alchemy_has_next>
<#if (Alchemy % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Power List.VISIBLE.${Alchemy}.TYPE=Alchemy.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Power List.VISIBLE.${Alchemy}.TYPE=Alchemy.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Power List.VISIBLE.${Alchemy}.TYPE=Alchemy.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Power List.VISIBLE.${Alchemy}.TYPE=Alchemy')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Power List.VISIBLE.${Alchemy}.TYPE=Alchemy.SOURCE')}] |
<#if (Alchemy % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Power List.VISIBLE.${Alchemy}.TYPE=Alchemy.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Class Feat","TYPE=Class Feat","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Class Feats |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Class Feat","TYPE=Class Feat","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; ClassFeat , ClassFeat_has_next>
<#if (ClassFeat % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Class Feat.VISIBLE.${ClassFeat}.TYPE=Class Feat.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Class Feat.VISIBLE.${ClassFeat}.TYPE=Class Feat.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Class Feat.VISIBLE.${ClassFeat}.TYPE=Class Feat.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Class Feat.VISIBLE.${ClassFeat}.TYPE=Class Feat')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Class Feat.VISIBLE.${ClassFeat}.TYPE=Class Feat.SOURCE')}] |
<#if (ClassFeat % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Class Feat.VISIBLE.${ClassFeat}.TYPE=Class Feat.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Ancestry Feat","TYPE=Ancestry Feat","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Ancestry Feats |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Ancestry Feat","TYPE=Ancestry Feat","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; AncestryFeat , AncestryFeat_has_next>
<#if (AncestryFeat % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Ancestry Feat.VISIBLE.${AncestryFeat}.TYPE=Ancestry Feat.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Ancestry Feat.VISIBLE.${AncestryFeat}.TYPE=Ancestry Feat.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Ancestry Feat.VISIBLE.${AncestryFeat}.TYPE=Ancestry Feat.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Ancestry Feat.VISIBLE.${AncestryFeat}.TYPE=Ancestry Feat')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Ancestry Feat.VISIBLE.${AncestryFeat}.TYPE=Ancestry Feat.SOURCE')}] |
<#if (AncestryFeat % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Ancestry Feat.VISIBLE.${AncestryFeat}.TYPE=Ancestry Feat.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Proficiency","TYPE=Display","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Proficiency |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Proficiency","TYPE=Display","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; ClassFeat , ClassFeat_has_next>
<#if (ClassFeat % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Proficiency.VISIBLE.${ClassFeat}.TYPE=Display.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Proficiency.VISIBLE.${ClassFeat}.TYPE=Display.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Proficiency.VISIBLE.${ClassFeat}.TYPE=Display.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Proficiency.VISIBLE.${ClassFeat}.TYPE=Display')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Proficiency.VISIBLE.${ClassFeat}.TYPE=Display.SOURCE')}] |
<#if (ClassFeat % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Proficiency.VISIBLE.${ClassFeat}.TYPE=Display.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=ProficiencyDisplay","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Special Ability |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Ability","TYPE=ProficiencyDisplay","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; ClassFeat , ClassFeat_has_next>
<#if (ClassFeat % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Special Ability.VISIBLE.${ClassFeat}.TYPE=ProficiencyDisplay.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Special Ability.VISIBLE.${ClassFeat}.TYPE=ProficiencyDisplay.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${ClassFeat}.TYPE=ProficiencyDisplay.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Special Ability.VISIBLE.${ClassFeat}.TYPE=ProficiencyDisplay')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Special Ability.VISIBLE.${ClassFeat}.TYPE=ProficiencyDisplay.SOURCE')}] |
<#if (ClassFeat % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Special Ability.VISIBLE.${ClassFeat}.TYPE=ProficiencyDisplay.DESC')} |
@loop>
#if>
<#if (pcvar('count("ABILITIES","CATEGORY=Special Action","TYPE=Special Action","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")') > 0)>
| Special Actions |
<@loop from=0 to=pcvar('count("ABILITIES","CATEGORY=Special Action","TYPE=Special Action","VISIBILITY=DEFAULT[or]VISIBILITY=OUTPUT_ONLY")-1') ; SpecialAction , SpecialAction_has_next>
<#if (SpecialAction % 2 = 0)><#else> #if>
|
<#assign typeOfAbility = pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.TYPE")?lower_case />
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Name") = "Y")>
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Name')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
<#else>
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action')}
<@typeOfAbilitySuffix typeOfAbility=typeOfAbility />
#if>
|
[${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.SOURCE')}] |
<#if (SpecialAction % 2 = 0)> <#else> #if>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Trait')} |
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Cost") = "Y")>
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Cost')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Requirement") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Requirement')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Frequency") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Frequency')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Trigger") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Trigger')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Enhancement") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Enhancement')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Success") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Success')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.CriticalSuccess") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.CriticalSuccess')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.Failure") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.Failure')} |
#if>
<#if (pcstring("ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.HASASPECT.CriticalFailure") = "Y")>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.ASPECT.CriticalFailure')} |
#if>
|
${pcstring('ABILITYALL.Special Action.VISIBLE.${SpecialAction}.TYPE=Special Action.DESC')} |
@loop>
#if>
<#if (pcvar("COUNT[SA]") > 0) >
| SPECIAL ABILITIES |
<@loop from=0 to=pcvar('COUNT[SA]-1') ; sa , sa_has_next>
| ${pcstring('SPECIALABILITY.${sa}')} |
@loop>
| ${pcstring('SPECIALLIST')} |
#if>
| FEATS |
<@loop from=0 to=pcvar('COUNT[FEATSALL.VISIBLE]-1') ; feat , feat_has_next>
<#if (feat % 2 = 0)><#else> #if>
| ${pcstring('FEATALL.VISIBLE.${feat}')} |
[${pcstring('FEATALL.VISIBLE.${feat}.SOURCE')}] |
<#if (feat % 2 = 0)> <#else> #if>
| ${pcstring('FEATALL.VISIBLE.${feat}.DESC')} |
<#if (feat % 2 = 0)><#else> #if>
| ${pcstring('FEATALL.VISIBLE.${feat}.BENEFIT')}
|
@loop>
|