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

2020 lines
99 KiB
HTML

<input class="sheet-version" type="hidden" name="attr_version" value="1.1"/><img src="https://i.imgur.com/9rilIHq.png"/><div class="sheet-full-page"><div class="main"><input class="sheet-tabstoggle" type="hidden" name="attr_sheetTab" value="wspolczynniki"/><div class="navigation-header"><button class="button-wspolczynniki" type="action" name="act_wspolczynniki">Współczynniki</button><button class="button-umiejetnosci" type="action" name="act_umiejetnosci">Umiejętności</button><button class="button-inwentarz" type="action" name="act_inwentarz">Inwentarz</button></div><div class="page-wspolczynniki">
<div class="umiejetnosci-holder">
<table class="charinfo">
<tbody>
<tr>
<td colspan="2">
<h5>Ksywa:</h5>
<input type="text" name="attr_ksywa" class="big-black-box">
</td>
</tr>
<tr>
<td>
<h5>Imię:</h5>
<input type="text" name="attr_first_name" class="big-black-box">
</td>
<td>
<h5>Nazwisko:</h5>
<input type="text" name="attr_last_name" class="big-black-box">
</td>
</tr>
<tr>
<td>
<h5>Specjalizacja:</h5>
<select name="attr_specjalizacja" class="big-black-box">
<option value="0">Technik</option>
<option value="1">Wojownik</option>
<option value="2">Ranger</option>
<option value="3">Cwaniak</option>
<option value="4" selected="selected">Brak</option>
</select>
</td>
</tr>
<tr>
<td>
<h5>Pochodzenie:</h5>
<input type="text" name="attr_pochodzenie" class="big-black-box">
</td>
<td>
<h5>Profesja:</h5>
<input type="text" name="attr_profesja" class="big-black-box">
</td>
</tr>
<tr>
<td colspan="2">
<h5>Choroba:</h5>
<input type="text" name="attr_choroba" class="big-black-box">
</td>
</tr>
<tr>
<td colspan="2">
<h5>Lek:</h5>
<input type="text" name="attr_lek" class="big-black-box">
</td>
</tr>
<tr>
<td>
<h5>PD:</h5>
<input type="number" name="attr_xp" value="0" style="width: 7em" class="big-black-box">
</td>
</tr>
<tr>
<td colspan="2">
<h3>Sztuczki</h3>
<fieldset class="repeating_perks">
<div class="perk">
<input type="text" value="Nazwa" name="attr_perk_name" class="subtle-black-box">
<textarea name="attr_injuries_general_desc" class="effect">Działanie:</textarea>
</div>
</fieldset>
</td>
</tr>
</tbody>
</table>
<div class="charstatus">
<table class="wspolczynniki" style="">
<input type="hidden" name="attr_zrecznosc" value="0">
<input type="hidden" name="attr_percepcja" value="0">
<input type="hidden" name="attr_charakter" value="0">
<input type="hidden" name="attr_spryt" value="0">
<input type="hidden" name="attr_budowa" value="0">
<tbody>
<tr>
<td></td>
<td>
<h2>Zr</h2>
</td>
<td>
<h2>Pc</h2>
</td>
<td>
<h2>Ch</h2>
</td>
<td>
<h2>Sp</h2>
</td>
<td>
<h2>Bd</h2>
</td>
</tr>
<tr>
<td class="label">
<h5>Współczynnik</h5>
</td>
<td>
<input type="number" class="wsp_statbase" name="attr_zrecznosc_base" min="1" max="40" value="0">
</td>
<td>
<input type="number" class="wsp_statbase" name="attr_percepcja_base" min="1" max="40" value="0">
</td>
<td>
<input type="number" class="wsp_statbase" name="attr_charakter_base" min="1" max="40" value="0">
</td>
<td>
<input type="number" class="wsp_statbase" name="attr_spryt_base" min="1" max="40" value="0">
</td>
<td>
<input type="number" class="wsp_statbase" name="attr_budowa_base" min="1" max="40" value="0">
</td>
</tr>
<tr>
<td></td>
<td><img src="https://i.imgur.com/z0tz49b.png"></td>
<td><img src="https://i.imgur.com/z0tz49b.png"></td>
<td><img src="https://i.imgur.com/z0tz49b.png"></td>
<td><img src="https://i.imgur.com/z0tz49b.png"></td>
<td><img src="https://i.imgur.com/z0tz49b.png"></td>
</tr>
<tr class="wsp_modifier">
<td class="label">
<h5>Modyfikator</h5>
<h6>Choroby, efekty</h6>
</td>
<td>
<input type="number" name="attr_mod_zrecznosc">
</td>
<td>
<input type="number" name="attr_mod_percepcja">
</td>
<td>
<input type="number" name="attr_mod_charakter">
</td>
<td>
<input type="number" name="attr_mod_spryt">
</td>
<td>
<input type="number" name="attr_mod_budowa">
</td>
</tr>
<tr>
<td></td>
<td colspan="5">
<hr/>
</td>
</tr>
<tr>
<td class="label">
<h5>Łatwy</h5>
<h6>&lt;0 % +2</h6>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_zr_df_0" value="0">
<input class="wsp-circle-display" type="number" name="attr_zr_df_0" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_pc_df_0" value="0">
<input class="wsp-circle-display" type="number" name="attr_pc_df_0" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_ch_df_0" value="0">
<input class="wsp-circle-display" type="number" name="attr_ch_df_0" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_sp_df_0" value="0">
<input class="wsp-circle-display" type="number" name="attr_sp_df_0" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_bd_df_0" value="0">
<input class="wsp-circle-display" type="number" name="attr_bd_df_0" value="0" readonly>
</td>
</tr>
<tr>
<td class="label">
<h5>Przeciętny</h5>
<h6>0 - 10 % 0</h6>
</td>
<td>
<input class="wsp-square-control" type="hidden" name="attr_zr_df_1" value="0">
<input class="wsp-square-display" type="number" name="attr_zr_df_1" value="0" readonly>
</td>
<td>
<input class="wsp-square-control" type="hidden" name="attr_pc_df_1" value="0">
<input class="wsp-square-display" type="number" name="attr_pc_df_1" value="0" readonly>
</td>
<td>
<input class="wsp-square-control" type="hidden" name="attr_ch_df_1" value="0">
<input class="wsp-square-display" type="number" name="attr_ch_df_1" value="0" readonly>
</td>
<td>
<input class="wsp-square-control" type="hidden" name="attr_sp_df_1" value="0">
<input class="wsp-square-display" type="number" name="attr_sp_df_1" value="0" readonly>
</td>
<td>
<input class="wsp-square-control" type="hidden" name="attr_bd_df_1" value="0">
<input class="wsp-square-display" type="number" name="attr_bd_df_1" value="0" readonly>
</td>
</tr>
<tr>
<td class="label">
<h5>Problematyczny</h5>
<h6>11 - 30 % -2</h6>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_zr_df_2" value="0">
<input class="wsp-circle-display" type="number" name="attr_zr_df_2" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_pc_df_2" value="0">
<input class="wsp-circle-display" type="number" name="attr_pc_df_2" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_ch_df_2" value="0">
<input class="wsp-circle-display" type="number" name="attr_ch_df_2" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_sp_df_2" value="0">
<input class="wsp-circle-display" type="number" name="attr_sp_df_2" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_bd_df_2" value="0">
<input class="wsp-circle-display" type="number" name="attr_bd_df_2" value="0" readonly>
</td>
</tr>
<tr>
<td class="label">
<h5>Trudny</h5>
<h6>31 - 60 % -5</h6>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_zr_df_3" value="0">
<input class="wsp-circle-display" type="number" name="attr_zr_df_3" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_pc_df_3" value="0">
<input class="wsp-circle-display" type="number" name="attr_pc_df_3" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_ch_df_3" value="0">
<input class="wsp-circle-display" type="number" name="attr_ch_df_3" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_sp_df_3" value="0">
<input class="wsp-circle-display" type="number" name="attr_sp_df_3" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_bd_df_3" value="0">
<input class="wsp-circle-display" type="number" name="attr_bd_df_3" value="0" readonly>
</td>
</tr>
<tr>
<td class="label">
<h5>Bardzo Trudny</h5>
<h6>61 - 90 % -8</h6>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_zr_df_4" value="0">
<input class="wsp-circle-display" type="number" name="attr_zr_df_4" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_pc_df_4" value="0">
<input class="wsp-circle-display" type="number" name="attr_pc_df_4" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_ch_df_4" value="0">
<input class="wsp-circle-display" type="number" name="attr_ch_df_4" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_sp_df_4" value="0">
<input class="wsp-circle-display" type="number" name="attr_sp_df_4" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_bd_df_4" value="0">
<input class="wsp-circle-display" type="number" name="attr_bd_df_4" value="0" readonly>
</td>
</tr>
<tr>
<td class="label">
<h5>Cholernie Trudny</h5>
<h6>91 - 120 % -11</h6>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_zr_df_5" value="0">
<input class="wsp-circle-display" type="number" name="attr_zr_df_5" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_pc_df_5" value="0">
<input class="wsp-circle-display" type="number" name="attr_pc_df_5" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_ch_df_5" value="0">
<input class="wsp-circle-display" type="number" name="attr_ch_df_5" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_sp_df_5" value="0">
<input class="wsp-circle-display" type="number" name="attr_sp_df_5" value="0" readonly>
</td>
<td>
<input class="wsp-circle-control" type="hidden" name="attr_bd_df_5" value="0">
<input class="wsp-circle-display" type="number" name="attr_bd_df_5" value="0" readonly>
</td>
</tr>
<tr>
<td class="label">
<h5>Fart</h5>
<h6>121 - ... % -15</h6>
</td>
<td>
<input class="wsp-star-control" type="hidden" name="attr_zr_df_6" value="0">
<input class="wsp-star-display" type="number" name="attr_zr_df_6" readonly>
</td>
<td>
<input class="wsp-star-control" type="hidden" name="attr_pc_df_6" value="0">
<input class="wsp-star-display" type="number" name="attr_pc_df_6" value="0" readonly>
</td>
<td>
<input class="wsp-star-control" type="hidden" name="attr_ch_df_6" value="0">
<input class="wsp-star-display" type="number" name="attr_ch_df_6" value="0" readonly>
</td>
<td>
<input class="wsp-star-control" type="hidden" name="attr_sp_df_6" value="0">
<input class="wsp-star-display" type="number" name="attr_sp_df_6" value="0" readonly>
</td>
<td>
<input class="wsp-star-control" type="hidden" name="attr_bd_df_6" value="0">
<input class="wsp-star-display" type="number" name="attr_bd_df_6" value="0" readonly>
</td>
</tr>
</tbody>
</table>
<table class="health">
<input type="hidden" name="attr_total_wounds_general" value="0">
<input type="hidden" name="attr_total_wounds_head" value="0">
<input type="hidden" name="attr_total_wounds_torso" value="0">
<input type="hidden" name="attr_total_wounds_left_hand" value="0">
<input type="hidden" name="attr_total_wounds_left_foot" value="0">
<input type="hidden" name="attr_total_wounds_right_hand" value="0">
<input type="hidden" name="attr_total_wounds_right_foot" value="0">
<input type="hidden" name="attr_total_wounds" value="0">
<input type="hidden" name="attr_total_damage_head" value="0">
<input type="hidden" name="attr_total_damage_torso" value="0">
<input type="hidden" name="attr_total_damage_left_hand" value="0">
<input type="hidden" name="attr_total_damage_left_foot" value="0">
<input type="hidden" name="attr_total_damage_right_hand" value="0">
<input type="hidden" name="attr_total_damage_right_foot" value="0">
<input type="hidden" name="attr_total_damage" value="0">
<tr>
<td class="health_section_left">
<h3>KARY RANY EFEKTY</h3>
</td>
<td rowspan="4">
<img src="https://i.imgur.com/tkRZX68.png">
</td>
<td class="health_section_right">
<p class="health_effects">
Suma Kar: <input type="number" name="attr_total_wounds" value="0" readonly> %
<br>
Draśnięć: <input type="number" name="attr_total_damage" value="0" readonly> / 27
</p>
</td>
</tr>
<tr>
<td class="health_section_left">
<span class="bodypart_title">
Tułów
</span>
<hr class="bodypart_hr">
<fieldset class="repeating_injuries-torso">
<input type="checkbox" name="attr_injury_torso_checked">
<select name="attr_injury_torso_type">
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_torso_penalty">
<span class="percent">%</span>
</fieldset>
</td>
<td class="health_section_right">
<span class="bodypart_title">
Głowa
</span>
<hr class="bodypart_hr">
<fieldset class="repeating_injuries-head">
<input type="checkbox" name="attr_injury_head_checked">
<select name="attr_injury_head_type">
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_head_penalty">
<span class="percent">%</span>
</fieldset>
</td>
</tr>
<tr>
<td class="health_section_left">
<span class="bodypart_title">
Ręka Lewa
</span>
<hr class="bodypart_hr">
<fieldset class="repeating_injuries-left-hand">
<input type="checkbox" name="attr_injury_left_hand_checked">
<select name="attr_injury_left_hand_type" value="1">>
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_left_hand_penalty">
<span class="percent">%</span>
</fieldset>
</td>
<td class="health_section_right">
<span class="bodypart_title">
Ręka Prawa
</span>
<hr class="bodypart_hr">
<fieldset class="repeating_injuries-right-hand">
<input type="checkbox" name="attr_injury_right_hand_checked">
<select name="attr_injury_right_hand_type" value="1">>
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_right_hand_penalty">
<span class="percent">%</span>
</fieldset>
</td>
</tr>
<tr>
<td class="health_section_left">
<span class="bodypart_title">
Noga Lewa
</span>
<hr class="bodypart_hr">
<fieldset class="repeating_injuries-left-foot">
<input type="checkbox" name="attr_injury_left_foot_checked">
<select name="attr_injury_left_foot_type">
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_left_foot_penalty">
<span class="percent">%</span>
</fieldset>
</td>
<td class="health_section_right">
<span class="bodypart_title">
Noga Prawa
</span>
<hr class="bodypart_hr">
<fieldset class="repeating_injuries-right-foot">
<input type="checkbox" name="attr_injury_right_foot_checked">
<select name="attr_injury_right_foot_type">
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_right_foot_penalty">
<span class="percent">%</span>
</fieldset>
</td>
</tr>
<tr>
<td colspan="3">
<span class="bodypart_title"><h3>Inne kary i Efekty</h3></span>
<fieldset class="repeating_injuries-general">
<div class="effectconfig">
<select name="attr_injury_general_type">
<option value="0" selected>-</option>
<option value="1">D</option>
<option value="3">L</option>
<option value="9">C</option>
<option value="27">K</option>
</select>
<input type="number" min="0" max="999" value="0" name="attr_injury_general_penalty">
<span class="percent">%</span>
</div>
<textarea name="attr_injuries_general_desc" class="effect">Nazwa:
Działanie:</textarea>
</fieldset>
</td>
</tr>
</table>
</div>
</div>
</div><div class="page-umiejetnosci">
<h1>Ustawienia rzutu</h1>
<input type="hidden" name="attr_final_test_penalty" value="0">
<input type="hidden" name="attr_final_test_level" value="0">
<div class="params-holder">
<div class="sheet-radios">
<input type="hidden" class="sheet-radio-selected" name="attr_final_test_level" value="0" />
<input type="hidden" class="sheet-radio" name="attr_level" value="0" />
<button type="action" name="act_level_0" class="sheet-radio sheet-radio-selected sheet-radio-0">
<span class="sheet-checked">Łatwy</span>
</button>
<button type="action" name="act_level_1" class="sheet-radio sheet-radio-selected sheet-radio-1">
<span class="sheet-checked">Przeciętny</span>
</button>
<button type="action" name="act_level_2" class="sheet-radio sheet-radio-selected sheet-radio-2">
<span class="sheet-checked">Problematyczny</span>
</button>
<button type="action" name="act_level_3" class="sheet-radio sheet-radio-selected sheet-radio-3">
<span class="sheet-checked">Trudny</span>
</button>
<button type="action" name="act_level_4" class="sheet-radio sheet-radio-selected sheet-radio-4">
<span class="sheet-checked">Bardzo Trudny</span>
</button>
<button type="action" name="act_level_5" class="sheet-radio sheet-radio-selected sheet-radio-5">
<span class="sheet-checked">Cholernie Trudny</span>
</button>
<button type="action" name="act_level_6" class="sheet-radio sheet-radio-selected sheet-radio-6">
<span class="sheet-checked">Fart</span>
</button>
<button type="action" name="act_level_7" class="sheet-radio sheet-radio-selected sheet-radio-7">
<span class="sheet-checked">Mistrzowski</span>
</button>
<button type="action" name="act_level_8" class="sheet-radio sheet-radio-selected sheet-radio-8">
<span class="sheet-checked">Arcymistrzowski</span>
</button>
</div>
<div class="param-page">
<div class="param-row">
<label><input type="checkbox" name="attr_modi_battle" value="1">Test Walki</label>
</div>
<div class="param-row">
<label><input type="checkbox" name="attr_modi_open" value="1">Test Otwarty</label>
</div>
<div class="param-row">
<label><input type="checkbox" name="attr_modi_penalties" value="1">Kary</label>
<input type="number" class="big-inactive-box" style="width: 80px;" name="attr_total_wounds" value="0" readonly>
<span class="postfix">%</span>
</div>
<div class="param-row">
<label><input type="checkbox" name="attr_modi_armor_penalties" value="1">Pancerz</label>
<input type="number" class="big-black-box" style="width: 80px;" name="attr_total_armor_penalties" value="0">
<span class="postfix">%</span>
</div>
<div class="param-row">
<label><input type="checkbox" name="attr_modi_custom_penalty" value="1">Utrudnienie</label>
<input type="number" class="big-black-box" style="width: 80px;" name="attr_custom_penalty" value="0">
<span class="postfix">%</span>
</div>
<hr>
<div class="param-row">
<label><input type="checkbox" name="attr_dummy2" class="layout-element">Rzucasz na</label>
<input type="number" class="big-inactive-box" style="width: 110px;" name="attr_final_test_penalty" value="0" readonly>
<span class="postfix">%</span>
</div>
</div>
<div class="param-page">
<div class="param-row">
<h4> === TBD ===</h4>
</div>
</div>
</div>
<h1>Umiejętności</h1>
<table class="umj-table"><tbody>
<tr>
<td rowspan=6 class="umj-stat-cell">
<span class="umj-stat-span">Zr</span>
<br/>
<button type="action" class="wsp_test_button" name="act_test_zrecznosc"></button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-walka-wrecz" name="attr_grp_walka_wrecz_flag" value="0" />
<button type="action" name="act_grp_walka_wrecz" class="group-check-box-walka-wrecz group-check-box">
<span class="group-check-box-text">Walka wręcz</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_bijatyka" value="0">
<button type="action" class="skill_test_button" name="act_test_bijatyka">Bijatyka</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_bron_reczna" value="0">
<button type="action" class="skill_test_button" name="act_test_bron_reczna">Broń ręczna</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_rzucanie" value="0">
<button type="action" class="skill_test_button" name="act_test_rzucanie">Rzucanie</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-bron-strzelecka" name="attr_grp_bron_strzelecka_flag" value="0" />
<button type="action" name="act_grp_bron_strzelecka" class="group-check-box-bron-strzelecka group-check-box">
<span class="group-check-box-text">Broń Strzelecka</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_pistolety" value="0">
<button type="action" class="skill_test_button" name="act_test_pistolety">Pistolety</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_karabiny" value="0">
<button type="action" class="skill_test_button" name="act_test_karabiny">Karabiny</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_bron_maszynowa" value="0">
<button type="action" class="skill_test_button" name="act_test_bron_maszynowa">Broń Maszynowa</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-bron-dystansowa" name="attr_grp_bron-dystansowa_flag" value="0" />
<button type="action" name="act_grp_bron-dystansowa" class="group-check-box-bron-dystansowa group-check-box">
<span class="group-check-box-text">Broń Dystansowa</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_luk" value="0">
<button type="action" class="skill_test_button" name="act_test_luk">Łuk</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_kusza" value="0">
<button type="action" class="skill_test_button" name="act_test_kusza">Kusza</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_proca" value="0">
<button type="action" class="skill_test_button" name="act_test_proca">Proca</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-prowadzenie-pojazdow" name="attr_grp_prowadzenie-pojazdow_flag" value="0" />
<button type="action" name="act_grp_prowadzenie-pojazdow" class="group-check-box-prowadzenie-pojazdow group-check-box">
<span class="group-check-box-text">Prowadzenie Pojazdów</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_samochod" value="0">
<button type="action" class="skill_test_button" name="act_test_samochod">Samochód</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_ciezarowka" value="0">
<button type="action" class="skill_test_button" name="act_test_ciezarowka">Ciężarówka</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_motocykl" value="0">
<button type="action" class="skill_test_button" name="act_test_motocykl">Motocykl</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-zdolnosci-manualne" name="attr_grp_zdolnosci-manualne_flag" value="0" />
<button type="action" name="act_grp_zdolnosci-manualne" class="group-check-box-zdolnosci-manualne group-check-box">
<span class="group-check-box-text">Zdolności Manualne</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_kradziez_kieszonkowa" value="0">
<button type="action" class="skill_test_button" name="act_test_kradziez_kieszonkowa">Kradzież k-sznk.</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_zwinne_dlonie" value="0">
<button type="action" class="skill_test_button" name="act_test_zwinne_dlonie">Zwinne dłonie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_otwieranie_zamkow" value="0">
<button type="action" class="skill_test_button" name="act_test_otwieranie_zamkow">Otwn. zamków</button>
</td>
</tr>
</tbody></table>
<table class="umj-table"><tbody>
<tr>
<td rowspan=5 class="umj-stat-cell">
<span class="umj-stat-span">Pc</span>
<br/>
<button type="action" class="wsp_test_button" name="act_test_percepcja"></button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-orientacja-w-terenie" name="attr_grp_orientacja-w-terenie_flag" value="0" />
<button type="action" name="act_grp_orientacja-w-terenie" class="group-check-box-orientacja-w-terenie group-check-box">
<span class="group-check-box-text">Orientacja w Terenie</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wyczucie_kierunku" value="0">
<button type="action" class="skill_test_button" name="act_test_wyczucie_kierunku">Wyczucie kierunku</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_tropienie" value="0">
<button type="action" class="skill_test_button" name="act_test_tropienie">Tropienie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_przygotowanie_pulapki" value="0">
<button type="action" class="skill_test_button" name="act_test_przygotowanie_pulapki">Przygot. pułapki</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-spostrzegawczosc" name="attr_grp_spostrzegawczosc_flag" value="0" />
<button type="action" name="act_grp_spostrzegawczosc" class="group-check-box-spostrzegawczosc group-check-box">
<span class="group-check-box-text">Spostrzegawczość</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_nasluchiwanie" value="0">
<button type="action" class="skill_test_button" name="act_test_nasluchiwanie">Nasłuchiwanie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wypatrywanie" value="0">
<button type="action" class="skill_test_button" name="act_test_wypatrywanie">Wypatrywanie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_czujnosc" value="0">
<button type="action" class="skill_test_button" name="act_test_czujnosc">Czujność</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-kamuflaz" name="attr_grp_kamuflaz_flag" value="0" />
<button type="action" name="act_grp_kamuflaz" class="group-check-box-kamuflaz group-check-box">
<span class="group-check-box-text">Kamuflaż</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_skradanie_sie" value="0">
<button type="action" class="skill_test_button" name="act_test_skradanie_sie">Skradanie się</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_ukrywanie_sie" value="0">
<button type="action" class="skill_test_button" name="act_test_ukrywanie_sie">Ukrywanie się</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_maskowanie" value="0">
<button type="action" class="skill_test_button" name="act_test_maskowanie">Maskowanie</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-przetrwanie" name="attr_grp_przetrwanie_flag" value="0" />
<button type="action" name="act_grp_przetrwanie" class="group-check-box-przetrwanie group-check-box">
<span class="group-check-box-text">Przetrwanie</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_lowiectwo" value="0">
<button type="action" class="skill_test_button" name="act_test_lowiectwo">Łowiectwo</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_zdobywanie_wody" value="0">
<button type="action" class="skill_test_button" name="act_test_zdobywanie_wody">Zdobywanie wody</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_znajomosc_terenu" value="0">
<button type="action" class="skill_test_button" name="act_test_znajomosc_terenu">Znajomość terenu</button>
</td>
</tr>
</tbody></table>
<table class="umj-table"><tbody>
<tr>
<td rowspan=5 class="umj-stat-cell">
<span class="umj-stat-span">Ch</span>
<br/>
<button type="action" class="wsp_test_button" name="act_test_charakter"></button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-negocjacje" name="attr_grp_negocjacje_flag" value="0" />
<button type="action" name="act_grp_negocjacje" class="group-check-box-negocjacje group-check-box">
<span class="group-check-box-text">Negocjacje</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_perswazja" value="0">
<button type="action" class="skill_test_button" name="act_test_perswazja">Perswazja</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_zastraszanie" value="0">
<button type="action" class="skill_test_button" name="act_test_zastraszanie">Zastraszanie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_zdolnosci_przywodcze" value="0">
<button type="action" class="skill_test_button" name="act_test_zdolnosci_przywodcze">Zdol. przywódcze</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-empatia" name="attr_grp_empatia_flag" value="0" />
<button type="action" name="act_grp_empatia" class="group-check-box-empatia group-check-box">
<span class="group-check-box-text">Empatia</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_postrzeganie_emocji" value="0">
<button type="action" class="skill_test_button" name="act_test_postrzeganie_emocji">Postrz. emocji</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_blef" value="0">
<button type="action" class="skill_test_button" name="act_test_blef">Blef</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_opieka_nad_zwierzetami" value="0">
<button type="action" class="skill_test_button" name="act_test_opieka_nad_zwierzetami">Opieka nad zwrz.</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-sila-woli" name="attr_grp_sila-woli_flag" value="0" />
<button type="action" name="act_grp_sila-woli" class="group-check-box-sila-woli group-check-box">
<span class="group-check-box-text">Siła woli</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_odpornosc_na_bol" value="0">
<button type="action" class="skill_test_button" name="act_test_odpornosc_na_bol">Odporność na ból</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_niezlomnosc" value="0">
<button type="action" class="skill_test_button" name="act_test_niezlomnosc">Niezłomność</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_morale" value="0">
<button type="action" class="skill_test_button" name="act_test_morale">Morale</button>
</td>
</tr>
</tbody></table>
<table class="umj-table"><tbody>
<tr>
<td rowspan=7 class="umj-stat-cell">
<span class="umj-stat-span">Sp</span>
<br/>
<button type="action" class="wsp_test_button" name="act_test_spryt"></button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-medycyna" name="attr_grp_medycyna_flag" value="0" />
<button type="action" name="act_grp_medycyna" class="group-check-box-medycyna group-check-box">
<span class="group-check-box-text">Medycyna</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_leczenie_ran" value="0">
<button type="action" class="skill_test_button" name="act_test_leczenie_ran">Leczenie ran</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_leczenie_chorob" value="0">
<button type="action" class="skill_test_button" name="act_test_leczenie_chorob">Leczenie chorób</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_pierwsza_pomoc" value="0">
<button type="action" class="skill_test_button" name="act_test_pierwsza_pomoc">Pierwsza pomoc</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-technika" name="attr_grp_technika_flag" value="0" />
<button type="action" name="act_grp_technika" class="group-check-box-technika group-check-box">
<span class="group-check-box-text">Technika</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_mechanika" value="0">
<button type="action" class="skill_test_button" name="act_test_mechanika">Mechanika</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_elektronika" value="0">
<button type="action" class="skill_test_button" name="act_test_elektronika">Elektronika</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_komputery" value="0">
<button type="action" class="skill_test_button" name="act_test_komputery">Komputery</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-sprzet" name="attr_grp_sprzet_flag" value="0" />
<button type="action" name="act_grp_sprzet" class="group-check-box-sprzet group-check-box">
<span class="group-check-box-text">Sprzęt</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_maszyny_ciezkie" value="0">
<button type="action" class="skill_test_button" name="act_test_maszyny_ciezkie">Maszyny ciężkie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wozy_bojowe" value="0">
<button type="action" class="skill_test_button" name="act_test_wozy_bojowe">Wozy bojowe</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_kutry" value="0">
<button type="action" class="skill_test_button" name="act_test_kutry">Kutry</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-pirotechnika" name="attr_grp_pirotechnika_flag" value="0" />
<button type="action" name="act_grp_pirotechnika" class="group-check-box-pirotechnika group-check-box">
<span class="group-check-box-text">Pirotechnika</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_rusznikarstwo" value="0">
<button type="action" class="skill_test_button" name="act_test_rusznikarstwo">Rusznikarstwo</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wyrzutnie" value="0">
<button type="action" class="skill_test_button" name="act_test_wyrzutnie">Wyrzutnie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_materialy_wybuchowe" value="0">
<button type="action" class="skill_test_button" name="act_test_materialy_wybuchowe">Mat. wybuchowe</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-wiedza-ogolna-1" name="attr_grp_wiedza-ogolna-1_flag" value="0" />
<button type="action" name="act_grp_wiedza-ogolna-1" class="group-check-box-wiedza-ogolna-1 group-check-box">
<span class="group-check-box-text">Wiedza ogólna</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wogl0" value="0">
<button type="action" class="skill_test_button" name="act_test_wogl0">Test wiedzy</button>
<input type="text" class="skill_wogl_label" name="attr_wogl0_label" value="">
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wogl1" value="0">
<button type="action" class="skill_test_button" name="act_test_wogl1">Test wiedzy</button>
<input type="text" class="skill_wogl_label" name="attr_wogl1_label" value="">
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wogl2" value="0">
<button type="action" class="skill_test_button" name="act_test_wogl2">Test wiedzy</button>
<input type="text" class="skill_wogl_label" name="attr_wogl2_label" value="">
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-wiedza-ogolna-2" name="attr_grp_wiedza-ogolna-2_flag" value="0" />
<button type="action" name="act_grp_wiedza-ogolna-2" class="group-check-box-wiedza-ogolna-2 group-check-box">
<span class="group-check-box-text">Wiedza ogólna</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wogl3" value="0">
<button type="action" class="skill_test_button" name="act_test_wogl3">Test wiedzy</button>
<input type="text" class="skill_wogl_label" name="attr_wogl3_label" value="">
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wogl4" value="0">
<button type="action" class="skill_test_button" name="act_test_wogl4">Test wiedzy</button>
<input type="text" class="skill_wogl_label" name="attr_wogl4_label" value="">
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wogl5" value="0">
<button type="action" class="skill_test_button" name="act_test_wogl5">Test wiedzy</button>
<input type="text" class="skill_wogl_label" name="attr_wogl5_label" value="">
</td>
</tr>
</tbody></table>
<table class="umj-table"><tbody>
<tr>
<td rowspan=5 class="umj-stat-cell">
<span class="umj-stat-span">Bd</span>
<br/>
<button type="action" class="wsp_test_button" name="act_test_budowa"></button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-sprawnosc" name="attr_grp_sprawnosc_flag" value="0" />
<button type="action" name="act_grp_sprawnosc" class="group-check-box-sprawnosc group-check-box">
<span class="group-check-box-text">Sprawność</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_plywanie" value="0">
<button type="action" class="skill_test_button" name="act_test_plywanie">Pływanie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_wspinaczka" value="0">
<button type="action" class="skill_test_button" name="act_test_wspinaczka">Wspinaczka</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_kondycja" value="0">
<button type="action" class="skill_test_button" name="act_test_kondycja">Kondycja</button>
</td>
</tr>
<tr>
<td class="umj-group-cell">
<div class="group-check-container">
<input type="hidden" class="group-check-box-jezdziectwo" name="attr_grp_jezdziectwo_flag" value="0" />
<button type="action" name="act_grp_jezdziectwo" class="group-check-box-jezdziectwo group-check-box">
<span class="group-check-box-text">Jeździectwo</span>
</button>
</div>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_jazda_konna" value="0">
<button type="action" class="skill_test_button" name="act_test_jazda_konna">Jazda Konna</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_powozenie" value="0">
<button type="action" class="skill_test_button" name="act_test_powozenie">Powozenie</button>
</td>
<td class="umj-skill-cell">
<input type="number" name="attr_ujezdzanie" value="0">
<button type="action" class="skill_test_button" name="act_test_ujezdzanie">Ujeżdżanie</button>
</td>
</tr>
</tbody></table>
<h1>Tabela PD</h1>
<table class="GeneratedTable">
<thead>
<tr>
<th>PD na poziom</th>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
<th>5</th>
<th>6</th>
<th>7</th>
<th>8</th>
<th>9</th>
<th>10</th>
<th>11</th>
<th>12</th>
<th>13</th>
<th>14</th>
<th>15</th>
<th>16</th>
<th>17</th>
<th>18</th>
<th>19</th>
<th>20</th>
</tr>
</thead>
<tbody>
<tr>
<th style="text-align: left;">Umiejętność poza specjalizacją</th>
<td>200</td>
<td>60</td>
<td>90</td>
<td>200</td>
<td>250</td>
<td>300</td>
<td>350</td>
<td>800</td>
<td>1000</td>
<td>1100</td>
<td>2400</td>
<td>2600</td>
<td>2800</td>
<td>3000</td>
<td>3200</td>
<td>3400</td>
<td>3600</td>
<td>3000</td>
<td>3800</td>
<td>4000</td>
</tr>
<tr style="color:rgb(155, 0, 0);">
<th style="color:white; text-align: left;">Umiejętność w specjalizacji</th>
<td>200</td>
<td>48</td>
<td>72</td>
<td>160</td>
<td>200</td>
<td>240</td>
<td>280</td>
<td>640</td>
<td>720</td>
<td>800</td>
<td>880</td>
<td>1920</td>
<td>2080</td>
<td>2240</td>
<td>2400</td>
<td>2560</td>
<td>2720</td>
<td>2880</td>
<td>3040</td>
<td>3200</td>
</tr>
<tr>
<th style="text-align: left;">Współczynnik</th>
<td colspan="5"></td>
<td>600</td>
<td>700</td>
<td>800</td>
<td>900</td>
<td>1000</td>
<td>1100</td>
<td>1200</td>
<td>1300</td>
<td>1400</td>
<td>1500</td>
<td>3200</td>
<td>3400</td>
<td>3600</td>
<td>3800</td>
<td>6000</td>
</tr>
</tbody>
</table>
<!-- Codes by Quackit.com -->
</div><div class="page-inwentarz">
<h1>INWENTARZ</h1>
<h3>Uzbrojenie</h3>
<h5>Broń Ręczna</h5>
<fieldset class="repeating_meleeweapons">
<button type='roll'
value='&{template:default} {{name=@{name}}} {{weapon=@{mweapon_name}}} {{verb=swings}} {{target=@{target|character_name}}} {{attack=}} '
name='roll_weapon_melee_attack'></button>
<input type="text" name="attr_mweapon_name" placeholder="Nazwa Broni"/>
+A
<input type="number" name="attr_atak_plus" placeholder="+A"/>
+O
<input type="number" name="attr_obrona_plus" placeholder="+O"/>
<br>
<textarea name="attr_mweapon_notes" rows="1" cols="5" placeholder="Reguły"></textarea>
<br>
</fieldset>
<h5>Broń Palna</h5>
<fieldset class="repeating_rangedweapons">
<button type='roll'
value='&{template:default} {{name=@{name}}} {{weapon=@{rweapon_name}}} {{verb=fires}} {{attack=}}'
name='roll_weapon_attack'></button>
<input type="text" name="attr_rweapon_name" placeholder="Nazwa Broni"/>
Zacięcie<input type="text" name="attr_rweapon_zaciecie" placeholder="Zacięcie"/>
PP<input type="number" name="attr_pp" placeholder="PP"/>
<br>
Mag<input type="number" name="attr_mag" placeholder="Mag"/>/<input type="number" name="attr_max_mag" placeholder="Max Mag"/>
<br>
Szybkostrzelność<input type="number" name="attr_szybkostrzelnosc" placeholder="Szybkostrzelność"/>
<textarea name="attr_rweapon_notes" rows="1" cols="5" placeholder="Reguły"></textarea>
<br>
</fieldset>
<hr>
<h3>Pancerz</h3>
<fieldset class="repeating_armor">
<textarea name="attr_armor_notes" rows="1" cols="5" placeholder="Pancerz"></textarea>
</fieldset>
<hr>
<h3>Reputacja</h3>
<fieldset class="repeating_reputacja">
<textarea name="attr_reputacja_notes" rows="1" cols="5" placeholder="Reputacja"></textarea>
</fieldset>
<hr>
<h3>Przyjaciele i znajomi</h3>
<fieldset class="repeating_przyjaciele">
<textarea name="attr_przyjaciele_notes" rows="1" cols="5" placeholder="Przyjaciele i znajomi"></textarea>
</fieldset>
<hr>
<h3>Przedmioty</h3>
<fieldset class="repeating_items">
<input type="number" name="attr_item_count" placeholder="#"/>
<input type="text" name="attr_item" placeholder="Item" style="width: 10em"/>
<input type="number" step=any name="attr_item_enc" placeholder="Enc" style="width: 6em"/> kg
<input type="text" name="attr_item_notes" placeholder="Item Notes"/>
</fieldset>
<hr>
<h4>Notatki</h4>
<fieldset class="repeating_skills">
<textarea name="attr_character_notes" rows="4" cols="10" placeholder="Notes" style="max-height: 10em;"></textarea>
</fieldset>
<hr>
</div></div></div><script type="text/worker">/* ===== PARAMETERS ==========
destinations = the name of the attribute that stores the total quantity
section = name of repeating fieldset, without the repeating_
fields = the name of the attribute field to be summed
can be a single attribute: 'weight'
or an array of attributes: ['weight','number','equipped']
extras: everything after the fields parameter is optional and can be in any order:
'ceil'
'round'
'floor'
'ceil: 3'
'round: -2'
'round: equipment_weight, equipment_cost|2
you want to round the final total.
If you supply a field name, it will round just that total. You can supply multiple fields, separated by commas.
If you supply a number, it will round to that many digits.
round:1 rounds to tenths; floor:-3 rounds down to thousands, so 3567 would be shown as 3000.
If you dont supply a number, it assumes 0, and returns an integer (whole numbers).
IMPORTANT: if you list ANY field, then ALL fields to be rounded must be specifically stated.
Don't do this: floor:equipment_weight|2, round,
'multiplier: 2'
'multiplier:equipment_weight|2'
'multiplier: equipment_weight|2, equipment_cost|3'
Multiplier will apply a multiple to the final total. You can multiple all fields, or specific fields.
It doesnt apply to attributes being added from outside the repeating section.
Multiplier can be negative, representing a subtraction.
'an_attribute'
'an_attribute:-1'
'an_attribute:0.5'
'an_attribute:equipment_cost'
'an_attribute:equipment_cost|-1'
'an_attribute:equipment_cost|-1,equipment_weight|2'
You can also list attributes from outside the repeating section. Don't try to add attributes from other repeating sections.
by default, the listed attribute will be added to all fields.
You can list one or more fields, and it will only be added to those fields.
You can list a number: the attribute will be multiplied by that amount. So -1 subtracts the attribute.
*/
const repeatingSum = (destinations, section, fields) => {
if (!Array.isArray(destinations)) destinations = [destinations.replace(/\s/g, '').split(',')];
if (!Array.isArray(fields)) fields = [fields.replace(/\s/g, '').split(',')];
getSectionIDs(`repeating_${section}`, idArray => {
const attrArray = idArray.reduce((m, id) => [...m, ...(fields.map(field => `repeating_${section}_${id}_${field}`))], []);
getAttrs([...attrArray], v => {
const getValue = (section, id, field) => v[`repeating_${section}_${id}_${field}`] === 'on' ? 1 : parseFloat(v[`repeating_${section}_${id}_${field}`]) || 0;
const commonMultipliers = (fields.length <= destinations.length) ? [] : fields.splice(destinations.length, fields.length - destinations.length);
const output = {};
destinations.forEach((destination, index) => {
output[destination] = idArray.reduce((total, id) => total + getValue(section, id, fields[index]) * commonMultipliers.reduce((subtotal, mult) => subtotal * getValue(section, id, mult), 1), 0);
});
setAttrs(output);
});
});
};
function clamp(number, min, max) {
return Math.max(min, Math.min(number, max));
}
/******************************************************************/
/****************************** TABS ******************************/
const buttonlist = ["wspolczynniki","umiejetnosci","inwentarz"];
buttonlist.forEach(button => {
on(`clicked:${button}`, function() {
setAttrs({
sheetTab: button
});
});
});
/****************************** TABS ******************************/
/******************************************************************/
/******************************************************************/
/**************************** FIELDSETS ***************************/
on('change:repeating_injuries-general:injury_general_penalty remove:repeating_injuries-general', function() {
repeatingSum("total_wounds_general","injuries-general","injury_general_penalty");
});
on('change:repeating_injuries-head:injury_head_penalty remove:repeating_injuries-head', function() {
repeatingSum("total_wounds_head","injuries-head","injury_head_penalty");
});
on('change:repeating_injuries-torso:injury_torso_penalty remove:repeating_injuries-torso', function() {
repeatingSum("total_wounds_torso","injuries-torso","injury_torso_penalty");
});
on('change:repeating_injuries-left-hand:injury_left_hand_penalty remove:repeating_injuries-left-hand', function() {
repeatingSum("total_wounds_left_hand","injuries-left-hand","injury_left_hand_penalty");
});
on('change:repeating_injuries-left-foot:injury_left_foot_penalty remove:repeating_injuries-left-foot', function() {
repeatingSum("total_wounds_left_foot","injuries-left-foot","injury_left_foot_penalty");
});
on('change:repeating_injuries-right-hand:injury_right_hand_penalty remove:repeating_injuries-right-hand', function() {
repeatingSum("total_wounds_right_hand","injuries-right-hand","injury_right_hand_penalty");
});
on('change:repeating_injuries-right-foot:injury_right_foot_penalty remove:repeating_injuries-right-foot', function() {
repeatingSum("total_wounds_right_foot","injuries-right-foot","injury_right_foot_penalty");
});
on('change:total_wounds_general change:total_wounds_head change:total_wounds_torso change:total_wounds_left_hand change:total_wounds_left_foot change:total_wounds_right_hand change:total_wounds_right_foot', function () {
getAttrs(["total_wounds_general", "total_wounds_head", "total_wounds_torso", "total_wounds_left_hand",
"total_wounds_left_foot", "total_wounds_right_hand", "total_wounds_right_foot"], function(values) {
let wounds = parseInt(values.total_wounds_general||0) +
parseInt(values.total_wounds_head||0) +
parseInt(values.total_wounds_torso||0) +
parseInt(values.total_wounds_left_hand||0) +
parseInt(values.total_wounds_left_foot||0) +
parseInt(values.total_wounds_right_hand||0) +
parseInt(values.total_wounds_right_foot||0);
setAttrs({"total_wounds":wounds});
});
});
on('change:repeating_injuries-general:injury_general_type remove:repeating_injuries-general', function() {
repeatingSum("total_damage_general","injuries-general","injury_general_type");
});
on('change:repeating_injuries-head:injury_head_type remove:repeating_injuries-head', function() {
repeatingSum("total_damage_head","injuries-head","injury_head_type");
});
on('change:repeating_injuries-torso:injury_torso_type remove:repeating_injuries-torso', function() {
repeatingSum("total_damage_torso","injuries-torso","injury_torso_type");
});
on('change:repeating_injuries-left-hand:injury_left_hand_type remove:repeating_injuries-left-hand', function() {
repeatingSum("total_damage_left_hand","injuries-left-hand","injury_left_hand_type");
});
on('change:repeating_injuries-left-foot:injury_left_foot_type remove:repeating_injuries-left-foot', function() {
repeatingSum("total_damage_left_foot","injuries-left-foot","injury_left_foot_type");
});
on('change:repeating_injuries-right-hand:injury_right_hand_type remove:repeating_injuries-right-hand', function() {
repeatingSum("total_damage_right_hand","injuries-right-hand","injury_right_hand_type");
});
on('change:repeating_injuries-right-foot:injury_right_foot_type remove:repeating_injuries-right-foot', function() {
repeatingSum("total_damage_right_foot","injuries-right-foot","injury_right_foot_type");
});
on('change:total_damage_general change:total_damage_head change:total_damage_torso change:total_damage_left_hand change:total_damage_left_foot change:total_damage_right_hand change:total_damage_right_foot', function () {
getAttrs(["total_damage_general", "total_damage_head", "total_damage_torso", "total_damage_left_hand",
"total_damage_left_foot", "total_damage_right_hand", "total_damage_right_foot"], function(values) {
let damage = parseInt(values.total_damage_general||0) +
parseInt(values.total_damage_head||0) +
parseInt(values.total_damage_torso||0) +
parseInt(values.total_damage_left_hand||0) +
parseInt(values.total_damage_left_foot||0) +
parseInt(values.total_damage_right_hand||0) +
parseInt(values.total_damage_right_foot||0);
setAttrs({"total_damage":damage});
});
});
/**************************** FIELDSETS ***************************/
/******************************************************************/
/******************************************************************/
/******************* BASE STATS / WSPÓŁCZYNNIKI *******************/
on("change:zrecznosc_base change:mod_zrecznosc change:percepcja_base change:mod_percepcja change:charakter_base change:mod_charakter change:spryt_base change:mod_spryt change:budowa_base change:mod_budowa sheet:opened", function() {
getAttrs([ "zrecznosc_base","mod_zrecznosc",
"percepcja_base","mod_percepcja",
"charakter_base","mod_charakter",
"spryt_base","mod_spryt",
"budowa_base", "mod_budowa"], function(values) {
let zr_b = clamp((parseInt(values.zrecznosc_base)||0), 1, 40);
let pc_b = clamp((parseInt(values.percepcja_base)||0), 1, 40);
let ch_b = clamp((parseInt(values.charakter_base)||0), 1, 40);
let sp_b = clamp((parseInt(values.spryt_base)||0), 1, 40);
let bd_b = clamp((parseInt(values.budowa_base)||0), 1, 40);
let zr = zr_b + (parseInt(values.mod_zrecznosc)||0);
let pc = pc_b + (parseInt(values.mod_percepcja)||0);
let ch = ch_b + (parseInt(values.mod_charakter)||0);
let sp = sp_b + (parseInt(values.mod_spryt)||0);
let bd = bd_b + (parseInt(values.mod_budowa)||0);
setAttrs({
"zr_df_0": zr+2,
"pc_df_0": pc+2,
"ch_df_0": ch+2,
"sp_df_0": sp+2,
"bd_df_0": bd+2,
"zr_df_1": zr,
"pc_df_1": pc,
"ch_df_1": ch,
"sp_df_1": sp,
"bd_df_1": bd,
"zrecznosc_base": zr_b,
"percepcja_base": pc_b,
"charakter_base": ch_b,
"spryt_base": sp_b,
"budowa_base": bd_b,
"zrecznosc": zr,
"percepcja": pc,
"charakter": ch,
"spryt": sp,
"budowa": bd,
"zr_df_2": zr-2,
"pc_df_2": pc-2,
"ch_df_2": ch-2,
"sp_df_2": sp-2,
"bd_df_2": bd-2,
"zr_df_3": zr-5,
"pc_df_3": pc-5,
"ch_df_3": ch-5,
"sp_df_3": sp-5,
"bd_df_3": bd-5,
"zr_df_4": zr-8,
"pc_df_4": pc-8,
"ch_df_4": ch-8,
"sp_df_4": sp-8,
"bd_df_4": bd-8,
"zr_df_5": zr-11,
"pc_df_5": pc-11,
"ch_df_5": ch-11,
"sp_df_5": sp-11,
"bd_df_5": bd-11,
"zr_df_6": zr-15,
"pc_df_6": pc-15,
"ch_df_6": ch-15,
"sp_df_6": sp-15,
"bd_df_6": bd-15,
});
});
});
/******************* BASE STATS / WSPÓŁCZYNNIKI *******************/
/******************************************************************/
/******************************************************************/
/************************** ROLL PARAMETERS ***********************/
const difficulties = [-2,0,2,5,8,11,15, 20, 24];
const startingPercent = [-20, 0, 11, 31, 61, 91, 121, 201, 241];
const lastPassingPercent = [-1,10,30,60,90,120,200, 240, 0xFFFFFF];
const levelRadioValues = ["0","1","2","3","4","5","6","7","8"];
const levelLabels = ["Łatwy", "Przeciętny", "Problematyczny", "Trudny", "Bardzo Trudny", "Cholernie Trudny", "Fart", "Mistrzowski", "Arcymistrzowski"];
levelRadioValues.forEach(function(value) {
on(`clicked:level_${value}`, function() {
setAttrs({
["level"]: value
});
});
});
on("change:level change:modi_battle change:modi_open change:modi_penalties change:total_wounds change:modi_armor_penalties change:total_armor_penalties change:custom_penalty change:modi_custom_penalty", function() {
getAttrs([ "level", "modi_battle","modi_open", "modi_penalties","total_wounds",
"modi_armor_penalties","total_armor_penalties", "custom_penalty", "modi_custom_penalty"], function(values) {
let level = ((parseInt(values.level))||0);
let modi_penalties = (parseInt(values.modi_penalties)||0);
let total_wounds = (parseInt(values.total_wounds)||0);
let modi_armor_penalties = (parseInt(values.modi_armor_penalties)||0);
let total_armor_penalties = (parseInt(values.total_armor_penalties)||0);
let custom_penalty = (parseInt(values.custom_penalty)||0);
let modi_custom_penalty = (parseInt(values.modi_custom_penalty)||0);
let final_test_penalty =( startingPercent[level] +
( modi_penalties ? total_wounds : 0 ) +
( modi_armor_penalties ? total_armor_penalties: 0 ) +
( modi_custom_penalty ? custom_penalty : 0 )
);
let final_test_level = 0;
while( final_test_penalty > lastPassingPercent[final_test_level] ) {
final_test_level++;
if(final_test_level >= lastPassingPercent.length ) {
final_test_level = (lastPassingPercent.length - 1);
break;
}
}
let final_test_level_label = levelLabels[final_test_level];
setAttrs({
"final_test_level": final_test_level,
"final_test_penalty": final_test_penalty,
"final_test_level_display": final_test_level_label
});
});
});
/************************** ROLL PARAMETERS ***********************/
/******************************************************************/
/******************************************************************/
/*************************** ROLL HANDLERS ************************/
const wsplist = [
"zrecznosc",
"percepcja",
"charakter",
"spryt",
"budowa"
];
const W_ZR = "zrecznosc";
const W_PC = "percepcja";
const W_CH = "charakter";
const W_SP = "spryt";
const W_BD = "budowa";
const wsp2accusative = {
"zrecznosc":"zręczność",
"percepcja":"percepcję",
"charakter":"charakter",
"spryt":"spryt",
"budowa":"budowę"
};
const statslist = [
"bijatyka", "bron_reczna", "rzucanie",
"pistolety", "karabiny", "bron_maszynowa",
"luk", "kusza", "proca",
"samochod", "ciezarowka", "motocykl",
"kradziez_kieszonkowa", "zwinne_dlonie", "otwieranie_zamkow",
"wyczucie_kierunku", "tropienie", "przygotowanie_pulapki",
"nasluchiwanie", "wypatrywanie", "czujnosc",
"skradanie_sie", "ukrywanie_sie", "maskowanie",
"lowiectwo", "zdobywanie_wody", "znajomosc_terenu",
"perswazja", "zastraszanie", "zdolnosci_przywodcze",
"postrzeganie_emocji", "blef", "opieka_nad_zwierzetami",
"odpornosc_na_bol", "niezlomnosc", "morale",
"leczenie_ran", "leczenie_chorob", "pierwsza_pomoc",
"mechanika", "elektronika", "komputery",
"maszyny_ciezkie", "wozy_bojowe", "kutry",
"rusznikarstwo", "wyrzutnie", "materialy_wybuchowe",
"wogl0", "wogl1", "wogl2",
"wogl3", "wogl4", "wogl5",
"plywanie", "wspinaczka", "kondycja",
"jazda_konna", "powozenie", "ujezdzanie"
];
const stats2wsp = {
"bijatyka" : W_ZR, "bron_reczna":W_ZR, "rzucanie":W_ZR,
"pistolety":W_ZR, "karabiny": "zrecznosc", "bron_maszynowa":W_ZR,
"luk":W_ZR, "kusza":W_ZR, "proca":W_ZR,
"samochod":W_ZR, "ciezarowka":W_ZR, "motocykl":W_ZR,
"kradziez_kieszonkowa":W_ZR, "zwinne_dlonie":W_ZR, "otwieranie_zamkow":W_ZR,
"wyczucie_kierunku":W_PC, "tropienie":W_PC, "przygotowanie_pulapki":W_PC,
"nasluchiwanie":W_PC, "wypatrywanie":W_PC, "czujnosc":W_PC,
"skradanie_sie":W_PC, "ukrywanie_sie":W_PC, "maskowanie":W_PC,
"lowiectwo":W_PC, "zdobywanie_wody":W_PC, "znajomosc_terenu":W_PC,
"perswazja":W_CH, "zastraszanie":W_CH, "zdolnosci_przywodcze":W_CH,
"postrzeganie_emocji":W_CH, "blef":W_CH, "opieka_nad_zwierzetami":W_CH,
"odpornosc_na_bol":W_CH, "niezlomnosc":W_CH, "morale":W_CH,
"leczenie_ran":W_SP, "leczenie_chorob":W_SP, "pierwsza_pomoc":W_SP,
"mechanika":W_SP, "elektronika":W_SP, "komputery":W_SP,
"maszyny_ciezkie":W_SP, "wozy_bojowe":W_SP, "kutry":W_SP,
"rusznikarstwo":W_SP, "wyrzutnie":W_SP, "materialy_wybuchowe":W_SP,
"wogl0":W_SP, "wogl1":W_SP, "wogl2":W_SP,
"wogl3":W_SP, "wogl4":W_SP, "wogl5":W_SP,
"plywanie":W_BD, "wspinaczka":W_BD, "kondycja":W_BD,
"jazda_konna":W_BD, "powozenie":W_BD, "ujezdzanie":W_BD
};
stats2genitive = {
"bijatyka":"bijatyki", "bron_reczna":"walki bronią białą", "rzucanie":"rzucania",
"pistolety":"strzelania z broni krótkiej", "karabiny":"strzelania z broni długiej", "bron_maszynowa":"strzelania z broni maszynowej",
"luk":"łucznictwa", "kusza":"kusznictwa", "proca":"procarstwa",
"samochod":"prowadzenia samochodu", "ciezarowka":"prowadzenia samochodu ciężarowego", "motocykl":"prowadzenia motocyklu",
"kradziez_kieszonkowa":"kradzieży kieszonkowej", "zwinne_dlonie":"zwinnych dłoni", "otwieranie_zamkow":"otwierania zamków",
"wyczucie_kierunku":"wyczucia kierunku", "tropienie":"tropienia", "przygotowanie_pulapki":"przygotowania pułapki",
"nasluchiwanie":"nasłuchiwania", "wypatrywanie":"wypatrywania", "czujnosc":"czujności",
"skradanie_sie":"skradania się", "ukrywanie_sie":"ukrywania się", "maskowanie":"maskowania",
"lowiectwo":"łowiectwa", "zdobywanie_wody":"zdobywania wody", "znajomosc_terenu":"znajomości terenu",
"perswazja":"persfazji", "zastraszanie":"zastraszania", "zdolnosci_przywodcze":"zdolności przywódczych",
"postrzeganie_emocji":"postrzegania emocji", "blef":"blefu", "opieka_nad_zwierzetami":"opieki nad zwierzętami",
"odpornosc_na_bol":"odporności na ból", "niezlomnosc":"niezłomności", "morale":"morale",
"leczenie_ran":"leczenia ran", "leczenie_chorob":"leczenia chorób", "pierwsza_pomoc":"pierwszej pomocy",
"mechanika":"mechaniki", "elektronika":"elektroniki", "komputery":"komputerów",
"maszyny_ciezkie":"znajomości maszyn ciężkich", "wozy_bojowe":"prowadzenia wozów bojowych", "kutry":"sterowania kutrem",
"rusznikarstwo":"rusznikarstwa", "wyrzutnie":"obsługi wyrzutni", "materialy_wybuchowe":"znajomości materiałów wybuchowych",
"wogl0":"UNSET", "wogl1":"UNSET", "wogl2":"UNSET",
"wogl3":"UNSET", "wogl4":"UNSET", "wogl5":"UNSET",
"plywanie":"pływania", "wspinaczka":"wspinaczki", "kondycja":"kondycji",
"jazda_konna":"jeździectwa", "powozenie":"powożenia", "ujezdzanie":"ujeżdżania",
}
const wogl_labels = [
"wogl0_label", "wogl1_label", "wogl2_label", "wogl3_label", "wogl4_label", "wogl5_label"
];
wogl_labels.forEach((label) => {
on(`change:${label} remove:${label} sheet:opened`, () => {
getAttrs([label], (values) => {
let skillid = label.split("_")[0];
let skillname = String(values[label]);
skillname = skillname.length > 0 ? skillname : "niewiedzy";
stats2genitive[skillid] = `wiedzy ogólnej (${skillname})`;
});
});
});
statslist.forEach((attribute) => {
on(`change:${attribute}`, () => {
getAttrs([attribute], (values) => {
let statval = (parseInt(values[attribute])||0);
statval = clamp(statval, 0, 20);
let dictionary = {};
dictionary[attribute] = statval;
setAttrs(dictionary);
});
});
on(`clicked:test_${attribute}`, (info) => {
let genitive = stats2genitive[attribute];
let skill_wsp_name = stats2wsp[attribute];
let wsp_name = wsp2accusative[skill_wsp_name]
startRoll(`&{template:test} {{base_wsp_name=${wsp_name}}} {{open=[[0[computed value]]]}} {{successes=[[0[computed value]]]}} {{finaldifficulty=[[0[computed value]]]}} {{skill-name=${genitive}}} {{roll1=[[1d20]]}} {{roll2=[[1d20]]}} {{roll3=[[1d20]]}}`, (results) => {
let base_wsp = stats2wsp[attribute];
getAttrs(["final_test_level", "modi_battle", "modi_open", base_wsp, attribute], function(values) {
let skill = (parseInt(values[attribute])||0);
let statbase = parseInt(values[base_wsp]);
let modi_battle = (parseInt(values.modi_battle)||0);
let modi_open = (parseInt(values.modi_open)||0);
let skill_remaining = skill;
let final_test_level = (parseInt(values.final_test_level)||0);
const vals = [results.results.roll1.result, results.results.roll2.result, results.results.roll3.result];
let x = 0;
if( !modi_battle ){
// Slider - no skill means test is harder by 1 level. Git gud.
let advantage = skill ? parseInt(skill/4) : -1;
final_test_level -= advantage;
}
// Critical rolls ( 1 / 20 )
for (x=0; x<3; ++x) {
if(vals[x]==1)
{
final_test_level -= 1;
}
if(vals[x]==20)
{
final_test_level += 1;
}
}
// Constrain
final_test_level = final_test_level < 0 ? 0 : (final_test_level > 8 ? 8 : final_test_level);
// Successes and failures
let dice_style = [3,3,3];
let vals_s = vals.concat().sort(function(a, b){return a-b});;
let statreq = statbase - difficulties[final_test_level];
let succ = 0;
if (modi_open) {
let vals_sc = vals_s.concat();
while ( skill_remaining > 0 ) {
if (vals_sc[0] == vals_sc[1]) {
vals_sc[0] -= 1;
dice_style[0] = 1;
} else {
vals_sc[1] -= 1;
}
skill_remaining -= 1;
}
vals_sc[1] = vals_sc[1] < 1 ? 1 : vals_sc[1];
succ = statreq - vals_sc[1];
if( succ>=0 ) {
dice_style[1] = 0;
} else {
dice_style[1] = 2;
}
} else {
for (x=0; x<3; ++x) {
if(vals_s[x] <= statreq) {
succ += 1;
dice_style[x] = 0;
} else {
if ( vals_s[x] - skill_remaining <= statreq && statreq > 0 ) {
skill_remaining -= (vals_s[x] - statreq);
succ += 1;
dice_style[x] = 1;
} else {
dice_style[x] = 2;
}
}
}
}
let dice_unsort = [3,3,3];
for(x=0; x<3; ++x) {
for(let y=0; y<3; ++y) {
if(vals[x]==vals_s[y]) {
dice_unsort[x] = dice_style[y];
vals_s[y] = -1;
vals[x] = 0;
break;
}
}
}
finishRoll(
results.rollId,
{
roll1: dice_unsort[0] ,
roll2: dice_unsort[1] ,
roll3: dice_unsort[2] ,
finaldifficulty: final_test_level,
successes : succ,
open : modi_open,
}
);
});
});
});
});
wsplist.forEach((wspolczyn) => {
on(`clicked:test_${wspolczyn}`, (info) => {
let wsp_name = wsp2accusative[wspolczyn]
startRoll(`&{template:test} {{open=[[0[computed value]]]}} {{successes=[[0[computed value]]]}} {{finaldifficulty=[[0[computed value]]]}} {{base_wsp_name=${wsp_name}}} {{roll1=[[1d20]]}} {{roll2=[[1d20]]}} {{roll3=[[1d20]]}}`, (results) => {
getAttrs(["final_test_level", "modi_battle", "modi_open", wspolczyn], function(values) {
let statbase = parseInt(values[wspolczyn]);
let modi_battle = (parseInt(values.modi_battle)||0);
let modi_open = (parseInt(values.modi_open)||0);
let final_test_level = (parseInt(values.final_test_level)||0);
const vals = [results.results.roll1.result, results.results.roll2.result, results.results.roll3.result];
let x = 0;
// Critical rolls ( 1 / 20 )
for (x=0; x<3; ++x) {
if(vals[x]==1)
{
final_test_level -= 1;
}
if(vals[x]==20)
{
final_test_level += 1;
}
}
// Constrain
final_test_level = final_test_level < 0 ? 0 : (final_test_level > 8 ? 8 : final_test_level);
// Successes and failures
let dice_style = [3,3,3];
let vals_s = vals.concat().sort(function(a, b){return a-b});;
let statreq = statbase - difficulties[final_test_level];
let succ = 0;
if (modi_open) {
succ = statreq - vals_s[1];
if( succ>=0 ) {
dice_style[1] = 0;
} else {
dice_style[1] = 2;
}
} else {
for (x=0; x<3; ++x) {
if(vals_s[x] <= statreq) {
succ += 1;
dice_style[x] = 0;
} else {
dice_style[x] = 2;
}
}
}
let dice_unsort = [3,3,3];
for(x=0; x<3; ++x) {
for(let y=0; y<3; ++y) {
if(vals[x]==vals_s[y]) {
dice_unsort[x] = dice_style[y];
vals_s[y] = -1;
vals[x] = 0;
break;
}
}
}
finishRoll(
results.rollId,
{
roll1: dice_unsort[0] ,
roll2: dice_unsort[1] ,
roll3: dice_unsort[2] ,
finaldifficulty: final_test_level,
successes : succ,
open: modi_open,
}
);
});
});
});
});
// Register the click handler to all specified buttons.
const toggleList = [
"grp_walka_wrecz",
"grp_bron_strzelecka",
"grp_bron-dystansowa",
"grp_prowadzenie-pojazdow",
"grp_zdolnosci-manualne",
"grp_orientacja-w-terenie",
"grp_spostrzegawczosc",
"grp_kamuflaz",
"grp_przetrwanie",
"grp_negocjacje",
"grp_empatia",
"grp_sila-woli",
"grp_medycyna",
"grp_technika",
"grp_sprzet",
"grp_pirotechnika",
"grp_wiedza-ogolna-1",
"grp_wiedza-ogolna-2",
"grp_sprawnosc",
"grp_jezdziectwo",
];
const spec2grp = [
// Technik
[
"grp_prowadzenie-pojazdow",
"grp_medycyna",
"grp_technika",
"grp_wiedza-ogolna-1",
"grp_sprzet",
"grp_pirotechnika",
],
// Wojownik
[
"grp_walka_wrecz",
"grp_bron_strzelecka",
"grp_bron-dystansowa",
"grp_sila-woli",
"grp_pirotechnika",
],
// Ranger
[
"grp_sprawnosc",
"grp_jezdziectwo",
"grp_bron-dystansowa",
"grp_medycyna",
"grp_orientacja-w-terenie",
"grp_spostrzegawczosc",
"grp_kamuflaz",
"grp_przetrwanie",
],
// Cwaniak
[
"grp_zdolnosci-manualne",
"grp_negocjacje",
"grp_empatia",
"grp_kamuflaz",
],
// Brak (Hibernatus)
[]
];
toggleList.forEach(function(button) {
on(`clicked:${button}`, function() {
const flag = `${button}_flag`;
// Check the current value of the hidden flag.
getAttrs([flag], function(v) {
// Update the value of the hidden flag to "1" for checked or "0" for unchecked.
setAttrs({
[flag]: v[flag] !== "1" ? "1" : "0"
});
});
});
});
on("change:specjalizacja", function() {
log("Changed!")
getAttrs(["specjalizacja"], function(v) {
const grpid = clamp((parseInt(v.specjalizacja)||0), 0, 4);
const specgroups = spec2grp[grpid];
let dictionary = {};
for (const group of toggleList) {
const flag = `${group}_flag`;
let in_group = "0";
for (const sgroup of specgroups) {
if(sgroup == group) {
in_group = "1";
break;
}
}
dictionary[flag] = in_group;
}
setAttrs(dictionary);
});
});
/*************************** ROLL HANDLERS ************************/
/******************************************************************/</script><rolltemplate class="sheet-rolltemplate-test">
<div class="sheet-template-container">
<div class="sheet-results">
<h1>
{{#rollTotal() computed::finaldifficulty 0}}
Łatwy
{{/rollTotal() computed::finaldifficulty 0}}
{{#rollTotal() computed::finaldifficulty 1}}
Przeciętny
{{/rollTotal() computed::finaldifficulty 1}}
{{#rollTotal() computed::finaldifficulty 2}}
Problematyczny
{{/rollTotal() computed::finaldifficulty 2}}
{{#rollTotal() computed::finaldifficulty 3}}
Trudny
{{/rollTotal() computed::finaldifficulty 3}}
{{#rollTotal() computed::finaldifficulty 4}}
Bardzo Trudny
{{/rollTotal() computed::finaldifficulty 4}}
{{#rollTotal() computed::finaldifficulty 5}}
Cholernie Trudny
{{/rollTotal() computed::finaldifficulty 5}}
{{#rollTotal() computed::finaldifficulty 6}}
Fartowny
{{/rollTotal() computed::finaldifficulty 6}}
{{#rollTotal() computed::finaldifficulty 7}}
Mistrzowski
{{/rollTotal() computed::finaldifficulty 7}}
{{#rollTotal() computed::finaldifficulty 8}}
Arcymistrzowski
{{/rollTotal() computed::finaldifficulty 8}}
test
{{#rollTotal() computed::open 0}}zamknięty{{/rollTotal() computed::open 0}}
{{#rollTotal() computed::open 1}}otwarty{{/rollTotal() computed::open 1}}
{{skill-name}} na {{base_wsp_name}}
</h1>
{{#rollTotal() computed::roll1 0}}<div style="background-color:rgba(0, 255, 0, 0.3);">{{/rollTotal() computed::roll1 0}}
{{#rollTotal() computed::roll1 1}}<div style="background-color:rgba(100, 30, 220, 0.4);">{{/rollTotal() computed::roll1 1}}
{{#rollTotal() computed::roll1 2}}<div style="background-color:rgba(255, 68, 0, 0.6);">{{/rollTotal() computed::roll1 2}}
{{#rollTotal() computed::roll1 3}}<div style="background-color: rgba(0, 0, 0, 0.4);">{{/rollTotal() computed::roll1 3}}
<h4>D1 = {{roll1}}</h4>
</div>
{{#rollTotal() computed::roll2 0}}<div style="background-color:rgba(0, 255, 0, 0.3);">{{/rollTotal() computed::roll2 0}}
{{#rollTotal() computed::roll2 1}}<div style="background-color:rgba(100, 30, 220, 0.4);">{{/rollTotal() computed::roll2 1}}
{{#rollTotal() computed::roll2 2}}<div style="background-color:rgba(255, 68, 0, 0.6);">{{/rollTotal() computed::roll2 2}}
{{#rollTotal() computed::roll2 3}}<div style="background-color: rgba(0, 0, 0, 0.4);">{{/rollTotal() computed::roll2 3}}
<h4>D2 = {{roll2}}</h4>
</div>
{{#rollTotal() computed::roll3 0}}<div style="background-color:rgba(0, 255, 0, 0.3);">{{/rollTotal() computed::roll3 0}}
{{#rollTotal() computed::roll3 1}}<div style="background-color:rgba(100, 30, 220, 0.4);">{{/rollTotal() computed::roll3 1}}
{{#rollTotal() computed::roll3 2}}<div style="background-color:rgba(255, 68, 0, 0.6);">{{/rollTotal() computed::roll3 2}}
{{#rollTotal() computed::roll3 3}}<div style="background-color: rgba(0, 0, 0, 0.4);">{{/rollTotal() computed::roll3 3}}
<h4>D3 = {{roll3}}</h4>
</div>
<h4>
{{#rollTotal() computed::open 0}}
Zdany na kościach: {{computed::successes}}
{{/rollTotal() computed::open 0}}
{{#rollTotal() computed::open 1}}
Punktów przewagi: {{computed::successes}}
{{/rollTotal() computed::open 1}}
</h4>
</div>
</div>
</rolltemplate>