added awakening basic charsheet;

This commit is contained in:
Bogdan Kosarev
2021-02-11 11:59:33 +04:00
parent 39abe80151
commit e4d48fb0cf
5 changed files with 407 additions and 0 deletions
+173
View File
@@ -0,0 +1,173 @@
.charsheet{
width: 1000px;
}
.sheet-main-container {
display: grid;
grid-template-columns: 1fr;
grid-template-rows: repeat(16, max-content);
background-image: url(https://user-images.githubusercontent.com/5252033/104818786-34fd4a00-5843-11eb-900c-6c25f2ee9cf9.png), url(https://user-images.githubusercontent.com/5252033/104773193-1b4dfb00-578e-11eb-8ff6-1054233517e2.jpg);
background-position: center, left top;
background-repeat: no-repeat, repeat;
background-size: 50%, auto;
width: 1000px;
}
.sheet-attr-line {
display: inline-grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: 1fr;
}
.sheet-attrs-block {
display: grid;
grid-template-columns: repeat(5, 1fr);
grid-template-rows: repeat(6, 1fr);
}
.sheet-grid-hp {
display: grid;
grid-template-columns: repeat(5, 1fr);
grid-template-rows: max-content max-content;
gap: 0px 0px;
grid-template-areas:
"hp-header hp-header hp-header hp-header hp-header"
"current-hp max-hp healing hp-level-up init-hp";
}
.sheet-hp-header { grid-area: hp-header; }
.sheet-current-hp { grid-area: current-hp; }
.sheet-max-hp { grid-area: max-hp; }
.sheet-healing { grid-area: healing; }
.sheet-hp-level-up { grid-area: hp-level-up; }
.sheet-init-hp { grid-area: init-hp; }
.sheet-bio-line {
display: grid;
grid-template-columns: repeat(3, auto) 1fr;
}
.sheet-input-attribute-no-roll {
display: grid;
grid-template-columns: auto auto;
}
.sheet-input-number-no-roll {
width: 100px;
}
.sheet-input-text-no-roll {
width: 300px;
}
.sheet-input-attribute {
display: grid;
grid-template-columns: max-content auto max-content max-content max-content max-content;
grid-template-rows: 1fr;
width: 100%;
}
.sheet-weaponlist-item {
display: grid;
grid-template-columns: 1fr auto auto 1fr;
grid-template-rows: 1fr;
}
.sheet-gearlist-item {
display: grid;
grid-template-columns: 1fr 56px 1fr;
grid-template-rows: 1fr;
}
.sheet-weaponlist-header {
display: grid;
grid-template-columns: 1fr 56px 1fr;
grid-template-rows: 1fr;
}
.sheet-weaponlist-header-filled {
border-left: 1px dotted;
border-bottom: 1px dotted;
}
.sheet-weaponlist-header-empty {
border-bottom: 1px dotted;
}
.sheet-attr-input {
width: 100%;
}
hr {
border: 1px dotted;
}
h1,h2 {
text-align: center;
}
.sheet-rolltemplate-rankinit,
.sheet-rolltemplate-inithp,
.sheet-rolltemplate-hplevel,
.sheet-rolltemplate-healing,
.sheet-rolltemplate-init {
background-image:url(https://user-images.githubusercontent.com/5252033/104773193-1b4dfb00-578e-11eb-8ff6-1054233517e2.jpg);
}
.sheet-rolltemplate-customcheck {
background-image:url(https://user-images.githubusercontent.com/5252033/104773193-1b4dfb00-578e-11eb-8ff6-1054233517e2.jpg);
text-align: center;
}
.sheet-rolltemplate-customcheck span.sheet-rollfail {
color:#990000;
}
.sheet-rolltemplate-customcheck span.sheet-rollsuccess {
color:#009900;
}
.sheet-rolltemplate-rankinit .inlinerollresult,
.sheet-rolltemplate-rankinit .inlinerollresult.fullfail,
.sheet-rolltemplate-rankinit .inlinerollresult.fullcrit,
.sheet-rolltemplate-rankinit .inlinerollresult.importantroll,
.sheet-rolltemplate-inithp .inlinerollresult,
.sheet-rolltemplate-inithp .inlinerollresult.fullfail,
.sheet-rolltemplate-inithp .inlinerollresult.fullcrit,
.sheet-rolltemplate-inithp .inlinerollresult.importantroll,
.sheet-rolltemplate-hplevel .inlinerollresult,
.sheet-rolltemplate-hplevel .inlinerollresult.fullfail,
.sheet-rolltemplate-hplevel .inlinerollresult.fullcrit,
.sheet-rolltemplate-hplevel .inlinerollresult.importantroll,
.sheet-rolltemplate-healing .inlinerollresult,
.sheet-rolltemplate-healing .inlinerollresult.fullfail,
.sheet-rolltemplate-healing .inlinerollresult.fullcrit,
.sheet-rolltemplate-healing .inlinerollresult.importantroll,
.sheet-rolltemplate-init .inlinerollresult,
.sheet-rolltemplate-init .inlinerollresult.fullfail,
.sheet-rolltemplate-init .inlinerollresult.fullcrit,
.sheet-rolltemplate-init .inlinerollresult.importantroll,
.sheet-rolltemplate-customcheck .inlinerollresult,
.sheet-rolltemplate-customcheck .inlinerollresult.fullfail,
.sheet-rolltemplate-customcheck .inlinerollresult.fullcrit,
.sheet-rolltemplate-customcheck .inlinerollresult.importantroll {
background-color: transparent;
border: none;
color:black;
}
.repcontainer[data-groupname="repeating_weaponlist"] {
width: 100%;
}
.repcontainer[data-groupname="repeating_gearlist"] {
width: 100%;
}
.repcontainer[data-groupname="repeating_stuff"] {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(auto-fill, max-content);
}
.sheet-weaponname {
width:100%;
}
.sheet-weaponattrs{
width:100%;
}
.sheet-gear{
width:100%;
}
.sheet-weapondice {
width: 25px;
text-align: center;
}
+234
View File
@@ -0,0 +1,234 @@
<link rel="stylesheet" href="awk.css">
<img src="https://user-images.githubusercontent.com/5252033/104815913-1e4df780-5831-11eb-8ebf-c096a47eafff.png">
<div class="sheet-main-container">
<div>
<h1>ЛИЧНОЕ ДЕЛО РАЗВЕДЧИКА</h1>
</div>
<div>
<hr>
</div>
<div class="sheet-input-attribute">
<label>ФИО</label>
<input class="sheet-attr-input" type="text" name="attr_name"/>
</div>
<div class="sheet-bio-line">
<div class="sheet-input-attribute-no-roll"><label>Уровень</label><input type="number" name="attr_level"
class="sheet-input-number-no-roll"/>
</div>
<div class="sheet-input-attribute-no-roll"><label>Возраст</label><input type="number" name="attr_age"
class="sheet-input-number-no-roll"/>
</div>
<div class="sheet-input-attribute-no-roll"><label>Прошлое</label><input type="text" name="attr_back"
class="sheet-input-text-no-roll"/></div>
<div class="sheet-input-attribute-no-roll"><label>Звание</label><select name="attr_rank">
<option value="-1" selected="selected">Рядовой</option>
<option value="0">Командир группы</option>
<option value="1">Сержант</option>
<option value="2">Лейтенант</option>
<option value="3">Капитан</option>
</select></div>
</div>
<div>
<hr>
</div>
<div class="sheet-attr-line">
<div class="sheet-attrs-block">
<div><label></label></div>
<div><label></label></div>
<div><label style="text-align: center">Штатно</label></div>
<div><label style="text-align: center">+</label></div>
<div><label style="text-align: center">-</label></div>
<!-- <div class="sheet-input-attribute">-->
<label>Сила</label>
<input type="number" name="attr_str" class="sheet-attr-input"/>
<button type='roll' name='attr_rollstr'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=СИЛУ}} {{check=[[@{str}]]}} {{result=[[1d20]]}}"></button>
<button type='roll' name='attr_rollstr'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=СИЛУ с преимуществом}} {{check=[[@{str}]]}} {{result=[[2d20kl1]]}}"></button>
<button type='roll' name='attr_rollstr'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=СИЛУ с осложнением}} {{check=[[@{str}]]}} {{result=[[2d20kh1]]}}"></button>
<!-- </div>-->
<!-- <div class="sheet-input-attribute">-->
<label>Ловкость</label>
<input type="number" name="attr_dex" class="sheet-attr-input"/>
<button type='roll' name='attr_rolldex'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ЛОВКОСТЬ}} {{check=[[@{dex}]]}} {{result=[[1d20]]}}"></button>
<button type='roll' name='attr_rolldex'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ЛОВКОСТЬ с преимуществом}} {{check=[[@{dex}]]}} {{result=[[2d20kl1]]}}"></button>
<button type='roll' name='attr_rolldex'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ЛОВКОСТЬ с осложнением}} {{check=[[@{dex}]]}} {{result=[[2d20kh1]]}}"></button>
<!-- </div>-->
<!-- <div class="sheet-input-attribute">-->
<label>Выносливость</label>
<input type="number" name="attr_con" class="sheet-attr-input"/>
<button type='roll' name='attr_rollcon'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ВЫНОСЛИВОСТЬ}} {{check=[[@{con}]]}} {{result=[[1d20]]}}"></button>
<button type='roll' name='attr_rollcon'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ВЫНОСЛИВОСТЬ с преимуществом}} {{check=[[@{con}]]}} {{result=[[2d20kl1]]}}"></button>
<button type='roll' name='attr_rollcon'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ВЫНОСЛИВОСТЬ с осложнением}} {{check=[[@{con}]]}} {{result=[[2d20kh1]]}}"></button>
<!-- </div>-->
<!-- <div class="sheet-input-attribute">-->
<label>Интеллект</label>
<input type="number" name="attr_int" class="sheet-attr-input"/>
<button type='roll' name='attr_rollint'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ИНТЕЛЛЕКТ}} {{check=[[@{int}]]}} {{result=[[1d20]]}}"></button>
<button type='roll' name='attr_rollint'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ИНТЕЛЛЕКТ с преимуществом}} {{check=[[@{int}]]}} {{result=[[2d20kl1]]}}"></button>
<button type='roll' name='attr_rollint'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ИНТЕЛЛЕКТ с осложнением}} {{check=[[@{int}]]}} {{result=[[2d20kh1]]}}"></button>
<!-- </div>-->
<!-- <div class="sheet-input-attribute">-->
<label>Воля</label>
<input type="number" name="attr_wis" class="sheet-attr-input"/>
<button type='roll' name='attr_rollwis'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ВОЛЮ}} {{check=[[@{wis}]]}} {{result=[[1d20]]}}"></button>
<button type='roll' name='attr_rollwis'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ВОЛЮ с преимуществом}} {{check=[[@{wis}]]}} {{result=[[2d20kl1]]}}"></button>
<button type='roll' name='attr_rollwis'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ВОЛЮ с осложнением}} {{check=[[@{wis}]]}} {{result=[[2d20kh1]]}}"></button>
<!-- </div>-->
<!-- <div class="sheet-input-attribute">-->
<label>Чутье</label>
<input type="number" name="attr_flair" class="sheet-attr-input"/>
<button type='roll' name='attr_rollflair'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ЧУТЬЕ}} {{check=[[@{flair}]]}} {{result=[[1d20]]}}"></button>
<button type='roll' name='attr_rollflair'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ЧУТЬЕ с преимуществом}} {{check=[[@{flair}]]}} {{result=[[2d20kl1]]}}"></button>
<button type='roll' name='attr_rollflair'
value="&{template:customcheck} {{name=@{name}}} {{naming_attr=ЧУТЬЕ с осложнением}} {{check=[[@{flair}]]}} {{result=[[2d20kh1]]}}"></button>
<!-- </div>-->
</div>
<div>
<div class="sheet-grid-hp">
<div class="sheet-hp-header"><label style="text-align: center">Пункты прочности</label></div>
<div class="sheet-current-hp">
<div class="sheet-input-attribute"><label>Тек.</label><input type="number" name="attr_chp"
class="sheet-input-number-no-roll"/>
</div>
</div>
<div class="sheet-max-hp">
<div class="sheet-input-attribute"><label>Макс.</label><input type="number" name="attr_mhp"
class="sheet-input-number-no-roll"/>
</div>
</div>
<div class="sheet-healing">
<button type='roll' name='healing_roll'
value="&{template:healing} {{name=@{name}}} {{result=[[1d8+@{level}]]}}">
Лечение
</button>
</div>
<div class="sheet-hp-level-up">
<button type='roll' name='hp_level_roll'
value="&{template:hplevel} {{name=@{name}}} {{result=[[1d8]]}}">
Ур. ПП
</button>
</div>
<div class="sheet-init-hp">
<button type='roll' name='init_hp_roll'
value="&{template:inithp} {{name=@{name}}} {{result=[[1d8+2]]}}">
Нач. ПП
</button>
</div>
</div>
<div class="sheet-attr-line">
<button type='roll' name='rank_init_roll'
value="&{template:rankinit} {{name=@{name}}} {{result=[[1d6+@{rank}]]}}">
Иниц.
</button>
<div class="sheet-input-attribute"><label>Защита</label><input type="number" name="attr_ac"
class="sheet-attr-input"/></div>
</div>
<div class="sheet-attr-line">
<div class="sheet-input-attribute"><label>Талоны</label><input type="number" name="attr_cards"
class="sheet-attr-input"/></div>
</div>
</div>
</div>
<div>
<button type='roll' name='init_attrs_roll'
value="&{template:init} {{name=@{name}}} {{str-init=[[3d6kl1+10]]}} {{dex-init=[[3d6kl1+10]]}} {{con-init=[[3d6kl1+10]]}} {{int-init=[[3d6kl1+10]]}} {{wis-init=[[3d6kl1+10]]}} {{flair-init=[[3d6kl1+10]]}}">
Определить стартовые атрибуты
</button>
</div>
<div>
<h2>ВООРУЖЕНИЕ(В БЫСТРОМ ДОСТУПЕ)</h2>
</div>
<div class="sheet-weaponlist-header">
<label class="sheet-weaponlist-header-empty"></label>
<label class="sheet-weaponlist-header-filled">Урон</label>
<label class="sheet-weaponlist-header-filled">Качества</label>
</div>
<fieldset class="repeating_weaponlist">
<div class="sheet-weaponlist-item">
<input class="sheet-weaponname" type="text" name="attr_weapon">
<input class="sheet-weapondice" type="text" name="attr_weapondice">
<button type="roll" value="@{template:default} {{урон=[[1d@{weapondice}]]}}"></button>
<input class="sheet-weaponattrs" type="text" name="attr_weaponattrs">
</div>
</fieldset>
<div>
<h2>ЭКИПИРОВКА(НА СЕБЕ)</h2>
</div>
<div class="sheet-weaponlist-header">
<label class="sheet-weaponlist-header-empty"></label>
<label class="sheet-weaponlist-header-filled">Кол-во</label>
<label class="sheet-weaponlist-header-filled">Качества</label>
</div>
<fieldset class="repeating_gearlist">
<div class="sheet-gearlist-item">
<input class="sheet-gear" type="text" name="attr_gear">
<input class="sheet-gear" type="number" name="attr_gearamount">
<input class="sheet-gear" type="text" name="attr_gearattrs">
</div>
</fieldset>
<div>
<h2>МЕЛОЧЕВКА</h2>
</div>
<fieldset class="repeating_stuff">
<input type="text" name="attr_stuff">
</fieldset>
</div>
<rolltemplate class="sheet-rolltemplate-init">
<div>{{name}} определяет стартовые аттрибуты:</div>
<div>Сила: {{str-init}}</div>
<div>Ловкость: {{dex-init}}</div>
<div>Выносливость: {{con-init}}</div>
<div>Интеллект: {{int-init}}</div>
<div>Воля: {{wis-init}}</div>
<div>Чутье: {{flair-init}}</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-customcheck">
<div>{{name}} проверяет {{naming_attr}}</div>
<div>{{result}} vs {{check}}</div>
{{#rollTotal() result check}}
<div class="rollresult rollfail">ПРОВАЛ</div>
{{/rollTotal() result check}}
{{#rollLess() result check}}
<div class="rollresult rollsuccess">УСПЕХ</div>
{{/rollLess() result check}}
{{#rollGreater() result check}}
<div class="rollresult rollfail">ПРОВАЛ</div>
{{/rollGreater() result check}}
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-healing">
<div>{{name}} восстаналивает {{result}} ПП.</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-hplevel">
<div>{{name}} получает {{result}} ПП.</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-inithp">
<div>{{name}} получает {{result}} максимальных ПП.</div>
</rolltemplate>
<rolltemplate class="sheet-rolltemplate-rankinit">
{{#rollGreater() result 3}}
<div>Группа, которой командует {{name}} действует первой.</div>
{{/rollGreater() result 3}}
{{#rollLess() result 4}}
<div>Группа, которой командует {{name}} действует второй.</div>
{{/rollLess() result 4}}
</rolltemplate>
Binary file not shown.

After

Width:  |  Height:  |  Size: 209 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 736 KiB