Files
2024-06-03 13:15:14 -04:00

325 lines
15 KiB
HTML

<div class="character-sheet">
<div class="row">
<div class="col-12 center">
<img class="logo" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Omerta/Images/logo-black.png" alt="">
<img class="logo logo--dark-mode" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Omerta/Images/logo.png" alt="">
<br>
<h1 class="hr-title">
<span data-i18n="character-sheet">Karta postaci</span>
</h1>
</div>
</div>
<div class="row">
<div class="col-4">
<div class="title-box">
<h2 data-i18n="wounds">Rany</h2>
<div class="title-box__row">
<label><span data-i18n="level">Poziom</span> 1</label>
<input class="title-box__input-padding" type="text" name="attr_wounds_1">
<input class="title-box__input-checkbox" type="checkbox" name="attr_wounds_1_check">
</div>
<div class="title-box__row">
<label><span data-i18n="level">Poziom</span> 2</label>
<input class="title-box__input-padding" type="text" name="attr_wounds_2">
<input class="title-box__input-checkbox" type="checkbox" name="attr_wounds_2_check">
</div>
<div class="title-box__row">
<label><span data-i18n="level">Poziom</span> 3</label>
<input class="title-box__input-padding" type="text" name="attr_wounds_3">
<input class="title-box__input-checkbox" type="checkbox" name="attr_wounds_3_check">
</div>
</div>
<div class="title-box">
<h2 data-i18n="traumas">Traumy</h2>
<div class="title-box__row">
<label><span data-i18n="level">Poziom</span> 1</label>
<input class="title-box__input-padding" type="text" name="attr_trauma_1">
<input class="title-box__input-checkbox" type="checkbox" name="attr_trauma_1_check">
</div>
<div class="title-box__row">
<label><span data-i18n="level">Poziom</span> 2</label>
<input class="title-box__input-padding" type="text" name="attr_trauma_2">
<input class="title-box__input-checkbox" type="checkbox" name="attr_trauma_2_check">
</div>
<div class="title-box__row">
<label><span data-i18n="level">Poziom</span> 3</label>
<input class="title-box__input-padding" type="text" name="attr_trauma_3">
<input class="title-box__input-checkbox" type="checkbox" name="attr_trauma_3_check">
</div>
</div>
<div class="title-box">
<h2 data-i18n="respect">Szacunek</h2>
<div class="title-box__row-checkboxes title-box__row-checkboxes--with-label">
<label data-i18n="arouses-admiration">Budzi podziw</label>
<input type="checkbox" name="attr_respect_level" value="10" class="title-box__row-checkbox--red">
<input type="checkbox" name="attr_respect_level" value="9" class="title-box__row-checkbox--red">
<input type="checkbox" name="attr_respect_level" value="8" class="title-box__row-checkbox--red">
<input type="checkbox" name="attr_respect_level" value="7" class="title-box__row-checkbox--red">
<input type="checkbox" name="attr_respect_level" value="6">
<input type="checkbox" name="attr_respect_level" value="5">
<input type="checkbox" name="attr_respect_level" value="4">
<input type="checkbox" name="attr_respect_level" value="3">
<input type="checkbox" name="attr_respect_level" value="2">
<input type="checkbox" name="attr_respect_level" value="1">
</div>
</div>
<div class="title-box">
<h2 data-i18n="stress">Stres</h2>
<div class="title-box__row-checkboxes">
<input type="checkbox" name="attr_stress_level" value="10">
<input type="checkbox" name="attr_stress_level" value="9">
<input type="checkbox" name="attr_stress_level" value="8">
<input type="checkbox" name="attr_stress_level" value="7">
<input type="checkbox" name="attr_stress_level" value="6">
<input type="checkbox" name="attr_stress_level" value="5">
<input type="checkbox" name="attr_stress_level" value="4">
<input type="checkbox" name="attr_stress_level" value="3">
<input type="checkbox" name="attr_stress_level" value="2">
<input type="checkbox" name="attr_stress_level" value="1">
</div>
</div>
</div>
<div class="col-8">
<div class="character-details-box">
<div class="character-details-box__label">
<label data-i18n="name">Imię i nazwisko</label>
<input type="text" name="attr_character_name" title="@{character_name}" spellcheck="false">
</div>
<div class="character-details-box__label">
<label data-i18n="archetype">Archetyp</label>
<input type="text" name="attr_archetype" title="@{archetype}" spellcheck="false">
</div>
<div class="character-details-box__label">
<label data-i18n="nickname">Ksywa</label>
<input type="text" name="attr_nickname" title="@{nickname}" spellcheck="false">
</div>
<div class="character-details-box__label">
<label data-i18n="origin">Pochodzenie</label>
<input type="text" name="attr_origin" title="@{origin}" spellcheck="false">
</div>
<div class="character-details-box__label">
<label data-i18n="age">Wiek</label>
<input type="text" name="attr_age" title="@{age}" spellcheck="false">
</div>
<div class="character-details-box__label">
<label data-i18n="career">Kariera</label>
<input type="text" name="attr_career" title="@{career}" spellcheck="false">
</div>
</div>
<br>
<h2 class="hr-subtitle">
<span data-i18n="attributes">Atrybuty</span>
</h2>
<div class="attributes-container">
<div class="attributes-container__box">
<input type="number" name="attr_efficiency" value="0">
<button type="action" name="act_roll" value='&{template:omerta} {{baseRoll=[[1d6 + @{efficiency} + ?{@{summodifier}|0}]] }} {{roll-name=^{efficiency}}}' data-attribute="efficiency" data-i18n="efficiency">Sprawność</button>
</div>
<div class="attributes-container__box">
<input type="number" name="attr_charisma" value="0">
<button type="action" name="act_roll" value='&{template:omerta} {{baseRoll=[[1d6 + @{charisma} + ?{@{summodifier}|0}]] }} {{roll-name=^{charisma}}}' data-attribute="charisma" data-i18n="charisma">Charyzma</button>
</div>
<div class="attributes-container__box">
<input type="number" name="attr_senses" value="0">
<button type="action" name="act_roll" value='&{template:omerta} {{baseRoll=[[1d6 + @{senses} + ?{@{summodifier}|0}]] }} {{roll-name=^{senses}}}' data-attribute="senses" data-i18n="senses">Zmysły</button>
</div>
<div class="attributes-container__box">
<input type="number" name="attr_psyche" value="0">
<button type="action" name="act_roll" value='&{template:omerta} {{baseRoll=[[1d6 + @{psyche} + ?{@{summodifier}|0}]] }} {{roll-name=^{psyche}}}' data-attribute="psyche" data-i18n="psyche">Psychika</button>
</div>
<div class="attributes-container__box">
<input type="number" name="attr_mind" value="0">
<button type="action" name="act_roll" value='&{template:omerta} {{baseRoll=[[1d6 + @{mind} + ?{@{summodifier}|0}]] }} {{roll-name=^{mind}}}' data-attribute="mind" data-i18n="mind">Rozum</button>
</div>
</div>
<div class="row row--margin">
<div class="col-6">
<div class="title-box">
<h2 data-i18n="advantages">Zalety</h2>
<div>
<textarea name="attr_advantages" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
</div>
</div>
<div class="col-6" style="padding-right: 0;">
<div class="title-box">
<h2 data-i18n="disadvantages">Wady</h2>
<div>
<textarea name="attr_disadvantages" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="title-box">
<h2 data-i18n="moves">Ruchy</h2>
<div class="row row--textarea-box">
<div class="col-6">
<textarea name="attr_moves1" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
<div class="col-6">
<textarea name="attr_moves2" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
</div>
</div>
</div>
</div>
<div class="row row--col-no-padding">
<div class="col-6">
<div class="title-box">
<h2 data-i18n="description-color">Opis, koloryt</h2>
<textarea name="attr_description" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
</div>
<div class="col-6">
<div class="title-box">
<h2 data-i18n="equipment">Ekwipunek</h2>
<textarea name="attr_eq" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="title-box">
<h2 data-i18n="notes">Notatki</h2>
<textarea name="attr_notes" id="" cols="30" rows="6" spellcheck="false"></textarea>
</div>
</div>
</div>
</div>
<rolltemplate class="sheet-rolltemplate-omerta">
<div class="template-wrap">
<div class="template-header">
{{#character_name}}
{{#character_id}}[{{character_name}}](https://journal.roll20.net/character/{{character_id}}){{/character_id}}
{{^character_id}}{{character_name}}{{/character_id}}
{{/character_name}}
</div>
<br>
<div class="template-subtitle">
{{roll-name}}
</div>
<div class="template-roll-results-title" data-i18n="action-result">Wynik akcji</div>
<div class="template-roll-results">
<div class="template-d6">{{baseRoll}}</div>
<div>vs</div>
<div class="template-d10">
{{computed::firstD10}}
{{#rollBetween() computed::firstD10 baseRoll 12}}
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Omerta/Images/circle-xmark-solid.svg" alt="">
{{/rollBetween() computed::firstD10 baseRoll 12}}
{{#rollGreater() baseRoll computed::firstD10}}
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Omerta/Images/circle-check-solid.svg" alt="">
{{/rollGreater() baseRoll computed::firstD10}}
</div>
<div class="template-d10">
{{computed::secondD10}}
{{#rollBetween() computed::secondD10 baseRoll 12}}
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Omerta/Images/circle-xmark-solid.svg" alt="">
{{/rollBetween() computed::secondD10 baseRoll 12}}
{{#rollGreater() baseRoll computed::secondD10}}
<img src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Omerta/Images/circle-check-solid.svg" alt="">
{{/rollGreater() baseRoll computed::secondD10}}
</div>
</div>
{{#rollBetween() computed::success 2 2}}
<div class="template-roll-results-title green" data-i18n="success">Sukces</div>
{{/rollBetween() computed::success 2 2}}
{{#rollBetween() computed::success 1 1}}
<div class="template-roll-results-title blue" data-i18n="partial-success">Częściowy sukces</div>
{{/rollBetween() computed::success 1 1}}
{{#rollBetween() computed::success 0 0}}
<div class="template-roll-results-title red">
{{#rollGreater() stress_level baseRoll}}
<span data-i18n="nervous">Nerwowa</span>
{{/rollGreater() stress_level baseRoll}}
<span data-i18n="lose">Porażka</span>
</div>
{{/rollBetween() computed::success 0 0}}
{{#rollBetween() computed::swindle 1 1}}
<div class="template-roll-results-title swindle" data-i18n="swindle">Afera!</div>
{{/rollBetween() computed::swindle 1 1}}
</div>
</rolltemplate>
<script type="text/worker">
on("sheet:opened", function(eventInfo){
setAttrs({
summodifier: getTranslationByKey("summodifier"),
d10modifier: getTranslationByKey("d10modifier")
});
});
on('clicked:roll', async (event) => {
let rollBase = event.htmlAttributes.value + "{{character_name=@{character_name}}} {{character_id=@{character_id}}} {{firstD10=[[1d10]] }} {{secondD10=[[1d10]] }} {{modifierd10=[[?{@{d10modifier}|0}]]}} {{success=[[1d6]]}} {{swindle=[[1d6]]}} {{stress_level=[[@{stress_level}]]}}";
let rollResult = await startRoll(rollBase);
let computedValues = await calcComputedValues(rollResult);
finishRoll(
rollResult.rollId,
computedValues
);
});
const calcComputedValues = async (rollResult) => {
var results = rollResult.results;
var firstD10 = results.firstD10.result;
var secondD10 = results.secondD10.result;
var baseRoll = results.baseRoll.result;
var modifierd10 = results.modifierd10.result;
firstD10 += modifierd10;
secondD10 += modifierd10;
var success = 0;
if (baseRoll > firstD10) {
success += 1;
}
if (baseRoll > secondD10) {
success += 1;
}
var swindle = 0;
if (firstD10 == secondD10) {
swindle = 1;
}
var obj = {
success: success,
swindle: swindle,
firstD10: firstD10,
secondD10: secondD10
}
return obj;
};
</script>