Update sheet.html

update for NPC sheet
This commit is contained in:
Tomáš Macek
2020-11-22 00:26:24 +01:00
committed by GitHub
parent d3dcaab82c
commit b5854827bf
+458 -112
View File
@@ -7,81 +7,194 @@
<div class="container npc">
<div class="container npc_main flex-center">
<div class="npc_name section">
<div class="section-small flex-center">
<div class="section-small flex-center npc_vlastnost">
<div><label>Jméno: </label></div><input name="attr_character_name" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Životasch.: </label></div><input name="attr_zivotaschopnost_popis" type="text" class="">
<div class="section-small flex-center npc_vlastnost">
<div><label>Rasa: </label></div><input name="attr_rasa_popis" type="text" class="">
<select name="attr_npc_velikost" class="velikost">
<option value="0">A0</option>
<option value="1">A</option>
<option value="2">B</option>
<option value="3">C</option>
<option value="4">D</option>
<option value="5">E</option>
</select>
</div>
<div class="section-small flex-center">
<div><label>ÚČ: </label></div><input name="attr_uc_popis" type="text" class="">
<div class="stat-block flex-center npc_vlastnost"> </div>
<div class="section-small flex-center npc_vlastnost">
<div><label>Přesvědčení: </label></div>
<select name="attr_npc_presvedc" class="velikost">
<option value="0">ZkD</option>
<option value="1">ZmD</option>
<option value="2">N</option>
<option value="3">ZmZ</option>
<option value="4">ZkZ</option>
</select>
<div><label>Životasch.: </label></div><input name="attr_npc_zivotasch" type="number" class="">
<button type="action" class="npc_hp" name="act_npc_hp"><span >set HP</span></button>
</div>
<div class="section-small flex-center">
<div><label>OČ: </label></div><input name="attr_oc_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Odolnost: </label></div><input name="attr_odolnost_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Velikost: </label></div><input name="attr_velikost_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Bojovnost: </label></div><input name="attr_bojovnost_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Zranitelnost: </label></div><input name="attr_zranitelnost_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Pohyblivost: </label></div><input name="attr_pohyblivost_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Vytrvalost: </label></div><input name="attr_vytrvalost_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Manévr.: </label></div><input name="attr_manevr_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Inteligence: </label></div><input name="attr_inteligence_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Charisma: </label></div><input name="attr_charisma_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>ZSM: </label></div><input name="attr_zsm_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Přesvědčení: </label></div><input name="attr_presvedceni_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Poklady: </label></div><input name="attr_poklady_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Zkušenost: </label></div><input name="attr_zk_popis" type="text" class="">
</div>
<div class="section-small flex-center">
<div><label>Ochočení: </label></div><input name="attr_ochoceni_popis" type="text" class="">
</div>
</div>
<div class="stat-block flex-center npc_vlastnost">
<label>Síla</label>
<input name="attr_npc_sil" type="number" value="1">
<span name="attr_npc_sil_mod">-5</span>
</div>
<div class="stat-block flex-center npc_vlastnost">
<label>Odolnost</label>
<input name="attr_npc_odl" type="number" value="1">
<span name="attr_npc_odl_mod">-5</span>
<label>Bojovnost</label>
<input name="attr_npc_boj" type="number" value="1">
<button name="roll_bojovnost" type="roll" value="&{template:Bojovnost} {{name=Bojovnost(@{npc_boj})}} {{mod=[[@{npc_boj}]]}} {{int=[[@{npc_int}]]}} {{Result=[[2d6]]}}"/>
</div>
<div class="stat-block flex-center npc_vlastnost">
<label>Obratnost</label>
<input name="attr_npc_obr" type="number" value="1">
<span name="attr_npc_obr_mod">-5</span>
<label>Manevr.</label>
<input name="attr_npc_manevr" type="number" value="">
</div>
<div class="stat-block flex-center npc_vlastnost">
<label>Inteligence</label>
<input name="attr_npc_int" type="number" value="1">
<span name="attr_npc_int_mod">-5</span>
<label>ZSM</label>
<input name="attr_npc_zsm" type="number" value="">
</div>
<div class="stat-block flex-center npc_vlastnost">
<label>Charisma</label>
<input name="attr_npc_chr" type="number" value="1">
<span name="attr_npc_chr_mod">-5</span>
<label>Ochočení</label>
<input name="attr_npc_ochoc" type="number" value="">
</div>
<div class="stat-block flex-center npc_vlastnost">
<div><label>Zranitelnost</label></div>
<input type="text" name="attr_npc_zran_info" />
</div>
<div class="stat-block flex-center npc_vlastnost">
<div><label>Pohyblivost</label></div>
<input type="text" name="attr_npc_pohyb_info" />
</div>
<div class="stat-block flex-center npc_vlastnost">
<div><label>Vytrvalost</label></div>
<input type="text" name="attr_npc_vytrva_info" />
</div>
<div class="section-small flex-center npc_vlastnost">
<div><label>Poklady: </label></div><input name="attr_npc_poklady" type="text" class="">
</div>
<div class="section-small flex-center npc_vlastnost">
<div><label>Zkušenost: </label></div><input name="attr_npc_zk" type="text" class="">
</div>
</div>
<div class="npc_stav section">
<div class="section-small flex-center points">
<label>Max Životů: </label>
<input name="attr_hit_points_max" type="number" value="0">
<input name="attr_npc_hit_points_max" type="number" value="0">
<label>Max Magů: </label>
<input name="attr_mag_points_max" type="number" value="0">
<input name="attr_npc_mag_points_max" type="number" value="0">
</div>
<div class="section-small flex-center">
<label>Stav: </label>
<input name="attr_hit_points" type="number" value="0">
<input name="attr_npc_hit_points" type="number" value="0">
<label>Stav: </label>
<input name="attr_mag_points" type="number" value="0">
<input name="attr_npc_mag_points" type="number" value="0">
</div>
<div class="section-small flex-center">
<span name="attr_npc_bojeschopnost"></span>
</div>
</div>
<div class="npc_info section">
<textarea name="attr_npc_info" style="min-height: 50px; height: 100%;min-width: 50px; width: 100%;"></textarea>
<textarea name="attr_npc_info" style="min-height: 200px;min-width: 600px;"></textarea>
</div>
<div class="npc_utok section">
<!-- value="&{template:Utok} {{name=Útok}} {{dcil=@{boj_vzdalenostcile}}} {{dvel=@{boj_rozdilvelikosti}}} {{utocnost=@{ucutoc}}} {{zbran=@{boj_jmeno}}} {{tvt=[[@{boj_tvt}]]}} {{Result=[[(@{uc}) + 1d6! + (@{ucopr})]]}}"><span class="small">Útok</span></button>-->
<div class="section-small flex-center">
<button name="roll_npc_utok1" type="roll" style="width:90px" value="&{template:NPCUtok} {{name=NPC Útok}} {{zbran=@{npcboj1}}} {{utocnost=@{npcboj1_uto}}} {{vyrazen=[[@{npcboj_vyrazen}]]}} {{tvt=[[@{npcboj1_tvt}]]}} {{Result=[[1d6! + (@{npcboj1_uc}) + (@{npcboj1_mod}) + (@{npc_bojeschopnost_mod})]]}}"><span >Útok1</span></button>
<button name="roll_npc_utok2" type="roll" style="width:90px" value="&{template:NPCUtok} {{name=NPC Útok}} {{zbran=@{npcboj2}}} {{utocnost=@{npcboj2_uto}}} {{vyrazen=[[@{npcboj_vyrazen}]]}} {{tvt=[[@{npcboj2_tvt}]]}} {{Result=[[1d6! + (@{npcboj2_uc}) + (@{npcboj2_mod}) + (@{npc_bojeschopnost_mod})]]}}"><span >Útok2</span></button>
<button name="roll_npc_utok3" type="roll" style="width:90px" value="&{template:NPCUtok} {{name=NPC Útok}} {{zbran=@{npcboj3}}} {{utocnost=@{npcboj3_uto}}} {{vyrazen=[[@{npcboj_vyrazen}]]}} {{tvt=[[@{npcboj3_tvt}]]}} {{Result=[[1d6! + (@{npcboj3_uc}) + (@{npcboj3_mod}) + (@{npc_bojeschopnost_mod})]]}}"><span >Útok3</span></button>
</div>
<div class="section-small flex-center popisky">
<label class="jmeno">Útoky</label>
<label>ÚČ</label>
<label>útoč.</label>
<label>OZ</label>
<label>2H?</label>
<label>tvt?</label>
</div>
<div class="section-small flex-center radek">
<input name="attr_npcboj1" type="text" class="jmeno" value="">
<input name="attr_npcboj1_uc" type="number" value="">
<input name="attr_npcboj1_uto" type="number" value="">
<input name="attr_npcboj1_ozv" type="checkbox" class="2h" style="margin:0px;" value="1" />
<input name="attr_npcboj1_oz" type="number" value="">
<input name="attr_npcboj1_2h" type="checkbox" class="2h" value="1" />
<input name="attr_npcboj1_tvt" type="checkbox" class="2h" value="1" />
</div>
<div class="section-small flex-center radek">
<input name="attr_npcboj2" type="text" class="jmeno" value="">
<input name="attr_npcboj2_uc" type="number" value="">
<input name="attr_npcboj2_uto" type="number" value="">
<input name="attr_npcboj2_ozv" type="checkbox" class="2h" style="margin:0px;" value="1" />
<input name="attr_npcboj2_oz" type="number" value="">
<input name="attr_npcboj2_2h" type="checkbox" class="2h" value="1" />
<input name="attr_npcboj2_tvt" type="checkbox" class="2h" value="1" />
</div>
<div class="section-small flex-center radek">
<input name="attr_npcboj3" type="text" class="jmeno" value="">
<input name="attr_npcboj3_uc" type="number" value="">
<input name="attr_npcboj3_uto" type="number" value="">
<input name="attr_npcboj3_ozv" type="checkbox" class="2h" style="margin:0px;" value="1" />
<input name="attr_npcboj3_oz" type="number" value="">
<input name="attr_npcboj3_2h" type="checkbox" class="2h" value="1" />
<input name="attr_npcboj3_tvt" type="checkbox" class="2h" value="1" />
</div>
</div>
<div class="npc_zbroj section">
<!-- <button name="roll_obrana_strel" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[0]]}} {{ozvolba=[[0]]}} {{zbran=@{boj_jmeno}}} {{vyrazeny=[[@{vyrazeny_volba}*@{level}]]}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) ]]}}"></button> -->
<button name="roll_npc_obrana" type="roll" style="width:90px" value="&{template:NPCObrana} {{name=NPC Obrana}} {{voz=[[0]]}} {{zbran=@{npcboj1}}} {{vyrazen=[[@{npcboj_vyrazen}*@{npc_zivotasch}]]}} {{Result=[[1d6! + (@{npcboj_oc}) + (@{npc_obr_mod}) + (@{npcboj_opr})]]}}"><span >Obrana</span></button>
<button name="roll_npc_obrana_oz" type="roll" style="width:90px" value="&{template:NPCObrana} {{name=NPC Obrana s OZ @{npcboj_oz}}} {{voz=[[@{npcboj_oz}]]}} {{vyrazen=[[@{npcboj_vyrazen}*@{npc_zivotasch}]]}} {{Result=[[1d6! + (@{npcboj_oc}) + (@{npc_obr_mod}) + (@{npcboj_opr}) + (@{npcboj_oz})]]}}"><span >OZ</span></button>
<button name="roll_npc_obrana_bez" type="roll" style="width:90px" value="&{template:NPCObrana} {{name=NPC Obrana s OZ -3}} {{voz=[[-3]]}} {{vyrazen=[[@{npcboj_vyrazen}*@{npc_zivotasch}]]}} {{Result=[[1d6! + (@{npcboj_oc}) + (@{npc_obr_mod}) + (@{npcboj_opr}) + (-3)]]}}"><span >OZ-3</span></button>
<div class="section-small flex-center popisky">
<label class="jmeno" style="width:200px">Zbroj</label>
<label></label>
</div>
<div class="section-small flex-center radek">
<input name="attr_npczbroj1_use" type="checkbox" checked="checked" value="1"/>
<input name="attr_npczbroj1" type="text" class="jmeno" value="přirozená zbroj" readonly="readonly">
<input name="attr_npczbroj1_oc" type="number" value="1">
</div>
<div class="section-small flex-center radek">
<input name="attr_npczbroj2_use" type="checkbox" value="1"/>
<input name="attr_npczbroj2" type="text" class="jmeno" value="štít" readonly="readonly">
<input name="attr_npczbroj2_oc" type="number" value="1">
</div>
<div class="section-small flex-center radek">
<input name="attr_npczbroj3_use" type="checkbox" value="1"/>
<input name="attr_npczbroj3" type="text" class="jmeno" value="">
<input name="attr_npczbroj3_oc" type="number" value="">
</div>
</div>
</div>
</div>
@@ -176,25 +289,17 @@
</div>
<div class="section-small flex-center ucoc">
<div class="flex-down">
<button name="roll_obrana_oz" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[@{ocoz_base}]]}} {{ozvolba=[[1]]}} {{zbran=@{boj_jmeno}}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) + (@{ocoz_base}) ]]}}"></button>
<button name="roll_obrana_oz" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[@{ocoz_base}]]}} {{ozvolba=[[1]]}} {{zbran=@{boj_jmeno}}} {{vyrazeny=[[@{vyrazeny_volba}*@{level}]]}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) + (@{ocoz_base}) ]]}}"></button>
<div><input type="radio" name="attr_oz_volba" class="oz_volba" value="1" checked="true"> OZ </div>
</div>
<div class="flex-down">
<button name="roll_obrana_bez" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[-3]]}} {{ozvolba=[[-3]]}} {{zbran=@{boj_jmeno}}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) + (-3) ]]}}"></button>
<button name="roll_obrana_bez" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[-3]]}} {{ozvolba=[[-3]]}} {{zbran=@{boj_jmeno}}} {{vyrazeny=[[@{vyrazeny_volba}*@{level}]]}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) + (-3) ]]}}"></button>
<div><input type="radio" name="attr_oz_volba" class="oz_volba" value="-3"> bez</div>
</div>
<div class="flex-down">
<button name="roll_obrana_strel" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[0]]}} {{ozvolba=[[0]]}} {{zbran=@{boj_jmeno}}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) ]]}}"></button>
<button name="roll_obrana_strel" type="roll" class="btnObrana" value="&{template:Obrana} {{name=Obrana}} {{voz=[[0]]}} {{ozvolba=[[0]]}} {{zbran=@{boj_jmeno}}} {{vyrazeny=[[@{vyrazeny_volba}*@{level}]]}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) ]]}}"></button>
<div><input type="radio" name="attr_oz_volba" class="oz_volba" value="0"> střel.</div>
</div>
<!-- <div class="setradio flex-down">
<div><input type="radio" name="attr_oz_volba" value="1" checked="true"> OZ </div>
<div><input type="radio" name="attr_oz_volba" value="-3"> -3</div>
<div><input type="radio" name="attr_oz_volba" value="0"> 0</div>
</div>
<button name="roll_obrana" type="roll" class="attack" value="&{template:Obrana} {{name=Obrana}} {{voz=[[@{boj_oz}]]}} {{ozvolba=[[@{oz_volba}]]}} {{zbran=@{boj_jmeno}}} {{Result=[[(@{oc}) + 1d6! + (@{ocopr}) + (@{ocoz}) ]]}}"><span class="small">Obrana</span></button>
-->
<div class="hodnoty"><span name="attr_oc" class="ucoc">0</span><label>základ</label></div>
<div class="hodnoty"><span name="attr_ocopr" class="ucoc">0</span><label>oprava</label></div>
<div class="hodnoty"><span name="attr_ocoz" class="ucoc">0</span><label>OZbraně</label></div>
@@ -212,6 +317,7 @@
<button type="action" class="pc_main" name="act_showpc_main"><span >Hlavní</span></button>
<button type="action" class="pc_schopnosti" name="act_showpc_schopnosti"><span >Schopnosti</span></button>
<button type="action" class="pc_vybava" name="act_showpc_vybava"><span >Výbava</span></button>
<button type="action" class="pc_pozn" name="act_showpc_pozn"><span >Pozn.</span></button>
</div>
</div>
<!--PC Main sekce-->
@@ -553,13 +659,56 @@
<textarea class="gear-description" name="attr_DovednostPopis2" style="min-height:230px;min-width:200px; "></textarea>
</div>
</div>
</div>
<!--PC Pozn sekce-->
<div class="container pc_pozn">
<div class="container pc_pozn_main">
<div class="pc_pozn_souhrn section">
<div class="top" style="position: relative; top: 10px;">
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Věk</span></div>
<input type="text" name="attr_age">
</div>
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Rozměry</span></div>
<input type="text" name="attr_size">
</div>
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Výška</span></div>
<input type="text" name="attr_height">
</div>
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Váha</span></div>
<input type="text" name="attr_weight">
</div>
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Oči</span></div>
<input type="text" name="attr_eyes">
</div>
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Kůže</span></div>
<input type="text" name="attr_skin">
</div>
<div class="hlabel-container flex-center">
<div><span class="pozn_label" >Vlasy</span></div>
<input type="text" name="attr_hair">
</div>
</div>
</div>
</div>
<div class="pc_pozn_vzhled section">
<span >Vzhled<br></span>
<textarea class="gear-description" name="attr_vzhled" style="min-height:100px;min-width:400px; " ></textarea>
</div>
<div class="pc_pozn_pribeh section">
<span >Příběh/Pozadí<br></span>
<textarea class="gear-description" name="attr_pribeh" style="min-height:100px;min-width:400px; " ></textarea>
</div>
</div>
</div>
<!--PC Vybava sekce-->
@@ -644,12 +793,12 @@
<input name="attr_sil_mod" type="hidden" value="0">
<input name="attr_int_mod" type="hidden" value="0">
<input name="attr_chr_mod" type="hidden" value="0">
<input name="attr_odl_mod" type="hidden" value="0">
<input name="attr_obr_mod" type="hidden" value="0">
<input name="attr_poh_mod" type="hidden" value="0">
<input name="attr_sil_mod" type="hidden" value="-5">
<input name="attr_int_mod" type="hidden" value="-5">
<input name="attr_chr_mod" type="hidden" value="-5">
<input name="attr_odl_mod" type="hidden" value="-5">
<input name="attr_obr_mod" type="hidden" value="-5">
<input name="attr_poh_mod" type="hidden" value="-5">
<input name="attr_poh_0_vaha" type="hidden" value="(mn)">
<input name="attr_poh_0" type="hidden" value="0">
<input name="attr_poh_0_mod" type="hidden" value="0">
@@ -662,12 +811,12 @@
<input name="attr_poh_3_vaha" type="hidden" value="(mn)">
<input name="attr_poh_3" type="hidden" value="0">
<input name="attr_poh_3_mod" type="hidden" value="0">
<input name="attr_nosnost" type="hidden" value="0">
<input name="attr_nalozeni" type="hidden" value="0">
<input name="attr_nosnost" type="hidden" value="510">
<input name="attr_nalozeni" type="hidden" value="-1">
<input name="attr_pretizeni" type="hidden" value="">
<input name="attr_pretizeni_mod" type="hidden" value="0">
<input name="attr_bojeschopnost" type="hidden" value="">
<input name="attr_bojeschopnost_mod" type="hidden" value="">
<input name="attr_bojeschopnost_mod" type="hidden" value="0">
<input name="attr_bojeschopnost_tretina_zivotu"type="hidden" value="0">
<input name="attr_bojeschopnost_mez_vyrazeni" type="hidden" value="0">
<input name="attr_bojeschopnost_mod_vyrazeni" type="hidden" value="0">
@@ -679,7 +828,7 @@
<input name="attr_ocoz" type="hidden" value="-3">
<input name="attr_ocoz_base" type="hidden" value="-3">
<input name="attr_boj_id" type="hidden" value="0">
<input name="attr_boj_id" type="hidden" value="-1">
<input name="attr_boj_jmeno" type="hidden" value="0">
<input name="attr_boj_uc" type="hidden" value="0">
<input name="attr_boj_uto" type="hidden" value="0">
@@ -694,6 +843,25 @@
<input name="attr_vaha_vybaveni" type="hidden" value="0">
<input name="attr_vaha_poklad" type="hidden" value="0">
<input name="attr_npc_sil_mod" type="hidden" value="-5">
<input name="attr_npc_int_mod" type="hidden" value="-5">
<input name="attr_npc_chr_mod" type="hidden" value="-5">
<input name="attr_npc_odl_mod" type="hidden" value="-5">
<input name="attr_npc_obr_mod" type="hidden" value="-5">
<input name="attr_npcboj1_mod" type="hidden" value="0">
<input name="attr_npcboj2_mod" type="hidden" value="0">
<input name="attr_npcboj3_mod" type="hidden" value="0">
<input name="attr_npcboj_oz" type="hidden" value="0">
<input name="attr_npcboj_opr" type="hidden" value="0">
<input name="attr_npcboj_oc" type="hidden" value="0">
<input name="attr_npcboj_vyrazen" type="hidden" value="0">
<input name="attr_npc_bojeschopnost" type="hidden" value="">
<input name="attr_npc_bojeschopnost_mod" type="hidden" value="0">
<input name="attr_npc_bojeschopnost_tretina_zivotu"type="hidden" value="0">
<input name="attr_npc_bojeschopnost_mez_vyrazeni" type="hidden" value="0">
<input name="attr_npc_bojeschopnost_mod_vyrazeni" type="hidden" value="0">
<div class="rolltemplates">
@@ -721,12 +889,16 @@
</div>
<div class="flex-center subheader"><div class="big doprava">{{Result}}</div></div>
<div class="arrow-container"><div class="arrow-right"></div></div>
<div class="rowsmall">
{{#ozvolba}}
{{#rollTotal() ozvolba 0}}<span class="tcat"> + oprava za úkryt +1 až +4</span>{{/rollTotal() ozvolba 0}}
{{/ozvolba}}</div>
</div>
</div>
{{#rollTotal() ozvolba 0}}<div class="rowsmall"><span class="tcat"> + oprava za úkryt +1 až +4</span>}}</div>{{/rollTotal() ozvolba 0}}
{{/ozvolba}}
{{#vyrazeny}}
{{#^rollTotal() vyrazeny 0}}<div style="background-color:#FAA"><span class="tcat">Vyřazený:<br> výsledné zranění *
{{#rollGreater() vyrazeny 9}}<b>9</b>{{/rollGreater() vyrazeny 9}}
{{#^rollGreater() vyrazeny 9}}{{vyrazeny}}{{/^rollGreater() vyrazeny 9}}
</span></div>{{/^rollTotal() vyrazeny 0}}
{{/vyrazeny}}
</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-Utok">
@@ -773,6 +945,56 @@
</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-Bojovnost">
<div class="container flex-center">
{{#rollLess() int 9}}
<div class="tvysledky">{{Result}}</div>
<div class="thlavicka">{{name}}</div>
</div>
<div class="container flex-center">
{{#rollGreater() Result mod}} nechce bojovat {{/rollGreater() Result mod}}
{{#^rollGreater() Result mod}} útočí {{/^rollGreater() Result mod}}
{{/rollLess() int 9}}
{{#^rollLess() int 9}}Bojovnost<br>Nestvůra je moc inteligentní{{/^rollLess() int 9}}
</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-NPCUtok">
<div class="container">
<!-- value="&{template:NPCUtok} {{name=NPC Útok}} {{zbran=@{npcboj1}}} {{utocnost=@{npcboj1_uto}}} {{vyrazen=[[@{npcboj_vyrazen}]]}} {{tvt=[[@{npcboj1_tvt}]]}} {{Result=[[[[(@{npcboj1_uc}) + (@{npcboj1_mod}) + 1d6! + (@{npcboj_opr})]]]]}}"/ -->
<div class="flex-center">
<h1>
{{#tvt}}{{#rollTotal() tvt 0}}střel. {{/rollTotal() tvt 0}}{{#rollTotal() tvt 1}}tvt {{/rollTotal() tvt 1}}{{/tvt}}
{{name}}
</h1>
<span class="nowrap"> - {{zbran}}</span>
</div>
<div class="flex-center subheader"><div class="big doprava">
{{Result}}</div> +útoč. <div class="big doprava">{{utocnost}}</div>
{{#rollTotal() vyrazen 1}}
</div>
<div class="flex-center subheader"><div class="big doprava">
Vyřazená postava nemůže útočit
</div>
{{/rollTotal() vyrazen 1}}
</div>
</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-NPCObrana">
<div class="container">
<!-- "&{template:NPCObrana} {{name=NPC Obrana}} {{voz=[[0]]}} {{ozvolba=[[0]]}} {{zbran=@{npcboj1}}} {{vyrazen=[[@{npcboj_vyrazen}*@{npc_zivotasch}]]}} {{Result=[[1d6! + (@{npcboj_oc}) + (@{npc_obr_mod}) + (@{npcboj_opr})]]}}" -->
<div class="flex-center">
<h1>{{name}}</h1>
</div>
<div class="flex-center subheader"><div class="big doprava">{{Result}}</div></div>
<div class="arrow-container"><div class="arrow-right"></div></div>
{{#vyrazeny}}
{{#^rollTotal() vyrazeny 0}}<div style="background-color:#FAA"><span class="tcat">Vyřazený?:<br> výsledné zranění * {{vyrazeny}}</span></div>{{/^rollTotal() vyrazeny 0}}
{{/vyrazeny}}
</div>
</rolltemplate>
</div>
@@ -916,10 +1138,25 @@ var update_bonus = function (attr) {
});
};
var update_npcbonus = function (attr) {
const tab_bonus = [-5,-5,-4,-4,-3,-3,-2,-2,-1,-1,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10];
getAttrs([attr], function(values) {
var stat_base = int(values[attr]);
/* console.log("hodnota "+stat_base);*/
var _base = Math.min(32, Math.max(1, stat_base));
var _stat_bonus = tab_bonus[_base];
var _update = {};
_update[attr + "_mod"] = _stat_bonus;
_update[attr] = _base;
setAttrs(_update);
});
};
var update_nosnost = function () {
getAttrs(["sil_mod"], function(v) {
var _nosnost = 210 + 30 * ( int(v.sil_mod) + 5);
setAttrs({ nosnost: _nosnost });
});
};
@@ -949,6 +1186,10 @@ var update_pohyblivost = function () {
};
var setZbran = function(_zbran) {
if( typeof(_zbran) == "undefined" || _zbran == "-1" ){
setAttrs({zbran:"tvt1"});
return null;
};
getAttrs([_zbran, _zbran+"_uc", _zbran+"_uto", _zbran+"_oz", _zbran+"_2h",_zbran+"_maly",_zbran+"_stredni",_zbran+"_velky","rasa","velikost",
"zbroj1_use","zbroj1_stit","zbroj1_oc","zbroj2_use","zbroj2_stit","zbroj2_oc","zbroj3_use","zbroj3_stit","zbroj3_oc"], function(values) {
var rasa = values["rasa"];
@@ -1146,7 +1387,30 @@ on("clicked:showpc_vybava", function(eventinfo) {
console.log("values 2");
setAttrs({pc_page: "2"});
});
on("clicked:showpc_pozn", function(eventinfo) {
console.log("values 3");
setAttrs({pc_page: "3"});
});
on("clicked:npc_hp", function(eventinfo) {
// console.log("počítám životaschopnost");
getAttrs(["npc_zivotasch","npc_odl_mod"], function(values) {
var ziv = int(values.npc_zivotasch);
var mod = int(values.npc_odl_mod);
var celkem = 0;
var i;
for (i = 0; i < ziv; i++) {
var hod = Math.max(1,Math.ceil(Math.random() * 8) + mod);
celkem = celkem + hod;
};
setAttrs({npc_hit_points_max: celkem});
setAttrs({npc_hit_points: celkem});
var min = Math.max(1,1 + mod)*ziv;
var max = (8 + mod)*ziv;
var proc = Math.ceil((celkem - min)/(max-min) * 100);
console.log(""+ celkem +" -> "+min+" až "+max+" -> "+ proc+"%");
});
});
@@ -1156,13 +1420,24 @@ on("clicked:showpc_vybava", function(eventinfo) {
});
});
["npc_sil", "npc_int", "npc_chr", "npc_odl", "npc_obr"].forEach(stat => {
on(`change:${stat}`, () => {
update_npcbonus(stat);
});
});
/*---------------------------Výpočet POHYBLIVOSTI ----------------- */
on("change:sil_mod change:obr_mod change:rasa", function() {
on("change:sil_mod change:obr_mod change:rasa change:nosnost", function() {
update_pohyblivost();
});
on("change:poh_0 change:poh_1 change:poh_2 change:poh_3 change:nosnost", function() {
getAttrs(["nalozeni"], function(values) {
if(values.nalozeni == "-1") setAttrs({ nalozeni: 0 });
});
});
/*--------- Presunuti výberu nalozeni do Statu Pohyblivosti----------------- */
@@ -1228,28 +1503,29 @@ on("change:hit_points change:odl", function() {
});
on("change:bojeschopnost_mod", function() {
getAttrs(["bojeschopnost_mod","Nehybny_volba","Vyrazeny_volba"], function(values) {
getAttrs(["bojeschopnost_mod","nehybny_volba","vyrazeny_volba"], function(values) {
if(values.bojeschopnost_mod.includes("X")){
setAttrs({ "Nehybny_volba": 0 });
setAttrs({ "Vyrazeny_volba": 1 });
} else if(values.Vyrazeny_volba == 1) setAttrs({ "Vyrazeny_volba": 0 });
setAttrs({ "nehybny_volba": 0 });
setAttrs({ "vyrazeny_volba": 1 });
} else if(values.vyrazeny_volba == 1) setAttrs({ "vyrazeny_volba": 0 });
});
});
on("change:Vyrazeny_volba", function() {
getAttrs(["Nehybny_volba","Vyrazeny_volba"], function(values) {
if(values.Vyrazeny_volba == 1) setAttrs({ "Nehybny_volba": 0 });
on("change:vyrazeny_volba", function() {
getAttrs(["nehybny_volba","vyrazeny_volba"], function(values) {
if(values.vyrazeny_volba == 1) setAttrs({ "nehybny_volba": 0 });
});
});
on("change:Nehybny_volba", function() {
getAttrs(["Nehybny_volba","Vyrazeny_volba"], function(values) {
if(values.Nehybny_volba == 1) setAttrs({ "Vyrazeny_volba": 0 });
on("change:nehybny_volba", function() {
getAttrs(["nehybny_volba","vyrazeny_volba"], function(values) {
if(values.nehybny_volba == 1) setAttrs({ "vyrazeny_volba": 0 });
});
});
/* ********* zmena zbrane ******* */
on("change:zbran change:zbroj1_use change:zbroj2_use change:zbroj3_use change:velikost", function() {
on("change:zbran change:zbroj1_use change:zbroj2_use change:zbroj3_use change:velikost", function() {
getAttrs(["zbran"], function(values) {
setZbran(values["zbran"]);
});
@@ -1266,24 +1542,19 @@ on("change:zbran change:zbroj1_use change:zbroj2_use change:zbroj3_use change:v
});
});
/*
["_uc", "_uto", "_2h","_maly","_stredni","_velky"].forEach(stat => {
["strel1", "strel2", "strel3", "strel4"].forEach(pos => {
on(`change:${pos}${stat}`, () => {
getAttrs(["zbran"], function(values) {
if(values["zbran"].includes(pos)) setZbran(values["zbran"]);
});
});
});
});
******* OČ a UČ **********************************/
/******* OČ a UČ **********************************/
on("change:sil_mod change:obr_mod change:pretizeni_mod change:bojeschopnost_mod change:boj_id change:boj_uc change:boj_uto change:boj_oz change:boj_oc change:boj_ocstit change:nehybny_volba change:vyrazeny_volba change:oz_volba", function() {
var ids = ["boj_id","boj_jmeno","boj_uc","boj_uto","boj_oz","boj_tvt","boj_bez","boj_h2","boj_rod","boj_ocstit","boj_oc"];
getAttrs(["sil_mod","obr_mod","pretizeni_mod","bojeschopnost_mod","rasa","oz_volba","nehybny_volba","vyrazeny_volba",
"boj_id","boj_jmeno","boj_uc","boj_uto","boj_oz","boj_tvt","boj_bez","boj_h2","boj_rod","boj_ocstit","boj_oc"], function(values) {
// console.log("values " + values[_zbran+"_OZ"]);
if( values.boj_id == "-1" ){
setAttrs({zbran:"tvt1"});
return null;
};
var UC = 0;
var OC = 0;
var UCopr = 0;
@@ -1453,8 +1724,83 @@ on('change:vaha_celkem', function() {
on('change:npc_obr_mod change:npcboj1_ozv change:npcboj1_oz change:npcboj2_ozv change:npcboj2_oz change:npcboj3_ozv change:npcboj3_oz change:npczbroj1_use change:npczbroj1_oc change:npczbroj2_use change:npczbroj2_oc change:npczbroj3_use change:npczbroj3_oc change:npcboj_vyrazen change:npc_bojeschopnost_mod', function() {
getAttrs(["npc_obr_mod","npcboj1_ozv","npcboj1_oz","npcboj2_ozv","npcboj2_oz","npcboj3_ozv","npcboj3_oz","npczbroj1_use","npczbroj1_oc","npczbroj2_use","npczbroj2_oc","npczbroj3_use","npczbroj3_oc","npc_bojeschopnost_mod","npcboj_vyrazen"], v => {
var oc = Math.max(int(v.npczbroj1_use)*int(v.npczbroj1_oc),int(v.npczbroj3_use)*int(v.npczbroj3_oc));
var stit = int(v.npczbroj2_use)*int(v.npczbroj2_oc);
var oz = 0;
var opr = 0;
if(int(v.npcboj_vyrazen) == 1){
opr = opr - (5 + int(v.npc_obr_mod));
} else {
opr = int(v.npc_bojeschopnost_mod) + stit;
};
if(int(v.npcboj1_ozv) == 1) { oz = int(v.npcboj1_oz);
} else if(int(v.npcboj2_ozv) == 1) { oz = int(v.npcboj2_oz);
} else if(int(v.npcboj3_ozv) == 1) { oz = int(v.npcboj3_oz);};
setAttrs({"npcboj_oc": oc});
setAttrs({"npcboj_opr": opr});
setAttrs({"npcboj_oz": oz});
});
});
on("change:npc_hit_points change:npc_odl", function() {
getAttrs(["npc_odl","npc_hit_points","npc_hit_points_max"], function(values) {
const odolnost = int(values.npc_odl);
var zivotu_max = int(values.npc_hit_points_max);
var tretina = Math.floor(zivotu_max/3);
var _bojeschopnost_mod = "-3";
var vyrazeni = Math.floor(zivotu_max/4);
if (odolnost >= 17) {
_bojeschopnost_mod = "0";
vyrazeni = 1;
} else if (odolnost >= 12) {
_bojeschopnost_mod = "-1";
vyrazeni = Math.floor(zivotu_max/8);
} else if (odolnost >= 6) {
_bojeschopnost_mod = "-2";
vyrazeni = Math.floor(zivotu_max/6);
}
var bojeschopnost = "Mrtev (X)";
var bojeschopnost_mod = "X";
var outof = 0;
var zivotu = int(values.npc_hit_points);
if(zivotu <= 0) {
outof = 1;
} else if (zivotu <= vyrazeni) {
outof = 1;
bojeschopnost = "Vyřazen (X)";
} else if (zivotu <= tretina) {
outof = 0;
bojeschopnost = "Zraněn ("+_bojeschopnost_mod+")";
bojeschopnost_mod = _bojeschopnost_mod;
} else {
outof = 0;
bojeschopnost = "";
bojeschopnost_mod = 0;
}
setAttrs({ "npcboj_vyrazen": outof});
setAttrs({ "npc_bojeschopnost": bojeschopnost });
setAttrs({ "npc_bojeschopnost_mod": bojeschopnost_mod });
setAttrs({ "npc_bojeschopnost_tretina_zivotu": tretina });
setAttrs({ "npc_bojeschopnost_mez_vyrazeni": vyrazeni });
setAttrs({ "npc_bojeschopnost_mod_vyrazeni": _bojeschopnost_mod });
});
});
on('change:npcboj1_tvt change:npcboj2_tvt change:npcboj3_tvt change:npc_sil_mod change:npc_obr_mod', function() {
getAttrs(["npcboj1_tvt","npcboj2_tvt","npcboj3_tvt","npc_sil_mod","npc_obr_mod"], v => {
if(int(v.npcboj1_tvt) == 0) {setAttrs({"npcboj1_mod": int(v.npc_obr_mod)});} else {setAttrs({"npcboj1_mod": int(v.npc_sil_mod)});};
if(int(v.npcboj2_tvt) == 0) {setAttrs({"npcboj2_mod": int(v.npc_obr_mod)});} else {setAttrs({"npcboj2_mod": int(v.npc_sil_mod)});};
if(int(v.npcboj3_tvt) == 0) {setAttrs({"npcboj3_mod": int(v.npc_obr_mod)});} else {setAttrs({"npcboj3_mod": int(v.npc_sil_mod)});};
});
});