mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 03:40:32 +00:00
Merge pull request #15175 from orladodragao/add-candela-obscura-pt-br
Add Candela Obscura PT-BR community character sheet
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,956 @@
|
||||
<div class="sheet-candela-dark">
|
||||
|
||||
<div class="sheet-header-top">
|
||||
<div class="sheet-logo-placeholder">
|
||||
<img src="logo.png" alt="Logo">
|
||||
</div>
|
||||
<div class="sheet-header-fields">
|
||||
<div class="sheet-header-field">Nome: <input type="text" name="attr_character_name"></div>
|
||||
<div class="sheet-header-field">Estilo: <input type="text" name="attr_style"></div>
|
||||
<div class="sheet-header-field">Pronomes: <input type="text" name="attr_pronouns"></div>
|
||||
<div class="sheet-header-field">Estopim: <input type="text" name="attr_catalyst"></div>
|
||||
<div class="sheet-header-field">Círculo: <input type="text" name="attr_circle"></div>
|
||||
<div class="sheet-header-field">Pergunta: <input type="text" name="attr_question"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-grid-3">
|
||||
|
||||
<div class="sheet-dark-box">
|
||||
<div class="sheet-attr-head-aligned">
|
||||
<div class="sheet-title-gold">VIGOR</div>
|
||||
<div class="sheet-tracks-container-new">
|
||||
<div class="sheet-track-row-new">
|
||||
<span class="sheet-track-label">Motivação</span>
|
||||
<div class="sheet-input-group">
|
||||
<input type="number" name="attr_mot_vigor_current" class="sheet-square-input">
|
||||
<span class="sheet-track-slash">/</span>
|
||||
<input type="number" name="attr_mot_vigor_max" class="sheet-square-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="sheet-track-row-new">
|
||||
<span class="sheet-track-label">Resistências</span>
|
||||
<div class="sheet-input-group">
|
||||
<input type="number" name="attr_res_vigor_current" class="sheet-square-input">
|
||||
<span class="sheet-track-slash">/</span>
|
||||
<input type="number" name="attr_res_vigor_max" class="sheet-square-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_move" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_mover" class="sheet-action-btn"> Mover</button>
|
||||
<span class="sheet-action-desc">Correr, desviar, navegar</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_move_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_move_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_move_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_attack" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_atacar" class="sheet-action-btn"> Atacar</button>
|
||||
<span class="sheet-action-desc">golpear, quebrar, derrubar</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_attack_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_attack_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_attack_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_control" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_controlar" class="sheet-action-btn"> Controlar</button>
|
||||
<span class="sheet-action-desc">pilotar, atirar, manusear</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_control_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_control_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_control_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-dark-box">
|
||||
<div class="sheet-attr-head-aligned">
|
||||
<div class="sheet-title-gold">ASTÚCIA</div>
|
||||
<div class="sheet-tracks-container-new">
|
||||
<div class="sheet-track-row-new">
|
||||
<span class="sheet-track-label">Motivação</span>
|
||||
<div class="sheet-input-group">
|
||||
<input type="number" name="attr_mot_astucia_current" class="sheet-square-input">
|
||||
<span class="sheet-track-slash">/</span>
|
||||
<input type="number" name="attr_mot_astucia_max" class="sheet-square-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="sheet-track-row-new">
|
||||
<span class="sheet-track-label">Resistências</span>
|
||||
<div class="sheet-input-group">
|
||||
<input type="number" name="attr_res_astucia_current" class="sheet-square-input">
|
||||
<span class="sheet-track-slash">/</span>
|
||||
<input type="number" name="attr_res_astucia_max" class="sheet-square-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_influence" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_influenciar" class="sheet-action-btn"> Influenciar</button>
|
||||
<span class="sheet-action-desc">convencer, comandar, atrair</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_influence_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_influence_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_influence_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_read" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_ler" class="sheet-action-btn"> Ler</button>
|
||||
<span class="sheet-action-desc">interpretar ling. corporal...</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_read_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_read_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_read_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_hide" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_esconder" class="sheet-action-btn"> Esconder</button>
|
||||
<span class="sheet-action-desc">esgueirar, distrair, prestidigitar</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_hide_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_hide_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_hide_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-dark-box">
|
||||
<div class="sheet-attr-head-aligned">
|
||||
<div class="sheet-title-gold">INTUIÇÃO</div>
|
||||
<div class="sheet-tracks-container-new">
|
||||
<div class="sheet-track-row-new">
|
||||
<span class="sheet-track-label">Motivação</span>
|
||||
<div class="sheet-input-group">
|
||||
<input type="number" name="attr_mot_intuicao_current" class="sheet-square-input">
|
||||
<span class="sheet-track-slash">/</span>
|
||||
<input type="number" name="attr_mot_intuicao_max" class="sheet-square-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="sheet-track-row-new">
|
||||
<span class="sheet-track-label">Resistências</span>
|
||||
<div class="sheet-input-group">
|
||||
<input type="number" name="attr_res_intuicao_current" class="sheet-square-input">
|
||||
<span class="sheet-track-slash">/</span>
|
||||
<input type="number" name="attr_res_intuicao_max" class="sheet-square-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_assess" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_avaliar" class="sheet-action-btn"> Avaliar</button>
|
||||
<span class="sheet-action-desc">procurar, rastrear, detectar</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_assess_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_assess_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_assess_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_focus" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_focar" class="sheet-action-btn"> Focar</button>
|
||||
<span class="sheet-action-desc">inspecionar, analisar, lembrar</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_focus_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_focus_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_focus_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-action-row">
|
||||
<div class="sheet-action-title">
|
||||
<input type="checkbox" name="attr_gilded_sense" class="sheet-diamond-check" value="1" title="Dado Dourado">
|
||||
<button type="action" name="act_abrir_sentir" class="sheet-action-btn"> Sentir</button>
|
||||
<span class="sheet-action-desc">sintonizar, canalizar, revelar</span>
|
||||
</div>
|
||||
<div class="sheet-dots">
|
||||
<input type="checkbox" name="attr_sense_1" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_sense_2" value="1" class="sheet-circle-check">
|
||||
<input type="checkbox" name="attr_sense_3" value="1" class="sheet-circle-check">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="sheet-main-grid">
|
||||
|
||||
<div class="sheet-col-left">
|
||||
|
||||
<div class="sheet-dark-box sheet-marcas-cicatrizes">
|
||||
<div class="sheet-marcas-col">
|
||||
<div class="sheet-title-gold" style="margin-bottom:15px;">MARCAS</div>
|
||||
|
||||
<div class="sheet-marca-row">
|
||||
<span class="sheet-text-teal">Corpo</span>
|
||||
<div class="sheet-marca-dots">
|
||||
<input type="checkbox" name="attr_marca_corpo_1" value="1" class="sheet-circle-check-marcas">
|
||||
<input type="checkbox" name="attr_marca_corpo_2" value="1" class="sheet-circle-check-marcas">
|
||||
<input type="checkbox" name="attr_marca_corpo_3" value="1" class="sheet-circle-check-marcas">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-marca-row">
|
||||
<span class="sheet-text-teal">Mente</span>
|
||||
<div class="sheet-marca-dots">
|
||||
<input type="checkbox" name="attr_marca_mente_1" value="1" class="sheet-circle-check-marcas">
|
||||
<input type="checkbox" name="attr_marca_mente_2" value="1" class="sheet-circle-check-marcas">
|
||||
<input type="checkbox" name="attr_marca_mente_3" value="1" class="sheet-circle-check-marcas">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-marca-row">
|
||||
<span class="sheet-text-teal">Sangria</span>
|
||||
<div class="sheet-marca-dots">
|
||||
<input type="checkbox" name="attr_marca_sangria_1" value="1" class="sheet-circle-check-marcas">
|
||||
<input type="checkbox" name="attr_marca_sangria_2" value="1" class="sheet-circle-check-marcas">
|
||||
<input type="checkbox" name="attr_marca_sangria_3" value="1" class="sheet-circle-check-marcas">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-cicatrizes-col">
|
||||
<div class="sheet-title-gold" style="margin-bottom:15px;">CICATRIZES</div>
|
||||
<div class="sheet-line-row"><span class="sheet-diamond">●</span><input type="text" name="attr_cicatriz_1" class="sheet-line-input"></div>
|
||||
<div class="sheet-line-row"><span class="sheet-diamond">●</span><input type="text" name="attr_cicatriz_2" class="sheet-line-input"></div>
|
||||
<div class="sheet-line-row"><span class="sheet-diamond">●</span><input type="text" name="attr_cicatriz_3" class="sheet-line-input"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-dark-box sheet-relacoes-box">
|
||||
<div class="sheet-title-gold" style="margin-bottom:15px;">RELAÇÕES</div>
|
||||
|
||||
<fieldset class="repeating_relacoes">
|
||||
<div class="sheet-linha-recurso">
|
||||
<button type="roll" class="sheet-btn-chat sheet-btn-balao" value="&{template:habilidade} {{charname=@{character_name}}} {{title=@{nome}}} {{tipo=Relações}} {{desc=@{desc}}}">w</button>
|
||||
|
||||
<input type="text" name="attr_nome" class="sheet-input-linha" placeholder="Nome da Relação/Pessoa">
|
||||
|
||||
<input type="checkbox" class="sheet-toggle-detalhes" title="Abrir Edição">
|
||||
<span class="sheet-icone-lapis">✎</span>
|
||||
|
||||
<div class="sheet-recurso-detalhes">
|
||||
<span class="sheet-label-desc">Detalhes da Relação:</span>
|
||||
<textarea name="attr_desc" placeholder="Descreva a conexão, histórico ou sentimentos..."></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="sheet-col-right">
|
||||
|
||||
<div class="sheet-dark-box" style="height: 100%; margin-bottom: 0;">
|
||||
|
||||
<div class="sheet-papel-head">
|
||||
<span class="sheet-title-gold">PAPEL:</span><input type="text" name="attr_papel">
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_papel">
|
||||
<div class="sheet-linha-recurso">
|
||||
<button type="roll" class="sheet-btn-chat sheet-btn-balao" value="&{template:habilidade} {{charname=@{character_name}}} {{title=@{nome}}} {{papel=@{papel}}} {{desc=@{desc}}}">w</button>
|
||||
<input type="text" name="attr_nome" class="sheet-input-linha" placeholder="Nome da Habilidade">
|
||||
<input type="checkbox" class="sheet-toggle-detalhes" title="Abrir Edição">
|
||||
<span class="sheet-icone-lapis">✎</span>
|
||||
|
||||
<div class="sheet-recurso-detalhes">
|
||||
<span class="sheet-label-desc">Descrição:</span>
|
||||
<textarea name="attr_desc" placeholder="Escreva os detalhes aqui..."></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="sheet-papel-head" style="margin-top: 30px;">
|
||||
<span class="sheet-title-gold">ESPECIALIDADE:</span><input type="text" name="attr_especialidade">
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_especialidade">
|
||||
<div class="sheet-linha-recurso">
|
||||
<button type="roll" class="sheet-btn-chat sheet-btn-balao" value="&{template:habilidade} {{charname=@{character_name}}} {{title=@{nome}}} {{especialidade=@{especialidade}}} {{desc=@{desc}}}">w</button>
|
||||
<input type="text" name="attr_nome" class="sheet-input-linha" placeholder="Nome da Habilidade">
|
||||
<input type="checkbox" class="sheet-toggle-detalhes" title="Abrir Edição">
|
||||
<span class="sheet-icone-lapis">✎</span>
|
||||
|
||||
<div class="sheet-recurso-detalhes">
|
||||
<span class="sheet-label-desc">Descrição:</span>
|
||||
<textarea name="attr_desc" placeholder="Escreva os detalhes aqui..."></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="sheet-papel-head" style="margin-top: 30px;">
|
||||
<span class="sheet-title-gold">CÍRCULO:</span><input type="text" name="attr_circulo_nome">
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_circulo">
|
||||
<div class="sheet-linha-recurso">
|
||||
<button type="roll" class="sheet-btn-chat sheet-btn-balao" value="&{template:habilidade} {{charname=@{character_name}}} {{title=@{nome}}} {{circulo=@{circulo_nome}}} {{desc=@{desc}}}">w</button>
|
||||
<input type="text" name="attr_nome" class="sheet-input-linha" placeholder="Nome da Habilidade">
|
||||
<input type="checkbox" class="sheet-toggle-detalhes" title="Abrir Edição">
|
||||
<span class="sheet-icone-lapis">✎</span>
|
||||
|
||||
<div class="sheet-recurso-detalhes">
|
||||
<span class="sheet-label-desc">Descrição:</span>
|
||||
<textarea name="attr_desc" placeholder="Escreva os detalhes aqui..."></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-main-grid">
|
||||
|
||||
<div class="sheet-dark-box" style="height: 100%; margin-bottom: 0;">
|
||||
<div class="sheet-title-gold" style="margin-bottom:15px;">EQUIPAMENTOS</div>
|
||||
|
||||
<fieldset class="repeating_equipamentos">
|
||||
<div class="sheet-line-row">
|
||||
<input type="checkbox" name="attr_equip_check" class="sheet-diamond-check" title="Equipar" value="1">
|
||||
<input type="text" name="attr_equip_nome" class="sheet-line-input" placeholder="Item">
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="sheet-dark-box sheet-footer-box">
|
||||
<div class="sheet-title-gold" style="margin-bottom: 10px;">CHAVE DE ILUMINAÇÃO</div>
|
||||
<div class="sheet-footer-lines" style="display: flex; flex-direction: column; gap: 10px;">
|
||||
|
||||
<div class="sheet-line-row">
|
||||
<span class="sheet-diamond">●</span>
|
||||
<input type="text" name="attr_chave_1" class="sheet-line-input">
|
||||
</div>
|
||||
|
||||
<div class="sheet-line-row">
|
||||
<span class="sheet-diamond">●</span>
|
||||
<input type="text" name="attr_chave_2" class="sheet-line-input">
|
||||
</div>
|
||||
|
||||
<div class="sheet-line-row">
|
||||
<span class="sheet-diamond">●</span>
|
||||
<input type="text" name="attr_chave_3" class="sheet-line-input">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="sheet-dark-box sheet-anotacoes-container" style="height: 100%; margin-bottom: 0;">
|
||||
<div class="sheet-title-gold" style="margin-bottom:10px;">ANOTAÇÕES</div>
|
||||
<textarea name="attr_notes" class="sheet-anotacoes-textarea"></textarea>
|
||||
</div>
|
||||
|
||||
<div class="sheet-credit-footer">
|
||||
<div>Criado por Orla do Dragão</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Inputs de Controle do Modal -->
|
||||
<input type="hidden" name="attr_modal_estado" class="sheet-modal-estado" value="0">
|
||||
<input type="hidden" name="attr_modal_nome_acao" value="">
|
||||
<input type="hidden" name="attr_modal_desc_acao" value="">
|
||||
<input type="hidden" name="attr_modal_treinado" value="0">
|
||||
<input type="hidden" name="attr_modal_alvo_motivacao" value="nenhum">
|
||||
|
||||
<!-- Modal Estrutural -->
|
||||
<div class="sheet-janela-modal">
|
||||
<div class="sheet-modal-conteudo">
|
||||
<h2 class="sheet-modal-titulo">Rolagem de <span name="attr_modal_nome_acao"></span></h2>
|
||||
|
||||
<div class="sheet-modal-placar">
|
||||
<div class="sheet-placar-box sheet-placar-normal">
|
||||
<span class="sheet-placar-label">DADOS DE AÇÃO</span>
|
||||
<input type="number" name="attr_modal_final_normal" value="0" readonly class="sheet-placar-valor">
|
||||
</div>
|
||||
<div class="sheet-placar-box sheet-placar-dourado">
|
||||
<span class="sheet-placar-label">DADOS DOURADOS</span>
|
||||
<input type="number" name="attr_modal_final_dourado" value="0" readonly class="sheet-placar-valor">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr style="border: none; border-top: 1px solid #333; margin: 15px 0;">
|
||||
|
||||
<div class="sheet-modal-linha">
|
||||
<span>Gastar Motivação:</span>
|
||||
<select name="attr_modal_motivacao" class="sheet-modal-select">
|
||||
<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>
|
||||
<div class="sheet-modal-linha">
|
||||
<span>Dados Extras:</span>
|
||||
<select name="attr_modal_dados_extras" class="sheet-modal-select">
|
||||
<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>
|
||||
<div class="sheet-modal-linha">
|
||||
<span>Dourados Extras:</span>
|
||||
<select name="attr_modal_dados_dourados" class="sheet-modal-select">
|
||||
<option value="0" selected>0</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<!-- VALORES BASES ESCONDIDOS (na mesma posicao do arquivo original) -->
|
||||
<input type="hidden" name="attr_modal_dados_base" value="0">
|
||||
<input type="hidden" name="attr_modal_treinado" value="0">
|
||||
|
||||
<!-- CONTROLES DE ERRO: precisam ficar antes das mensagens para o CSS do Roll20 ativar os avisos -->
|
||||
<input type="hidden" name="attr_modal_mot_max_disponivel" value="0">
|
||||
<input type="hidden" name="attr_modal_erro_mot" class="sheet-erro-mot-toggle" value="0">
|
||||
<input type="hidden" name="attr_modal_erro_max_dados" class="sheet-erro-max-dados-toggle" value="0">
|
||||
<input type="hidden" name="attr_modal_erro_max_dourados" class="sheet-erro-max-dourados-toggle" value="0">
|
||||
|
||||
<div class="sheet-erro-mot-msg sheet-erro-msg-caixa">
|
||||
⚠️ Motivação Insuficiente!<br>
|
||||
<span style="font-size: 11px; font-weight: normal; color: #ffcccc;">
|
||||
Você possui apenas <span name="attr_modal_mot_max_disponivel" style="font-weight:bold;"></span> ponto(s) neste atributo.
|
||||
</span>
|
||||
</div>
|
||||
<div class="sheet-erro-max-dados-msg sheet-erro-msg-caixa">
|
||||
⚠️ Limite de Dados Excedido!<br>
|
||||
<span style="font-size: 11px; font-weight: normal; color: #ffcccc;">
|
||||
O limite máximo é de 6 dados totais na rolagem.
|
||||
</span>
|
||||
</div>
|
||||
<div class="sheet-erro-max-dourados-msg sheet-erro-msg-caixa">
|
||||
⚠️ Limite Dourado Excedido!<br>
|
||||
<span style="font-size: 11px; font-weight: normal; color: #ffcccc;">
|
||||
O limite máximo é de 2 dados dourados.
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="sheet-modal-botoes">
|
||||
<button type="action" name="act_fechar_modal" class="sheet-btn-cancelar">Cancelar</button>
|
||||
<button type="action" name="act_executar_rolagem_real" class="sheet-btn-rolar">Rolar</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Template de Rolagem 1 (Habilidades e Ações do Modal) -->
|
||||
<rolltemplate class="sheet-rolltemplate-habilidade">
|
||||
<div class="sheet-template-container">
|
||||
<div class="sheet-template-header">
|
||||
{{#title}}<span class="sheet-template-title">{{title}}</span>{{/title}}
|
||||
{{#charname}}<span class="sheet-template-charname">{{charname}}</span>{{/charname}}
|
||||
</div>
|
||||
|
||||
{{#papel}}<div class="sheet-template-info" style="color: #d4af37; font-weight: bold;">Papel: {{papel}}</div>{{/papel}}
|
||||
{{#especialidade}}<div class="sheet-template-info" style="color: #d4af37; font-weight: bold;">Especialidade: {{especialidade}}</div>{{/especialidade}}
|
||||
{{#circulo}}<div class="sheet-template-info" style="color: #d4af37; font-weight: bold;">Círculo: {{circulo}}</div>{{/circulo}}
|
||||
{{#tipo}}<div class="sheet-template-info" style="color: #d4af37; font-weight: bold;">{{tipo}}</div>{{/tipo}}
|
||||
{{#desc}}<div class="sheet-template-desc">{{desc}}</div>{{/desc}}
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<!-- Template de Rolagem 2 (Rolagem de Candela sem API, via Custom Roll Parsing) -->
|
||||
<!-- v3: os dados sao exibidos via rollTotal(), para evitar a moldura/coloracao padrao dos inline rolls do Roll20. -->
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-candela_card">
|
||||
<div class="sheet-candela-card">
|
||||
<div class="sheet-candela-card-header">
|
||||
<div class="sheet-candela-card-action">{{action}}</div>
|
||||
<div class="sheet-candela-card-char">{{charname}}</div>
|
||||
</div>
|
||||
|
||||
{{#desc}}
|
||||
<div class="sheet-candela-card-desc">{{desc}}</div>
|
||||
{{/desc}}
|
||||
|
||||
<div class="sheet-candela-dice-area">
|
||||
{{#n1}}
|
||||
{{#g1}}
|
||||
<div class="sheet-candela-dice-row">
|
||||
<div class="sheet-candela-dice-col">
|
||||
|
||||
{{#n5}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-6">
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n1 1}}1{{/rollTotal() n1 1}}{{#rollTotal() n1 2}}2{{/rollTotal() n1 2}}{{#rollTotal() n1 3}}3{{/rollTotal() n1 3}}{{#rollTotal() n1 4}}4{{/rollTotal() n1 4}}{{#rollTotal() n1 5}}5{{/rollTotal() n1 5}}{{#rollTotal() n1 6}}6{{/rollTotal() n1 6}}</span>
|
||||
{{#n2}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n2 1}}1{{/rollTotal() n2 1}}{{#rollTotal() n2 2}}2{{/rollTotal() n2 2}}{{#rollTotal() n2 3}}3{{/rollTotal() n2 3}}{{#rollTotal() n2 4}}4{{/rollTotal() n2 4}}{{#rollTotal() n2 5}}5{{/rollTotal() n2 5}}{{#rollTotal() n2 6}}6{{/rollTotal() n2 6}}</span>{{/n2}}
|
||||
{{#n3}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n3 1}}1{{/rollTotal() n3 1}}{{#rollTotal() n3 2}}2{{/rollTotal() n3 2}}{{#rollTotal() n3 3}}3{{/rollTotal() n3 3}}{{#rollTotal() n3 4}}4{{/rollTotal() n3 4}}{{#rollTotal() n3 5}}5{{/rollTotal() n3 5}}{{#rollTotal() n3 6}}6{{/rollTotal() n3 6}}</span><span class="sheet-candela-dice-break"></span>{{/n3}}
|
||||
{{#n4}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n4 1}}1{{/rollTotal() n4 1}}{{#rollTotal() n4 2}}2{{/rollTotal() n4 2}}{{#rollTotal() n4 3}}3{{/rollTotal() n4 3}}{{#rollTotal() n4 4}}4{{/rollTotal() n4 4}}{{#rollTotal() n4 5}}5{{/rollTotal() n4 5}}{{#rollTotal() n4 6}}6{{/rollTotal() n4 6}}</span>{{/n4}}
|
||||
{{#n5}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n5 1}}1{{/rollTotal() n5 1}}{{#rollTotal() n5 2}}2{{/rollTotal() n5 2}}{{#rollTotal() n5 3}}3{{/rollTotal() n5 3}}{{#rollTotal() n5 4}}4{{/rollTotal() n5 4}}{{#rollTotal() n5 5}}5{{/rollTotal() n5 5}}{{#rollTotal() n5 6}}6{{/rollTotal() n5 6}}</span>{{/n5}}
|
||||
{{#n6}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n6 1}}1{{/rollTotal() n6 1}}{{#rollTotal() n6 2}}2{{/rollTotal() n6 2}}{{#rollTotal() n6 3}}3{{/rollTotal() n6 3}}{{#rollTotal() n6 4}}4{{/rollTotal() n6 4}}{{#rollTotal() n6 5}}5{{/rollTotal() n6 5}}{{#rollTotal() n6 6}}6{{/rollTotal() n6 6}}</span>{{/n6}}
|
||||
</div>
|
||||
{{/n5}}
|
||||
|
||||
{{^n5}}{{#n3}}
|
||||
{{#n4}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-4">
|
||||
{{/n4}}
|
||||
{{^n4}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-3">
|
||||
{{/n4}}
|
||||
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n1 1}}1{{/rollTotal() n1 1}}{{#rollTotal() n1 2}}2{{/rollTotal() n1 2}}{{#rollTotal() n1 3}}3{{/rollTotal() n1 3}}{{#rollTotal() n1 4}}4{{/rollTotal() n1 4}}{{#rollTotal() n1 5}}5{{/rollTotal() n1 5}}{{#rollTotal() n1 6}}6{{/rollTotal() n1 6}}</span>
|
||||
{{#n2}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n2 1}}1{{/rollTotal() n2 1}}{{#rollTotal() n2 2}}2{{/rollTotal() n2 2}}{{#rollTotal() n2 3}}3{{/rollTotal() n2 3}}{{#rollTotal() n2 4}}4{{/rollTotal() n2 4}}{{#rollTotal() n2 5}}5{{/rollTotal() n2 5}}{{#rollTotal() n2 6}}6{{/rollTotal() n2 6}}</span>{{/n2}}
|
||||
{{#n3}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n3 1}}1{{/rollTotal() n3 1}}{{#rollTotal() n3 2}}2{{/rollTotal() n3 2}}{{#rollTotal() n3 3}}3{{/rollTotal() n3 3}}{{#rollTotal() n3 4}}4{{/rollTotal() n3 4}}{{#rollTotal() n3 5}}5{{/rollTotal() n3 5}}{{#rollTotal() n3 6}}6{{/rollTotal() n3 6}}</span>{{#n4}}<span class="sheet-candela-dice-break"></span>{{/n4}}{{/n3}}
|
||||
{{#n4}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n4 1}}1{{/rollTotal() n4 1}}{{#rollTotal() n4 2}}2{{/rollTotal() n4 2}}{{#rollTotal() n4 3}}3{{/rollTotal() n4 3}}{{#rollTotal() n4 4}}4{{/rollTotal() n4 4}}{{#rollTotal() n4 5}}5{{/rollTotal() n4 5}}{{#rollTotal() n4 6}}6{{/rollTotal() n4 6}}</span>{{/n4}}
|
||||
{{#n5}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n5 1}}1{{/rollTotal() n5 1}}{{#rollTotal() n5 2}}2{{/rollTotal() n5 2}}{{#rollTotal() n5 3}}3{{/rollTotal() n5 3}}{{#rollTotal() n5 4}}4{{/rollTotal() n5 4}}{{#rollTotal() n5 5}}5{{/rollTotal() n5 5}}{{#rollTotal() n5 6}}6{{/rollTotal() n5 6}}</span>{{/n5}}
|
||||
{{#n6}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n6 1}}1{{/rollTotal() n6 1}}{{#rollTotal() n6 2}}2{{/rollTotal() n6 2}}{{#rollTotal() n6 3}}3{{/rollTotal() n6 3}}{{#rollTotal() n6 4}}4{{/rollTotal() n6 4}}{{#rollTotal() n6 5}}5{{/rollTotal() n6 5}}{{#rollTotal() n6 6}}6{{/rollTotal() n6 6}}</span>{{/n6}}
|
||||
|
||||
</div>
|
||||
{{/n3}}{{/n5}}
|
||||
|
||||
{{^n5}}{{^n3}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-2">
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n1 1}}1{{/rollTotal() n1 1}}{{#rollTotal() n1 2}}2{{/rollTotal() n1 2}}{{#rollTotal() n1 3}}3{{/rollTotal() n1 3}}{{#rollTotal() n1 4}}4{{/rollTotal() n1 4}}{{#rollTotal() n1 5}}5{{/rollTotal() n1 5}}{{#rollTotal() n1 6}}6{{/rollTotal() n1 6}}</span>
|
||||
{{#n2}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n2 1}}1{{/rollTotal() n2 1}}{{#rollTotal() n2 2}}2{{/rollTotal() n2 2}}{{#rollTotal() n2 3}}3{{/rollTotal() n2 3}}{{#rollTotal() n2 4}}4{{/rollTotal() n2 4}}{{#rollTotal() n2 5}}5{{/rollTotal() n2 5}}{{#rollTotal() n2 6}}6{{/rollTotal() n2 6}}</span>{{/n2}}
|
||||
{{#n3}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n3 1}}1{{/rollTotal() n3 1}}{{#rollTotal() n3 2}}2{{/rollTotal() n3 2}}{{#rollTotal() n3 3}}3{{/rollTotal() n3 3}}{{#rollTotal() n3 4}}4{{/rollTotal() n3 4}}{{#rollTotal() n3 5}}5{{/rollTotal() n3 5}}{{#rollTotal() n3 6}}6{{/rollTotal() n3 6}}</span>{{/n3}}
|
||||
{{#n4}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n4 1}}1{{/rollTotal() n4 1}}{{#rollTotal() n4 2}}2{{/rollTotal() n4 2}}{{#rollTotal() n4 3}}3{{/rollTotal() n4 3}}{{#rollTotal() n4 4}}4{{/rollTotal() n4 4}}{{#rollTotal() n4 5}}5{{/rollTotal() n4 5}}{{#rollTotal() n4 6}}6{{/rollTotal() n4 6}}</span>{{/n4}}
|
||||
{{#n5}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n5 1}}1{{/rollTotal() n5 1}}{{#rollTotal() n5 2}}2{{/rollTotal() n5 2}}{{#rollTotal() n5 3}}3{{/rollTotal() n5 3}}{{#rollTotal() n5 4}}4{{/rollTotal() n5 4}}{{#rollTotal() n5 5}}5{{/rollTotal() n5 5}}{{#rollTotal() n5 6}}6{{/rollTotal() n5 6}}</span>{{/n5}}
|
||||
{{#n6}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n6 1}}1{{/rollTotal() n6 1}}{{#rollTotal() n6 2}}2{{/rollTotal() n6 2}}{{#rollTotal() n6 3}}3{{/rollTotal() n6 3}}{{#rollTotal() n6 4}}4{{/rollTotal() n6 4}}{{#rollTotal() n6 5}}5{{/rollTotal() n6 5}}{{#rollTotal() n6 6}}6{{/rollTotal() n6 6}}</span>{{/n6}}
|
||||
</div>
|
||||
{{/n3}}{{/n5}}
|
||||
|
||||
</div>
|
||||
|
||||
<div class="sheet-candela-dice-gap"></div>
|
||||
|
||||
<div class="sheet-candela-dice-col">
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-gold sheet-candela-dice-box-2">
|
||||
<span class="sheet-candela-die sheet-candela-die-gold">{{#rollTotal() g1 1}}1{{/rollTotal() g1 1}}{{#rollTotal() g1 2}}2{{/rollTotal() g1 2}}{{#rollTotal() g1 3}}3{{/rollTotal() g1 3}}{{#rollTotal() g1 4}}4{{/rollTotal() g1 4}}{{#rollTotal() g1 5}}5{{/rollTotal() g1 5}}{{#rollTotal() g1 6}}6{{/rollTotal() g1 6}}</span>
|
||||
{{#g2}}<span class="sheet-candela-die sheet-candela-die-gold">{{#rollTotal() g2 1}}1{{/rollTotal() g2 1}}{{#rollTotal() g2 2}}2{{/rollTotal() g2 2}}{{#rollTotal() g2 3}}3{{/rollTotal() g2 3}}{{#rollTotal() g2 4}}4{{/rollTotal() g2 4}}{{#rollTotal() g2 5}}5{{/rollTotal() g2 5}}{{#rollTotal() g2 6}}6{{/rollTotal() g2 6}}</span>{{/g2}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sheet-candela-label-row">
|
||||
<div class="sheet-candela-dice-col">
|
||||
<div class="sheet-candela-dice-label sheet-candela-label-normal">AÇÃO</div>
|
||||
</div>
|
||||
<div class="sheet-candela-dice-gap"></div>
|
||||
<div class="sheet-candela-dice-col">
|
||||
<div class="sheet-candela-dice-label sheet-candela-label-gold">DOURADO</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/g1}}
|
||||
|
||||
{{^g1}}
|
||||
<div class="sheet-candela-dice-row">
|
||||
<div class="sheet-candela-dice-col-full">
|
||||
|
||||
{{#n5}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-6">
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n1 1}}1{{/rollTotal() n1 1}}{{#rollTotal() n1 2}}2{{/rollTotal() n1 2}}{{#rollTotal() n1 3}}3{{/rollTotal() n1 3}}{{#rollTotal() n1 4}}4{{/rollTotal() n1 4}}{{#rollTotal() n1 5}}5{{/rollTotal() n1 5}}{{#rollTotal() n1 6}}6{{/rollTotal() n1 6}}</span>
|
||||
{{#n2}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n2 1}}1{{/rollTotal() n2 1}}{{#rollTotal() n2 2}}2{{/rollTotal() n2 2}}{{#rollTotal() n2 3}}3{{/rollTotal() n2 3}}{{#rollTotal() n2 4}}4{{/rollTotal() n2 4}}{{#rollTotal() n2 5}}5{{/rollTotal() n2 5}}{{#rollTotal() n2 6}}6{{/rollTotal() n2 6}}</span>{{/n2}}
|
||||
{{#n3}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n3 1}}1{{/rollTotal() n3 1}}{{#rollTotal() n3 2}}2{{/rollTotal() n3 2}}{{#rollTotal() n3 3}}3{{/rollTotal() n3 3}}{{#rollTotal() n3 4}}4{{/rollTotal() n3 4}}{{#rollTotal() n3 5}}5{{/rollTotal() n3 5}}{{#rollTotal() n3 6}}6{{/rollTotal() n3 6}}</span><span class="sheet-candela-dice-break"></span>{{/n3}}
|
||||
{{#n4}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n4 1}}1{{/rollTotal() n4 1}}{{#rollTotal() n4 2}}2{{/rollTotal() n4 2}}{{#rollTotal() n4 3}}3{{/rollTotal() n4 3}}{{#rollTotal() n4 4}}4{{/rollTotal() n4 4}}{{#rollTotal() n4 5}}5{{/rollTotal() n4 5}}{{#rollTotal() n4 6}}6{{/rollTotal() n4 6}}</span>{{/n4}}
|
||||
{{#n5}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n5 1}}1{{/rollTotal() n5 1}}{{#rollTotal() n5 2}}2{{/rollTotal() n5 2}}{{#rollTotal() n5 3}}3{{/rollTotal() n5 3}}{{#rollTotal() n5 4}}4{{/rollTotal() n5 4}}{{#rollTotal() n5 5}}5{{/rollTotal() n5 5}}{{#rollTotal() n5 6}}6{{/rollTotal() n5 6}}</span>{{/n5}}
|
||||
{{#n6}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n6 1}}1{{/rollTotal() n6 1}}{{#rollTotal() n6 2}}2{{/rollTotal() n6 2}}{{#rollTotal() n6 3}}3{{/rollTotal() n6 3}}{{#rollTotal() n6 4}}4{{/rollTotal() n6 4}}{{#rollTotal() n6 5}}5{{/rollTotal() n6 5}}{{#rollTotal() n6 6}}6{{/rollTotal() n6 6}}</span>{{/n6}}
|
||||
</div>
|
||||
{{/n5}}
|
||||
|
||||
{{^n5}}{{#n3}}
|
||||
{{#n4}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-4">
|
||||
{{/n4}}
|
||||
{{^n4}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-3">
|
||||
{{/n4}}
|
||||
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n1 1}}1{{/rollTotal() n1 1}}{{#rollTotal() n1 2}}2{{/rollTotal() n1 2}}{{#rollTotal() n1 3}}3{{/rollTotal() n1 3}}{{#rollTotal() n1 4}}4{{/rollTotal() n1 4}}{{#rollTotal() n1 5}}5{{/rollTotal() n1 5}}{{#rollTotal() n1 6}}6{{/rollTotal() n1 6}}</span>
|
||||
{{#n2}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n2 1}}1{{/rollTotal() n2 1}}{{#rollTotal() n2 2}}2{{/rollTotal() n2 2}}{{#rollTotal() n2 3}}3{{/rollTotal() n2 3}}{{#rollTotal() n2 4}}4{{/rollTotal() n2 4}}{{#rollTotal() n2 5}}5{{/rollTotal() n2 5}}{{#rollTotal() n2 6}}6{{/rollTotal() n2 6}}</span>{{/n2}}
|
||||
{{#n3}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n3 1}}1{{/rollTotal() n3 1}}{{#rollTotal() n3 2}}2{{/rollTotal() n3 2}}{{#rollTotal() n3 3}}3{{/rollTotal() n3 3}}{{#rollTotal() n3 4}}4{{/rollTotal() n3 4}}{{#rollTotal() n3 5}}5{{/rollTotal() n3 5}}{{#rollTotal() n3 6}}6{{/rollTotal() n3 6}}</span>{{#n4}}<span class="sheet-candela-dice-break"></span>{{/n4}}{{/n3}}
|
||||
{{#n4}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n4 1}}1{{/rollTotal() n4 1}}{{#rollTotal() n4 2}}2{{/rollTotal() n4 2}}{{#rollTotal() n4 3}}3{{/rollTotal() n4 3}}{{#rollTotal() n4 4}}4{{/rollTotal() n4 4}}{{#rollTotal() n4 5}}5{{/rollTotal() n4 5}}{{#rollTotal() n4 6}}6{{/rollTotal() n4 6}}</span>{{/n4}}
|
||||
{{#n5}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n5 1}}1{{/rollTotal() n5 1}}{{#rollTotal() n5 2}}2{{/rollTotal() n5 2}}{{#rollTotal() n5 3}}3{{/rollTotal() n5 3}}{{#rollTotal() n5 4}}4{{/rollTotal() n5 4}}{{#rollTotal() n5 5}}5{{/rollTotal() n5 5}}{{#rollTotal() n5 6}}6{{/rollTotal() n5 6}}</span>{{/n5}}
|
||||
{{#n6}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n6 1}}1{{/rollTotal() n6 1}}{{#rollTotal() n6 2}}2{{/rollTotal() n6 2}}{{#rollTotal() n6 3}}3{{/rollTotal() n6 3}}{{#rollTotal() n6 4}}4{{/rollTotal() n6 4}}{{#rollTotal() n6 5}}5{{/rollTotal() n6 5}}{{#rollTotal() n6 6}}6{{/rollTotal() n6 6}}</span>{{/n6}}
|
||||
|
||||
</div>
|
||||
{{/n3}}{{/n5}}
|
||||
|
||||
{{^n5}}{{^n3}}
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-2">
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n1 1}}1{{/rollTotal() n1 1}}{{#rollTotal() n1 2}}2{{/rollTotal() n1 2}}{{#rollTotal() n1 3}}3{{/rollTotal() n1 3}}{{#rollTotal() n1 4}}4{{/rollTotal() n1 4}}{{#rollTotal() n1 5}}5{{/rollTotal() n1 5}}{{#rollTotal() n1 6}}6{{/rollTotal() n1 6}}</span>
|
||||
{{#n2}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n2 1}}1{{/rollTotal() n2 1}}{{#rollTotal() n2 2}}2{{/rollTotal() n2 2}}{{#rollTotal() n2 3}}3{{/rollTotal() n2 3}}{{#rollTotal() n2 4}}4{{/rollTotal() n2 4}}{{#rollTotal() n2 5}}5{{/rollTotal() n2 5}}{{#rollTotal() n2 6}}6{{/rollTotal() n2 6}}</span>{{/n2}}
|
||||
{{#n3}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n3 1}}1{{/rollTotal() n3 1}}{{#rollTotal() n3 2}}2{{/rollTotal() n3 2}}{{#rollTotal() n3 3}}3{{/rollTotal() n3 3}}{{#rollTotal() n3 4}}4{{/rollTotal() n3 4}}{{#rollTotal() n3 5}}5{{/rollTotal() n3 5}}{{#rollTotal() n3 6}}6{{/rollTotal() n3 6}}</span>{{/n3}}
|
||||
{{#n4}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n4 1}}1{{/rollTotal() n4 1}}{{#rollTotal() n4 2}}2{{/rollTotal() n4 2}}{{#rollTotal() n4 3}}3{{/rollTotal() n4 3}}{{#rollTotal() n4 4}}4{{/rollTotal() n4 4}}{{#rollTotal() n4 5}}5{{/rollTotal() n4 5}}{{#rollTotal() n4 6}}6{{/rollTotal() n4 6}}</span>{{/n4}}
|
||||
{{#n5}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n5 1}}1{{/rollTotal() n5 1}}{{#rollTotal() n5 2}}2{{/rollTotal() n5 2}}{{#rollTotal() n5 3}}3{{/rollTotal() n5 3}}{{#rollTotal() n5 4}}4{{/rollTotal() n5 4}}{{#rollTotal() n5 5}}5{{/rollTotal() n5 5}}{{#rollTotal() n5 6}}6{{/rollTotal() n5 6}}</span>{{/n5}}
|
||||
{{#n6}}<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() n6 1}}1{{/rollTotal() n6 1}}{{#rollTotal() n6 2}}2{{/rollTotal() n6 2}}{{#rollTotal() n6 3}}3{{/rollTotal() n6 3}}{{#rollTotal() n6 4}}4{{/rollTotal() n6 4}}{{#rollTotal() n6 5}}5{{/rollTotal() n6 5}}{{#rollTotal() n6 6}}6{{/rollTotal() n6 6}}</span>{{/n6}}
|
||||
</div>
|
||||
{{/n3}}{{/n5}}
|
||||
|
||||
<div class="sheet-candela-dice-label sheet-candela-label-normal">AÇÃO</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/g1}}
|
||||
{{/n1}}
|
||||
|
||||
{{^n1}}{{#g1}}
|
||||
<div class="sheet-candela-dice-row">
|
||||
<div class="sheet-candela-dice-col-full">
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-gold sheet-candela-dice-box-2">
|
||||
<span class="sheet-candela-die sheet-candela-die-gold">{{#rollTotal() g1 1}}1{{/rollTotal() g1 1}}{{#rollTotal() g1 2}}2{{/rollTotal() g1 2}}{{#rollTotal() g1 3}}3{{/rollTotal() g1 3}}{{#rollTotal() g1 4}}4{{/rollTotal() g1 4}}{{#rollTotal() g1 5}}5{{/rollTotal() g1 5}}{{#rollTotal() g1 6}}6{{/rollTotal() g1 6}}</span>
|
||||
{{#g2}}<span class="sheet-candela-die sheet-candela-die-gold">{{#rollTotal() g2 1}}1{{/rollTotal() g2 1}}{{#rollTotal() g2 2}}2{{/rollTotal() g2 2}}{{#rollTotal() g2 3}}3{{/rollTotal() g2 3}}{{#rollTotal() g2 4}}4{{/rollTotal() g2 4}}{{#rollTotal() g2 5}}5{{/rollTotal() g2 5}}{{#rollTotal() g2 6}}6{{/rollTotal() g2 6}}</span>{{/g2}}
|
||||
</div>
|
||||
<div class="sheet-candela-dice-label sheet-candela-label-gold">DOURADO</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/g1}}{{/n1}}
|
||||
|
||||
{{#z1}}
|
||||
<div class="sheet-candela-dice-row">
|
||||
<div class="sheet-candela-dice-col-full">
|
||||
<div class="sheet-candela-dice-box sheet-candela-dice-box-normal sheet-candela-dice-box-2">
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() z1 1}}1{{/rollTotal() z1 1}}{{#rollTotal() z1 2}}2{{/rollTotal() z1 2}}{{#rollTotal() z1 3}}3{{/rollTotal() z1 3}}{{#rollTotal() z1 4}}4{{/rollTotal() z1 4}}{{#rollTotal() z1 5}}5{{/rollTotal() z1 5}}{{#rollTotal() z1 6}}6{{/rollTotal() z1 6}}</span>
|
||||
<span class="sheet-candela-die sheet-candela-die-normal">{{#rollTotal() z2 1}}1{{/rollTotal() z2 1}}{{#rollTotal() z2 2}}2{{/rollTotal() z2 2}}{{#rollTotal() z2 3}}3{{/rollTotal() z2 3}}{{#rollTotal() z2 4}}4{{/rollTotal() z2 4}}{{#rollTotal() z2 5}}5{{/rollTotal() z2 5}}{{#rollTotal() z2 6}}6{{/rollTotal() z2 6}}</span>
|
||||
</div>
|
||||
<div class="sheet-candela-dice-label sheet-candela-label-normal">AÇÃO</div>
|
||||
<div class="sheet-candela-zero-warning">(0 DADOS: ROLOU 2, PEGOU MENOR)</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/z1}}
|
||||
</div>
|
||||
|
||||
{{#rollTotal() computed::crit 1}}
|
||||
<div class="sheet-candela-result sheet-candela-result-crit">SUCESSO CRÍTICO!</div>
|
||||
{{/rollTotal() computed::crit 1}}
|
||||
|
||||
{{#rollTotal() computed::crit 0}}
|
||||
{{#rollTotal() computed::res 6}}
|
||||
<div class="sheet-candela-result sheet-candela-result-total">SUCESSO TOTAL</div>
|
||||
{{/rollTotal() computed::res 6}}
|
||||
|
||||
{{#rollBetween() computed::res 4 5}}
|
||||
<div class="sheet-candela-result sheet-candela-result-partial">SUCESSO PARCIAL</div>
|
||||
{{/rollBetween() computed::res 4 5}}
|
||||
|
||||
{{#rollLess() computed::res 4}}
|
||||
<div class="sheet-candela-result sheet-candela-result-fail">FALHA</div>
|
||||
{{/rollLess() computed::res 4}}
|
||||
{{/rollTotal() computed::crit 0}}
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<script type="text/worker">
|
||||
// 1. Lógica das Bolinhas Progressivas
|
||||
const atributos = [
|
||||
'move', 'attack', 'control',
|
||||
'influence', 'read', 'hide',
|
||||
'assess', 'focus', 'sense',
|
||||
'marca_corpo', 'marca_mente', 'marca_sangria'
|
||||
];
|
||||
|
||||
atributos.forEach(attr => {
|
||||
on(`change:${attr}_1 change:${attr}_2 change:${attr}_3`, function(eventInfo) {
|
||||
const trigger = eventInfo.sourceAttribute;
|
||||
if (!trigger) return;
|
||||
const newValue = parseInt(eventInfo.newValue) || 0;
|
||||
const level = parseInt(trigger.slice(-1));
|
||||
let updates = {};
|
||||
|
||||
if (newValue === 1) {
|
||||
if (level === 2) { updates[`${attr}_1`] = 1; }
|
||||
if (level === 3) { updates[`${attr}_1`] = 1; updates[`${attr}_2`] = 1; }
|
||||
} else {
|
||||
if (level === 1) { updates[`${attr}_2`] = 0; updates[`${attr}_3`] = 0; }
|
||||
if (level === 2) { updates[`${attr}_3`] = 0; }
|
||||
}
|
||||
setAttrs(updates);
|
||||
});
|
||||
});
|
||||
|
||||
// 2. Mapeamento das Ações para o Modal
|
||||
const actionMap = {
|
||||
'abrir_mover': { attr: 'move', name: 'Mover', desc: 'Correr, desviar, navegar', mot: 'mot_vigor_current' },
|
||||
'abrir_atacar': { attr: 'attack', name: 'Atacar', desc: 'golpear, quebrar, derrubar', mot: 'mot_vigor_current' },
|
||||
'abrir_controlar': { attr: 'control', name: 'Controlar', desc: 'pilotar, atirar, manusear', mot: 'mot_vigor_current' },
|
||||
'abrir_influenciar': { attr: 'influence', name: 'Influenciar', desc: 'convencer, comandar, atrair', mot: 'mot_astucia_current' },
|
||||
'abrir_ler': { attr: 'read', name: 'Ler', desc: 'interpretar ling. corporal...', mot: 'mot_astucia_current' },
|
||||
'abrir_esconder': { attr: 'hide', name: 'Esconder', desc: 'esgueirar, distrair, prestidigitar', mot: 'mot_astucia_current' },
|
||||
'abrir_avaliar': { attr: 'assess', name: 'Avaliar', desc: 'procurar, rastrear, detectar', mot: 'mot_intuicao_current' },
|
||||
'abrir_focar': { attr: 'focus', name: 'Focar', desc: 'inspecionar, analisar, lembrar', mot: 'mot_intuicao_current' },
|
||||
'abrir_sentir': { attr: 'sense', name: 'Sentir', desc: 'sintonizar, canalizar, revelar', mot: 'mot_intuicao_current' }
|
||||
};
|
||||
|
||||
// 3. Ao clicar no botão, carrega os dados e abre o Modal
|
||||
Object.keys(actionMap).forEach(btn => {
|
||||
on(`clicked:${btn}`, function() {
|
||||
let data = actionMap[btn];
|
||||
getAttrs([`${data.attr}_1`, `${data.attr}_2`, `${data.attr}_3`, `gilded_${data.attr}`, data.mot], function(v) {
|
||||
|
||||
let total = (parseInt(v[`${data.attr}_1`]) || 0) + (parseInt(v[`${data.attr}_2`]) || 0) + (parseInt(v[`${data.attr}_3`]) || 0);
|
||||
let treinado = parseInt(v[`gilded_${data.attr}`]) || 0;
|
||||
let motDisponivel = parseInt(v[data.mot]) || 0;
|
||||
|
||||
let finalPool = Math.min(total, 6);
|
||||
let finalGold = Math.min(treinado, 2);
|
||||
finalGold = Math.min(finalGold, finalPool);
|
||||
|
||||
let finalNormal = finalPool - finalGold;
|
||||
if (finalNormal < 0) finalNormal = 0;
|
||||
|
||||
setAttrs({
|
||||
modal_estado: "1",
|
||||
modal_nome_acao: data.name,
|
||||
modal_desc_acao: data.desc,
|
||||
modal_alvo_motivacao: data.mot,
|
||||
modal_mot_max_disponivel: motDisponivel,
|
||||
modal_dados_base: total,
|
||||
modal_treinado: treinado,
|
||||
modal_motivacao: 0,
|
||||
modal_dados_extras: 0,
|
||||
modal_dados_dourados: 0,
|
||||
modal_final_normal: finalNormal,
|
||||
modal_final_dourado: finalGold,
|
||||
modal_erro_mot: '0',
|
||||
modal_erro_max_dados: '0',
|
||||
modal_erro_max_dourados: '0'
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// 4. Calcula a soma final e impõe os limites dentro do Modal
|
||||
on('change:modal_dados_base change:modal_treinado change:modal_motivacao change:modal_dados_extras change:modal_dados_dourados', function() {
|
||||
getAttrs(['modal_dados_base', 'modal_treinado', 'modal_motivacao', 'modal_dados_extras', 'modal_dados_dourados', 'modal_mot_max_disponivel'], function(v) {
|
||||
|
||||
let base = parseInt(v.modal_dados_base) || 0;
|
||||
let treinado = parseInt(v.modal_treinado) || 0;
|
||||
let mot = parseInt(v.modal_motivacao) || 0;
|
||||
let extra = parseInt(v.modal_dados_extras) || 0;
|
||||
let goldInput = parseInt(v.modal_dados_dourados) || 0;
|
||||
let motMaxDisp = parseInt(v.modal_mot_max_disponivel) || 0;
|
||||
|
||||
let totalPedido = base + mot + extra;
|
||||
let ouroPedido = treinado + goldInput;
|
||||
|
||||
let finalPool = Math.min(totalPedido, 6);
|
||||
let finalGold = Math.min(ouroPedido, 2);
|
||||
|
||||
finalGold = Math.min(finalGold, finalPool);
|
||||
|
||||
let finalNormal = finalPool - finalGold;
|
||||
if (finalNormal < 0) finalNormal = 0;
|
||||
|
||||
let erroMot = (mot > motMaxDisp) ? 1 : 0;
|
||||
let erroMaxDados = (totalPedido > 6) ? 1 : 0;
|
||||
let erroMaxDourados = (ouroPedido > 2) ? 1 : 0;
|
||||
|
||||
setAttrs({
|
||||
modal_final_normal: finalNormal,
|
||||
modal_final_dourado: finalGold,
|
||||
modal_erro_mot: String(erroMot),
|
||||
modal_erro_max_dados: String(erroMaxDados),
|
||||
modal_erro_max_dourados: String(erroMaxDourados)
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// 5. Botão de Cancelar / Fechar Modal
|
||||
on('clicked:fechar_modal', function() {
|
||||
setAttrs({ modal_estado: "0" });
|
||||
});
|
||||
|
||||
|
||||
// 6. Rolagem real dentro do HTML da ficha, sem API Script externo.
|
||||
// Versao sem async/await: mais conservadora para o Sheet Worker do Roll20.
|
||||
var safeTemplateText = function(value) {
|
||||
return String(value || '')
|
||||
.replace(/[{}]/g, '')
|
||||
.replace(/\r?\n|\r/g, ' ')
|
||||
.trim();
|
||||
};
|
||||
|
||||
var clampNumber = function(value, min, max) {
|
||||
var n = parseInt(value, 10);
|
||||
if (!isFinite(n)) n = 0;
|
||||
return Math.max(min, Math.min(max, n));
|
||||
};
|
||||
|
||||
var finishCharacterUpdates = function(spent, poolName) {
|
||||
var updates = { modal_estado: '0' };
|
||||
|
||||
if (spent > 0 && poolName && poolName !== 'nenhum') {
|
||||
getAttrs([poolName], function(poolAttrs) {
|
||||
var currentVal = parseInt(poolAttrs[poolName], 10);
|
||||
if (!isFinite(currentVal)) currentVal = 0;
|
||||
updates[poolName] = Math.max(0, currentVal - spent);
|
||||
setAttrs(updates);
|
||||
});
|
||||
} else {
|
||||
setAttrs(updates);
|
||||
}
|
||||
};
|
||||
|
||||
on('clicked:executar_rolagem_real', function() {
|
||||
getAttrs([
|
||||
'character_name',
|
||||
'modal_nome_acao',
|
||||
'modal_desc_acao',
|
||||
'modal_dados_base',
|
||||
'modal_treinado',
|
||||
'modal_motivacao',
|
||||
'modal_dados_extras',
|
||||
'modal_dados_dourados',
|
||||
'modal_mot_max_disponivel',
|
||||
'modal_alvo_motivacao'
|
||||
], function(v) {
|
||||
var action = safeTemplateText(v.modal_nome_acao || 'Ação');
|
||||
var charName = safeTemplateText(v.character_name || 'Personagem');
|
||||
var desc = safeTemplateText(v.modal_desc_acao || '');
|
||||
var poolName = safeTemplateText(v.modal_alvo_motivacao || 'nenhum');
|
||||
|
||||
// Revalida os limites no momento do clique em Rolar.
|
||||
// Assim, a ficha nao rola, nao fecha o modal e nao desconta Motivacao
|
||||
// quando alguma mensagem vermelha estiver ativa.
|
||||
var base = clampNumber(v.modal_dados_base, 0, 99);
|
||||
var treinado = clampNumber(v.modal_treinado, 0, 99);
|
||||
var spent = clampNumber(v.modal_motivacao, 0, 99);
|
||||
var extra = clampNumber(v.modal_dados_extras, 0, 99);
|
||||
var goldInput = clampNumber(v.modal_dados_dourados, 0, 99);
|
||||
var motMaxDisp = clampNumber(v.modal_mot_max_disponivel, 0, 99);
|
||||
|
||||
var totalPedido = base + spent + extra;
|
||||
var ouroPedido = treinado + goldInput;
|
||||
|
||||
// Regra antiga da ficha: maximo de 6 dados totais na rolagem,
|
||||
// e no maximo 2 desses dados podem ser dourados.
|
||||
var finalPool = Math.min(totalPedido, 6);
|
||||
var finalGold = Math.min(ouroPedido, 2);
|
||||
finalGold = Math.min(finalGold, finalPool);
|
||||
|
||||
var finalNormal = finalPool - finalGold;
|
||||
if (finalNormal < 0) finalNormal = 0;
|
||||
|
||||
var erroMot = (spent > motMaxDisp) ? 1 : 0;
|
||||
var erroMaxDados = (totalPedido > 6) ? 1 : 0;
|
||||
var erroMaxDourados = (ouroPedido > 2) ? 1 : 0;
|
||||
|
||||
var validationUpdates = {
|
||||
modal_final_normal: finalNormal,
|
||||
modal_final_dourado: finalGold,
|
||||
modal_erro_mot: String(erroMot),
|
||||
modal_erro_max_dados: String(erroMaxDados),
|
||||
modal_erro_max_dourados: String(erroMaxDourados)
|
||||
};
|
||||
|
||||
if (erroMot || erroMaxDados || erroMaxDourados) {
|
||||
setAttrs(validationUpdates);
|
||||
return;
|
||||
}
|
||||
|
||||
setAttrs(validationUpdates);
|
||||
|
||||
var normalCount = finalNormal;
|
||||
var goldCount = finalGold;
|
||||
|
||||
var rollParts = [
|
||||
'&{template:candela_card}',
|
||||
'{{action=' + action + '}}',
|
||||
'{{charname=' + charName + '}}',
|
||||
'{{desc=' + desc + '}}'
|
||||
];
|
||||
|
||||
var rollNames = [];
|
||||
var totalDice = normalCount + goldCount;
|
||||
|
||||
if (totalDice === 0) {
|
||||
rollParts.push('{{z1=[[1d6]]}}');
|
||||
rollParts.push('{{z2=[[1d6]]}}');
|
||||
rollNames.push('z1');
|
||||
rollNames.push('z2');
|
||||
} else {
|
||||
for (var i = 1; i <= normalCount; i++) {
|
||||
var nName = 'n' + i;
|
||||
rollParts.push('{{' + nName + '=[[1d6]]}}');
|
||||
rollNames.push(nName);
|
||||
}
|
||||
for (var j = 1; j <= goldCount; j++) {
|
||||
var gName = 'g' + j;
|
||||
rollParts.push('{{' + gName + '=[[1d6]]}}');
|
||||
rollNames.push(gName);
|
||||
}
|
||||
}
|
||||
|
||||
// Rolagens mudas que receberao os resultados calculados via finishRoll.
|
||||
rollParts.push('{{res=[[0]]}}');
|
||||
rollParts.push('{{crit=[[0]]}}');
|
||||
|
||||
startRoll(rollParts.join(' '), function(roll) {
|
||||
var getResult = function(name) {
|
||||
if (!roll || !roll.results || !roll.results[name]) return 0;
|
||||
var result = parseInt(roll.results[name].result, 10);
|
||||
return isFinite(result) ? result : 0;
|
||||
};
|
||||
|
||||
var maxRoll = 0;
|
||||
var sixes = 0;
|
||||
|
||||
if (totalDice === 0) {
|
||||
var d1 = getResult('z1');
|
||||
var d2 = getResult('z2');
|
||||
maxRoll = Math.min(d1, d2);
|
||||
sixes = 0;
|
||||
} else {
|
||||
var allDice = [];
|
||||
for (var k = 0; k < rollNames.length; k++) {
|
||||
var val = getResult(rollNames[k]);
|
||||
if (val > 0) allDice.push(val);
|
||||
}
|
||||
for (var m = 0; m < allDice.length; m++) {
|
||||
if (allDice[m] > maxRoll) maxRoll = allDice[m];
|
||||
if (allDice[m] === 6) sixes++;
|
||||
}
|
||||
}
|
||||
|
||||
finishRoll(roll.rollId, {
|
||||
res: maxRoll,
|
||||
crit: sixes > 1 ? 1 : 0
|
||||
});
|
||||
|
||||
finishCharacterUpdates(spent, poolName);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 7.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 67 KiB |
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "candela-obscura-pt-br.html",
|
||||
"css": "candela-obscura-pt-br.css",
|
||||
"authors": "Orla do Dragao",
|
||||
"roll20userid": "4267139",
|
||||
"preview": "preview.png",
|
||||
"instructions": "Ficha em Portugues Brasileiro (PT-BR) criada por Orla do Dragao. Esta e uma ficha comunitaria independente, sem dependencia de Mod/API Script, sem criacao ou progressao automatizada de personagem e sem reproducao de textos extensos de regras."
|
||||
}
|
||||
Reference in New Issue
Block a user