mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 03:40:32 +00:00
611 lines
35 KiB
HTML
611 lines
35 KiB
HTML
<div class="sheet-hex">
|
|
<script type="text/worker">
|
|
//Set encumbrance based on strength
|
|
on("change:strength", function () {
|
|
getAttrs(["strength"], function (values) {
|
|
switch (values.strength) {
|
|
case "1":
|
|
setAttrs({ enclight: 10, encmedium: 25, encheavy: 50 });
|
|
break;
|
|
case "2":
|
|
setAttrs({ enclight: 25, encmedium: 50, encheavy: 100 });
|
|
break;
|
|
case "3":
|
|
setAttrs({ enclight: 50, encmedium: 100, encheavy: 250 });
|
|
break;
|
|
case "4":
|
|
setAttrs({ enclight: 100, encmedium: 250, encheavy: 500 });
|
|
break;
|
|
case "5":
|
|
setAttrs({ enclight: 250, encmedium: 500, encheavy: 750 });
|
|
break;
|
|
case "6":
|
|
setAttrs({ enclight: 500, encmedium: 750, encheavy: 1000 });
|
|
break;
|
|
default:
|
|
setAttrs({ enclight: 0, encmedium: 0, encheavy: 0 });
|
|
break;
|
|
} //end switch
|
|
}); //end getAttrs
|
|
}); //end on("change:strength")
|
|
|
|
|
|
//Calculate Movement
|
|
on("change:strength change:dexterity change:health change:swift", function () {
|
|
getAttrs(["strength","dexterity","health","swift"], function (values) {
|
|
let mv = parseInt(values.strength)+parseInt(values.dexterity);
|
|
let hlth = parseFloat(values.health);
|
|
let swift = values.swift;
|
|
if (hlth<0){
|
|
mv = mv+hlth;
|
|
}
|
|
|
|
if (swift=="on"){
|
|
mv=mv+2;
|
|
}
|
|
|
|
setAttrs({move:mv});
|
|
}); //end getAttrs
|
|
}); //end on("change:strength change:dexterity change:health change:swift")
|
|
|
|
|
|
|
|
//Body + Willpower + Size
|
|
//Calculate health_orig
|
|
on("change:body change:willpower change:size change:robust_bonus", function () {
|
|
getAttrs(["body","willpower","size","robust_bonus"], function (values) {
|
|
let body=parseInt(values.body);
|
|
console.log("body :"+body);
|
|
let willpower=parseInt(values.willpower);
|
|
console.log("willpower :"+willpower);
|
|
let robust_bonus=parseInt(values.robust_bonus);
|
|
console.log("robust_bonus :"+robust_bonus);
|
|
let health=body+willpower+robust_bonus;
|
|
setAttrs({health_orig:health});
|
|
|
|
/*let hlth = parseInt(values.body)+parseInt(values.willpower)+parseInt(values.size)+parseInt(values.robust_bonus);
|
|
setAttrs({health_orig:hlth});*/
|
|
}); //end getAttrs
|
|
}); //end on("change:strength change:dexterity change:health change:swift")
|
|
|
|
|
|
//Calculate current health
|
|
on("change:lDamage change:nDamage change:health_orig", function () {
|
|
getAttrs(["lDamage","nDamage","health_orig"], function (values) {
|
|
let max_health = parseInt(values.health_orig);
|
|
let lethal = parseInt(values.lDamage)
|
|
let nonlethal = parseInt(values.nDamage);
|
|
let hlth = max_health-lethal-nonlethal;
|
|
setAttrs({health:hlth});
|
|
|
|
}); //end getAttrs
|
|
}); //end
|
|
|
|
|
|
//Calculate perception
|
|
on("change:intelligence change:willpower change:alertness", function () {
|
|
getAttrs(["intelligence","willpower","alertness"], function (values) {
|
|
let intelligence = parseInt(values.intelligence)
|
|
let willpower = parseInt(values.willpower);
|
|
let perception = intelligence+willpower;
|
|
let alertness = values.alertness;
|
|
console.log("alertness:"+alertness);
|
|
if (alertness=="on"){
|
|
perception=perception+2;
|
|
}
|
|
setAttrs({perception:perception});
|
|
|
|
}); //end getAttrs
|
|
}); //end
|
|
|
|
|
|
//Calculate Initative
|
|
on("change:dexterity change:intelligence change:health change:quickReflexes", function () {
|
|
getAttrs(["intelligence","dexterity","health","quickReflexes"], function (values) {
|
|
let init = parseInt(values.dexterity)+parseInt(values.intelligence);
|
|
//let hlth = parseFloat(values.health);
|
|
let qr = values.quickReflexes;
|
|
|
|
/*
|
|
|
|
if (hlth<0){
|
|
mv = mv+hlth;
|
|
}*/
|
|
|
|
if (qr=="on"){
|
|
init=init+2;
|
|
}
|
|
|
|
setAttrs({initiative:init});
|
|
}); //end getAttrs
|
|
}); //end
|
|
|
|
|
|
|
|
//Calculate Defense
|
|
on("change:dexterity change:body change:strength change:strongDefense", function () {
|
|
getAttrs(["body","dexterity","strength","strongDefense"], function (values) {
|
|
let def = 0;
|
|
if (values.strongDefense=="on"){
|
|
def = parseInt(values.dexterity)+parseInt(values.strength);
|
|
} else {
|
|
def = parseInt(values.dexterity)+parseInt(values.body);
|
|
}
|
|
setAttrs({defense:def});
|
|
}); //end getAttrs
|
|
}); //end
|
|
|
|
|
|
//Calculate stun
|
|
on("change:willpower change:body change:willpower change:ironJawBonus change:headStrong", function () {
|
|
getAttrs(["body","willpower","ironJawBonus","headStrong"], function (values) {
|
|
let stun = 0;
|
|
if (values.headStrong=="on"){
|
|
stun = parseInt(values.willpower);
|
|
} else {
|
|
stun = parseInt(values.body);
|
|
}
|
|
stun=stun+parseInt(values.ironJawBonus)
|
|
setAttrs({stun:stun});
|
|
|
|
}); //end getAttrs
|
|
}); //end
|
|
|
|
|
|
|
|
//Calculate stun
|
|
on("change:willpower change:body change:willpower change:ironJawBonus change:headStrong", function () {
|
|
getAttrs(["body","willpower","ironJawBonus","headStrong"], function (values) {
|
|
let stun = 0;
|
|
if (values.headStrong=="on"){
|
|
stun = parseInt(values.willpower);
|
|
} else {
|
|
stun = parseInt(values.body);
|
|
}
|
|
stun=stun+parseInt(values.ironJawBonus)
|
|
setAttrs({stun:stun});
|
|
|
|
}); //end getAttrs
|
|
}); //end
|
|
|
|
|
|
|
|
//Calculate averages for weapons and skills and enter in HEX n+ notation style
|
|
on("change:repeating_skills:skillrating", function (e) {
|
|
getAttrs(["repeating_skills_skillrating"], function (values) {
|
|
var n = "(" + Math.floor(values.repeating_skills_skillrating / 2).toString();
|
|
n += (values.repeating_skills_skillrating % 2 > 0) ? "+)" : ")";
|
|
setAttrs({ repeating_skills_skillaverage: n });
|
|
});
|
|
});
|
|
on("change:repeating_weapons:weaponattack", function (e) {
|
|
getAttrs(["repeating_weapons_weaponattack"], function (values) {
|
|
var n = "(" + Math.floor(values.repeating_weapons_weaponattack / 2).toString();
|
|
n += (values.repeating_weapons_weaponattack % 2 > 0) ? "+)" : ")";
|
|
setAttrs({ repeating_weapons_weaponaverage: n });
|
|
});
|
|
});
|
|
|
|
//Inventory weight tallying
|
|
on("change:repeating_equipment:equipweight remove:repeating_equipment", function (e) {
|
|
getSectionIDs("repeating_equipment", function (idarr) {
|
|
var totalWeight = 0;
|
|
var weightTally = _.after(idarr.length, function () {
|
|
setAttrs({ invweight: Math.round(totalWeight) });
|
|
});
|
|
for (var i = 0; i < idarr.length; i++) {
|
|
getAttrs(["repeating_equipment_" + idarr[i] + "_equipweight"], function (v) {
|
|
var itemWeight = parseFloat(v[Object.keys(v)[0]]);
|
|
if (isNaN(itemWeight)) itemWeight=0;
|
|
totalWeight += itemWeight;
|
|
weightTally();
|
|
});
|
|
}
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
</script>
|
|
<div class="sheet-2colrow sheet-main-row">
|
|
<!-- Left column -->
|
|
<div class="sheet-col sheet-primary">
|
|
<div class="sheet-logo-row">
|
|
<div class="sheet-archetype">
|
|
<input class="sheet-free-input" name="attr_character_name" type="text" />
|
|
<span data-i18n="Archetype">Character Name</span>
|
|
<input class="sheet-free-input" name="attr_archetype" type="text" />
|
|
<span data-i18n="Archetype">Archetype</span>
|
|
<input class="sheet-free-input" name="attr_motivation" type="text" />
|
|
<span data-i18n="Motivation">Motivation</span>
|
|
</div>
|
|
<div class="sheet-img-logo">
|
|
<img class="sheet-hexlogo" src="https://github.com/Roll20/roll20-character-sheets/blob/master/AllforOne/Graphics/allforone-logo
|
|
.png?raw=true" />
|
|
</div>
|
|
</div>
|
|
<div class="sheet-stats">
|
|
<h1 class="sheet-first-heading" data-i18n="Primary-Attributes">Primary Attributes</h1>
|
|
<div class="sheet-2colrow">
|
|
<div class="sheet-col sheet-collapse-margin">
|
|
<label class="sheet-attr-input-label sheet-attr-body">
|
|
<span data-i18n="Body">Body</span>
|
|
<input class="sheet-attr-input-text body" value="0" name="attr_body" type="text" title="Resistance check" />
|
|
<button type="roll" class="sheet-roll-button" name="roll_bodyroll" value="&{template:basic} {{character_name=@{character_name}}} {{name=Body}} {{Successes=[[(@{body}*2+@{mods})d2>2]]}} {{Average=[[((@{body}*2+@{mods})%2)d2>2+[[floor((@{body}*2+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</label>
|
|
<label class="sheet-attr-input-label sheet-attr-dexterity">
|
|
<span data-i18n="Dexterity">Dexterity</span>
|
|
<input class="sheet-attr-input-text dexterity" value="0" name="attr_dexterity" type="text" title="Balance check" />
|
|
<button type="roll" class="sheet-roll-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Dexterity}} {{Successes=[[(@{dexterity}*2+@{mods})d2>2]]}} {{Average=[[((@{dexterity}*2+@{mods})%2)d2>2+[[floor((@{dexterity}*2+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</label>
|
|
<label class="sheet-attr-input-label sheet-attr-strength">
|
|
<span data-i18n="Strength">Strength</span>
|
|
<input class="sheet-attr-input-text strength" name="attr_strength" value="0" type="text" title="Feats of strength check" />
|
|
<button type="roll" class="sheet-roll-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Strength}} {{Successes=[[(@{strength}*2+@{mods})d2>2]]}} {{Average=[[((@{strength}*2+@{mods})%2)d2>2+[[floor((@{strength}*2+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</label>
|
|
</div>
|
|
<div class="sheet-col sheet-collapse-margin">
|
|
<label class="sheet-attr-input-label sheet-right-attr">
|
|
<span data-i18n="Charisma">Charisma</span>
|
|
<input class="sheet-attr-input-text charisma" name="attr_charisma" value="0" type="text" title="Influence check" />
|
|
<button type="roll" class="sheet-roll-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Charisma}} {{Successes=[[(@{charisma}*2+@{mods})d2>2]]}} {{Average=[[((@{charisma}*2+@{mods})%2)d2>2+[[floor((@{charisma}*2+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</label>
|
|
<label class="sheet-attr-input-label sheet-right-attr">
|
|
<span data-i18n="Intelligence">Intelligence</span>
|
|
<input class="sheet-attr-input-text intelligence" value="0" name="attr_intelligence" type="text" title="Reason check" />
|
|
<button type="roll" class="sheet-roll-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Intelligence}} {{Successes=[[(@{intelligence}*2+@{mods})d2>2]]}} {{Average=[[((@{intelligence}*2+@{mods})%2)d2>2+[[floor((@{intelligence}*2+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</label>
|
|
<label class="sheet-attr-input-label sheet-right-attr">
|
|
<span data-i18n="Willpower">Willpower</span>
|
|
<input class="sheet-attr-input-text willpower" value="0" name="attr_willpower" type="text" title="Courage check" />
|
|
<button type="roll" class="sheet-roll-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Willpower}} {{Successes=[[(@{willpower}*2+@{mods})d2>2]]}} {{Average=[[((@{willpower}*2+@{mods})%2)d2>2+[[floor((@{willpower}*2+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<!-- Secondary Attributes -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<h1 class="sheet-top-separator" data-i18n="Secondary-Attributes">Secondary Attributes</h1>
|
|
<div class="sheet-2colrow">
|
|
<div class="sheet-col sheet-collapse-margin">
|
|
<label class="sheet-attr-input-label">
|
|
<span data-i18n="Size">Size</span>
|
|
<input class="sheet-attr-input-text" value="0" name="attr_size" type="text" value="0" />
|
|
<span class="sheet-button-spacer"></span>
|
|
</label>
|
|
<label class="sheet-attr-input-label">
|
|
<span data-i18n="Move">Move</span>
|
|
<span>
|
|
<input class="sheet-attr-input-text" value="0" readonly="readonly" name="attr_move" type="text" title="Move = Strength + Dexterity" />
|
|
<input name="attr_swift" type="checkbox" title="Swift Talent" />
|
|
</span>
|
|
<span class="sheet-move-spacer"></span>
|
|
|
|
</label>
|
|
<label class="sheet-attr-input-label">
|
|
<span data-i18n="Perception">Perception</span>
|
|
<span class="perception">
|
|
<input class="sheet-attr-input-text" readonly="readonly" value="0" name="attr_perception" type="text" title="Perception = Intelligence + Willpower" />
|
|
<button type="roll" class="sheet-roll-button sheet-perception-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Perception}} {{Successes=[[(@{perception}+@{mods})d2>2]]}} {{Average=[[((@{perception}+@{mods})%2)d2>2+[[floor((@{perception}+@{mods})/2)]]]]}} {{Modifier=@{mods}}}"></button> <input name="attr_alertness" type="checkbox" title="Alertnesss Talent" />
|
|
</span>
|
|
</label>
|
|
</div>
|
|
<div class="sheet-col sheet-collapse-margin">
|
|
<label class="sheet-attr-input-label sheet-right-attr">
|
|
<span data-i18n="Initiative">Initiative</span>
|
|
<input class="sheet-attr-input-text " value="0" readonly="readonly" name="attr_initiative" type="text" title="Initiative = Dexterity + Intelligence" />
|
|
<span class="initiative">
|
|
<button type="roll" class="sheet-roll-button sheet-initiative-button" value="&{template:default} {{name=Initiative}} {{Regular=[[@{initiative}d2>2 &{tracker}]]}} "></button>
|
|
<input name="attr_quickReflexes" type="checkbox" title="Quick Reflexes Talent" />
|
|
</span>
|
|
</label>
|
|
<label class="sheet-attr-input-label sheet-right-attr" >
|
|
<span data-i18n="Defense">Defense</span>
|
|
<span class="defense">
|
|
<input class="sheet-attr-input-text" value="0" readonly ="readonly" name="attr_defense" type="text" title="Defense = Passive+Active-Size, Passive = Body, Active = Dexterity" />
|
|
<input class="sheet-attr-input-text savvyBonus" value="0" name="attr_savvyBonus" type="text" title="Savvy Fighter Bonus" /> <button type="roll" class="sheet-roll-button sheet-defense-button" value="&{template:basic} {{character_name=@{character_name}}} {{name=Defense}} {{Successes=[[(@{defense}+@{savvyBonus}+@{mods})d2>2]]}} {{Average=[[((@{defense}+@{savvyBonus}+@{mods})%2)d2>2+[[floor((@{defense}+@{savvyBonus}+@{mods})/2)]]]]}} {{Modifier=@{mods}}} {{showPassive=[[1]]}} {{Passive=[[(@{body}+@{mods})d2>2]]}} {{PassAvg=[[((@{body}+@{mods})%2)d2>2+[[floor((@{body}+@{mods})/2)]]]]}} "></button> <input name="attr_strongDefense" type="checkbox" title="Strong Defense Talent" />
|
|
|
|
</span>
|
|
<!-- {{Passive=[[(@{body}+@{savvyBonus}+@{mods})d2>2]]}} -->
|
|
</label>
|
|
<label class="sheet-attr-input-label sheet-right-attr">
|
|
<span data-i18n="Stun">Stun</span>
|
|
<span class="stun">
|
|
<input class="sheet-attr-input-text" value="0" readonly="readonly" name="attr_stun" type="text" title="Stun = Body" />
|
|
<input class="sheet-attr-input-text ironJawBonus" value="0" name="attr_ironJawBonus" type="text" title="Iron Jaw Bonus" />
|
|
<input name="attr_headStrong" type="checkbox" title="Head Strong Talent" />
|
|
<span class="sheet-stun-spacer"></span>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<!-- Skills -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<div class="sheet-top-separator sheet-heading-with-columns">
|
|
<h1 data-i18n="Skills">Skills</h1>
|
|
<div class="sheet-column-headings">
|
|
<div class="sheet-skill-name"></div>
|
|
<div class="sheet-skill-base" data-i18n="Base">Base</div>
|
|
<div class="sheet-skill-levels" data-i18n="Levels">Levels</div>
|
|
<div class="sheet-skill-rating" data-i18n="Rating">Rating</div>
|
|
<div class="sheet-skill-avg" data-i18n="Avg-p">(Avg)</div>
|
|
<div class="sheet-skill-roll"></div>
|
|
</div>
|
|
<fieldset class="repeating_skills">
|
|
<div class="sheet-skill-name">
|
|
<input type="text" name="attr_skillname" class="sheet-free-input skillname" />
|
|
</div>
|
|
<div class="sheet-skill-base">
|
|
<input type="text" name="attr_skillbase" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-skill-levels">
|
|
<input type="text" name="attr_skilllevel" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-skill-rating">
|
|
<input type="text" name="attr_skillrating" value="0" class="sheet-free-input skillrating sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-skill-avg">
|
|
<input type="text" name="attr_skillaverage" value="0" class="sheet-free-input skillsaverage sheet-number-center" readonly="readonly" />
|
|
</div>
|
|
<div class="sheet-skill-roll">
|
|
<button class="roll-button" type="roll" value="&{template:basic} {{character_name=@{character_name}}} {{name=@{skillname}}} {{Successes=[[(@{skillrating}+@{mods})d2>2]]}} {{Average=[[((@{skillrating}+@{mods})%2)d2>2+[[floor((@{skillrating}+@{mods})/2)]]]]}} {{Modifier=@{mods}}} "></button>
|
|
</div>
|
|
</fieldset>
|
|
<p class="sheet-footnote" data-i18n="star-specialized-skill">* specialized skill</p>
|
|
</div>
|
|
<!-- Fencing Styles -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<div class="sheet-top-separator sheet-heading-with-columns">
|
|
<h1 data-i18n="Fencing-Styles">Fencing Styles</h1>
|
|
<div class="sheet-column-headings">
|
|
<div style="display:inline-block;" ></div>
|
|
<div style="display:inline-block;margin-left:382px" data-i18n="Disarm">Disarm</div>
|
|
<div style="display:inline-block;margin-left:51px" data-i18n="Feint">Feint</div>
|
|
<div style="display:inline-block;margin-left:57px" data-i18n="Parry">Parry</div>
|
|
<div style="display:inline-block;margin-left:50px" data-i18n="Thrust">Thrust</div>
|
|
<div style="display:inline-block;margin-left:51px" data-i18n="Slash">Slash</div>
|
|
</div>
|
|
<fieldset class="repeating_styles">
|
|
<div class="sheet-style-name">
|
|
<input type="text" name="attr_stylename" value="" class="sheet-free-input sheet-stylename " />
|
|
</div>
|
|
<div class="sheet-style-disarm">
|
|
<input type="text" name="attr_styledisarm" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-style-feint">
|
|
<input type="text" name="attr_stylefeint" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-style-parry">
|
|
<input type="text" name="attr_styleparry" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-style-thrust">
|
|
<input type="text" name="attr_skillthrust" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
<div class="sheet-style-slash">
|
|
<input type="text" name="attr_skillslash" value="0" class="sheet-free-input sheet-number-center" />
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
</div>
|
|
|
|
|
|
<!-- Weapons -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<div class="sheet-top-separator sheet-bottom-separator sheet-heading-with-columns sheet-weapons">
|
|
<h1 data-i18n="Weapons">Weapons</h1>
|
|
<fieldset class="repeating_weapons">
|
|
<div class="sheet-weapon-row-1">
|
|
<div class="sheet-weapon-name">
|
|
<input type="text" name="attr_weaponname" class="sheet-free-input weaponname" />
|
|
</div>
|
|
<div class="sheet-weapon-dmg">
|
|
<input type="text" name="attr_weapondmg" value="0" class="sheet-free-input weapondmg" />
|
|
<span data-i18n="Dmg">Dmg</span>
|
|
</div>
|
|
<div class="sheet-weapon-mod">
|
|
<input type="text" name="attr_weaponmod" value="0" class="sheet-free-input weaponmod" />
|
|
<span data-i18n="Mod">Mod</span>
|
|
</div>
|
|
<div class="sheet-weapon-attack">
|
|
<input type="text" name="attr_weaponattack" value="0" class="sheet-free-input weaponattack" />
|
|
<span data-i18n="Attack">Attack</span>
|
|
</div>
|
|
<div class="sheet-weapon-avg">
|
|
<input type="text" name="attr_weaponaverage" value="0" class="sheet-free-input weaponaverage" readonly="readonly" />
|
|
<span data-i18n="Avg-p">(Avg)</span>
|
|
</div>
|
|
<div class="sheet-weapon-roll">
|
|
<button class="roll-button" type="roll" value="&{template:basic} {{character_name=@{character_name}}} {{name=@{weaponname}}} {{Successes=[[(@{weaponattack}+@{mods})d2>2]]}} {{Average=[[((@{weaponattack}+@{mods})%2)d2>2+[[floor((@{weaponattack}+@{mods})/2)]]]]}} {{Modifier=@{mods}}}"></button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-weapon-row-2">
|
|
<input type="checkbox" name="attr_moredetails" class="sheet-weapon-isranged" />
|
|
<span class="sheet-ranged-weapon" data-i18n="More-details">More details</span>
|
|
<div class="sheet-ranged-stats">
|
|
<div class="sheet-weapon-notes">
|
|
<input type="text" name="attr_weaponnotes" class="sheet-free-input" />
|
|
<span data-i18n="Notes">Notes</span>
|
|
</div>
|
|
<div class="sheet-weapon-speed">
|
|
<input type="text" name="attr_weaponspeed" class="sheet-free-input" />
|
|
<span data-i18n="Spd">Spd</span>
|
|
</div>
|
|
<div class="sheet-weapon-range">
|
|
<input type="text" name="attr_weaponrange" class="sheet-free-input" />
|
|
<span data-i18n="Rng">Rng</span>
|
|
</div>
|
|
<div class="sheet-weapon-capacity">
|
|
<input type="text" name="attr_weaponcapacity" class="sheet-free-input" />
|
|
<span data-i18n="Cap">Cap</span>
|
|
</div>
|
|
<div class="sheet-weapon-ammo">
|
|
<input type="text" name="attr_weaponammo" class="sheet-free-input" />
|
|
<span data-i18n="Ammo">Ammo</span>
|
|
</div>
|
|
<div class="sheet-weapon-rate">
|
|
<input type="text" name="attr_weaponrate" class="sheet-free-input" />
|
|
<span data-i18n="Rate">Rate</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
<!-- Talents -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<h1 class="sheet-top-separator" data-i18n="Talents">Talents</h1>
|
|
<fieldset class="repeating_talents">
|
|
<textarea type="text" name="attr_talent"></textarea>
|
|
</fieldset>
|
|
|
|
<h1 class="sheet-top-separator" data-i18n="Resources">Resources</h1>
|
|
<fieldset class="repeating_resources">
|
|
<textarea type="text" name="attr_resource"></textarea>
|
|
</fieldset>
|
|
|
|
<h1 class="sheet-top-separator" data-i18n="Flaws">Flaws</h1>
|
|
<fieldset class="repeating_flaws">
|
|
<textarea type="text" name="attr_flaw"></textarea>
|
|
</fieldset>
|
|
|
|
<!-- Languages, Money, Encumbrance -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<div class="sheet-2colrow sheet-top-separator">
|
|
<div class="sheet-col sheet-languages-money">
|
|
<h1 data-i18n="Languages">Languages</h1>
|
|
<textarea type="text" class="sheet-languages" name="attr_languages"></textarea>
|
|
<h1 data-i18n="Money">Money</h1>
|
|
<textarea type="text" class="sheet-money" name="attr_money"></textarea>
|
|
</div>
|
|
<div class="sheet-col sheet-encumbrance">
|
|
<h1 data-i18n="Encumbrance">Encumbrance</h1>
|
|
<label class="sheet-attr-input-label">
|
|
<span class="sheet-field" data-i18n="Light">Light</span>
|
|
<input class="sheet-wider-input-text" name="attr_enclight" type="text" readonly="readonly" />
|
|
<span class="sheet-subtext" data-i18n="lbs">lbs</span>
|
|
</label>
|
|
<label class="sheet-attr-input-label">
|
|
<span class="sheet-field" data-i18n="Medium">Medium</span>
|
|
<input class="sheet-wider-input-text" type="text" name="attr_encmedium" readonly="readonly" title="-1 Dexterity and Move" />
|
|
<span class="sheet-subtext" data-i18n="lbs">lbs</span>
|
|
</label>
|
|
<label class="sheet-attr-input-label">
|
|
<span class="sheet-field" data-i18n="Heavy">Heavy</span>
|
|
<input class="sheet-wider-input-text" type="text" name="attr_encheavy" readonly="readonly" title="-2 Dexterity and Move" />
|
|
<span class="sheet-subtext" data-i18n="lbs">lbs</span>
|
|
</label>
|
|
<label class="sheet-attr-input-label">
|
|
<span class="sheet-field" data-i18n="Total-Carried">Total Carried</span>
|
|
<input class="sheet-wider-input-text invweight" type="text" name="attr_invweight" readonly="readonly" />
|
|
<span class="sheet-subtext" data-i18n="lbs">lbs</span>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
<!-- Equipment -->
|
|
<img style="width:100%,height:auto;" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/AllforOne/Graphics/bordera1b.png">
|
|
<div class="sheet-top-separator sheet-heading-with-columns">
|
|
<h1 data-i18n="Equipment">Equipment</h1>
|
|
<div class="sheet-column-headings">
|
|
<div class="sheet-equip-item"> </div>
|
|
<div class="sheet-equip-num">#</div>
|
|
<div class="sheet-equip-weight" data-i18n="Weight">Weight</div>
|
|
</div>
|
|
<fieldset class="repeating_equipment">
|
|
<div class="sheet-equip-item">
|
|
<input type="text" name="attr_equipitem" class="sheet-free-input" />
|
|
</div>
|
|
<div class="sheet-equip-num">
|
|
<input type="text" name="attr_equipnum" class="sheet-free-input" />
|
|
</div>
|
|
<div class="sheet-equip-weight">
|
|
<input type="text" name="attr_equipweight" class="sheet-free-input equipweight" />
|
|
</div>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- Right column -->
|
|
<div class="sheet-col sheet-sidebar">
|
|
<label class="sheet-side-input-label">
|
|
<span class="sheet-side-heading" data-i18n="Style">Style</span>
|
|
<input type="text" value="0" name="attr_style" class="sheet-wider-input-text" />
|
|
</label>
|
|
|
|
|
|
<label class="sheet-side-input-label">
|
|
<span class="sheet-side-heading" data-i18n="Health">Health</span>
|
|
<span class="sheet-side-heading">
|
|
|
|
<span class="sheet-subtext" data-i18n="Maximum">Maximum</span>
|
|
</span>
|
|
<div>
|
|
<input type="text" name="attr_health_orig" readonly="readonly" class="sheet-wider-input-text" value="0" title="Health = Body + Willpower + Size" />
|
|
<input type="text" name="attr_robust_bonus" class="sheet-wider-input-text" value="0" title="Robust Talent Bonus" />
|
|
</div>
|
|
<span class="sheet-side-heading">
|
|
<span class="sheet-subtext" data-i18n="Current">Current</span>
|
|
</span>
|
|
<input type="text" name="attr_health" readonly="readonly" class="sheet-wider-input-text" value="0" title="Health = Body + Willpower + Size" />
|
|
</label>
|
|
|
|
<label class="sheet-side-input-label">
|
|
<span class="sheet-side-heading" data-i18n="Damage">Damage</span>
|
|
<span class="sheet-side-heading">
|
|
|
|
<span class="sheet-subtext" data-i18n="Lethal">Lethal</span>
|
|
</span>
|
|
<input type="text" name="attr_lDamage" value="0" class="sheet-wider-input-text" title="Lethal Damage" />
|
|
<span class="sheet-side-heading">
|
|
<span class="sheet-subtext" data-i18n="Nonlethal">Nonlethal</span>
|
|
</span>
|
|
<input type="text" name="attr_nDamage" value="0" class="sheet-wider-input-text" title="Non-Leathal Damage" />
|
|
</label>
|
|
|
|
|
|
<label class="sheet-side-heading">
|
|
XP<br />
|
|
<input type="text" name="attr_xp" value="0" class="sheet-wider-input-text" />
|
|
</label>
|
|
<label class="sheet-side-input-label">
|
|
<span class="sheet-side-heading" data-i18n="Modifier">Modifier</span>
|
|
<span class="sheet-side-heading" data-i18n="Prompt">Prompt</span>
|
|
<input type="checkbox" name="attr_mods" value="?{Dice Pool Modifier|0}"/>
|
|
<span data-i18n="On">On</span>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<rolltemplate class="sheet-rolltemplate-basic">
|
|
<div style="background-color:white">
|
|
<img src="https://github.com/Roll20/roll20-character-sheets/blob/master/AllforOne/Graphics/template%20border.png?raw=true">
|
|
<br>
|
|
<div style="padding: 5px 0 5px 0;background-color:black;text-align:center;">
|
|
<div style="margin-bottom:5px;"><span style="font-size:large;width:100%;display:inline-bloc;color:white">{{character_name}}</span></div>
|
|
<div><span style="font-size:large;width:100%;display:inline-bloc;color:white">{{name}}</span></div>
|
|
</div>
|
|
<br>
|
|
<div>
|
|
<span style="margin-bottom:5px;text-align:right;width:50%;display:inline-block">Successes:</span><span style="text-align:center;width:50%;display:inline-block">{{Successes}}</span>
|
|
</div>
|
|
{{#rollTotal() showPassive 1}}
|
|
<div>
|
|
<span style="margin-bottom:5px;text-align:right;width:50%;display:inline-block">Passive:</span><span style="text-align:center;width:50%;display:inline-block">{{Passive}} ({{PassAvg}}) </span>
|
|
</div>
|
|
{{/rollTotal() showPassive 1}}
|
|
<div>
|
|
<span style="margin-bottom:5px;text-align:right;width:50%;display:inline-block">Average:</span><span style="text-align:center;width:50%;display:inline-block">{{Average}}</span>
|
|
</div>
|
|
<div>
|
|
<span style="margin-bottom:5px;text-align:right;width:50%;display:inline-block">Modifier:</span><span style="text-align:center;width:50%;display:inline-block"><b>{{Modifier}}</b></span>
|
|
</div>
|
|
<br>
|
|
<img src="https://github.com/Roll20/roll20-character-sheets/blob/master/AllforOne/Graphics/template%20border.png?raw=true">
|
|
</div>
|
|
</rolltemplate>
|
|
|
|
|
|
|
|
|