mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 19:52:29 +00:00
1432 lines
56 KiB
HTML
1432 lines
56 KiB
HTML
<!-- Old Dragon 2e Character Sheet -->
|
||
<input type="radio" class="sheet-tab sheet-tab-character" name="attr_core-tab" value="1" title="Ficha de Personagem" checked/>
|
||
<span class="sheet-tab sheet-tab-character" style='line-height: 24px;'>Personagem</span>
|
||
<input type="radio" class="sheet-tab sheet-tab-monster" name="attr_core-tab" value="2" title="Ficha de Monstro"/>
|
||
<span class="sheet-tab sheet-tab-monster" style='line-height: 24px;'>Monstro</span>
|
||
|
||
<div class="sheet-section-character">
|
||
<!-- Sidebar -->
|
||
<div class="sheet-sidebar">
|
||
<!-- Atributos -->
|
||
<div class="stats">
|
||
<!-- Força -->
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Força}} {{rollformula= **Resultado:** [[1d20]] comparado a @{forca} (FOR) }} {{stat=[[@{forca}]]}}" name="roll_For" title="Rolar Teste de Força"><span class="font-bold">FOR</span></button>
|
||
<input type="number" name="attr_forca" value="">
|
||
</div>
|
||
<div class="stat-mod">
|
||
<div class="text-sm">M. FOR</div>
|
||
<span name="attr_mod_forca"></span>
|
||
</div>
|
||
</div>
|
||
<!-- Destreza -->
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Destreza}} {{rollformula= **Resultado:** [[1d20]] comparado a @{destreza} (DES) }} {{stat=[[@{destreza}]]}}" name="roll_Des" title="Rolar Teste de Destreza"><span class="font-bold">DES</span></button>
|
||
<input type="number" name="attr_destreza" value="">
|
||
</div>
|
||
<div class="stat-mod">
|
||
<div class="text-sm">M. DES</div>
|
||
<span name="attr_mod_destreza"></span>
|
||
</div>
|
||
</div>
|
||
<!-- Constituição -->
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Constituição}} {{rollformula= **Resultado:** [[1d20]] comparado a @{constituicao} (CON) }} {{stat=[[@{constituicao}]]}}" name="roll_Con" title="Rolar Teste de Constituição"><span class="font-bold">CON</span></button>
|
||
<input type="number" name="attr_constituicao" value="">
|
||
</div>
|
||
<div class="stat-mod">
|
||
<div class="text-sm">M. CON</div>
|
||
<span name="attr_mod_constituicao"></span>
|
||
</div>
|
||
</div>
|
||
<!-- Sabedoria -->
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Sabedoria}} {{rollformula= **Resultado:** [[1d20]] comparado a @{sabedoria} (SAB) }} {{stat=[[@{sabedoria}]]}}" name="roll_Sab" title="Rolar Teste de Sabedoria"><span class="font-bold">SAB</span></button>
|
||
<input type="number" name="attr_sabedoria" value="">
|
||
</div>
|
||
<div class="stat-mod">
|
||
<div class="text-sm">M. SAB</div>
|
||
<span name="attr_mod_sabedoria"></span>
|
||
</div>
|
||
</div>
|
||
<!-- Inteligência -->
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Inteligência}} {{rollformula= **Resultado:** [[1d20]] comparado a @{inteligencia} (INT) }} {{stat=[[@{inteligencia}]]}}" name="roll_Int" title="Rolar Teste de Inteligência"><span class="font-bold">INT</span></button>
|
||
<input type="number" name="attr_inteligencia" value="">
|
||
</div>
|
||
<div class="stat-mod">
|
||
<div class="text-sm">M. INT</div>
|
||
<span name="attr_mod_inteligencia"></span>
|
||
</div>
|
||
</div>
|
||
<!-- Carisma -->
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Carisma}} {{rollformula= **Resultado:** [[1d20]] comparado a @{carisma} (CAR) }} {{stat=[[@{carisma}]]}}" name="roll_Car" title="Rolar Teste de Carisma"><span class="font-bold">CAR</span></button>
|
||
<input type="number" name="attr_carisma" value="">
|
||
</div>
|
||
<div class="stat-mod">
|
||
<div class="text-sm">M. CAR</div>
|
||
<span name="attr_mod_carisma"></span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- JP | Jogada de Proteção -->
|
||
<div class="jp">
|
||
<div class="font-bold">JP | Jogada de Proteção</div>
|
||
<!-- JPD (Jogada de Proteção de Destreza) -->
|
||
<div class="jp-group">
|
||
<!-- JPD -->
|
||
<div class="jpd">
|
||
<span name="attr_jpd" class="attr-value"></span>
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Jogada de Proteção de Destreza}} {{rollformula= **Resultado:** [[1d20]] comparado a @{jpd} (JPD) }} {{stat=[[@{jpd}]]}}" name="roll_Jpd" title="Rolar Jogada de Proteção de Destreza" class="jp-roll"><span class="font-bold">JPD</span></button>
|
||
</div>
|
||
<div class="jp-values">
|
||
<!-- Base (Classe) -->
|
||
<div class="jp-value">
|
||
<input type="number" name="attr_jpd_class" value="">
|
||
<div class="text-xs">Classe</div>
|
||
</div>
|
||
<!-- Bônus (Raça) -->
|
||
<div class="jp-value">
|
||
<input type="number" name="attr_jpd_race" value="">
|
||
<div class="text-xs">Raça</div>
|
||
</div>
|
||
<!-- M. DES -->
|
||
<div class="jp-value">
|
||
<span name="attr_mod_destreza"></span>
|
||
<div class="text-xs">M. DES</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- JPC (Jogada de Proteção de Constituição) -->
|
||
<div class="jp-group">
|
||
<!-- JPC -->
|
||
<div class="jpc">
|
||
<span name="attr_jpc" class="attr-value"></span>
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Jogada de Proteção de Constituição}} {{rollformula= **Resultado:** [[1d20]] comparado a @{jpc} (JPC) }} {{stat=[[@{jpc}]]}}" name="roll_Jpc" title="Rolar Jogada de Proteção de Constituição" class="jp-roll"><span class="font-bold">JPC</span></button>
|
||
</div>
|
||
<div class="jp-values">
|
||
<!-- Base (Classe) -->
|
||
<div class="jp-value">
|
||
<input type="number" name="attr_jpc_class" value="">
|
||
<div class="text-xs">Classe</div>
|
||
</div>
|
||
<!-- Bônus (Raça) -->
|
||
<div class="jp-value">
|
||
<input type="number" name="attr_jpc_race" value="">
|
||
<div class="text-xs">Raça</div>
|
||
</div>
|
||
<!-- M. CON -->
|
||
<div class="jp-value">
|
||
<span name="attr_mod_constituicao"></span>
|
||
<div class="text-xs">M. CON</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- JPS (Jogada de Proteção de Sabedoria) -->
|
||
<div class="jp-group">
|
||
<!-- JPS -->
|
||
<div class="jps">
|
||
<span name="attr_jps" class="attr-value"></span>
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Jogada de Proteção de Sabedoria}} {{rollformula= **Resultado:** [[1d20]] comparado a @{jps} (JPS) }} {{stat=[[@{jps}]]}}" name="roll_Jps" title="Rolar Jogada de Proteção de Sabedoria" class="jp-roll"><span class="font-bold">JPS</span></button>
|
||
</div>
|
||
<div class="jp-values">
|
||
<!-- Base (Classe) -->
|
||
<div class="jp-value">
|
||
<input type="number" name="attr_jps_class" value="">
|
||
<div class="text-xs">Classe</div>
|
||
</div>
|
||
<!-- Bônus (Raça) -->
|
||
<div class="jp-value">
|
||
<input type="number" name="attr_jps_race" value="">
|
||
<div class="text-xs">Raça</div>
|
||
</div>
|
||
<!-- M. SAB -->
|
||
<div class="jp-value">
|
||
<span name="attr_mod_sabedoria"></span>
|
||
<div class="text-xs">M. SAB</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Body -->
|
||
<div class="sheet-body">
|
||
<div class="header">
|
||
<!-- Nome; Raça; Classe; Alinhamento; Nível -->
|
||
<div class="basic-info">
|
||
<!-- Nome -->
|
||
<div>
|
||
<input type="text" name="attr_character_name">
|
||
<div class="font-bold">Nome</div>
|
||
</div>
|
||
<!-- Raça -->
|
||
<div>
|
||
<input type="text" name="attr_race">
|
||
<div class="font-bold">Raça</div>
|
||
</div>
|
||
<!-- Classe -->
|
||
<div>
|
||
<input type="text" name="attr_class">
|
||
<div class="font-bold">Classe</div>
|
||
</div>
|
||
<!-- Nível -->
|
||
<div>
|
||
<select name="attr_level">
|
||
<option value="1" selected>1º</option>
|
||
<option value="2">2º</option>
|
||
<option value="3">3º</option>
|
||
<option value="4">4º</option>
|
||
<option value="5">5º</option>
|
||
<option value="6">6º</option>
|
||
<option value="7">7º</option>
|
||
<option value="8">8º</option>
|
||
<option value="9">9º</option>
|
||
<option value="10">10º</option>
|
||
<option value="11">11º</option>
|
||
<option value="12">12º</option>
|
||
<option value="13">13º</option>
|
||
<option value="14">14º</option>
|
||
<option value="15">15º</option>
|
||
</select>
|
||
<div class="font-bold">Nível</div>
|
||
</div>
|
||
</div>
|
||
|
||
<hr>
|
||
|
||
<!-- Movimento; Pontos de Experiência; PV -->
|
||
<div class="additional-info">
|
||
<!-- Alinhamento -->
|
||
<div class="alignment">
|
||
<div class="font-bold">Alinhamento</div>
|
||
<select name="attr_alignment">
|
||
<option value="ordeiro">Ordeiro</option>
|
||
<option value="neutro" selected>Neutro</option>
|
||
<option value="caotico">Caotico</option>
|
||
</select>
|
||
</div>
|
||
<!-- Movimento -->
|
||
<div class="mv">
|
||
<div class="font-bold">Movimento</div>
|
||
<div class="mv-values">
|
||
<!-- Atual -->
|
||
<div class="mv-value">
|
||
<input type="number" name="attr_current_movement" value="">
|
||
<div class="text-sm">Atual</div>
|
||
</div>
|
||
<!-- Correr -->
|
||
<div class="mv-value">
|
||
<span name="attr_movement_run"></span>
|
||
<div class="text-sm">Correr</div>
|
||
</div>
|
||
<!-- Escalar -->
|
||
<div class="mv-value">
|
||
<span name="attr_movement_climb"></span>
|
||
<div class="text-sm">Escalar</div>
|
||
</div>
|
||
<!-- Nadar -->
|
||
<div class="mv-value">
|
||
<span name="attr_movement_swim"></span>
|
||
<div class="text-sm">Nadar</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- Pontos de Experiência -->
|
||
<div class="xp">
|
||
<div class="font-bold">Pontos de Experiência</div>
|
||
<div class="xp-values">
|
||
<!-- Atual -->
|
||
<div class="xp-value">
|
||
<input type="text" name="attr_xp_current" value="">
|
||
<div class="text-sm">Atual</div>
|
||
</div>
|
||
<!-- Próx. Nível -->
|
||
<div class="xp-value">
|
||
<input type="text" name="attr_xp_next_level" value="">
|
||
<div class="text-sm">Próx. Nível</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- PV | Pontos de Vida -->
|
||
<div class="hp">
|
||
<div class="font-bold">PV | Pontos de Vida</div>
|
||
<div class="hp-values">
|
||
<!-- Atual -->
|
||
<div class="hp-value">
|
||
<input type="number" name="attr_hp_current" value="">
|
||
<div class="text-sm font-bold">PV Atual</div>
|
||
</div>
|
||
<!-- Total -->
|
||
<div class="hp-value">
|
||
<input type="number" name="attr_hp_max" value="">
|
||
<div class="text-sm font-bold">PV Total</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<hr>
|
||
|
||
<!-- CA; BA; Economia -->
|
||
<div class="overview">
|
||
|
||
<!-- CA | Classe de Armadura -->
|
||
<div class="ca border">
|
||
<div class="font-bold">CA | Classe de Armadura</div>
|
||
<div class="ca-values">
|
||
<!-- CA -->
|
||
<div class="ca-total">
|
||
<span name="attr_ca"></span>
|
||
<div class="font-bold">CA</div>
|
||
</div>
|
||
<!-- Base -->
|
||
<div class="ca-value">
|
||
<input type="number" name="attr_ca_base" value="">
|
||
<div class="text-xs">Base</div>
|
||
</div>
|
||
<!-- M. DES -->
|
||
<div class="ca-value">
|
||
<span name="attr_mod_destreza"></span>
|
||
<div class="text-xs">M. DES</div>
|
||
</div>
|
||
<!-- Armadura -->
|
||
<div class="ca-value">
|
||
<input type="number" name="attr_ca_armor" value="">
|
||
<div class="text-xs">Armadura</div>
|
||
</div>
|
||
<!-- Escudo -->
|
||
<div class="ca-value">
|
||
<input type="number" name="attr_ca_shield" value="">
|
||
<div class="text-xs">Escudo</div>
|
||
</div>
|
||
<!-- Arma Mágica -->
|
||
<div class="ca-value">
|
||
<input type="number" name="attr_ca_magic_weapon" value="">
|
||
<div class="text-xs">Extra</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- BA | Base de Ataque -->
|
||
<div class="ba border">
|
||
<div class="font-bold">BA | Base de Ataque</div>
|
||
<div class="ba-values">
|
||
<!-- BAC -->
|
||
<div class="bac">
|
||
<span name="attr_bac" class="attr-value"></span>
|
||
<button type="roll" value="&{template:bacroll} {{character=@{character_name}}} {{rollformula= **Resultado:** [[ [[1d20]] + @{bac} ]] contra CA do alvo %NEWLINE%%NEWLINE% *Detalhes: $[[0]] + @{bac} (BAC)*}}" name="roll_BacRoll" title="Rolar ataque corpo a corpo" class="ba-roll"><span class="font-bold">BAC</span></button>
|
||
</div>
|
||
<!-- M. FOR -->
|
||
<div class="ba-value">
|
||
<span name="attr_mod_forca"></span>
|
||
<div class="text-xs">M. FOR</div>
|
||
</div>
|
||
<!-- Base -->
|
||
<div class="ba-value">
|
||
<input type="number" name="attr_ba_base" value="">
|
||
<div class="text-xs">Base</div>
|
||
</div>
|
||
<!-- M. DES -->
|
||
<div class="ba-value">
|
||
<span name="attr_mod_destreza"></span>
|
||
<div class="text-xs">M. DES</div>
|
||
</div>
|
||
<!-- BAD -->
|
||
<div class="bad">
|
||
<span name="attr_bad" class="attr-value"></span>
|
||
<button type="roll" value="&{template:badroll} {{character=@{character_name}}} {{rollformula= **Resultado:** [[ [[1d20]] + @{bad} ]] contra CA do alvo %NEWLINE%%NEWLINE% *Detalhes: $[[0]] + @{bad} (BAD)*}}" name="roll_BadRoll" title="Rolar ataque à distância" class="ba-roll"><span class="font-bold">BAD</span></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Economia -->
|
||
<div class="economy border">
|
||
<div class="font-bold">Economia</div>
|
||
<div class="currency">
|
||
<!-- PO | Peças de Ouro -->
|
||
<div class="gp">
|
||
<input type="number" name="attr_gp" value="">
|
||
<div class="font-bold gp-label" title="Peças de Ouro"><span class="font-pictos">L</span> PO</div>
|
||
</div>
|
||
<!-- PP | Peças de Prata -->
|
||
<div class="sp">
|
||
<input type="number" name="attr_sp" value="">
|
||
<div class="font-bold sp-label" title="Peças de Prata"><span class="font-pictos">L</span> PP</div>
|
||
</div>
|
||
<!-- PC | Peças de Cobre -->
|
||
<div class="cp">
|
||
<input type="number" name="attr_cp" value="">
|
||
<div class="font-bold cp-label" title="Peças de Cobre"><span class="font-pictos">L</span> PC</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="main">
|
||
<input type="hidden" class="sheet-tabstoggle" name="attr_sheetTab" value="attacks">
|
||
<div class="navigation-tabs">
|
||
<button type="action" name="act_attacks">Ataques</button>
|
||
<button type="action" name="act_skills">Habilidades Raça/Classe</button>
|
||
<button type="action" name="act_spells">Magias</button>
|
||
<button type="action" name="act_equipment">Equipamentos</button>
|
||
<button type="action" name="act_details">Detalhes</button>
|
||
<button type="action" name="act_notes">Anotações</button>
|
||
</div>
|
||
<!-- attacks tab (Ataques) -->
|
||
<div class="tab-attacks">
|
||
<div class="attack-list-header">
|
||
<div class="attack-name-label">Arma</div>
|
||
<div class="attack-range-label">Alcance</div>
|
||
<div class="attack-ba-label">BA <span style="font-family: 'Pictos';font-weight: 100;padding-left: 2px;cursor: help;" title="Apenas números inteiros positivos ou negativos (Ex: 4, -1)">i</span></div>
|
||
<div class="attack-bonus-ba-label">Bôn. BA <span style="font-family: 'Pictos';font-weight: 100;padding-left: 2px;cursor: help;" title="Apenas números inteiros positivos ou negativos (Ex: 4, -1)">i</span></div>
|
||
<div class="attack-damage-label">Dano <span style="font-family: 'Pictos';font-weight: 100;padding-left: 2px;cursor: help;" title="Apenas dados (Ex: 1d4, 2d6)">i</span></div>
|
||
<div class="attack-bonus-damage-label">Bôn. Dano <span style="font-family: 'Pictos';font-weight: 100;padding-left: 2px;cursor: help;" title="Apenas números inteiros positivos ou negativos (Ex: 4, -1)">i</span></div>
|
||
<div class="attack-properties-label">Propriedades</div>
|
||
<div class="attack-action-label">Ações</div>
|
||
</div>
|
||
<!-- Repeating Sections for attacks -->
|
||
<fieldset class="repeating_attacks">
|
||
<div class="attack-data">
|
||
<div class="attack-name">
|
||
<input type="text" name="attr_attack_name" placeholder="Nome do ataque">
|
||
</div>
|
||
<div class="attack-range">
|
||
<input type="text" name="attr_attack_range" placeholder="Alcance">
|
||
</div>
|
||
<div class="attack-ba">
|
||
<input type="number" name="attr_attack_ba" value="0" placeholder="BA">
|
||
</div>
|
||
<div class="attack-bonus-ba">
|
||
<input type="number" name="attr_attack_bonus_ba" value="0" placeholder="Bôn. BA">
|
||
</div>
|
||
<div class="attack-damage">
|
||
<input type="text" name="attr_attack_damage" value="1d0" placeholder="Dano">
|
||
</div>
|
||
<div class="attack-bonus-damage">
|
||
<input type="number" name="attr_attack_bonus_damage" value="0" placeholder="Bôn. Dano">
|
||
</div>
|
||
<div class="attack-properties">
|
||
<input type="text" name="attr_attack_properties" placeholder="Propriedades">
|
||
</div>
|
||
<div class="attack-action">
|
||
<button type="roll" value="&{template:attackroll} {{character=@{character_name}}} {{attack=@{attack_name}}} {{rollformula= **Resultado:** [[ [[1d20]] + @{attack_ba} + @{attack_bonus_ba} ]] contra CA do alvo %NEWLINE%%NEWLINE% *Detalhes: $[[0]] + @{attack_ba} (BA) + @{attack_bonus_ba} (Bônus na BA)* }}" name="roll_AttackRoll" title="Rolar ataque" class="attack-roll"><span style="font-family: 'dicefontd20'">0</span></button>
|
||
<button type="roll" value="&{template:damageroll} {{character=@{character_name}}} {{attack=@{attack_name}}} {{rollformula= **Resultado:** [[ [[@{attack_damage}]] + @{attack_bonus_damage} ]] de dano %NEWLINE%%NEWLINE% *Detalhes: $[[0]] + @{attack_bonus_damage} (Bônus no Dano)* }}" name="roll_DamageRoll" title="Rolar dano" class="damage-roll"><span style="font-family: 'Pictos Custom'">t</span></button>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
</div>
|
||
<!-- skills tab (Habilidades Raça/Classe) -->
|
||
<div class="tab-skills">
|
||
<!-- Infravisão -->
|
||
<div class="infravision">
|
||
<div><span class="font-pictos">E</span> <span class="font-bold">Infravisão</span></div>
|
||
<input type="number" name="attr_infravision" value="">
|
||
</div>
|
||
<!-- Habilidades de Raça -->
|
||
<div class="race-skills">
|
||
<div class="tab-title">Habilidades de Raça</div>
|
||
<textarea name="attr_race_skills"></textarea>
|
||
</div>
|
||
<!-- Habilidades de Classe -->
|
||
<div class="class-skills">
|
||
<div class="tab-title">Habilidades de Classe</div>
|
||
<textarea name="attr_class_skills"></textarea>
|
||
</div>
|
||
</div>
|
||
<!-- spells tab (Magias) -->
|
||
<div class="tab-spells">
|
||
<div class="spell-list-header">
|
||
<div class="spell-name-label">Magia</div>
|
||
<div class="spell-school-label">Tipo</div>
|
||
<div class="spell-circle-label">Círculo</div>
|
||
<div class="spell-range-label">Alcance</div>
|
||
<div class="spell-duration-label">Duração</div>
|
||
<div class="spell-jp-label">JP</div>
|
||
<div class="spell-slot-label">Usos</div>
|
||
<div class="spell-roll-label">Conjurar</div>
|
||
</div>
|
||
<!-- Repeating Sections for spells -->
|
||
<fieldset class="repeating_spells">
|
||
<div class="spell-data">
|
||
<div class="spell-name">
|
||
<input type="text" name="attr_spell_name" placeholder="Nome da magia">
|
||
</div>
|
||
<div class="spell-school">
|
||
<input type="text" name="attr_spell_school" placeholder="Tipo">
|
||
</div>
|
||
<div class="spell-circle">
|
||
<input type="text" name="attr_spell_circle" placeholder="Círculo">
|
||
</div>
|
||
<div class="spell-range">
|
||
<input type="text" name="attr_spell_range" placeholder="Alcance">
|
||
</div>
|
||
<div class="spell-duration">
|
||
<input type="text" name="attr_spell_duration" placeholder="Duração">
|
||
</div>
|
||
<div class="spell-jp">
|
||
<input type="text" name="attr_spell_jp" placeholder="JP">
|
||
</div>
|
||
<div class="spell-slot">
|
||
<select name="attr_spell_slot">
|
||
<option value="9">9</option>
|
||
<option value="8">8</option>
|
||
<option value="7">7</option>
|
||
<option value="6">6</option>
|
||
<option value="5">5</option>
|
||
<option value="4">4</option>
|
||
<option value="3">3</option>
|
||
<option value="2">2</option>
|
||
<option value="1">1</option>
|
||
<option value="0" selected>0</option>
|
||
</select>
|
||
</div>
|
||
<div class="spell-roll">
|
||
<button type="roll" value="&{template:spellroll} {{character=@{character_name}}} {{spell=@{spell_name}}} {{school=@{spell_school}}} {{circle=@{spell_circle}}} {{range=@{spell_range}}} {{duration=@{spell_duration}}} {{jp=@{spell_jp}}} {{description=@{spell_description}}}" name="roll_SpellRoll" title="Conjurar magia" class="spell-roll"><span style="font-family: 'Pictos Three'">g</span></button>
|
||
</div>
|
||
</div>
|
||
<input type="checkbox" name="attr_spell_description_field" class="spell-description-input spell-description-header" value="0" title="Ocultar/Mostrar"><span class="spell-description-input spell-description-header">Descrição</span>
|
||
<div class="spell-description">
|
||
<textarea name="attr_spell_description" placeholder="Descrição da magia"></textarea>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
</div>
|
||
<!-- equipment tab (Equipamentos) -->
|
||
<div class="tab-equipment">
|
||
<!-- Armas -->
|
||
<div class="equipment-list-header">
|
||
<div class="equipment-name-label">Armas</div>
|
||
<div class="equipment-quantity-label">Qtd</div>
|
||
<div class="equipment-weight-label">Peso/Carga</div>
|
||
<div class="equipment-cost-label">Valor</div>
|
||
<div class="equipment-description-label">Descrição</div>
|
||
</div>
|
||
<!-- Repeating Sections for weapon -->
|
||
<fieldset class="repeating_weapon">
|
||
<div class="equipment-data">
|
||
<div class="equipment-name">
|
||
<input type="text" name="attr_weapon_name" placeholder="Nome da equipamento">
|
||
</div>
|
||
<div class="equipment-quantity">
|
||
<input type="text" name="attr_weapon_quantity" placeholder="Qtd">
|
||
</div>
|
||
<div class="equipment-weight">
|
||
<input type="text" name="attr_weapon_weight" placeholder="Peso/Carga">
|
||
</div>
|
||
<div class="equipment-cost">
|
||
<input type="text" name="attr_weapon_cost" placeholder="Valor">
|
||
</div>
|
||
<div class="equipment-description">
|
||
<input type="text" name="attr_weapon_description" placeholder="Descrição">
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
<!-- Armaduras -->
|
||
<div class="equipment-list-header second-item">
|
||
<div class="equipment-name-label">Armaduras</div>
|
||
<div class="equipment-quantity-label">Qtd</div>
|
||
<div class="equipment-weight-label">Peso/Carga</div>
|
||
<div class="equipment-cost-label">Valor</div>
|
||
<div class="equipment-description-label">Descrição</div>
|
||
</div>
|
||
<!-- Repeating Sections for armor -->
|
||
<fieldset class="repeating_armor">
|
||
<div class="equipment-data">
|
||
<div class="equipment-name">
|
||
<input type="text" name="attr_armor_name" placeholder="Nome da equipamento">
|
||
</div>
|
||
<div class="equipment-quantity">
|
||
<input type="text" name="attr_armor_quantity" placeholder="Qtd">
|
||
</div>
|
||
<div class="equipment-weight">
|
||
<input type="text" name="attr_armor_weight" placeholder="Peso/Carga">
|
||
</div>
|
||
<div class="equipment-cost">
|
||
<input type="text" name="attr_armor_cost" placeholder="Valor">
|
||
</div>
|
||
<div class="equipment-description">
|
||
<input type="text" name="attr_armor_description" placeholder="Descrição">
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
<!-- Escudos -->
|
||
<div class="equipment-list-header second-item">
|
||
<div class="equipment-name-label">Escudos</div>
|
||
<div class="equipment-quantity-label">Qtd</div>
|
||
<div class="equipment-weight-label">Peso/Carga</div>
|
||
<div class="equipment-cost-label">Valor</div>
|
||
<div class="equipment-description-label">Descrição</div>
|
||
</div>
|
||
<!-- Repeating Sections for shield -->
|
||
<fieldset class="repeating_shield">
|
||
<div class="equipment-data">
|
||
<div class="equipment-name">
|
||
<input type="text" name="attr_shield_name" placeholder="Nome da equipamento">
|
||
</div>
|
||
<div class="equipment-quantity">
|
||
<input type="text" name="attr_shield_quantity" placeholder="Qtd">
|
||
</div>
|
||
<div class="equipment-weight">
|
||
<input type="text" name="attr_shield_weight" placeholder="Peso/Carga">
|
||
</div>
|
||
<div class="equipment-cost">
|
||
<input type="text" name="attr_shield_cost" placeholder="Valor">
|
||
</div>
|
||
<div class="equipment-description">
|
||
<input type="text" name="attr_shield_description" placeholder="Descrição">
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
<!-- Itens Gerais -->
|
||
<div class="equipment-list-header second-item">
|
||
<div class="equipment-name-label">Itens Gerais</div>
|
||
<div class="equipment-quantity-label">Qtd</div>
|
||
<div class="equipment-weight-label">Peso/Carga</div>
|
||
<div class="equipment-cost-label">Valor</div>
|
||
<div class="equipment-description-label">Descrição</div>
|
||
</div>
|
||
<!-- Repeating Sections for misc -->
|
||
<fieldset class="repeating_misc">
|
||
<div class="equipment-data">
|
||
<div class="equipment-name">
|
||
<input type="text" name="attr_misc_name" placeholder="Nome da equipamento">
|
||
</div>
|
||
<div class="equipment-quantity">
|
||
<input type="text" name="attr_misc_quantity" placeholder="Qtd">
|
||
</div>
|
||
<div class="equipment-weight">
|
||
<input type="text" name="attr_misc_weight" placeholder="Peso/Carga">
|
||
</div>
|
||
<div class="equipment-cost">
|
||
<input type="text" name="attr_misc_cost" placeholder="Valor">
|
||
</div>
|
||
<div class="equipment-description">
|
||
<input type="text" name="attr_misc_description" placeholder="Descrição">
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
<!-- Recipientes & Vasilhames -->
|
||
<div class="equipment-list-header second-item">
|
||
<div class="equipment-name-label">Recipientes & Vasilhames</div>
|
||
<div class="equipment-quantity-label">Qtd</div>
|
||
<div class="equipment-weight-label">Peso/Carga</div>
|
||
<div class="equipment-cost-label">Valor</div>
|
||
<div class="equipment-description-label">Descrição</div>
|
||
</div>
|
||
<!-- Repeating Sections for container -->
|
||
<fieldset class="repeating_container">
|
||
<div class="equipment-data">
|
||
<div class="equipment-name">
|
||
<input type="text" name="attr_container_name" placeholder="Nome da equipamento">
|
||
</div>
|
||
<div class="equipment-quantity">
|
||
<input type="text" name="attr_container_quantity" placeholder="Qtd">
|
||
</div>
|
||
<div class="equipment-weight">
|
||
<input type="text" name="attr_container_weight" placeholder="Peso/Carga">
|
||
</div>
|
||
<div class="equipment-cost">
|
||
<input type="text" name="attr_container_cost" placeholder="Valor">
|
||
</div>
|
||
<div class="equipment-description">
|
||
<input type="text" name="attr_container_description" placeholder="Descrição">
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
<!-- Montarias & Transportes -->
|
||
<div class="equipment-list-header second-item">
|
||
<div class="equipment-name-label">Montarias & Transportes</div>
|
||
<div class="equipment-quantity-label">Qtd</div>
|
||
<div class="equipment-weight-label">Peso/Carga</div>
|
||
<div class="equipment-cost-label">Valor</div>
|
||
<div class="equipment-description-label">Descrição</div>
|
||
</div>
|
||
<!-- Repeating Sections for vehicle -->
|
||
<fieldset class="repeating_vehicle">
|
||
<div class="equipment-data">
|
||
<div class="equipment-name">
|
||
<input type="text" name="attr_vehicle_name" placeholder="Nome da equipamento">
|
||
</div>
|
||
<div class="equipment-quantity">
|
||
<input type="text" name="attr_vehicle_quantity" placeholder="Qtd">
|
||
</div>
|
||
<div class="equipment-weight">
|
||
<input type="text" name="attr_vehicle_weight" placeholder="Peso/Carga">
|
||
</div>
|
||
<div class="equipment-cost">
|
||
<input type="text" name="attr_vehicle_cost" placeholder="Valor">
|
||
</div>
|
||
<div class="equipment-description">
|
||
<input type="text" name="attr_vehicle_description" placeholder="Descrição">
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
<!-- Carga -->
|
||
<div class="load-section">
|
||
<div class="load border">
|
||
<div class="font-bold">Carga</div>
|
||
<div class="load-values">
|
||
<!-- Carga Atual -->
|
||
<div class="current-load">
|
||
<input type="number" name="attr_current_load" value="">
|
||
<div>Atual</div>
|
||
</div>
|
||
<div class="max-load">
|
||
<input type="number" name="attr_max_load" value="">
|
||
<div>Máx.</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- details tab (Detalhes) -->
|
||
<div class="tab-details">
|
||
<!-- Idiomas -->
|
||
<div class="languages">
|
||
<div class="tab-title">Idiomas</div>
|
||
<textarea class="languages-textarea" name="attr_languages"></textarea>
|
||
</div>
|
||
<!-- Reputação -->
|
||
<div class="reputation">
|
||
<div class="tab-title">Reputação</div>
|
||
<select name="attr_reputation">
|
||
<option value="0" selected>0</option>
|
||
<option value="1">1</option>
|
||
<option value="2">2</option>
|
||
<option value="3">3</option>
|
||
<option value="4">4</option>
|
||
<option value="5">5</option>
|
||
</select>
|
||
</div>
|
||
<!-- Aparência -->
|
||
<div class="appearance">
|
||
<div class="tab-title">Aparência</div>
|
||
<textarea name="attr_appearance"></textarea>
|
||
</div>
|
||
<!-- Personalidade -->
|
||
<div class="personality">
|
||
<div class="tab-title">Personalidade</div>
|
||
<textarea name="attr_personality"></textarea>
|
||
</div>
|
||
<!-- Histórico -->
|
||
<div class="background">
|
||
<div class="tab-title">Histórico</div>
|
||
<textarea name="attr_background"></textarea>
|
||
</div>
|
||
</div>
|
||
<!-- notes tab (Anotações) -->
|
||
<div class="tab-notes">
|
||
<!-- Anotações -->
|
||
<div class="notes">
|
||
<div class="tab-title">Anotações</div>
|
||
<textarea name="attr_notes"></textarea>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="sheet-section-monster">
|
||
<!-- Sidebar -->
|
||
<div class="sheet-sidebar">
|
||
<!-- Atributos -->
|
||
<div class="monster-stats">
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<label for="attr_monster_ca" title="Classe de Armadura">CA</label>
|
||
<input type="number" name="attr_monster_ca" value="">
|
||
</div>
|
||
</div>
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Jogada de Proteção}} {{rollformula= **Resultado:** [[1d20]] comparado a @{monster_jp} (JP) }} {{stat=[[@{monster_jp}]]}}" name="roll_Monster_Jp" title="Rolar Jogada de Proteção"><span class="font-bold">JP</span></button>
|
||
<input type="number" name="attr_monster_jp" value="">
|
||
</div>
|
||
</div>
|
||
<div class="stat">
|
||
<div class="stat-value">
|
||
<button type="roll" value="&{template:basicroll} {{character=@{character_name}}} {{rollname=Teste de Moral}} {{rollformula= **Resultado:** [[2d6]] comparado a @{monster_mo} (MO) }} {{stat=[[@{monster_mo}]]}}" name="roll_Monster_Mo" title="Rolar Teste de Moral"><span class="font-bold">MO</span></button>
|
||
<input type="number" name="attr_monster_mo" value="">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Encontro -->
|
||
<div class="encounter">
|
||
<div class="font-bold">Encontro</div>
|
||
<div class="encounter-group">
|
||
<!-- Errantes -->
|
||
<div class="wander">
|
||
<input type="text" name="attr_encounter_wander" value="">
|
||
<div>Errantes</div>
|
||
</div>
|
||
<!-- Covil -->
|
||
<div class="lair">
|
||
<input type="text" name="attr_encounter_lair" value="">
|
||
<div>Covil</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Tesouro -->
|
||
<div class="treasure">
|
||
<div class="font-bold">Tesouro</div>
|
||
<div class="treasure-group">
|
||
<!-- Errantes -->
|
||
<div class="wander">
|
||
<input type="text" name="attr_treasure_wander" value="">
|
||
<div>Errantes</div>
|
||
</div>
|
||
<!-- Covil -->
|
||
<div class="lair">
|
||
<input type="text" name="attr_treasure_lair" value="">
|
||
<div>Covil</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- DV | Dado de Vida -->
|
||
<div class="dv">
|
||
<div class="font-bold">DV | Dado de Vida</div>
|
||
<div class="dv-group">
|
||
<!-- DV -->
|
||
<div class="dv-value">
|
||
<input type="number" name="attr_dv" value="">
|
||
<button type="roll" value="&{template:dvroll} {{character=@{character_name}}} {{rollformula= **Resultado:** [[5*@{dv}+@{dv_bonus}]] }} {{dv=[[@{dv}]]}} {{bonus=[[@{dv_bonus}]]}}" name="roll_Dv" title="Rolar Dado de Vida"><span class="font-bold">DV</span></button>
|
||
</div>
|
||
<!-- DV Bônus -->
|
||
<div class="dv-bonus">
|
||
<input type="number" name="attr_dv_bonus" value="">
|
||
<div class="">DV Bônus</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Body -->
|
||
<div class="sheet-body">
|
||
<div class="header">
|
||
<!-- Nome; Conceito; Tamanho; Habitat -->
|
||
<div class="monster-basic-info">
|
||
<!-- Nome -->
|
||
<div class="monster-name">
|
||
<input type="text" name="attr_character_name">
|
||
<div class="font-bold">Nome</div>
|
||
</div>
|
||
<!-- Conceito -->
|
||
<div>
|
||
<select name="attr_concept">
|
||
<option value="humanoide" selected>Humanoide</option>
|
||
<option value="humnaoide_monstruoso">Humanoide Monstruoso</option>
|
||
<option value="gigante">Gigante</option>
|
||
<option value="animal">Animal</option>
|
||
<option value="inseto">Inseto</option>
|
||
<option value="constructo">Constructo</option>
|
||
<option value="morto_vivo">Morto-Vivo</option>
|
||
<option value="planta">Planta</option>
|
||
<option value="gosma">Gosma</option>
|
||
<option value="dragao">Dragão</option>
|
||
<option value="besta">Besta</option>
|
||
</select>
|
||
<div class="font-bold">Conceito</div>
|
||
</div>
|
||
<!-- Tamanho -->
|
||
<div>
|
||
<select name="attr_size">
|
||
<option value="miudo">Miúdo</option>
|
||
<option value="pequeno">Pequeno</option>
|
||
<option value="medio" selected>Médio</option>
|
||
<option value="grande">Grande</option>
|
||
<option value="imenso">Imenso</option>
|
||
<option value="colossal">Colossal</option>
|
||
</select>
|
||
<div class="font-bold">Tamanho</div>
|
||
</div>
|
||
<!-- Habitat -->
|
||
<div>
|
||
<select name="attr_habitat">
|
||
<option value="qualquer" selected>Qualquer</option>
|
||
<option value="planicies">Planícies</option>
|
||
<option value="colinas">Colinas</option>
|
||
<option value="montanhas">Montanhas</option>
|
||
<option value="pantanos">Pântanos</option>
|
||
<option value="geleiras">Geleiras</option>
|
||
<option value="desertos">Desertos</option>
|
||
<option value="florestas">Florestas</option>
|
||
<option value="subterraneos">Subterrâneos</option>
|
||
<option value="oceanos">Oceanos</option>
|
||
<option value="extraplanar">Extraplanar</option>
|
||
</select>
|
||
<div class="font-bold">Habitat</div>
|
||
</div>
|
||
</div>
|
||
|
||
<hr>
|
||
|
||
<!-- Alinhamento; Movimento; XP; PV -->
|
||
<div class="additional-info">
|
||
<!-- Alinhamento -->
|
||
<div class="alignment">
|
||
<div class="font-bold">Alinhamento</div>
|
||
<select name="attr_alignment">
|
||
<option value="ordeiro">Ordeiro</option>
|
||
<option value="neutro" selected>Neutro</option>
|
||
<option value="caotico">Caotico</option>
|
||
</select>
|
||
</div>
|
||
<!-- Movimento -->
|
||
<div class="mv">
|
||
<div class="font-bold">Movimento</div>
|
||
<div class="mv-values">
|
||
<!-- Atual -->
|
||
<div class="mv-value">
|
||
<input type="number" name="attr_current_movement" value="" />
|
||
<div class="text-sm">Base</div>
|
||
</div>
|
||
<!-- Correr -->
|
||
<div class="mv-value">
|
||
<span name="attr_movement_run"></span>
|
||
<div class="text-sm">Correr</div>
|
||
</div>
|
||
<!-- Escalar -->
|
||
<div class="mv-value">
|
||
<span name="attr_movement_climb"></span>
|
||
<div class="text-sm">Escalar</div>
|
||
</div>
|
||
<!-- Nadar -->
|
||
<div class="mv-value">
|
||
<input type="number" name="attr_monster_movement_swim" value="" />
|
||
<div class="text-sm">Nadar</div>
|
||
</div>
|
||
<!-- Voar -->
|
||
<div class="mv-value">
|
||
<input type="number" name="attr_monster_movement_fly" value="" />
|
||
<div class="text-sm">Voar</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- XP | Pontos de Experiência -->
|
||
<div class="monster-xp">
|
||
<div class="font-bold">XP | Pontos de Experiência</div>
|
||
<input type="text" name="attr_xp_current" value="" />
|
||
</div>
|
||
<!-- PV | Pontos de Vida -->
|
||
<div class="hp">
|
||
<div class="font-bold">PV | Pontos de Vida</div>
|
||
<div class="hp-values">
|
||
<!-- Atual -->
|
||
<div class="hp-value">
|
||
<input type="number" name="attr_hp_current" value="" />
|
||
<div class="text-sm font-bold">PV Atual</div>
|
||
</div>
|
||
<!-- Total -->
|
||
<div class="hp-value">
|
||
<input type="number" name="attr_hp_max" value="" />
|
||
<div class="text-sm font-bold">PV Total</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="main">
|
||
<input type="hidden" class="sheet-tabstoggle" name="attr_sheetTab" value="monster_attacks">
|
||
<div class="navigation-tabs">
|
||
<button type="action" name="act_monster_attacks">Ataques</button>
|
||
<button type="action" name="act_monster_info">Informações</button>
|
||
</div>
|
||
|
||
<!-- monster_attacks tab (Ataques) -->
|
||
<div class="tab-monster-attacks">
|
||
<div class="monster-attack-list-header">
|
||
<div class="monster-attack-times-label">×</div>
|
||
<div class="monster-attack-name-label">Ataque</div>
|
||
<div class="monster-attack-ba-label">BA<span style="font-family: 'Pictos'; font-weight: 100; padding-left: 2px; cursor: help;" title="Apenas números inteiros positivos ou negativos (Ex: 4, -1)">i</span></div>
|
||
<div class="monster-attack-damage-label">Dano<span style="font-family: 'Pictos'; font-weight: 100; padding-left: 2px; cursor: help; " title="Apenas dados (Ex: 1d4, 2d6)">i</span></div>
|
||
<div class="monster-attack-bonus-damage-label">Bôn. Dano <span style="font-family: 'Pictos';font-weight: 100;padding-left: 2px;cursor: help;" title="Apenas números inteiros positivos ou negativos (Ex: 4, -1)">i</span></div>
|
||
<div class="monster-attack-action-label">Ações</div>
|
||
</div>
|
||
<!-- Repeating Sections for monster_attacks -->
|
||
<fieldset class="repeating_monsterattacks">
|
||
<div class="monster-attack-data">
|
||
<div class="monster-attack-times">
|
||
<input type="number" name="attr_monster_attack_times" value="0" placeholder="Qtd">
|
||
</div>
|
||
<div class="monster-attack-name">
|
||
<input type="text" name="attr_monster_attack_name" placeholder="Nome do ataque (Ex: Garra, Mordida)">
|
||
</div>
|
||
<div class="monster-attack-ba">
|
||
<input type="number" name="attr_monster_attack_ba" value="0" placeholder="BA">
|
||
</div>
|
||
<div class="monster-attack-damage">
|
||
<input type="text" name="attr_monster_attack_damage" value="1d0" placeholder="Dano">
|
||
</div>
|
||
<div class="monster-attack-bonus-damage">
|
||
<input type="number" name="attr_monster_attack_bonus_damage" value="0" placeholder="Bôn. Dano">
|
||
</div>
|
||
<div class="monster-attack-action">
|
||
<button type="roll" value="&{template:monsterattackroll} {{character=@{character_name}}} {{attack=@{monster_attack_name}}} {{rollformula= **Resultado:** [[ [[1d20]] + @{monster_attack_ba} ]] contra CA do alvo %NEWLINE%%NEWLINE% *Detalhes: $[[0]] + @{monster_attack_ba} (BA) }}" name="roll_MonsterAttackRoll" title="Rolar ataque" class="monster-attack-roll"><span style="font-family: 'dicefontd20'">0</span></button>
|
||
<button type="roll" value="&{template:monsterdamageroll} {{character=@{character_name}}} {{attack=@{monster_attack_name}}} {{rollformula= **Resultado:** [[ [[@{monster_attack_damage}]] + @{monster_attack_bonus_damage} ]] de dano %NEWLINE%%NEWLINE% *Detalhes: $[[0]] + @{monster_attack_bonus_damage} (Bônus no Dano)* }}" name="roll_MonsterDamageRoll" title="Rolar dano" class="monster-damage-roll"><span style="font-family: 'Pictos Custom'">t</span></button>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
</fieldset>
|
||
</div>
|
||
|
||
<!-- monster_info tab (Informações) -->
|
||
<div class="tab-monster-info">
|
||
<!-- Apresentação -->
|
||
<div class="monster-flavor">
|
||
<div class="tab-title">Apresentação</div>
|
||
<textarea name="attr_monster_flavor"></textarea>
|
||
</div>
|
||
<!-- Características -->
|
||
<div class="monster-traits">
|
||
<div class="tab-title">Características</div>
|
||
<textarea name="attr_monster_traits"></textarea>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Old Dragon 2e Roll Templates -->
|
||
|
||
<!-- Basic Roll (FOR, DES, CON, SAB, INT, CAR, JPD, JPC, JPS rolls) -->
|
||
<rolltemplate class="sheet-rolltemplate-basicroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>{{rollname}}</h3>
|
||
|
||
{{#rollformula}}
|
||
{{#^rollGreater() rollformula stat}}
|
||
<h4 class="sheet-success">SUCESSO!</h4>
|
||
{{/^rollGreater() rollformula stat}}
|
||
{{#rollGreater() rollformula stat}}
|
||
<h4 class="sheet-fail">FALHA</h4>
|
||
{{/rollGreater() rollformula stat}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Monster DV Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-dvroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Rolagem de Dado de Vida</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- BAC Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-bacroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Ataque corpo a corpo</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- BAD Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-badroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Ataque à distância</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Attack Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-attackroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Ataque com {{attack}}</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Monster Attack Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-monsterattackroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Ataque com {{attack}}</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Damage Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-damageroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Dano com {{attack}}</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Monster Damage Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-monsterdamageroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>Dano com {{attack}}</h3>
|
||
|
||
{{#rollformula}}
|
||
<div class="sheet-rollresult">{{rollformula}}</div>
|
||
{{/rollformula}}
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Spell Roll -->
|
||
<rolltemplate class="sheet-rolltemplate-spellroll">
|
||
<div class="sheet-character-name">{{character}}</div>
|
||
<h3>{{spell}}</h3>
|
||
<div class="sheet-school">
|
||
<span>{{school}}</span>
|
||
<span>({{circle}}º círculo)</span>
|
||
</div>
|
||
<div class="sheet-range">
|
||
<strong>Alcance:</strong>
|
||
<span>{{range}}</span>
|
||
</div>
|
||
<div class="sheet-duration">
|
||
<strong>Duração:</strong>
|
||
<span>{{duration}}</span>
|
||
</div>
|
||
<div class="sheet-jp">
|
||
<strong>JP:</strong>
|
||
<span>{{jp}}</span>
|
||
</div>
|
||
<div>{{description}}</div>
|
||
<hr>
|
||
</rolltemplate>
|
||
|
||
<!-- Old Dragon 2e Script -->
|
||
<script type="text/worker">
|
||
// Initialize character sheet attributes and modifiers
|
||
on("sheet:opened", () => {
|
||
const stats = [
|
||
"forca",
|
||
"destreza",
|
||
"constituicao",
|
||
"sabedoria",
|
||
"inteligencia",
|
||
"carisma"
|
||
];
|
||
|
||
const additionalAttrs = [
|
||
"jpd_class",
|
||
"jpd_race",
|
||
"jpc_class",
|
||
"jpc_race",
|
||
"jps_class",
|
||
"jps_race",
|
||
"current_movement",
|
||
"xp_current",
|
||
"hp_current",
|
||
"hp_max",
|
||
"ca_base",
|
||
"ca_armor",
|
||
"ca_shield",
|
||
"ca_magic_weapon",
|
||
"ba_base",
|
||
"gp",
|
||
"sp",
|
||
"cp"
|
||
];
|
||
|
||
const attrsToGet = stats.concat(stats.map(stat => `mod_${stat}`)).concat(additionalAttrs);
|
||
|
||
getAttrs(attrsToGet, values => {
|
||
const initialAttrs = {};
|
||
|
||
stats.forEach(stat => {
|
||
if (!values[stat]) {
|
||
initialAttrs[stat] = "10";
|
||
}
|
||
if (!values[`mod_${stat}`]) {
|
||
initialAttrs[`mod_${stat}`] = "+0";
|
||
}
|
||
});
|
||
|
||
additionalAttrs.forEach(attr => {
|
||
if (!values[attr]) {
|
||
initialAttrs[attr] = "0";
|
||
}
|
||
});
|
||
|
||
if (Object.keys(initialAttrs).length > 0) {
|
||
setAttrs(initialAttrs);
|
||
}
|
||
});
|
||
|
||
// Initialize monster sheet attributes
|
||
const monsterNumberAttrs = [
|
||
"monster_ca",
|
||
"monster_jp",
|
||
"monster_mo",
|
||
"dv",
|
||
"dv_bonus",
|
||
"monster_movement_swim",
|
||
"monster_movement_fly",
|
||
"xp_current",
|
||
"hp_current",
|
||
"hp_max"
|
||
];
|
||
|
||
const monsterTextAttrs = [
|
||
"encounter_wander",
|
||
"encounter_lair",
|
||
"treasure_wander",
|
||
"treasure_lair",
|
||
];
|
||
|
||
const monsterAttrs = monsterNumberAttrs.concat(monsterTextAttrs);
|
||
|
||
getAttrs(monsterAttrs, values => {
|
||
const initialMonsterAttrs = {};
|
||
|
||
monsterNumberAttrs.forEach(attr => {
|
||
if (!values[attr]) {
|
||
initialMonsterAttrs[attr] = "0";
|
||
}
|
||
});
|
||
|
||
monsterTextAttrs.forEach(attr => {
|
||
if (!values[attr]) {
|
||
initialMonsterAttrs[attr] = "-";
|
||
}
|
||
});
|
||
|
||
if (Object.keys(initialMonsterAttrs).length > 0) {
|
||
setAttrs(initialMonsterAttrs);
|
||
}
|
||
});
|
||
});
|
||
|
||
// Calculate modifiers
|
||
const int = score => parseInt(score, 10) || 0;
|
||
const stats = ["forca", "destreza", "constituicao", "sabedoria", "inteligencia", "carisma"];
|
||
|
||
stats.forEach(stat => {
|
||
on(`change:${stat}`, () => {
|
||
getAttrs([stat], values => {
|
||
const stat_base = int(values[stat]);
|
||
let stat_mod = 0;
|
||
if (stat_base < 2) stat_mod = "-4";
|
||
else if (stat_base < 4) stat_mod = "-3";
|
||
else if (stat_base < 6) stat_mod = "-2";
|
||
else if (stat_base < 9) stat_mod = "-1";
|
||
else if (stat_base < 13) stat_mod = "+0";
|
||
else if (stat_base < 15) stat_mod = "+1";
|
||
else if (stat_base < 17) stat_mod = "+2";
|
||
else if (stat_base < 19) stat_mod = "+3";
|
||
else stat_mod = "+4";
|
||
|
||
setAttrs({
|
||
[`mod_${stat}`]: stat_mod
|
||
});
|
||
});
|
||
});
|
||
});
|
||
|
||
// Calculate JPD
|
||
on("change:jpd change:jpd_class change:jpd_race change:mod_destreza", function() {
|
||
getAttrs(["jpd", "jpd_class", "jpd_race", "mod_destreza"], function(values) {
|
||
let jpd = int(values.jpd);
|
||
let jpd_class = int(values.jpd_class);
|
||
let jpd_race = int(values.jpd_race);
|
||
let mod_des = int(values.mod_destreza);
|
||
|
||
let jpd_total = jpd_class + jpd_race + mod_des;
|
||
setAttrs({
|
||
jpd: jpd_total
|
||
});
|
||
});
|
||
});
|
||
|
||
// Calculate JPC
|
||
on("change:jpc change:jpc_class change:jpc_race change:mod_constituicao", function() {
|
||
getAttrs(["jpc", "jpc_class", "jpc_race", "mod_constituicao"], function(values) {
|
||
let jpc = int(values.jpc);
|
||
let jpc_class = int(values.jpc_class);
|
||
let jpc_race = int(values.jpc_race);
|
||
let mod_cos = int(values.mod_constituicao);
|
||
|
||
let jpc_total = jpc_class + jpc_race + mod_cos;
|
||
setAttrs({
|
||
jpc: jpc_total
|
||
});
|
||
});
|
||
});
|
||
|
||
// Calculate JPS
|
||
on("change:jps change:jps_class change:jps_race change:mod_sabedoria", function() {
|
||
getAttrs(["jps", "jps_class", "jps_race", "mod_sabedoria"], function(values) {
|
||
let jps = int(values.jps);
|
||
let jps_class = int(values.jps_class);
|
||
let jps_race = int(values.jps_race);
|
||
let mod_sab = int(values.mod_sabedoria);
|
||
|
||
let jps_total = jps_class + jps_race + mod_sab;
|
||
setAttrs({
|
||
jps: jps_total
|
||
});
|
||
});
|
||
});
|
||
|
||
// Calculate CA
|
||
on("change:ca_base change:mod_destreza change:ca_armor change:ca_shield change:ca_magic_weapon", function() {
|
||
getAttrs(["ca_base", "mod_destreza", "ca_armor", "ca_shield", "ca_magic_weapon"], function(values) {
|
||
let ca_base = int(values.ca_base);
|
||
let mod_des = int(values.mod_destreza);
|
||
let ca_armor = int(values.ca_armor);
|
||
let ca_shield = int(values.ca_shield);
|
||
let ca_magic_weapon = int(values.ca_magic_weapon);
|
||
|
||
let ca_total = ca_base + mod_des + ca_armor + ca_shield + ca_magic_weapon;
|
||
setAttrs({
|
||
ca: ca_total
|
||
});
|
||
});
|
||
});
|
||
|
||
// Calculate BA
|
||
on("change:ba_base change:mod_forca change:mod_destreza", function() {
|
||
getAttrs(["ba_base", "mod_forca", "mod_destreza"], function(values) {
|
||
let ba_base = int(values.ba_base);
|
||
let mod_for = int(values.mod_forca);
|
||
let mod_des = int(values.mod_destreza);
|
||
|
||
let bac = ba_base + mod_for;
|
||
let bad = ba_base + mod_des;
|
||
setAttrs({
|
||
bac: bac,
|
||
bad: bad
|
||
});
|
||
});
|
||
});
|
||
|
||
// Calculate movement
|
||
on("change:current_movement", function() {
|
||
getAttrs(["current_movement"], function(values) {
|
||
let current_mv = values.current_movement;
|
||
|
||
let mv_run = Math.floor(current_mv * 2);
|
||
let mv_climb = Math.floor(current_mv - 2);
|
||
let mv_swim = Math.floor(current_mv / 2);
|
||
|
||
setAttrs({
|
||
movement_run: mv_run,
|
||
movement_climb: mv_climb,
|
||
movement_swim: mv_swim
|
||
});
|
||
});
|
||
});
|
||
|
||
// Tabs system
|
||
const buttonlist = ["attacks", "skills", "spells", "equipment", "details", "notes", "monster_attacks", "monster_info"];
|
||
buttonlist.forEach(button => {
|
||
on(`clicked:${button}`, function() {
|
||
setAttrs({
|
||
sheetTab: button
|
||
});
|
||
});
|
||
});
|
||
|
||
// Change to the default tab when changing the sheet layout
|
||
on("change:core-tab", function() {
|
||
getAttrs(["core-tab"], function(values) {
|
||
let tab = values["core-tab"];
|
||
let sheetTab = (tab === "1") ? "attacks" : "monster_attacks";
|
||
setAttrs({ sheetTab });
|
||
});
|
||
});
|
||
|
||
// Data validation for character attacks
|
||
attack_stats = ["attack_ba", "attack_bonus_ba", "attack_bonus_damage"];
|
||
|
||
attack_stats.forEach(stat => {
|
||
on(`change:repeating_attacks:${stat}`, () => {
|
||
getAttrs([`repeating_attacks_${stat}`], values => {
|
||
const stat_value = values[`repeating_attacks_${stat}`];
|
||
pattern = /^-?\d*?\d+$/;
|
||
|
||
if (!pattern.test(stat_value)) {
|
||
setAttrs({
|
||
[`repeating_attacks_${stat}`]: ""
|
||
});
|
||
}
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:repeating_attacks:attack_damage", function() {
|
||
getAttrs(["repeating_attacks_attack_damage"], function(values) {
|
||
let attack_damage = values.repeating_attacks_attack_damage;
|
||
pattern = /^\d+d{1}\d+$/;
|
||
if (!pattern.test(attack_damage)) {
|
||
setAttrs({
|
||
repeating_attacks_attack_damage: ""
|
||
});
|
||
};
|
||
});
|
||
});
|
||
|
||
// Data validation for monster attacks
|
||
monster_attack_stats = ["monster_attack_times", "monster_attack_ba", "monster_attack_bonus_damage"];
|
||
|
||
monster_attack_stats.forEach(stat => {
|
||
on(`change:repeating_monster_attacks:${stat}`, () => {
|
||
getAttrs([`repeating_monster_attacks_${stat}`], values => {
|
||
const stat_value = values[`repeating_monster_attacks_${stat}`];
|
||
pattern = /^-?\d*?\d+$/;
|
||
|
||
if (!pattern.test(stat_value)) {
|
||
setAttrs({
|
||
[`repeating_monster_attacks_${stat}`]: ""
|
||
});
|
||
}
|
||
});
|
||
});
|
||
});
|
||
|
||
on("change:repeating_monster_attacks:monster_attack_damage", function() {
|
||
getAttrs(["repeating_monster_attacks_monster_attack_damage"], function(values) {
|
||
let monster_attack_damage = values.repeating_monster_attacks_monster_attack_damage;
|
||
pattern = /^\d+d{1}\d+$/;
|
||
if (!pattern.test(monster_attack_damage)) {
|
||
setAttrs({
|
||
repeating_monster_attacks_monster_attack_damage: ""
|
||
});
|
||
};
|
||
});
|
||
});
|
||
</script>
|