mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 03:40:32 +00:00
Ghosts of Vietnam Character Sheet
Official character sheet for Ghosts of Vietnam: The RPG.
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 1.2 MiB |
@@ -0,0 +1,280 @@
|
||||
.sheet-gov-sheet{
|
||||
font-family: serif;
|
||||
max-width:1100px;
|
||||
margin:auto;
|
||||
}
|
||||
|
||||
/* GLOBAL INPUT STYLE */
|
||||
|
||||
.sheet-gov-sheet input,
|
||||
.sheet-gov-sheet textarea{
|
||||
width:100%;
|
||||
border:none;
|
||||
background:transparent;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
.sheet-gov-sheet textarea{
|
||||
height:60px;
|
||||
}
|
||||
|
||||
/* TABLE BASE */
|
||||
|
||||
.sheet-gov-sheet table{
|
||||
width:100%;
|
||||
border-collapse:collapse;
|
||||
margin-bottom:8px;
|
||||
}
|
||||
|
||||
.sheet-gov-sheet th,
|
||||
.sheet-gov-sheet td{
|
||||
border:1px solid #444;
|
||||
padding:3px;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
.sheet-gov-sheet th{
|
||||
background:#d0d0d0;
|
||||
font-weight:bold;
|
||||
}
|
||||
|
||||
/* TITLE */
|
||||
|
||||
.sheet-title{
|
||||
font-size:34px;
|
||||
font-weight:bold;
|
||||
line-height:1.1;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
/* HEADER GRID */
|
||||
|
||||
.sheet-header-grid{
|
||||
display:grid;
|
||||
grid-template-columns:220px 1fr 300px;
|
||||
gap:10px;
|
||||
margin-bottom:8px;
|
||||
}
|
||||
|
||||
.sheet-center-top{
|
||||
display:flex;
|
||||
flex-direction:column;
|
||||
gap:6px;
|
||||
}
|
||||
|
||||
.sheet-right-top{
|
||||
display:flex;
|
||||
flex-direction:column;
|
||||
gap:6px;
|
||||
}
|
||||
|
||||
/* META ROWS */
|
||||
|
||||
.sheet-meta-row{
|
||||
display:grid;
|
||||
grid-template-columns:2fr 1fr 2fr 1fr 1fr;
|
||||
gap:6px;
|
||||
margin-bottom:6px;
|
||||
}
|
||||
|
||||
.sheet-meta-row2{
|
||||
display:grid;
|
||||
grid-template-columns:2fr 1fr 2fr;
|
||||
gap:6px;
|
||||
margin-bottom:6px;
|
||||
}
|
||||
|
||||
/* DESCRIPTION */
|
||||
|
||||
.sheet-description-row{
|
||||
display:grid;
|
||||
grid-template-columns:4fr 1fr;
|
||||
gap:8px;
|
||||
margin-bottom:10px;
|
||||
}
|
||||
|
||||
/* MAIN BODY */
|
||||
|
||||
.sheet-main-body{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1.4fr;
|
||||
gap:12px;
|
||||
}
|
||||
|
||||
/* LEFT SIDE */
|
||||
|
||||
.sheet-left-side{
|
||||
display:flex;
|
||||
flex-direction:column;
|
||||
gap:8px;
|
||||
}
|
||||
|
||||
/* MOVE DEROS RANK */
|
||||
|
||||
.sheet-move-deros-rank{
|
||||
display:grid;
|
||||
grid-template-columns:1fr 1fr 2fr;
|
||||
gap:6px;
|
||||
}
|
||||
|
||||
/* ATTRIBUTE TABLE */
|
||||
|
||||
.sheet-attr-table th{
|
||||
font-size:12px;
|
||||
}
|
||||
|
||||
/* SAVING THROWS */
|
||||
|
||||
.sheet-saving-table th{
|
||||
font-size:12px;
|
||||
}
|
||||
|
||||
/* ARMOR TABLE */
|
||||
|
||||
.sheet-armor-table{
|
||||
width:250px;
|
||||
}
|
||||
|
||||
/* RIGHT SIDE */
|
||||
|
||||
.sheet-right-side{
|
||||
display:flex;
|
||||
flex-direction:column;
|
||||
gap:10px;
|
||||
}
|
||||
|
||||
/* ATTACK TABLE */
|
||||
|
||||
.sheet-attack-table td,
|
||||
.sheet-attack-table th{
|
||||
font-size:12px;
|
||||
}
|
||||
|
||||
.sheet-note-cell{
|
||||
font-size:11px;
|
||||
}
|
||||
|
||||
/* ARMOR CLASS */
|
||||
|
||||
.sheet-ac-table textarea{
|
||||
height:50px;
|
||||
}
|
||||
|
||||
/* WEAPONS FULL WIDTH */
|
||||
|
||||
.sheet-weapons-full{
|
||||
margin-top:10px;
|
||||
border:1px solid #444;
|
||||
padding:6px;
|
||||
}
|
||||
|
||||
.sheet-weapons-title{
|
||||
text-align:center;
|
||||
font-weight:bold;
|
||||
margin-bottom:4px;
|
||||
}
|
||||
|
||||
.sheet-weapons-header{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr 1fr 1fr 1fr 2fr 1fr 1fr;
|
||||
font-weight:bold;
|
||||
border-bottom:1px solid #444;
|
||||
margin-bottom:4px;
|
||||
}
|
||||
|
||||
.sheet-weapons-row{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr 1fr 1fr 1fr 2fr 1fr 1fr;
|
||||
gap:2px;
|
||||
margin-bottom:2px;
|
||||
}
|
||||
|
||||
/* PAGE 2 */
|
||||
|
||||
.sheet-page2{
|
||||
margin-top:20px;
|
||||
}
|
||||
|
||||
.sheet-page2-grid{
|
||||
display:grid;
|
||||
grid-template-columns:2fr 1.3fr;
|
||||
gap:20px;
|
||||
}
|
||||
|
||||
/* EQUIPMENT */
|
||||
|
||||
.sheet-section-title{
|
||||
text-align:center;
|
||||
font-weight:bold;
|
||||
background:#d0d0d0;
|
||||
border:1px solid #444;
|
||||
padding:3px;
|
||||
}
|
||||
|
||||
.sheet-equip-header{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr;
|
||||
border-left:1px solid #444;
|
||||
border-right:1px solid #444;
|
||||
border-bottom:1px solid #444;
|
||||
font-weight:bold;
|
||||
}
|
||||
|
||||
.sheet-equip-row{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr;
|
||||
border-left:1px solid #444;
|
||||
border-right:1px solid #444;
|
||||
border-bottom:1px solid #444;
|
||||
}
|
||||
|
||||
.sheet-equip-total{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr;
|
||||
border:1px solid #444;
|
||||
margin-top:4px;
|
||||
}
|
||||
|
||||
/* NWP */
|
||||
|
||||
.sheet-nwp-header{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr 1fr 1fr 1fr;
|
||||
border:1px solid #444;
|
||||
font-weight:bold;
|
||||
}
|
||||
|
||||
.sheet-nwp-row{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr 1fr 1fr 1fr;
|
||||
border-left:1px solid #444;
|
||||
border-right:1px solid #444;
|
||||
border-bottom:1px solid #444;
|
||||
}
|
||||
|
||||
/* WP */
|
||||
|
||||
.sheet-wp-title{
|
||||
margin-top:12px;
|
||||
}
|
||||
|
||||
.sheet-wp-header{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr;
|
||||
border:1px solid #444;
|
||||
font-weight:bold;
|
||||
}
|
||||
|
||||
.sheet-wp-row{
|
||||
display:grid;
|
||||
grid-template-columns:3fr 1fr;
|
||||
border-left:1px solid #444;
|
||||
border-right:1px solid #444;
|
||||
border-bottom:1px solid #444;
|
||||
}
|
||||
|
||||
/* ROGUE TABLE */
|
||||
|
||||
.sheet-rogue-table th{
|
||||
font-size:11px;
|
||||
}
|
||||
@@ -0,0 +1,474 @@
|
||||
<div class="sheet-gov-sheet">
|
||||
<input type="hidden" name="attr_sheet_type" value="character">
|
||||
|
||||
<!-- PAGE 1 -->
|
||||
<div class="sheet-page1">
|
||||
|
||||
<!-- TOP HEADER AREA -->
|
||||
<div class="sheet-header-grid">
|
||||
|
||||
<!-- TITLE -->
|
||||
<div class="sheet-title-block">
|
||||
<div class="sheet-title">GHOSTS OF<br>VIETNAM</div>
|
||||
</div>
|
||||
|
||||
<!-- CENTER TOP -->
|
||||
<div class="sheet-center-top">
|
||||
<table class="sheet-box-table">
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_character_name"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table class="sheet-box-table">
|
||||
<tr>
|
||||
<th>Branch</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_branch"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- RIGHT TOP -->
|
||||
<div class="sheet-right-top">
|
||||
<table class="sheet-box-table">
|
||||
<tr>
|
||||
<th>Campaign Max Level</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_campaign_max_level"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table class="sheet-box-table sheet-hp-table">
|
||||
<tr>
|
||||
<th colspan="2">Hit Points</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Current</th>
|
||||
<th>Maximum</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_hp_current"></td>
|
||||
<td><input type="text" name="attr_hp_max"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- SECOND ROW -->
|
||||
<div class="sheet-meta-row">
|
||||
<table class="sheet-box-table"><tr><th>Class (MOS)</th></tr><tr><td><input type="text" name="attr_class_mos"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Level</th></tr><tr><td><input type="text" name="attr_level"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Nationality</th></tr><tr><td><input type="text" name="attr_nationality"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Height</th></tr><tr><td><input type="text" name="attr_height"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Weight</th></tr><tr><td><input type="text" name="attr_weight"></td></tr></table>
|
||||
</div>
|
||||
|
||||
<!-- THIRD ROW -->
|
||||
<div class="sheet-meta-row2">
|
||||
<table class="sheet-box-table"><tr><th>Alignment</th></tr><tr><td><input type="text" name="attr_alignment"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Religion</th></tr><tr><td><input type="text" name="attr_religion"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Experience Points</th></tr><tr><td><input type="text" name="attr_experience_points"></td></tr></table>
|
||||
</div>
|
||||
|
||||
<!-- DESCRIPTION ROW -->
|
||||
<div class="sheet-description-row">
|
||||
<table class="sheet-box-table sheet-physical-table">
|
||||
<tr><th>Physical Description</th></tr>
|
||||
<tr><td><textarea name="attr_physical_description"></textarea></td></tr>
|
||||
</table>
|
||||
|
||||
<table class="sheet-box-table sheet-age-table">
|
||||
<tr><th>Age</th></tr>
|
||||
<tr><td><input type="text" name="attr_age"></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- MAIN BODY -->
|
||||
<div class="sheet-main-body">
|
||||
|
||||
<!-- LEFT SIDE -->
|
||||
<div class="sheet-left-side">
|
||||
|
||||
<!-- MOVEMENT / DEROS / RANK -->
|
||||
<div class="sheet-move-deros-rank">
|
||||
<table class="sheet-box-table"><tr><th>Movement</th></tr><tr><td><input type="text" name="attr_movement"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>DEROS</th></tr><tr><td><input type="text" name="attr_deros"></td></tr></table>
|
||||
<table class="sheet-box-table"><tr><th>Rank</th></tr><tr><td><input type="text" name="attr_rank"></td></tr></table>
|
||||
</div>
|
||||
|
||||
<!-- ATTRIBUTE MATRIX -->
|
||||
<table class="sheet-attr-table">
|
||||
<tr>
|
||||
<th>Strength</th>
|
||||
<th>To Hit Bonus</th>
|
||||
<th>Damage Bonus</th>
|
||||
<th>Weight Allow</th>
|
||||
<th>Max Press</th>
|
||||
<th>Brute Force Entry</th>
|
||||
<th>Defeat Obstacles</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_strength"></td>
|
||||
<td><input type="text" name="attr_strength_to_hit_bonus"></td>
|
||||
<td><input type="text" name="attr_strength_damage_bonus"></td>
|
||||
<td><input type="text" name="attr_strength_weight_allow"></td>
|
||||
<td><input type="text" name="attr_strength_max_press"></td>
|
||||
<td><input type="text" name="attr_strength_brute_force_entry"></td>
|
||||
<td><input type="text" name="attr_strength_defeat_obstacles"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Dexterity</th>
|
||||
<th>Reaction Adj.</th>
|
||||
<th>Ranged Attack Bonus</th>
|
||||
<th>Defense Adj.</th>
|
||||
<th colspan="3"></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_dexterity"></td>
|
||||
<td><input type="text" name="attr_dexterity_reaction_adj"></td>
|
||||
<td><input type="text" name="attr_dexterity_ranged_attack_bonus"></td>
|
||||
<td><input type="text" name="attr_dexterity_defense_adj"></td>
|
||||
<td colspan="3"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Constitution</th>
|
||||
<th>Hit Point Adj.</th>
|
||||
<th>System Shock</th>
|
||||
<th>Resurrection Survival</th>
|
||||
<th>Poison Save Bonus</th>
|
||||
<th colspan="2"></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_constitution"></td>
|
||||
<td><input type="text" name="attr_constitution_hit_point_adj"></td>
|
||||
<td><input type="text" name="attr_constitution_system_shock"></td>
|
||||
<td><input type="text" name="attr_constitution_resurrection_survival"></td>
|
||||
<td><input type="text" name="attr_constitution_poison_save_bonus"></td>
|
||||
<td colspan="2"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Intelligence</th>
|
||||
<th># Languages</th>
|
||||
<th>Technical Knowledge</th>
|
||||
<th>Shock Adj.</th>
|
||||
<th colspan="3"></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_intelligence"></td>
|
||||
<td><input type="text" name="attr_intelligence_languages"></td>
|
||||
<td><input type="text" name="attr_intelligence_technical_knowledge"></td>
|
||||
<td><input type="text" name="attr_intelligence_shock_adj"></td>
|
||||
<td colspan="3"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Wisdom</th>
|
||||
<th>Resolve Adj.</th>
|
||||
<th colspan="5"></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_wisdom"></td>
|
||||
<td><input type="text" name="attr_wisdom_resolve_adj"></td>
|
||||
<td colspan="5"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Charisma</th>
|
||||
<th>Max Henchmen</th>
|
||||
<th>Loyalty Adj.</th>
|
||||
<th>Reaction Adj.</th>
|
||||
<th colspan="3"></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_charisma"></td>
|
||||
<td><input type="text" name="attr_charisma_max_henchmen"></td>
|
||||
<td><input type="text" name="attr_charisma_loyalty_adj"></td>
|
||||
<td><input type="text" name="attr_charisma_reaction_adj"></td>
|
||||
<td colspan="3"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Appearance</th>
|
||||
<th>Reaction Adj.</th>
|
||||
<th colspan="5"></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_appearance"></td>
|
||||
<td><input type="text" name="attr_appearance_reaction_adj"></td>
|
||||
<td colspan="5"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- SAVING THROWS -->
|
||||
<table class="sheet-saving-table">
|
||||
<tr>
|
||||
<th colspan="7">Saving Throws</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Paralyzation</th>
|
||||
<th>Poison</th>
|
||||
<th>Death</th>
|
||||
<th>Shock</th>
|
||||
<th>Transformation</th>
|
||||
<th>Evasion</th>
|
||||
<th>Resolve</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_save_paralyzation"></td>
|
||||
<td><input type="text" name="attr_save_poison"></td>
|
||||
<td><input type="text" name="attr_save_death"></td>
|
||||
<td><input type="text" name="attr_save_shock"></td>
|
||||
<td><input type="text" name="attr_save_transformation"></td>
|
||||
<td><input type="text" name="attr_save_evasion"></td>
|
||||
<td><input type="text" name="attr_save_resolve"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- ARMOR -->
|
||||
<table class="sheet-armor-table">
|
||||
<tr>
|
||||
<th>Armor</th>
|
||||
<th>AC</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_armor_1"></td>
|
||||
<td><input type="text" name="attr_armor_1_ac"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_armor_2"></td>
|
||||
<td><input type="text" name="attr_armor_2_ac"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- RIGHT SIDE -->
|
||||
<div class="sheet-right-side">
|
||||
|
||||
<!-- ATTACK TABLE -->
|
||||
<table class="sheet-attack-table">
|
||||
<tr>
|
||||
<th colspan="4">Attack Table</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Melee</th>
|
||||
<th>THAC0</th>
|
||||
<th>Ranged</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_attack_melee"></td>
|
||||
<td><input type="text" name="attr_thaco"></td>
|
||||
<td><input type="text" name="attr_attack_ranged"></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>AC</th>
|
||||
<th>To Hit</th>
|
||||
<th>AC</th>
|
||||
<th>To Hit</th>
|
||||
</tr>
|
||||
<tr><td>1</td><td><input type="text" name="attr_to_hit_ac_1"></td><td>-1</td><td><input type="text" name="attr_to_hit_ac_neg1"></td></tr>
|
||||
<tr><td>2</td><td><input type="text" name="attr_to_hit_ac_2"></td><td>-2</td><td><input type="text" name="attr_to_hit_ac_neg2"></td></tr>
|
||||
<tr><td>3</td><td><input type="text" name="attr_to_hit_ac_3"></td><td>-3</td><td><input type="text" name="attr_to_hit_ac_neg3"></td></tr>
|
||||
<tr><td>4</td><td><input type="text" name="attr_to_hit_ac_4"></td><td>-4</td><td><input type="text" name="attr_to_hit_ac_neg4"></td></tr>
|
||||
<tr><td>5</td><td><input type="text" name="attr_to_hit_ac_5"></td><td>-5</td><td><input type="text" name="attr_to_hit_ac_neg5"></td></tr>
|
||||
<tr><td>6</td><td><input type="text" name="attr_to_hit_ac_6"></td><td>-6</td><td><input type="text" name="attr_to_hit_ac_neg6"></td></tr>
|
||||
<tr><td>7</td><td><input type="text" name="attr_to_hit_ac_7"></td><td>-7</td><td><input type="text" name="attr_to_hit_ac_neg7"></td></tr>
|
||||
<tr><td>8</td><td><input type="text" name="attr_to_hit_ac_8"></td><td>-8</td><td><input type="text" name="attr_to_hit_ac_neg8"></td></tr>
|
||||
<tr><td>9</td><td><input type="text" name="attr_to_hit_ac_9"></td><td>-9</td><td><input type="text" name="attr_to_hit_ac_neg9"></td></tr>
|
||||
<tr><td>10</td><td><input type="text" name="attr_to_hit_ac_10"></td><td>-10</td><td><input type="text" name="attr_to_hit_ac_neg10"></td></tr>
|
||||
<tr>
|
||||
<td colspan="4" class="sheet-note-cell">Attack success requires an equal to or above roll to hit.</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<!-- ARMOR CLASS -->
|
||||
<table class="sheet-ac-table">
|
||||
<tr><th colspan="3">Armor Class</th></tr>
|
||||
<tr><th colspan="3">Armored</th></tr>
|
||||
<tr><td colspan="3"><input type="text" name="attr_ac_armored"></td></tr>
|
||||
<tr>
|
||||
<th>Surprised</th>
|
||||
<th>Natural</th>
|
||||
<th>Rear</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_ac_surprised"></td>
|
||||
<td><input type="text" name="attr_ac_natural"></td>
|
||||
<td><input type="text" name="attr_ac_rear"></td>
|
||||
</tr>
|
||||
<tr><th colspan="3">Other Defenses</th></tr>
|
||||
<tr><td colspan="3"><textarea name="attr_other_defenses"></textarea></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- WEAPONS FULL WIDTH -->
|
||||
<div class="sheet-weapons-full">
|
||||
<div class="sheet-weapons-title">Weapons</div>
|
||||
<div class="sheet-weapons-header">
|
||||
<span>Weapon</span>
|
||||
<span># Attacks</span>
|
||||
<span>ROF</span>
|
||||
<span>Att Adj.</span>
|
||||
<span>Dmg Adj.</span>
|
||||
<span>Ranges</span>
|
||||
<span>Damage</span>
|
||||
<span>Mag.</span>
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_weapons">
|
||||
<div class="sheet-weapons-row">
|
||||
<input type="text" name="attr_weapon_name">
|
||||
<input type="text" name="attr_weapon_attacks">
|
||||
<input type="text" name="attr_weapon_rof">
|
||||
<input type="text" name="attr_weapon_att_adj">
|
||||
<input type="text" name="attr_weapon_dmg_adj">
|
||||
<input type="text" name="attr_weapon_ranges">
|
||||
<input type="text" name="attr_weapon_damage">
|
||||
<input type="text" name="attr_weapon_mag">
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- PAGE 2 -->
|
||||
<div class="sheet-page2">
|
||||
|
||||
<div class="sheet-page2-grid">
|
||||
|
||||
<!-- LEFT PAGE 2 -->
|
||||
<div class="sheet-page2-left">
|
||||
|
||||
<div class="sheet-section-title">Carried Equipment</div>
|
||||
|
||||
<div class="sheet-equip-header">
|
||||
<span>Carried Item</span>
|
||||
<span>Weight</span>
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_equipment">
|
||||
<div class="sheet-equip-row">
|
||||
<input type="text" name="attr_item_name">
|
||||
<input type="number" name="attr_item_weight" value="0" step="0.01">
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="sheet-equip-total">
|
||||
<span>Total Weight</span>
|
||||
<input type="number" name="attr_total_weight" value="0" step="0.01">
|
||||
</div>
|
||||
|
||||
<table class="sheet-box-table sheet-wealth-table">
|
||||
<tr>
|
||||
<th>Wealth</th>
|
||||
<td><input type="text" name="attr_wealth"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table class="sheet-rogue-table">
|
||||
<tr><th colspan="8">Rogue Abilities</th></tr>
|
||||
<tr>
|
||||
<th>Pick Pockets</th>
|
||||
<th>Open Locks</th>
|
||||
<th>Find/Remove Traps</th>
|
||||
<th>Move Silently</th>
|
||||
<th>Hide in Shadows</th>
|
||||
<th>Detect Noise</th>
|
||||
<th>Climb Walls</th>
|
||||
<th>Read Languages</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="attr_rogue_pick_pockets"></td>
|
||||
<td><input type="text" name="attr_rogue_open_locks"></td>
|
||||
<td><input type="text" name="attr_rogue_find_remove_traps"></td>
|
||||
<td><input type="text" name="attr_rogue_move_silently"></td>
|
||||
<td><input type="text" name="attr_rogue_hide_in_shadows"></td>
|
||||
<td><input type="text" name="attr_rogue_detect_noise"></td>
|
||||
<td><input type="text" name="attr_rogue_climb_walls"></td>
|
||||
<td><input type="text" name="attr_rogue_read_languages"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- RIGHT PAGE 2 -->
|
||||
<div class="sheet-page2-right">
|
||||
|
||||
<div class="sheet-section-title">Nonweapon Proficiencies</div>
|
||||
<div class="sheet-nwp-header">
|
||||
<span>Name</span>
|
||||
<span>Ability</span>
|
||||
<span>Mod</span>
|
||||
<span>Slots</span>
|
||||
<span>Roll</span>
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_nwp">
|
||||
<div class="sheet-nwp-row">
|
||||
<input type="text" name="attr_nwp_name">
|
||||
<input type="text" name="attr_nwp_ability">
|
||||
<input type="text" name="attr_nwp_mod">
|
||||
<input type="text" name="attr_nwp_slots">
|
||||
<input type="text" name="attr_nwp_roll">
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="sheet-section-title sheet-wp-title">Weapon Proficiencies</div>
|
||||
<div class="sheet-wp-header">
|
||||
<span>Weapon Name</span>
|
||||
<span>Slots</span>
|
||||
</div>
|
||||
|
||||
<fieldset class="repeating_wp">
|
||||
<div class="sheet-wp-row">
|
||||
<input type="text" name="attr_wp_name">
|
||||
<input type="text" name="attr_wp_slots">
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/worker">
|
||||
|
||||
const updateEquipmentWeight = () => {
|
||||
|
||||
getSectionIDs("repeating_equipment", function(ids) {
|
||||
|
||||
let fields = [];
|
||||
let total = 0;
|
||||
|
||||
ids.forEach(id => {
|
||||
fields.push(`repeating_equipment_${id}_item_weight`);
|
||||
});
|
||||
|
||||
getAttrs(fields, function(values) {
|
||||
|
||||
ids.forEach(id => {
|
||||
let weight = parseFloat(values[`repeating_equipment_${id}_item_weight`]) || 0;
|
||||
total += weight;
|
||||
});
|
||||
|
||||
setAttrs({
|
||||
total_weight: total
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
on("change:repeating_equipment sheet:opened remove:repeating_equipment", updateEquipmentWeight);
|
||||
|
||||
</script>
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "Ghosts_of_Vietnam_Character_Sheet.html",
|
||||
"css": "Ghosts_of_Vietnam_Character_Sheet.css",
|
||||
"authors": "Richard L. Littles",
|
||||
"roll20userid": "17745109",
|
||||
"preview": "Ghosts of Vietnam.jpg",
|
||||
"instructions": "A fully functional character sheet for Ghosts of Vietnam."
|
||||
}
|
||||
Reference in New Issue
Block a user