Merge branch 'master' into GURPS-2.5.0
|
After Width: | Height: | Size: 166 KiB |
|
After Width: | Height: | Size: 181 KiB |
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"html": "apocthulhu.html",
|
||||
"css": "apocthulhu.css",
|
||||
"authors": "Emerald Productions, Marco M., Cthulhu Reborn Publishing",
|
||||
"roll20userid": "557736,3726,7375113",
|
||||
"preview": "preview.png",
|
||||
"version": "Version 1.05",
|
||||
"instructions": "*Published by arrangement with Cthulhu Reborn, creators of the APOCTHULHU RPG*"
|
||||
}
|
||||
@@ -0,0 +1,356 @@
|
||||
{
|
||||
"art": "art"
|
||||
,"armor prce":"armor prce"
|
||||
,"(0%)": "(0%)"
|
||||
,"(10%)": "(10%)"
|
||||
,"(20%)": "(20%)"
|
||||
,"(30%)": "(30%)"
|
||||
,"(40%)":"(40%)"
|
||||
,"(record pristine/worn/junk status)":"(record pristine/worn/junk status)"
|
||||
,"0": "0"
|
||||
,"Survivor's Name": "Survivor's Name"
|
||||
,"10": "10"
|
||||
,"Individual Bonds": "Individual Bonds"
|
||||
,"Community Bonds": "Community Bonds"
|
||||
,"112382":"112382"
|
||||
,"motivations and mental disorders": "motivations and mental disorders"
|
||||
,"incidents of san loss without going insane": "incidents of san loss without going insane"
|
||||
,"wounds and ailments":"wounds and ailments"
|
||||
,"armor and gear":"armor and gear"
|
||||
,"weapons":"weapons"
|
||||
,"personal details and notes": "personal details and notes"
|
||||
,"Archetype": "Archetype"
|
||||
,"Setting": "Setting"
|
||||
,"315":"315"
|
||||
,"Current Home": "Current Home"
|
||||
,"Sex": "Sex"
|
||||
,"Age": "Age"
|
||||
,"Birthplace": "Birthplace"
|
||||
,"8 points of thick hide": "8 points of thick hide"
|
||||
,"adapted": "adapted"
|
||||
,"age": "age"
|
||||
,"agent signature": "agent signature"
|
||||
,"alertness fail checkbox": "alertness fail checkbox"
|
||||
,"alertness rank": "alertness rank"
|
||||
,"alertness": "alertness"
|
||||
,"ammo input": "ammo input"
|
||||
,"ammo":"ammo"
|
||||
,"anthropology fail checkbox": "anthropology fail checkbox"
|
||||
,"anthropology rank": "anthropology rank"
|
||||
,"anthropology": "anthropology"
|
||||
,"appraise fail checkbox": "appraise fail checkbox"
|
||||
,"appraise rank": "appraise rank"
|
||||
,"appraise": "appraise"
|
||||
,"Skills":"Skills"
|
||||
,"archeology fail checkbox": "archeology fail checkbox"
|
||||
,"archeology rank": "archeology rank"
|
||||
,"archeology": "archeology"
|
||||
,"armor and gear":"armor and gear"
|
||||
,"armor piercing input": "armor piercing input"
|
||||
,"armor piercing":"armor piercing"
|
||||
,"armor": "armor"
|
||||
,"art fail checkbox": "art fail checkbox"
|
||||
,"art name": "art name"
|
||||
,"art rank":"art rank"
|
||||
,"art roll": "art roll"
|
||||
,"artillery fail checkbox": "artillery fail checkbox"
|
||||
,"artillery rank": "artillery rank"
|
||||
,"artillery roll": "artillery roll"
|
||||
,"artillery": "artillery"
|
||||
,"athletics fail checkbox": "athletics fail checkbox"
|
||||
,"athletics rank":"athletics rank"
|
||||
,"athletics roll": "athletics roll"
|
||||
,"athletics": "athletics"
|
||||
,"attack": "attack"
|
||||
,"attacks":"attacks"
|
||||
,"authorizing officer":"authorizing officer"
|
||||
,"base range input": "base range input"
|
||||
,"base range":"base range"
|
||||
,"Body armor reduces the damage of all attacks except Called Shots and successful Lethality rolls." : "Body armor reduces the damage of all attacks except Called Shots and successful Lethality rolls."
|
||||
,"bond name": "bond name"
|
||||
,"bond score": "bond score"
|
||||
,"bond flag": "bond flag"
|
||||
,"BP":"BP"
|
||||
,"breaking point":"breaking point"
|
||||
,"CHA": "CHA"
|
||||
,"character name" : "Character name"
|
||||
,"charisma distinguishing features":"charisma distinguishing features"
|
||||
,"charisma roll":"charisma roll"
|
||||
,"charisma score":"charisma score"
|
||||
,"charisma":"charisma"
|
||||
,"Check a box when you attempt to use a skill and fail. After the session, add 1d4-1 to each checked skill and erase all checks." : "Check a box when you attempt to use a skill and fail. After the session, add 1d4-1 to each checked skill and erase all checks."
|
||||
,"checkbox for first aid":"checkbox for first aid"
|
||||
,"CON": "CON"
|
||||
,"constitution distinguishing features": "constitution distinguishing features"
|
||||
,"constitution roll": "constitution roll"
|
||||
,"constitution score": "constitution score"
|
||||
,"constitution": "constitution"
|
||||
,"craft fail checkbox": "craft fail checkbox"
|
||||
,"craft name": "craft name"
|
||||
,"craft rank": "craft rank"
|
||||
,"craft roll": "craft roll"
|
||||
,"craft":"craft"
|
||||
,"current status:": "current status:"
|
||||
,"damage input": "damage input"
|
||||
,"damage":"damage"
|
||||
,"damage bonus":"damage bonus"
|
||||
,"damage (×2)":"damage (×2)"
|
||||
,"DB":"DB"
|
||||
,"DD":"DD"
|
||||
,"demolitions fail checkbox": "demolitions fail checkbox"
|
||||
,"demolitions rank": "demolitions rank"
|
||||
,"demolitions roll": "demolitions roll"
|
||||
,"demolitions": "demolitions"
|
||||
,"developments which affect home and family": "developments which affect home and family"
|
||||
,"DEX": "DEX"
|
||||
,"dexterity distinguishing features": "dexterity distinguishing features"
|
||||
,"dexterity roll": "dexterity roll"
|
||||
,"dexterity score": "dexterity score"
|
||||
,"dexterity": "dexterity"
|
||||
,"disguise fail checkbox": "disguise fail checkbox"
|
||||
,"disguise rank":"disguise rank"
|
||||
,"disguise roll":"disguise roll"
|
||||
,"disguise": "disguise"
|
||||
,"distinguishing features": "distinguishing features"
|
||||
,"dodge fail checkbox":"dodge fail checkbox"
|
||||
,"dodge rank":"dodge rank"
|
||||
,"dodge roll":"dodge roll"
|
||||
,"dodge":"dodge"
|
||||
,"drive fail checkbox": "drive fail checkbox"
|
||||
,"drive rank": "drive rank"
|
||||
,"drive roll": "drive roll"
|
||||
,"drive":"drive"
|
||||
,"education":"education and occupational history"
|
||||
,"employer": "employer"
|
||||
,"enter a name for non-player character": "enter a name for non-player character"
|
||||
,"enter armor text": "enter armor text"
|
||||
,"enter hit points": "enter hit points"
|
||||
,"enter npc description": "enter npc description"
|
||||
,"enter sanity loss": "enter sanity loss"
|
||||
,"enter willpower points": "enter willpower points"
|
||||
,"equipment & resources":"equipment & resources"
|
||||
,"firearms fail checkbox": "firearms fail checkbox"
|
||||
,"firearms rank":"firearms rank"
|
||||
,"firearms roll": "firearms roll"
|
||||
,"firearms":"firearms"
|
||||
,"first aid fail checkbox":"first aid fail checkbox"
|
||||
,"first aid rank":"first aid rank"
|
||||
,"first aid roll":"first aid roll"
|
||||
,"first aid":"first aid"
|
||||
,"forensics fail checkbox":"forensics fail checkbox"
|
||||
,"forensics rank": "forensics rank"
|
||||
,"forensics roll":"forensics roll"
|
||||
,"forensics": "forensics"
|
||||
,"foriegn languages and other skills:":"foriegn languages and other skills:"
|
||||
,"gm whisper toggle": "gm whisper toggle"
|
||||
,"GM Whisper": "GM Whisper"
|
||||
,"Has First Aid been attempted since the last injury?":"Has First Aid been attempted since the last injury?"
|
||||
,"heavy machinery fail checkbox":"heavy machinery fail checkbox"
|
||||
,"heavy machinery rank":"heavy machinery rank"
|
||||
,"heavy machinery roll":"heavy machinery roll"
|
||||
,"heavy machinery":"heavy machinery"
|
||||
,"heavy weapons fail checkbox":"heavy weapons fail checkbox"
|
||||
,"heavy weapons rank":"heavy weapons rank"
|
||||
,"heavy weapons roll":"heavy weapons roll"
|
||||
,"heavy weapons":"heavy weapons"
|
||||
,"helplessness 1": "helplessness 1"
|
||||
,"helplessness 2": "helplessness 2"
|
||||
,"helplessness 3": "helplessness 3"
|
||||
,"helplessness": "helplessness"
|
||||
,"history fail checkbox":"history fail checkbox"
|
||||
,"history rank":"history rank"
|
||||
,"history roll":"history roll"
|
||||
,"history":"history"
|
||||
,"hit points": "hit points"
|
||||
,"HP": "HP"
|
||||
,"insight fail checkbox":"insight fail checkbox"
|
||||
,"insight rank":"insight rank"
|
||||
,"insight roll":"insight roll"
|
||||
,"insight":"insight"
|
||||
,"injuries":"injuries"
|
||||
,"INT": "INT"
|
||||
,"intelligence distinguishing features": "intelligence distinguishing features"
|
||||
,"intelligence roll": "intelligence roll"
|
||||
,"intelligence score": "intelligence score"
|
||||
,"intelligence": "intelligence"
|
||||
,"kill radius input": "kill radius input"
|
||||
,"kill radius":"kill radius"
|
||||
,"law fail checkbox":"law fail checkbox"
|
||||
,"law rank":"law rank"
|
||||
,"law roll":"law roll"
|
||||
,"law":"law"
|
||||
,"lethality % input": "lethality % input"
|
||||
,"lethality %":"lethality %"
|
||||
,"lethality":"lethality"
|
||||
,"lethality (×2)":"lethality (×2)"
|
||||
,"luck":"Luck"
|
||||
,"Luck":"Luck"
|
||||
,"medicine fail checkbox":"medicine fail checkbox"
|
||||
,"medicine rank":"medicine rank"
|
||||
,"medicine roll":"medicine roll"
|
||||
,"medicine":"medicine"
|
||||
,"melee weapons fail checkbox":"melee weapons fail checkbox"
|
||||
,"melee weapons rank":"melee weapons rank"
|
||||
,"melee weapons roll":"melee weapons roll"
|
||||
,"melee weapons":"melee weapons"
|
||||
,"military science fail checkbox":"military science fail checkbox"
|
||||
,"military science name":"military science name"
|
||||
,"military science rank":"military science rank"
|
||||
,"military science roll":"military science roll"
|
||||
,"military science":"military science"
|
||||
,"motivations":"motivations"
|
||||
,"name": "name"
|
||||
,"nationality": "nationality"
|
||||
,"navigate fail checkbox":"navigate fail checkbox"
|
||||
,"navigate rank":"navigate rank"
|
||||
,"navigate roll":"navigate roll"
|
||||
,"navigate":"navigate"
|
||||
,"notes": "notes"
|
||||
,"npc": "NPC"
|
||||
,"occult fail checkbox":"occult fail checkbox"
|
||||
,"occult rank":"occult rank"
|
||||
,"occult roll":"occult roll"
|
||||
,"occult":"occult"
|
||||
,"off":"off"
|
||||
,"on": "on"
|
||||
,"other notes name": "other notes name"
|
||||
,"other notes": "other notes"
|
||||
,"other notes":"other notes"
|
||||
,"pc": "PC"
|
||||
,"permanent resources":"permanent resources"
|
||||
,"personal data": "personal data"
|
||||
,"persuade fail checkbox":"persuade fail checkbox"
|
||||
,"persuade rank":"persuade rank"
|
||||
,"persuade roll":"persuade roll"
|
||||
,"persuade":"persuade"
|
||||
,"pharmacy fail checkbox":"pharmacy fail checkbox"
|
||||
,"pharmacy rank":"pharmacy rank"
|
||||
,"pharmacy roll":"pharmacy roll"
|
||||
,"pharmacy":"pharmacy"
|
||||
,"pilot fail checkbox":"pilot fail checkbox"
|
||||
,"pilot name":"pilot name"
|
||||
,"pilot rank":"pilot rank"
|
||||
,"pilot roll":"pilot roll"
|
||||
,"pilot":"pilot"
|
||||
,"Please indicate why this agent was recruited and why the agent agreed to be recruited.":"Please indicate why this agent was recruited and why the agent agreed to be recruited."
|
||||
,"post apoc lore fail checkbox":"post apoc lore fail checkbox"
|
||||
,"post apoc lore name":"post apoc lore name"
|
||||
,"post apoc lore rank":"post apoc lore rank"
|
||||
,"post apoc lore roll":"post apoc lore roll"
|
||||
,"post apoc lore":"post apoc lore"
|
||||
,"POW": "POW"
|
||||
,"power distinguishing features": "power distinguishing features"
|
||||
,"power roll": "power roll"
|
||||
,"power score": "power score"
|
||||
,"power": "power"
|
||||
,"pris/worn/junk":"pris/worn/junk"
|
||||
,"pristine":"pristine"
|
||||
,"reassure fail checkbox":"reassure fail checkbox"
|
||||
,"reassure rank":"reassure rank"
|
||||
,"reassure roll":"reassure roll"
|
||||
,"reassure":"reassure"
|
||||
,"research fail checkbox":"research fail checkbox"
|
||||
,"research rank":"research rank"
|
||||
,"research roll":"research roll"
|
||||
,"research":"research"
|
||||
,"resource checks":"resource checks"
|
||||
,"resources at hand":"resources at hand"
|
||||
,"resources stowed":"resources stowed"
|
||||
,"resources in storage":"resources in storage"
|
||||
,"bonds and disorders":"bonds and disorders"
|
||||
,"rank": "skill %"
|
||||
,"recovery SAN": "recovery SAN"
|
||||
,"remarks": "remarks"
|
||||
,"ranged weapons fail checkbox":"ranged weapons fail checkbox"
|
||||
,"ranged weapons rank":"ranged weapons rank"
|
||||
,"ranged weapons roll":"ranged weapons roll"
|
||||
,"ranged weapons":"ranged weapons"
|
||||
,"resources":"resources"
|
||||
,"ride fail checkbox":"ride fail checkbox"
|
||||
,"ride rank":"ride rank"
|
||||
,"ride roll":"ride roll"
|
||||
,"ride":"ride"
|
||||
,"roll" : "roll"
|
||||
,"SAN":"SAN"
|
||||
,"SAN LOSS":"SAN LOSS"
|
||||
,"sanity points": "sanity points"
|
||||
,"scavenge fail checkbox":"scavenge fail checkbox"
|
||||
,"scavenge rank":"scavenge rank"
|
||||
,"scavenge roll":"scavenge roll"
|
||||
,"scavenge":"scavenge"
|
||||
,"science fail checkbox":"science fail checkbox"
|
||||
,"science name":"science name"
|
||||
,"science rank":"science rank"
|
||||
,"science roll":"science roll"
|
||||
,"science":"science"
|
||||
,"score": "score"
|
||||
,"search fail checkbox":"search fail checkbox"
|
||||
,"search rank":"search rank"
|
||||
,"search roll":"search roll"
|
||||
,"search":"search"
|
||||
,"sex": "sex"
|
||||
,"sheet settings toggle": "sheet settings toggle"
|
||||
,"sheet settings": "sheet settings"
|
||||
,"sheet type": "Sheet Type"
|
||||
,"Sheet Type": "Sheet Type"
|
||||
,"skill % input": "skill % input"
|
||||
,"skill %":"skill %"
|
||||
,"skill fail checkbox":"skill fail checkbox"
|
||||
,"specialization name": "specialization name"
|
||||
,"skill or stat used": "skill or stat used"
|
||||
,"skill rank": "skill rank"
|
||||
,"skill roll":"skill roll"
|
||||
,"skill": "name"
|
||||
,"skills":"skills"
|
||||
,"special training input": "special training input"
|
||||
,"statistical data": "statistical data"
|
||||
,"Statistics": "Statistics"
|
||||
,"stealth fail checkbox":"stealth fail checkbox"
|
||||
,"stealth rank":"stealth rank"
|
||||
,"stealth roll":"stealth roll"
|
||||
,"stealth":"stealth"
|
||||
,"STR": "STR"
|
||||
,"strength distinguishing features": "strength distinguishing features"
|
||||
,"strength roll": "strength roll"
|
||||
,"strength score": "strength score"
|
||||
,"strength": "strength"
|
||||
,"surgery fail checkbox":"surgery fail checkbox"
|
||||
,"surgery rank":"surgery rank"
|
||||
,"surgery roll":"surgery roll"
|
||||
,"surgery":"surgery"
|
||||
,"survival fail checkbox": "survival fail checkbox"
|
||||
,"survival rank":"survival rank"
|
||||
,"survival roll":"survival roll"
|
||||
,"survival":"survival"
|
||||
,"swim fail checkbox":"swim fail checkbox"
|
||||
,"swim rank":"swim rank"
|
||||
,"swim roll":"swim roll"
|
||||
,"swim":"swim"
|
||||
,"technology use fail checkbox":"technology use fail checkbox"
|
||||
,"technology use rank":"technology use rank"
|
||||
,"technology use roll":"technology use roll"
|
||||
,"technology use":"technology use"
|
||||
,"top secret//orcon//special access required delta green agent documenation sheet":"top secret//orcon//special access required delta green agent documenation sheet "
|
||||
,"unarmed combat fail checkbox":"unarmed combat fail checkbox"
|
||||
,"unarmed combat rank":"unarmed combat rank"
|
||||
,"unarmed combat roll":"unarmed combat roll"
|
||||
,"unarmed combat":"unarmed combat"
|
||||
,"united states form":"united states form"
|
||||
,"unnatural fail checkbox":"unnatural fail checkbox"
|
||||
,"unnatural rank":"unnatural rank"
|
||||
,"unnatural roll":"unnatural roll"
|
||||
,"unnatural":"unnatural"
|
||||
,"uses per game":"uses per game"
|
||||
,"violence 1": "violence 1"
|
||||
,"violence 2": "violence 2"
|
||||
,"violence 3": "violence 3"
|
||||
,"violence": "violence"
|
||||
,"weapons input": "weapons input"
|
||||
,"weapons":"weapons"
|
||||
,"whisper rolls to gm": "whisper rolls to gm"
|
||||
,"willpower points":"willpower points"
|
||||
,"WP":"WP"
|
||||
,"x5": "x5"
|
||||
,"yes: only Medicine, Surgery, or long-term rest can help further.":"yes: only Medicine, Surgery, or long-term rest can help further.",
|
||||
"-": "-"
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
# Aces-and-Eights-Character-Sheet
|
||||
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 208 KiB |
|
After Width: | Height: | Size: 8.8 KiB |
@@ -0,0 +1,798 @@
|
||||
<!-- Logo-->
|
||||
<img src="https://github.com/lelajcorson/Aces-and-Eights-Character-Sheet/blob/master/logo.jpg?raw=true"/>
|
||||
|
||||
<!--Bio-->
|
||||
<div class = "bio">
|
||||
<div class = "name">
|
||||
<label>Name</label><input type = "text" name = "attr_character_name"/>
|
||||
</div>
|
||||
|
||||
<div class = "handedness">
|
||||
<label>Handedness</label><input type = "text" name = "attr_character_handedness"/>
|
||||
</div>
|
||||
|
||||
<div class = "nationality">
|
||||
<label>Nationality</label><input type = "text" name = "attr_character_nationality"/>
|
||||
</div>
|
||||
|
||||
<div class = "race">
|
||||
<label>Race</label><input type = "text" name = "attr_race"/>
|
||||
</div>
|
||||
|
||||
<div class = "profession">
|
||||
<label>Profession</label><input type = "text" name = "attr_profession"/>
|
||||
</div>
|
||||
|
||||
<div class = "gender">
|
||||
<label>Gender</label><input type = "text" name = "attr_gender"/>
|
||||
</div>
|
||||
|
||||
<div class = "BPs">
|
||||
<label>BPs</label><input type = "number" name = "attr_BPs"/>
|
||||
</div>
|
||||
|
||||
<div class = "age">
|
||||
<label>Age</label><input type = "number" name = "attr_age"/>
|
||||
</div>
|
||||
|
||||
<div class = "height">
|
||||
<label>Height</label><input type = "text" name = "attr_height"/>
|
||||
</div>
|
||||
|
||||
<div class = "weight">
|
||||
<label>Weight</label><input type = "text" name = "attr_weight"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr/>
|
||||
|
||||
<div>
|
||||
<button type="action" name="act_character">Character</button>
|
||||
<button type="action" name="act_weapons">Weapons</button>
|
||||
<button type = "action" name = "act_bio2">Bio/Other Info</button>
|
||||
<button type = "action" name = "act_horses">Horses</button>
|
||||
</div>
|
||||
|
||||
<input type='hidden' class='tabstoggle' name='attr_sheetTab' value='character'/>
|
||||
|
||||
<div class = "character">
|
||||
<div class = "grid">
|
||||
<div class = "abilities">
|
||||
<h1>ABILITIES</h1>
|
||||
</div>
|
||||
|
||||
<!--Abilities-->
|
||||
<div class = "abilities_grid">
|
||||
<div>
|
||||
<label class = "ability_label_large">STR</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_str"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Damage Mod</label>
|
||||
<input type = "text" name = "attr_str_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">INT</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_int"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Skill Learning Mod</label>
|
||||
<input type = "text" name = "attr_int_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">WIS</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_wis"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Skill Learning Mod</label>
|
||||
<input type = "text" name = "attr_wis_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">DEX</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_dex"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">To-hit Mod</label>
|
||||
<input type = "text" name = "attr_dex_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">CON</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_con"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Hit Point Mod</label>
|
||||
<input type = "text" name = "attr_con_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">LKS</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_lks"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Rep/Fame Mod</label>
|
||||
<input type = "text" name = "attr_lks_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">CHA</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_cha"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Skill Learning Mod</label>
|
||||
<input type = "text" name = "attr_cha_mod"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">REP</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_rep"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Rep Points</label>
|
||||
<input type = "text" name = "attr_rep_points"/>
|
||||
</div>
|
||||
<div>
|
||||
<label class = "ability_label_large">FAME</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_fame"/>
|
||||
</div>
|
||||
<div class = "mod_grid">
|
||||
<label class = "small_label">Fame Category</label>
|
||||
<textarea name = "attr_fame_category" class = "fame_category"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--Hit Points-->
|
||||
<div class = "HP_grid">
|
||||
<div class = "HP_header">
|
||||
<label class = "grid_header">HIT POINTS</label>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<input type = "text" name = "attr_current_hp" class = "current_hp"/>
|
||||
<label class = "hp_dash">/</label>
|
||||
<input type = "text" name = "attr_hp_max">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--Money-->
|
||||
<div class = "money_grid">
|
||||
<label class = "grid_header">MONEY</label>
|
||||
<input type = "text" name = "attr_money"/>
|
||||
</div>
|
||||
|
||||
<!--Skills-->
|
||||
<div class = "skills_grid">
|
||||
<div class = "skills_header">
|
||||
<label>S</label>
|
||||
<label>K</label>
|
||||
<label>I</label>
|
||||
<label>L</label>
|
||||
<label>L</label>
|
||||
<label>S</label>
|
||||
</div>
|
||||
|
||||
<div class = "skills_text_grid">
|
||||
<label>Skill Name</label>
|
||||
<label>Tallies</label>
|
||||
<label>Mastery %</label>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<fieldset class = "repeating_skills">
|
||||
<input type = "text" class = "skill_name" name = "attr_skill_name"/>
|
||||
<input type = "number" class = "skill_tallies" name = "attr_skill_tallies"/>
|
||||
<input type = "text" class = "skill_mastery" name = "attr_skill_mastery"/>
|
||||
<button class = "skills_button" type = "roll" value = "&{template:skills} {{roll=[[1d100]]}} {{mastery=@{skill_mastery}}}{{name=@{skill_name}}}"></button>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--Items-->
|
||||
<div class = "items_grid">
|
||||
<label class = "grid_header">ITEMS</label>
|
||||
<textarea name = "attr_items" id = "itemsInput"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<textarea class = "big_box" name = "attr_random_stuff"></textarea>
|
||||
</div>
|
||||
|
||||
<div class = "weapons">
|
||||
|
||||
<!--Accuracy and Speed-->
|
||||
<div class = "acc_speed">
|
||||
<div><label class = "grid_header">SPEED</label></div>
|
||||
<div><input type = "number" name = "attr_speed"></div>
|
||||
<div><label class = "grid_header">ACCURACY</label></div>
|
||||
<div><input type = "number" name = "attr_acc"></div>
|
||||
</div>
|
||||
|
||||
<div class = "speed_mods_hidden">
|
||||
<fieldset>
|
||||
<input type = "text" name = "attr_speed_mod_type" placeholder = "Description">
|
||||
<input tyep = "text" name = "attr_speed_mod" placeholder = "Mod">
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<!--Weapons-->
|
||||
<fieldset class = "repeating_weapons">
|
||||
<div class = "weapons_bio">
|
||||
<div>
|
||||
<label>Weapon</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_weapon_type">
|
||||
</div>
|
||||
<div>
|
||||
<label>Draw Speed</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "number" name = "attr_weapon_draw_speed">
|
||||
</div>
|
||||
<div>
|
||||
<label>Accuracy</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "number" name = "attr_weapon_accuracy">
|
||||
</div>
|
||||
<div>
|
||||
<label>Damage/Shot</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "damage_per_shot" name = "attr_weapon_damage">
|
||||
</div>
|
||||
<div>
|
||||
<label>Reload Speed</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_weapon_reload_speed" class = "reload_speed">
|
||||
</div>
|
||||
<div>
|
||||
<label>Shots Fired</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "number" name = "attr_weapon_shots_fired">
|
||||
</div>
|
||||
<div>
|
||||
<label>Other Details</label>
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" name = "attr_weapon_details">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "weapons_range">
|
||||
<div class = "range_label">
|
||||
<label>Range</label>
|
||||
</div>
|
||||
<div>
|
||||
<label>5'</label> <input type = "text" name = "attr_range_5">
|
||||
</div>
|
||||
<div>
|
||||
<label>10'</label> <input type = "text" name = "attr_range_10">
|
||||
</div>
|
||||
<div>
|
||||
<label>15'</label> <input type = "text" name = "attr_range_15">
|
||||
</div>
|
||||
<div>
|
||||
<label>20'</label> <input type = "text" name = "attr_range_20">
|
||||
</div>
|
||||
<div>
|
||||
<label>25'</label> <input type = "text" name = "attr_range_25">
|
||||
</div>
|
||||
<div>
|
||||
<label>30'</label> <input type = "text" name = "attr_range_30">
|
||||
</div>
|
||||
<div>
|
||||
<label>40'</label> <input type = "text" name = "attr_range_40">
|
||||
</div>
|
||||
<div>
|
||||
<label>50'</label> <input type = "text" name = "attr_range_50">
|
||||
</div>
|
||||
<div>
|
||||
<label>70'</label> <input type = "text" name = "attr_range_70">
|
||||
</div>
|
||||
<div>
|
||||
<label>90'</label> <input type = "text" name = "attr_range_90">
|
||||
</div>
|
||||
<div>
|
||||
<label>120'</label> <input type = "text" name = "attr_range_120">
|
||||
</div>
|
||||
<div>
|
||||
<label>150'</label> <input type = "text" name = "attr_range_150">
|
||||
</div>
|
||||
<div>
|
||||
<label>200'</label> <input type = "text" name = "attr_range_200">
|
||||
</div>
|
||||
<div>
|
||||
<button class = "weapons_button" type = "roll" value = "&{template:attack} {{roll=[[1d20 + @{acc} + ?{Range|5 Feet, @{range_5}|
|
||||
10 Feet, @{range_10}|15 Feet, @{range_10}|20 Feet, @{range_20}|25 Feet, @{range_25}|30 Feet, @{range_30}|40 Feet, @{range_40}|
|
||||
50 Feet, @{range_50}|70 Feet, @{range_70}|90 Feet, @{range_90}|120 Feet, @{range_120}|150 Feet, @{range_150}|200 Feet, @{range_200}|
|
||||
250 Feet, @{range_250}|300 Feet, @{range_300}|350 Feet, @{range_350}|400 Feet, @{range_400}|450 Feet, @{range_450}|500 Feet, @{range_500}|
|
||||
600 Feet, @{range_600}|700 Feet, @{range_700}|800 Feet, @{range_800}|900 Feet, @{range_900}|1000 Feet, @{range_1000}|1250 Feet, @{range_1250}|
|
||||
1500 Feet, @{range_1500}} + ?{Aiming|None, 0|Steady Aim Pistol, 3|Fire Deliberately Pistol, 4|
|
||||
Careful Aim Pistol, 7|Fire Deliberately Rifle, 4|Careful Aim Rifle, 7}]]}} {{damage=[[@{weapon_damage} + @{str_mod}]]}} {{weapon=@{weapon_type}}}"
|
||||
>Attack</button>
|
||||
<button class = "weapons_button" type = "roll" value = "&{template:damage} {{damage=[[(@{weapon_damage}) * ?{Number of Shots|1, 1|2, 2|3, 3|4, 4|5, 5|
|
||||
6, 6|7, 7|8, 8|9, 9|10, 10} + @{str_mod}]]}} {{weapon=@{weapon_type}}}">Damage</button>
|
||||
</div>
|
||||
<div>
|
||||
<label>250'</label> <input type = "text" name = "attr_range_250">
|
||||
</div>
|
||||
<div>
|
||||
<label>300'</label> <input type = "text" name = "attr_range_300">
|
||||
</div>
|
||||
<div>
|
||||
<label>350'</label> <input type = "text" name = "attr_range_350">
|
||||
</div>
|
||||
<div>
|
||||
<label>400'</label> <input type = "text" name = "attr_range_400">
|
||||
</div>
|
||||
<div>
|
||||
<label>450'</label> <input type = "text" name = "attr_range_450">
|
||||
</div>
|
||||
<div>
|
||||
<label>500'</label> <input type = "text" name = "attr_range_500">
|
||||
</div>
|
||||
<div>
|
||||
<label>600'</label> <input type = "text" name = "attr_range_600">
|
||||
</div>
|
||||
<div>
|
||||
<label>700'</label> <input type = "text" name = "attr_range_700">
|
||||
</div>
|
||||
<div>
|
||||
<label>800'</label> <input type = "text" name = "attr_range_800">
|
||||
</div>
|
||||
<div>
|
||||
<label>900'</label> <input type = "text" name = "attr_range_900">
|
||||
</div>
|
||||
<div>
|
||||
<label>1000'</label> <input type = "text" name = "attr_range_1000">
|
||||
</div>
|
||||
<div>
|
||||
<label>1250'</label> <input type = "text" name = "attr_range_1250">
|
||||
</div>
|
||||
<div>
|
||||
<label>1500'</label> <input type = "text" name = "attr_range_1500">
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<!--Bio/Other Info Page-->
|
||||
<div class = "bio2">
|
||||
<div class = "talents">
|
||||
<div class = "bio2_grid">
|
||||
<div class = "bio2_talents">
|
||||
<h1 class = "grid_header">TALENTS</h1>
|
||||
<div>
|
||||
<input type = "text" name = "attr_talent1">
|
||||
<input type = "text" name = "attr_talent2">
|
||||
<input type = "text" name = "attr_talent3">
|
||||
<input type = "text" name = "attr_talent4">
|
||||
<input type = "text" name = "attr_talent5">
|
||||
<input type = "text" name = "attr_talent6">
|
||||
</div>
|
||||
</div>
|
||||
<div class = "bio2_quirks">
|
||||
<h1 class = "grid_header">QUIRKS & FLAWS</h1>
|
||||
<div>
|
||||
<input type = "text" name = "attr_quirk1">
|
||||
<input type = "text" name = "attr_quirk2">
|
||||
<input type = "text" name = "attr_quirk3">
|
||||
<input type = "text" name = "attr_quirk4">
|
||||
<input type = "text" name = "attr_quirk5">
|
||||
<input type = "text" name = "attr_quirk6">
|
||||
</div>
|
||||
</div>
|
||||
<div class = "bio2_personal_goals">
|
||||
<h1 class = "grid_header">PERSONAL GOALS</h1>
|
||||
<div>
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" placeholder = "Goal" name = "attr_goal1">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" placeholder= "BPs" name = "attr_goal_bp_1">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal2">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp2">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal3">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp3">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal4">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp4">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal5">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp5">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal6">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp6">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal7">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp7">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal8">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp8">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal9">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp9">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal10">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp10">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal11">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp11">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal12">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp13">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal14">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp15">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "goal" name = "attr_goal16">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "goal_BPs" name = "attr_goal_bp16">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "bio2_profession">
|
||||
<h1 class = "grid_header">PROFESSION PATHS</h1>
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "prof" placeholder = "Profession Milestone" name = "attr_prof1">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "prof_BPs" placeholder = "BPs" name = "attr_goal_prof_bp1">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "prof" name = "attr_prof2">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "prof_BPs" name = "attr_goal_prof_bp2">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "prof" name = "attr_prof3">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "prof_BPs" name = "attr_goal_prof_bp3">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "prof" name = "attr_prof4">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "prof_BPs" name = "attr_goal_prof_bp4">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "prof" name = "attr_prof5">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "prof_BPs" name = "attr_goal_prof_bp5">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "flex">
|
||||
<div>
|
||||
<input type = "text" class = "prof" name = "attr_prof6">
|
||||
</div>
|
||||
<div>
|
||||
<input type = "text" class = "prof_BPs" name = "attr_goal_prof_bp6">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "personality">
|
||||
<h1 class = "grid_header">PERSONALITY</h1>
|
||||
<textarea class = "personality_text" name = "attr_personality"></textarea>
|
||||
</div>
|
||||
|
||||
<div class = "backstory">
|
||||
<h1 class = "grid_header">BACKSTORY/FAMILY</h1>
|
||||
<textarea class = "backstory_text" name = "attr_backstory"></textarea>
|
||||
</div>
|
||||
|
||||
<div class = "wounds">
|
||||
<h1 class = "grid_header">WOUNDS</h1>
|
||||
<fieldset class = "repeating_wounds">
|
||||
<div class = "flex">
|
||||
<input class = "wounds_points" type = "text" placeholder = "points" name = "attr_wounds_points">
|
||||
<label class = "wounds_in">in</label>
|
||||
<input class = "wounds_location" type = "text" placeholder = "location" name = "attr_wounds_location">
|
||||
<label>; heals in</label>
|
||||
<input class = "wounds_days" type = "text" placeholder = "days" name = "attr_wounds_days">
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class = "notes">
|
||||
<h1 class = "grid_header">OTHER NOTES</h1>
|
||||
<textarea class = "notes_text" name = "notes"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "horses">
|
||||
<fieldset class = "repeating_horse">
|
||||
<div class = "bio">
|
||||
<div class = "name">
|
||||
<label>Name</label><input type = "text" name = "attr_horse_name"/>
|
||||
</div>
|
||||
|
||||
<div class = "breed">
|
||||
<label>Breed</label><input type = "text" name = "attr_horse_breed"/>
|
||||
</div>
|
||||
|
||||
<div class = "vices">
|
||||
<label>Vices</label><input type = "text" name = "attr_horse_vices"/>
|
||||
</div>
|
||||
|
||||
<div class = "markings">
|
||||
<label>Markings</label><input type = "text" name = "attr_horse_markings"/>
|
||||
</div>
|
||||
|
||||
<div class = "horse_gender">
|
||||
<label>Gender</label><input type = "text" name = "attr_horse_gender"/>
|
||||
</div>
|
||||
|
||||
<div class = "age">
|
||||
<label>Age</label><input type = "number" name = "attr_horse_age"/>
|
||||
</div>
|
||||
|
||||
<div class = "horse_height">
|
||||
<label>Height</label><input type = "text" name = "attr_horse_age"/>
|
||||
</div>
|
||||
|
||||
<div class = "personality">
|
||||
<label>Personality</label><input type = "text" name = "attr_horse_personality"/>
|
||||
</div>
|
||||
|
||||
<div class = "color">
|
||||
<label>Color</label><input type = "text" name = "attr_horse_color"/>
|
||||
</div>
|
||||
|
||||
<div class = "horse_HP">
|
||||
<label>HP</label><input type = "text" name = "attr_horse_HP_current"><label>/</label><input type = "text" name = "attr_horse_HP_max">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class = "horse_stats">
|
||||
<h1 class = "header">STATS</h1>
|
||||
<h1>NOTES/TACK</h1>
|
||||
<div class = "horse_grid">
|
||||
<div class = "horse_stats_grid">
|
||||
<div>
|
||||
<label>Short Speed</label><input type = text name = "attr_horse_short_speed">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Med Speed</label><input type = text name = "attr_horse_med_speed">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Long Speed</label><input type = text name = "attr_horse_long_speed">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Agility</label></label><input type = text name = "attr_horse_agility">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Endurance</label></label><input type = text name = "attr_horse_endurance">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Horse Sense</label></label><input type = text name = "attr_horse_endurance">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Temperment</label></label><input type = text name = "attr_horse_temperment">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Trainability</label></label><input type = text name = "attr_horse_trainability">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Mettle</label></label><input type = text name = "attr_horse_mettle">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Soundness</label></label><input type = text name = "attr_horse_soundness">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>Strength</label></label><input type = text name = "attr_horse_strength">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<textarea class = "horse_tack"></textarea>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-skills">
|
||||
<div class = "sheet-roll_grid">
|
||||
<div class="sheet-roll_numbers">
|
||||
<span>{{roll}}</span>
|
||||
</div>
|
||||
|
||||
<div class = "sheet-roll_numbers">
|
||||
<span>{{mastery}}</span>
|
||||
</div>
|
||||
|
||||
<div class="sheet-roll_labels">
|
||||
<span>Roll</span>
|
||||
</div>
|
||||
|
||||
<div class = "sheet-roll_labels">
|
||||
<span>Mastery</span>
|
||||
</div>
|
||||
|
||||
<div class="sheet-roll_name">
|
||||
<span>{{name}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-attack">
|
||||
<div class = "sheet-roll_grid">
|
||||
<div class="sheet-roll_numbers">
|
||||
<span>{{roll}}</span>
|
||||
</div>
|
||||
|
||||
<div class = "sheet-roll_numbers">
|
||||
<span>{{damage}}</span>
|
||||
</div>
|
||||
|
||||
<div class="sheet-roll_labels">
|
||||
<span>Roll</span>
|
||||
</div>
|
||||
|
||||
<div class = "sheet-roll_labels">
|
||||
<span>Damage</span>
|
||||
</div>
|
||||
|
||||
<div class="sheet-roll_name">
|
||||
<span>{{weapon}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-damage">
|
||||
<div class = "sheet-roll_numbers">
|
||||
<span>{{damage}}</span>
|
||||
</div>
|
||||
|
||||
<div class = "sheet-roll_labels">
|
||||
<span>Damage</span>
|
||||
</div>
|
||||
|
||||
<div class="sheet-roll_name">
|
||||
<span>{{weapon}}</span>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<script type="text/worker">
|
||||
const buttonlist = ["character","weapons", "bio2", "horses"];
|
||||
buttonlist.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
sheetTab: button
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "sheet.html",
|
||||
"css": "style.css",
|
||||
"authors": "Lela Corson",
|
||||
"roll20userid": "2784707",
|
||||
"preview": "preview.PNG",
|
||||
"instructions": "This is a character sheet for the game Aces and Eights (published 2007). Use the tabs underneath the top bio to navigate to the weapons, horses, and other info sections."
|
||||
}
|
||||
@@ -0,0 +1,614 @@
|
||||
@import url('https://fonts.googleapis.com/css?family=Playfair+Display|Rye&display=swap');
|
||||
|
||||
input, select, textarea{
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
input, label, textarea{
|
||||
font-family: "Playfair Display";
|
||||
}
|
||||
|
||||
input{
|
||||
border-top: 0px;
|
||||
border-right: 0px;
|
||||
border-left: 0px;
|
||||
}
|
||||
|
||||
/*Tabs*/
|
||||
.sheet-character,
|
||||
.sheet-weapons,
|
||||
.sheet-bio2,
|
||||
.sheet-horses{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.sheet-tabstoggle[value="character"] ~ div.sheet-character,
|
||||
.sheet-tabstoggle[value="weapons"] ~ div.sheet-weapons,
|
||||
.sheet-tabstoggle[value="bio2"] ~ div.sheet-bio2,
|
||||
.sheet-tabstoggle[value="horses"] ~ div.sheet-horses{
|
||||
display: block;
|
||||
}
|
||||
|
||||
/*Bio*/
|
||||
.sheet-bio label {
|
||||
display: inline;
|
||||
font-size: 17px;
|
||||
}
|
||||
|
||||
.sheet-bio input{
|
||||
display: inline;
|
||||
font-weight: bold;
|
||||
font-size: 15px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.sheet-bio{
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.sheet-bio > div{
|
||||
margin-right: 10px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.sheet-age input, .sheet-height input, .sheet-BPs input{
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
.sheet-name input{
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.sheet-handedness input{
|
||||
width: 90px;
|
||||
}
|
||||
|
||||
.sheet-gender input{
|
||||
width: 120px;
|
||||
}
|
||||
|
||||
.sheet-weight input{
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.sheet-race input, .sheet-nationality input, .sheet-profession input{
|
||||
width: 145px;
|
||||
}
|
||||
|
||||
/*Logo*/
|
||||
img{
|
||||
float: right;
|
||||
width: 40%;
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
hr {
|
||||
display: block;
|
||||
border-top: 2px solid #000000;
|
||||
margin-top: 0px;
|
||||
margin-bottom: 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.charsheet{
|
||||
background: white;
|
||||
}
|
||||
|
||||
h1{
|
||||
font-family: "Rye";
|
||||
padding:0px;
|
||||
margin: 0px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-grid_header{
|
||||
font-family: "Rye";
|
||||
font-size: 24px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-grid{
|
||||
display: grid;
|
||||
grid-template-columns: 256px 180px 400px;
|
||||
grid-template-rows: 40px 50px 80px 95px 195px;
|
||||
column-gap: 0px;
|
||||
}
|
||||
|
||||
.sheet-abilities_grid{
|
||||
grid-row: 2/ span 4;
|
||||
grid-col: 1;
|
||||
display: grid;
|
||||
grid-template-columns: 70px 60px 116px;
|
||||
grid-template-rows: 40px 40px 40px 40px 40px 40px 40px 40px 40px;
|
||||
column-gap: 3px;
|
||||
row-gap: 5px;
|
||||
justify-items: center;
|
||||
align-items:center;
|
||||
}
|
||||
|
||||
.sheet-ability_label_large{
|
||||
font-size: 22px;
|
||||
font-family: "Rye";
|
||||
align-self: end;
|
||||
padding: 2px;
|
||||
margin-top: 10px;
|
||||
justify-self: center;
|
||||
}
|
||||
|
||||
.sheet-abilities_grid label + input{
|
||||
height: 20px;
|
||||
width: 116px;
|
||||
}
|
||||
|
||||
.sheet-abilities_grid input{
|
||||
height: 30px;
|
||||
width: 50px !important;
|
||||
align-self: start;
|
||||
text-align: center;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
.sheet-small_label{
|
||||
font-size: 13px;
|
||||
margin-bottom: 1px;
|
||||
margin-top: 0px;
|
||||
padding: 0px;
|
||||
display: block;
|
||||
justify-self: center;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-mod_grid{
|
||||
display: grid;
|
||||
grid-template-columns: 116px;
|
||||
grid-template-rows: 20px 30px;
|
||||
justify-items: center;
|
||||
}
|
||||
|
||||
.sheet-fame_category{
|
||||
font-size: 13px;
|
||||
width: 80px;
|
||||
height: 36px;
|
||||
resize: none;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-acc_speed{
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.sheet-acc_speed label{
|
||||
margin-top: 10px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.sheet-acc_speed input{
|
||||
font-size: 20px;
|
||||
width: 50px;
|
||||
margin-right: 10px;
|
||||
margin-bottom: 10px;
|
||||
|
||||
}
|
||||
|
||||
.sheet-speed_mods_hidden{
|
||||
display:none;
|
||||
}
|
||||
|
||||
.sheet-HP_header label{
|
||||
margin-top: 7px;
|
||||
}
|
||||
|
||||
.sheet-hp_dash{
|
||||
font-size: 40px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.sheet-HP_grid input{
|
||||
width: 60px !important;
|
||||
height: 33px;
|
||||
text-align: center;
|
||||
font-size: 28px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.sheet-current_hp{
|
||||
margin-left: 9px;
|
||||
margin-right: 7px;
|
||||
}
|
||||
|
||||
.sheet-HP_grid{
|
||||
grid-row: 1 / span 2;
|
||||
grid-col: 2;
|
||||
}
|
||||
|
||||
.sheet-money_grid input{
|
||||
font-size: 21px;
|
||||
width: 180px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-money_grid{
|
||||
grid-row: 3;
|
||||
grid-col: 2;
|
||||
}
|
||||
|
||||
.sheet-skills_grid{
|
||||
grid-col: 3;
|
||||
grid-row: 1 / span 5;
|
||||
display: grid;
|
||||
grid-template-columns: 30px auto;
|
||||
grid-template-rows: 40px 160px;
|
||||
column-gap: 10px;
|
||||
}
|
||||
|
||||
.sheet-skills_text_grid{
|
||||
display: grid;
|
||||
grid-template-columns: 182px 50px auto;
|
||||
grid-template-rows: 30px;
|
||||
column-gap: 15px;
|
||||
}
|
||||
|
||||
.sheet-skills_text_grid label{
|
||||
font-size: 17px;
|
||||
}
|
||||
|
||||
.sheet-skills_header{
|
||||
grid-col: 1;
|
||||
grid-row: span 2;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-skills_header label{
|
||||
font-family: "Rye";
|
||||
font-size: 24px;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.sheet-skills_grid input{
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.sheet-skill_name{
|
||||
width: 195px;
|
||||
}
|
||||
|
||||
.sheet-skill_tallies{
|
||||
width: 50px !important;
|
||||
}
|
||||
|
||||
.sheet-skill_mastery{
|
||||
width: 70px;
|
||||
}
|
||||
|
||||
.sheet-items_grid{
|
||||
grid-col: 2;
|
||||
grid-row: 4 / span 2;
|
||||
}
|
||||
|
||||
.sheet-items_grid textarea{
|
||||
resize: none;
|
||||
height: 255px;
|
||||
width: 180px;
|
||||
}
|
||||
|
||||
.sheet-weapons{
|
||||
grid-row: 1;
|
||||
grid-col: 1;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.sheet-weapons_bio{
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.sheet-weapons_bio input{
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.sheet-big_box{
|
||||
margin-top: 10px;
|
||||
width: 430px;
|
||||
}
|
||||
|
||||
textarea{
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.sheet-repeating_weapons{
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.sheet-weapons_bio label{
|
||||
font-size: 17px;
|
||||
}
|
||||
|
||||
.sheet-weapons_bio input{
|
||||
margin-right: 15px;
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.sheet-damage_per_shot{
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.sheet-weapons_range{
|
||||
display: grid;
|
||||
grid-template-columns: 80px 40px 40px 40px 40px 40px 40px 40px 40px 40px 40px 40px 40px 40px;
|
||||
grid-template-rows: 55px 55px;
|
||||
grid-col: 1;
|
||||
grid-row: 3;
|
||||
margin-top: 10px;
|
||||
column-gap: 15px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.sheet-range_label{
|
||||
grid-col: 1;
|
||||
grid-row: 1;
|
||||
}
|
||||
|
||||
.sheet-range_label label{
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.sheet-weapons_range input{
|
||||
width: 40px;
|
||||
font-size: 15px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-weapons_range label{
|
||||
text-align: center;
|
||||
font-size: 17px;
|
||||
}
|
||||
|
||||
.sheet-weapons_button{
|
||||
grid-col: 1;
|
||||
grid-row: 2;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.sheet-reload_speed{
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
button{
|
||||
font-family: "Rye";
|
||||
font-size: 15px;
|
||||
border-radius: 5px;
|
||||
height: 20px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
button.sheet-weapons_button:before{
|
||||
content: "" !important;
|
||||
}
|
||||
|
||||
.sheet-bio2_grid{
|
||||
display: grid;
|
||||
grid-template-columns: 220px 130px 110px 370px;
|
||||
grid-template-rows: 200px 200px 300px auto;
|
||||
}
|
||||
|
||||
.sheet-bio2_grid > div{
|
||||
border: 1px solid black;
|
||||
}
|
||||
|
||||
.sheet-bio2_grid input{
|
||||
height: 25px;
|
||||
font-size: 16px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.sheet-bio2_quirks input{
|
||||
width: 230px;
|
||||
}
|
||||
|
||||
.sheet-bio2_quirks{
|
||||
grid-column: 2 / span 2;
|
||||
}
|
||||
|
||||
.sheet-bio2_personal_goals{
|
||||
grid-column: 4;
|
||||
grid-row: 1 / span 2;
|
||||
}
|
||||
|
||||
.sheet-flex{
|
||||
display: flex;
|
||||
flex-wrap: flex;
|
||||
}
|
||||
|
||||
.sheet-goal{
|
||||
width: 310px;
|
||||
}
|
||||
|
||||
.sheet-goal_BPs{
|
||||
width: 45px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-bio2_profession{
|
||||
grid-column: 1 / span 3;
|
||||
}
|
||||
|
||||
.sheet-prof{
|
||||
width: 390px;
|
||||
}
|
||||
|
||||
.sheet-prof_BPs{
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.sheet-personality{
|
||||
grid-column: 1 / span 2;
|
||||
}
|
||||
|
||||
.sheet-personality_text{
|
||||
width: 320px;
|
||||
height: 250px;
|
||||
margin-left: 10px;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.sheet-backstory{
|
||||
grid-column: 3 / span 2;
|
||||
}
|
||||
|
||||
.sheet-backstory_text{
|
||||
width: 450px;
|
||||
height:250px;
|
||||
margin-left: 10px;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.sheet-wounds_points{
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.sheet-wounds_days{
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.sheet-wounds label{
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.sheet-notes_text{
|
||||
width: 340px;
|
||||
height: 200px;
|
||||
resize: none;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-notes{
|
||||
height: 250px;
|
||||
}
|
||||
|
||||
.sheet-wounds{
|
||||
grid-column: 1 / span 3;
|
||||
}
|
||||
|
||||
.sheet-breed input, .sheet-personality input{
|
||||
width: 130px;
|
||||
}
|
||||
|
||||
.sheet-markings input{
|
||||
width: 400px;
|
||||
}
|
||||
|
||||
.sheet-horse_gender input{
|
||||
width: 70px;
|
||||
}
|
||||
|
||||
.sheet-horse_height input{
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
.sheet-horse_HP input{
|
||||
width: 30px;
|
||||
margin-right: 10px;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
.sheet-horse_stats h1{
|
||||
text-align: left;
|
||||
margin-left: 130px;
|
||||
display: inline;
|
||||
margin-right: 130px;
|
||||
}
|
||||
|
||||
.sheet-horse_stats_grid{
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
grid-col: 1;
|
||||
grid-row: 1;
|
||||
}
|
||||
|
||||
.sheet-horse_stats_grid input, .sheet-horse_stats_grid label{
|
||||
display: inline;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.sheet-horse_stats_grid label{
|
||||
width: 90px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-horse_stats_grid input{
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.sheet-horse_grid{
|
||||
display: grid;
|
||||
grid-template-columns: 450px 285px;
|
||||
grid-template-rows: 120px;
|
||||
}
|
||||
|
||||
.sheet-horse_tack{
|
||||
height: 110px;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-skills, .sheet-rolltemplate-attack{
|
||||
background: url(https://github.com/lelajcorson/Aces-and-Eights-Character-Sheet/blob/skills-rolltemplate/roll_border.png?raw=true) top left;
|
||||
background-size: 195px 104px;
|
||||
background-repeat: no-repeat;
|
||||
font-size: 15px;
|
||||
height: 104px;
|
||||
width: 195px;
|
||||
text-align: center;
|
||||
font-family: "Playfair Display";
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-skills .sheet-roll_grid, .sheet-rolltemplate-attack .sheet-roll_grid, .sheet-rolltemplate-damage .sheet-roll_grid{
|
||||
display: grid;
|
||||
grid-template-columns: 92px 92px;
|
||||
grid-template-rows: 42px 20px 26px;
|
||||
margin-left: 5px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-skills .sheet-roll_numbers span, .sheet-rolltemplate-attack .sheet-roll_numbers span, .sheet-rolltemplate-damage .sheet-roll_numbers span{
|
||||
background-color: rgba(255, 255, 255, 0);
|
||||
border: 2px solid transparent !important;
|
||||
font-size: 30px;
|
||||
line-height: 1.3;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-skills .sheet-roll_name, .sheet-rolltemplate-attack .sheet-roll_name{
|
||||
grid-column: 1 / span 2;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-damage{
|
||||
background: url(https://github.com/lelajcorson/Aces-and-Eights-Character-Sheet/blob/skills-rolltemplate/damage_rolltemplate_border.png?raw=true);
|
||||
background-size: 195px 104px;
|
||||
background-repeat: no-repeat;
|
||||
font-size: 15px;
|
||||
height: 104px;
|
||||
width: 195px;
|
||||
text-align: center;
|
||||
font-family: "Playfair Display";
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-damage .sheet-roll_numbers{
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-damage .sheet-roll_name span{
|
||||
line-height: 2;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-damage .sheet-roll_numbers span .inlinerollresult.fullfail {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-damage .sheet-roll_numbers span .inlinerollresult.fullcrit {
|
||||
color: green;
|
||||
}
|
||||
@@ -0,0 +1,592 @@
|
||||
@import url('https://fonts.googleapis.com/css?family=Oldenburg|New+Rocker&display=swap');
|
||||
|
||||
.sheet-abafrente,
|
||||
.sheet-abaverso {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* show the selected tab */
|
||||
.sheet-typetoggle[value="abafrente"] ~ div.sheet-abafrente,
|
||||
.sheet-typetoggle[value="abaverso"] ~ div.sheet-abaverso {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.sheet-botao-selecao {
|
||||
font-family: 'New Rocker', cursive;
|
||||
text-align:center;
|
||||
font-size:1.3em;
|
||||
border-radius: 5px solid black;
|
||||
background-color: white;
|
||||
box-shadow: none;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
-webkit-border-radius: 5px;
|
||||
color: black;
|
||||
background-color:white;
|
||||
}
|
||||
|
||||
.sheet-main {
|
||||
width: 830px;
|
||||
height: 750px;
|
||||
font-family: 'Oldenburg', cursive;
|
||||
}
|
||||
|
||||
.sheet-tab {
|
||||
margin-bottom: 15px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
/* GRID setup */
|
||||
.sheet-dados-frente {
|
||||
display: grid !important;
|
||||
width: 830px;
|
||||
height: 750px;
|
||||
font-family: 'Oldenburg', cursive;
|
||||
grid-gap: 0px;
|
||||
grid-template-columns: 165px 260px 405px;
|
||||
grid-template-rows: 70px 52px 90px 207px;
|
||||
grid-template-areas:"header header backstory "
|
||||
"stats combat backstory "
|
||||
"stats combat proficiencies"
|
||||
"stats combat abilities "
|
||||
"weapons weapons abilities ";
|
||||
}
|
||||
|
||||
.sheet-dados-verso {
|
||||
display: grid !important;
|
||||
width: 830px;
|
||||
height: 750px;
|
||||
font-family: 'Oldenburg', cursive;
|
||||
grid-gap: 0px;
|
||||
grid-template-columns: 55% 45%;
|
||||
grid-template-rows: 80px 670px;
|
||||
grid-template-areas:"rewards notes"
|
||||
"equipaments notes ";
|
||||
}
|
||||
|
||||
/* GRID sections */
|
||||
.sheet-rewards {
|
||||
grid-area: rewards;
|
||||
}
|
||||
|
||||
.sheet-rewards input {
|
||||
width: 5.2em !important;
|
||||
}
|
||||
.sheet-equipaments {
|
||||
grid-area: equipaments;
|
||||
}
|
||||
|
||||
.sheet-notes {
|
||||
grid-area: notes;
|
||||
max-width: 90%;
|
||||
width: 90%;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.sheet-header {
|
||||
grid-area: header;
|
||||
}
|
||||
|
||||
.sheet-main label {
|
||||
font-family: 'New Rocker', cursive;
|
||||
}
|
||||
|
||||
.sheet-header input {
|
||||
max-width: 120px;
|
||||
margin-top: -5px;
|
||||
}
|
||||
|
||||
.sheet-header input {
|
||||
border-bottom: 1px solid black;
|
||||
border-top: 0px;
|
||||
border-left: 0px;
|
||||
border-right: 0px;
|
||||
background: none;
|
||||
box-shadow: none;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
-webkit-border-radius: 0px;
|
||||
border-radius: 0px;
|
||||
height: 18px;
|
||||
}
|
||||
|
||||
.sheet-weapons {
|
||||
grid-area: weapons;
|
||||
margin-top: 125px;
|
||||
}
|
||||
|
||||
.sheet-stats {
|
||||
grid-area: stats;
|
||||
}
|
||||
|
||||
.sheet-stats label {
|
||||
font-size: 1.7em;
|
||||
font-family: 'New Rocker', cursive;
|
||||
}
|
||||
|
||||
.sheet-stats-atributo {
|
||||
max-width: 40px;
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
.sheet-stats-mod {
|
||||
max-width: 25px;
|
||||
}
|
||||
|
||||
.sheet-stats-content {
|
||||
display: grid;
|
||||
grid-gap: 0px;
|
||||
grid-template-columns: 30% 30% 20% 20%;
|
||||
grid-template-rows: 32px 32px 32px 32px 32px 32px;
|
||||
grid-template-areas:"for for-value for-mod for-roll"
|
||||
"des des-value des-mod des-roll"
|
||||
"con con-value con-mod con-roll"
|
||||
"int int-value int-mod int-roll"
|
||||
"sab sab-value sab-mod sab-roll"
|
||||
"car car-value car-mod car-roll";
|
||||
}
|
||||
|
||||
.sheet-stats-for {
|
||||
grid-area: for;
|
||||
}
|
||||
|
||||
.sheet-stats-for-value {
|
||||
grid-area: for-value;
|
||||
}
|
||||
|
||||
.sheet-stats-for-mod {
|
||||
grid-area: for-mod;
|
||||
}
|
||||
|
||||
.sheet-stats-for-roll {
|
||||
grid-area: for-roll;
|
||||
}
|
||||
|
||||
.sheet-stats-des {
|
||||
grid-area: des;
|
||||
}
|
||||
|
||||
.sheet-stats-des-value {
|
||||
grid-area: des-value;
|
||||
}
|
||||
|
||||
.sheet-stats-des-mod {
|
||||
grid-area: des-mod;
|
||||
}
|
||||
|
||||
.sheet-stats-des-roll {
|
||||
grid-area: des-roll;
|
||||
}
|
||||
|
||||
.sheet-stats-con {
|
||||
grid-area: con;
|
||||
}
|
||||
|
||||
.sheet-stats-con-value {
|
||||
grid-area: con-value;
|
||||
}
|
||||
|
||||
.sheet-stats-con-mod {
|
||||
grid-area: con-mod;
|
||||
}
|
||||
|
||||
.sheet-stats-con-roll {
|
||||
grid-area: con-roll;
|
||||
}
|
||||
|
||||
.sheet-stats-int {
|
||||
grid-area: int;
|
||||
}
|
||||
|
||||
.sheet-stats-int-value {
|
||||
grid-area: int-value;
|
||||
}
|
||||
|
||||
.sheet-stats-int-mod {
|
||||
grid-area: int-mod;
|
||||
}
|
||||
|
||||
.sheet-stats-int-roll {
|
||||
grid-area: int-roll;
|
||||
}
|
||||
|
||||
.sheet-stats-sab {
|
||||
grid-area: sab;
|
||||
}
|
||||
|
||||
.sheet-stats-sab-value {
|
||||
grid-area: sab-value;
|
||||
}
|
||||
|
||||
.sheet-stats-sab-mod {
|
||||
grid-area: sab-mod;
|
||||
}
|
||||
|
||||
.sheet-stats-sab-roll {
|
||||
grid-area: sab-roll;
|
||||
}
|
||||
|
||||
.sheet-stats-car {
|
||||
grid-area: car;
|
||||
}
|
||||
|
||||
.sheet-stats-car-value {
|
||||
grid-area: car-value;
|
||||
}
|
||||
|
||||
.sheet-stats-car-mod {
|
||||
grid-area: car-mod;
|
||||
}
|
||||
|
||||
.sheet-stats-car-roll {
|
||||
grid-area: car-roll;
|
||||
}
|
||||
|
||||
/* Chrome, Safari, Edge, Opera */
|
||||
.sheet-abafrente input::-webkit-outer-spin-button,
|
||||
.sheet-abafrente input::-webkit-inner-spin-button {
|
||||
-webkit-appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Firefox */
|
||||
.sheet-abafrente input[type=number] {
|
||||
-moz-appearance: textfield;
|
||||
}
|
||||
|
||||
.sheet-combat {
|
||||
grid-area: combat;
|
||||
}
|
||||
|
||||
.sheet-combat label {
|
||||
font-family: 'New Rocker', cursive;
|
||||
}
|
||||
|
||||
.sheet-combat textarea {
|
||||
font-size:0.7em;
|
||||
}
|
||||
|
||||
.sheet-proficiencies {
|
||||
grid-area: proficiencies;
|
||||
margin-top:110px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-proficiencies textarea {
|
||||
max-width: 100%;
|
||||
width: 100%;
|
||||
max-height: 50px !important;
|
||||
margin-top: 5px;
|
||||
height:50px !important;
|
||||
font-size:0.7em;
|
||||
}
|
||||
|
||||
.sheet-backstory {
|
||||
grid-area: backstory;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-backstory textarea {
|
||||
max-width: 100%;
|
||||
width: 100%;
|
||||
max-height: 50px !important;
|
||||
margin-top: 5px;
|
||||
height:50px !important;
|
||||
font-size:0.7em;
|
||||
}
|
||||
|
||||
.sheet-backstory label {
|
||||
font-family: 'New Rocker', cursive;
|
||||
}
|
||||
|
||||
.sheet-backstory input {
|
||||
width: 98%;
|
||||
}
|
||||
|
||||
.sheet-backstory-content {
|
||||
display: grid;
|
||||
grid-gap: 0px;
|
||||
grid-template-columns: 20% 80%;
|
||||
grid-template-rows: 25% 25% 25% 25%;
|
||||
grid-template-areas:"familia familia-input "
|
||||
"obsessao obsessao-input"
|
||||
"amigo amigo-input "
|
||||
"inimigo inimigo-input ";
|
||||
}
|
||||
|
||||
.sheet-backstory-familia {
|
||||
grid-area: familia;
|
||||
}
|
||||
|
||||
.sheet-backstory-familia-input {
|
||||
grid-area: familia-input;
|
||||
}
|
||||
|
||||
.sheet-backstory-obsessao {
|
||||
grid-area: obsessao;
|
||||
}
|
||||
|
||||
.sheet-backstory-obsessao-input {
|
||||
grid-area: obsessao-input;
|
||||
}
|
||||
|
||||
.sheet-backstory-amigo {
|
||||
grid-area: amigo;
|
||||
}
|
||||
|
||||
.sheet-backstory-amigo-input {
|
||||
grid-area: amigo-input;
|
||||
}
|
||||
|
||||
.sheet-backstory-inimigo {
|
||||
grid-area: inimigo;
|
||||
}
|
||||
|
||||
.sheet-backstory-inimigo-input {
|
||||
grid-area: inimigo-input;
|
||||
}
|
||||
|
||||
.sheet-abilities {
|
||||
grid-area: abilities;
|
||||
margin-top:125px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-abilities-content {
|
||||
display: grid;
|
||||
grid-gap: 0px;
|
||||
grid-template-columns: 5% 95%;
|
||||
grid-template-rows: 10% 10% 10% 10% 10% 10% 10% 10% 10% 10%;
|
||||
grid-template-areas:"habilidade1-label habilidade1-value "
|
||||
"habilidade2-label habilidade2-value "
|
||||
"habilidade3-label habilidade3-value "
|
||||
"habilidade4-label habilidade4-value "
|
||||
"habilidade5-label habilidade5-value "
|
||||
"habilidade6-label habilidade6-value "
|
||||
"habilidade7-label habilidade7-value "
|
||||
"habilidade8-label habilidade8-value "
|
||||
"habilidade9-label habilidade9-value "
|
||||
"habilidade10-label habilidade10-value ";
|
||||
}
|
||||
|
||||
.sheet-habilidade1-label {
|
||||
grid-area: habilidade1-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade1-value {
|
||||
grid-area: habilidade1-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade2-label {
|
||||
grid-area: habilidade2-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade3-value {
|
||||
grid-area: habilidade3-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade4-label {
|
||||
grid-area: habilidade4-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade4-value {
|
||||
grid-area: habilidade4-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade5-label {
|
||||
grid-area: habilidade5-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade5-value {
|
||||
grid-area: habilidade5-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade6-label {
|
||||
grid-area: habilidade6-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade6-value {
|
||||
grid-area: habilidade6-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade6-value {
|
||||
grid-area: habilidade6-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade7-label {
|
||||
grid-area: habilidade7-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade7-value {
|
||||
grid-area: habilidade7-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade8-label {
|
||||
grid-area: habilidade8-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade8-value {
|
||||
grid-area: habilidade8-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade9-label {
|
||||
grid-area: habilidade9-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade9-value {
|
||||
grid-area: habilidade9-value;
|
||||
}
|
||||
|
||||
.sheet-habilidade10-label {
|
||||
grid-area: habilidade10-label;
|
||||
}
|
||||
|
||||
.sheet-habilidade10-value {
|
||||
grid-area: habilidade10-value;
|
||||
}
|
||||
|
||||
.sheet-abilities-content input {
|
||||
max-width: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-abilities-content select {
|
||||
max-width: 87%;
|
||||
width: 87%;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.sheet-up_atributo {
|
||||
font-family: 'Oldenburg', cursive !important;
|
||||
font-size: 1em;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-ataque,
|
||||
.sheet-rolltemplate-atributo,
|
||||
.sheet-rolltemplate-dado-uso {
|
||||
box-sizing:border-box;
|
||||
width:100%;
|
||||
position:relative;
|
||||
background-color:white;
|
||||
overflow:hidden;
|
||||
border-radius: 5px solid purple;
|
||||
background-color: white;
|
||||
box-shadow: none;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
-webkit-border-radius: 5px;
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container {
|
||||
width:100%;
|
||||
position:relative;
|
||||
box-sizing:border-box;
|
||||
border:2px solid black
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox{
|
||||
padding:5px;
|
||||
position:relative;
|
||||
width:100%;
|
||||
min-height:40px;
|
||||
display:grid;
|
||||
box-sizing:border-box;
|
||||
grid-template-columns:1fr 1px 1fr;
|
||||
column-gap:5px;
|
||||
row-gap:5px
|
||||
}
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox{
|
||||
padding:5px;
|
||||
width:100%;
|
||||
box-sizing:border-box;
|
||||
text-align:center;
|
||||
}
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox-desempenho,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox-desempenho {
|
||||
padding:5px;
|
||||
font-family: 'Oldenburg', cursive;
|
||||
width:100%;
|
||||
box-sizing:border-box;
|
||||
margin-bottom:3px;
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox .sheet-roll-title,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox .sheet-roll-title,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox .sheet-roll-title,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox-desempenho .sheet-roll-title{
|
||||
width:100%;
|
||||
grid-column:1/4;
|
||||
min-height:16px;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
justify-content:center;
|
||||
text-align:center;
|
||||
text-transform:uppercase
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox .sheet-roll-label,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox .sheet-roll-label,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox .sheet-roll-label,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox-desempenho .sheet-roll-label{
|
||||
margin-top:5px;
|
||||
width:100%;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
justify-content:center;
|
||||
text-align:center;
|
||||
font-weight:normal
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox .sheet-roll,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox .sheet-roll,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox .sheet-roll,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox-desempenho .sheet-roll{
|
||||
padding-top:5px;
|
||||
width:100%;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
justify-content:center;
|
||||
text-align:center
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox .sheet-roll span,
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox .sheet-roll span,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox .sheet-roll span{
|
||||
margin:0 auto;
|
||||
padding:8px;
|
||||
font-size:18px
|
||||
}
|
||||
.sheet-rolltemplate-atributo .sheet-rollbox-container .sheet-rollbox-desempenho .sheet-roll span,
|
||||
.sheet-rolltemplate-dado-uso .sheet-rollbox-container .sheet-rollbox-desempenho .sheet-roll span{
|
||||
margin-top:-9px;
|
||||
padding:8px;
|
||||
font-size:18px
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox .sheet-divisor{
|
||||
display:flex;
|
||||
align-items:center;
|
||||
justify-content:center;
|
||||
text-align:center
|
||||
}
|
||||
.sheet-rolltemplate-ataque .sheet-rollbox-container .sheet-rollbox .sheet-divisor span{
|
||||
width:1px;
|
||||
height:70%;
|
||||
background-color:green;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-ataque .sheet-header,
|
||||
.sheet-rolltemplate-atributo .sheet-header,
|
||||
.sheet-rolltemplate-dado-uso .sheet-header{
|
||||
width: 100%;
|
||||
background-color: green;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
color: white;
|
||||
position: relative;
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-ataque .sheet-left,
|
||||
.sheet-rolltemplate-atributo .sheet-left,
|
||||
.sheet-rolltemplate-dado-uso .sheet-left{
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,577 @@
|
||||
<div class="sheet-main">
|
||||
|
||||
<div class="tab">
|
||||
<button class="botao-selecao" type="action" name="act_abafrente">Frente</button>
|
||||
<button class="botao-selecao" type="action" name="act_abaverso">Verso</button>
|
||||
</div>
|
||||
<input type='hidden' class='typetoggle' name='attr_typetoggle' value='abafrente' />
|
||||
|
||||
<div class="abafrente">
|
||||
<div class="dados-frente">
|
||||
<div class="header">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<label>Nome</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" name="attr_character_name"/>
|
||||
</div>
|
||||
<div class="col">
|
||||
<label>Ancestralidade</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" name="attr_raca" style="max-width: 123px"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<label>Classe</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="text" name="attr_classe"/>
|
||||
</div>
|
||||
<div class="col" style="max-width: 70px;">
|
||||
<label>Especialização</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left: 30px">
|
||||
<input type="text" name="attr_especializacao"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="stats">
|
||||
<div class="stats-content">
|
||||
<div class="stats-for">
|
||||
<label>For</label>
|
||||
</div>
|
||||
<div class="stats-for-value">
|
||||
<input type="number" name='attr_for' value="10" class='stats-atributo'>
|
||||
</div>
|
||||
<div class="stats-for-mod">
|
||||
<input type="text" name="attr_for_mod_fake" value="@{for_mod}" disabled="true" class='stats-mod'>
|
||||
</div>
|
||||
<div class="stats-for-roll">
|
||||
<button type="roll" align="right" value="&{template:atributo} {{nome=@{character_name}}} {{atributo=Força}} {{desempenho=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{for_mod}+?{Bônus|0}]]}}"></button>
|
||||
</div>
|
||||
|
||||
<div class="stats-des">
|
||||
<label>Des</label>
|
||||
</div>
|
||||
<div class="stats-desc-value">
|
||||
<input type="number" name='attr_des' value="10" class='stats-atributo'>
|
||||
</div>
|
||||
<div class="stats-des-mod">
|
||||
<input type="text" name="attr_des_mod_fake" value="@{des_mod}" disabled="true" class='stats-mod'>
|
||||
</div>
|
||||
<div class="stats-des-roll">
|
||||
<button type="roll" align="right" value="&{template:atributo} {{nome=@{character_name}}} {{atributo=Destreza}} {{desempenho=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{des_mod}+?{Bônus|0}]]}}"></button>
|
||||
</div>
|
||||
|
||||
<div class="stats-con">
|
||||
<label>Con</label>
|
||||
</div>
|
||||
<div class="stats-con-value">
|
||||
<input type="number" name='attr_con' value="10" class='stats-atributo'>
|
||||
</div>
|
||||
<div class="stats-con-mod">
|
||||
<input type="text" name="attr_con_mod_fake" value="@{con_mod}" disabled="true" class='stats-mod'>
|
||||
</div>
|
||||
<div class="stats-con-roll">
|
||||
<button type="roll" align="right" value="&{template:atributo} {{nome=@{character_name}}} {{atributo=Constituição}} {{desempenho=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{con_mod}+?{Bônus|0}]]}}"></button>
|
||||
</div>
|
||||
|
||||
<div class="stats-int">
|
||||
<label>Int</label>
|
||||
</div>
|
||||
<div class="stats-int-value">
|
||||
<input type="number" name='attr_int' value="10" class='stats-atributo'>
|
||||
</div>
|
||||
<div class="stats-int-mod">
|
||||
<input type="text" name="attr_int_mod_fake" value="@{int_mod}" disabled="true" class='stats-mod'>
|
||||
</div>
|
||||
<div class="stats-int-roll">
|
||||
<button type="roll" align="right" value="&{template:atributo} {{nome=@{character_name}}} {{atributo=Inteligência}} {{desempenho=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{int_mod}+?{Bônus|0}]]}}"></button>
|
||||
</div>
|
||||
|
||||
<div class="stats-sab">
|
||||
<label>Sab</label>
|
||||
</div>
|
||||
<div class="stats-sab-value">
|
||||
<input type="number" name='attr_sab' value="10" class='stats-atributo'>
|
||||
</div>
|
||||
<div class="stats-sab-mod">
|
||||
<input type="text" name="attr_sab_mod_fake" value="@{sab_mod}" disabled="true" class='stats-mod'>
|
||||
</div>
|
||||
<div class="stats-sab-roll">
|
||||
<button type="roll" align="right" value="&{template:atributo} {{nome=@{character_name}}} {{atributo=Sabedoria}} {{desempenho=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{sab_mod}+?{Bônus|0}]]}}"></button>
|
||||
</div>
|
||||
|
||||
<div class="stats-car">
|
||||
<label>Car</label>
|
||||
</div>
|
||||
<div class="stats-car-value">
|
||||
<input type="number" name='attr_car' value="10" class='stats-atributo'>
|
||||
</div>
|
||||
<div class="stats-car-mod">
|
||||
<input type="text" name="attr_car_mod_fake" value="@{car_mod}" disabled="true" class='stats-mod'>
|
||||
</div>
|
||||
<div class="stats-car-roll">
|
||||
<button type="roll" align="right" value="&{template:atributo} {{nome=@{character_name}}} {{atributo=Carisma}} {{desempenho=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{car_mod}+?{Bônus|0}]]}}"></button>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<a href="https://imgur.com/kTGnSqo"><img src="https://i.imgur.com/kTGnSqo.png" title="source: imgur.com" /></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="combat">
|
||||
<div class="row">
|
||||
<label style="font-size: 1.7em; text-align:center">CA</label>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px">
|
||||
<div class="col">
|
||||
<input type="number" name='attr_catotal' value="10+@{ca1}+@{ca2}+@{ca3}" disabled="true" class='sheet-short sheet-atributos' style="width: 40px; font-size:1.2em;">
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="number" name='attr_ca1' value="0" class='sheet-short' style="margin-left:10px; width: 30px;">
|
||||
</div>
|
||||
<div class="col">
|
||||
<label style="margin-top:6px">+</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="number" name='attr_ca2' value="0" class='sheet-short' style="width: 30px;">
|
||||
</div>
|
||||
<div class="col">
|
||||
<label style="margin-top:6px">+</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input type="number" name='attr_ca3' value="0" class='sheet-short' style="width: 30px;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col" style="margin-left: 42px;">
|
||||
<label>Prof</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left: 20px;">
|
||||
<label>PV</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left: 50px;">
|
||||
<label>DV</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" style="margin-left: 50px;">
|
||||
<div class="col">
|
||||
<input type="number" name='attr_prof' value="0" class='sheet-short sheet-atributos' style="width: 40px; font-size: 1.7em;">
|
||||
</div>
|
||||
<div class="col" style="margin-left: 12px;">
|
||||
<input type="number" name='attr_pv' value="0" class='sheet-short sheet-atributos' style="width: 60px; font-size: 1.7em; text-align: right;">
|
||||
</div>
|
||||
<div class="col" style="margin-left: 18px;">
|
||||
<input type="number" name='attr_dv' value="0" class='sheet-short sheet-atributos' style="width: 40px; font-size: 1.7em;">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" style="margin-top: 5px; margin-left:22px; max-width:205px;">
|
||||
<label>Jogadas de Morte</label>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<input type="checkbox" name="attr_morte_a1" title="@{morte_a1}" />
|
||||
<input type="checkbox" name="attr_morte_a2" title="@{morte_a2}" />
|
||||
<input type="checkbox" name="attr_morte_a3" title="@{morte_a3}" />
|
||||
<br>
|
||||
<input type="checkbox" name="attr_morte_b1" title="@{caminho_morte_b1}" />
|
||||
<input type="checkbox" name="attr_morte_b2" title="@{caminho_morte_b2}" />
|
||||
<input type="checkbox" name="attr_morte_b3" title="@{caminho_morte_b3}" />
|
||||
<br> <br>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<label>Consequências</label>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<textarea style="max-height:18px" name="attr_consequencias"></textarea>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<label>Exaustão</label>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<textarea style="max-height:18px" name="attr_exaustao"></textarea>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<label>Condições</label>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<textarea style="max-height:17px" name="attr_condicoes"></textarea>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<label>Habilidades de Classe</label>
|
||||
</div>
|
||||
<div class="row" style="margin-left:22px; max-width:205px;">
|
||||
<textarea style="max-height:15px" name="attr_habilidades_classe"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="backstory">
|
||||
<div class="row">
|
||||
<label>Histórico e Carta na Manga</label>
|
||||
</div>
|
||||
<div class="row">
|
||||
<textarea name="attr_historico"></textarea>
|
||||
</div>
|
||||
<div class="backstory-content">
|
||||
<div class="backstory-familia">
|
||||
<label>Família</label>
|
||||
</div>
|
||||
<div class="backstory-familia=input">
|
||||
<input type="text" name="attr_familia" />
|
||||
</div>
|
||||
|
||||
<div class="backstory-obsessao">
|
||||
<label>Obsessão</label>
|
||||
</div>
|
||||
<div class="backstory-obsessao-input">
|
||||
<input type="text" name="attr_obsessao"/>
|
||||
</div>
|
||||
|
||||
<div class="backstory-amigo">
|
||||
<label>Amigo</label>
|
||||
</div>
|
||||
<div class="col-amigo-input">
|
||||
<input type="text" name="attr_amigo" />
|
||||
</div>
|
||||
|
||||
<div class="backstory-inimigo">
|
||||
<label>Inimigo</label>
|
||||
</div>
|
||||
<div class="backstory-inimigo-input">
|
||||
<input type="text" name="attr_inimigo" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="proficiencies">
|
||||
<div class="row">
|
||||
<label>Proficiências</label>
|
||||
</div>
|
||||
<div class="row">
|
||||
<textarea name="attr_proficiencia"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="abilities">
|
||||
<div class="row">
|
||||
<label>Habilidades</label>
|
||||
</div>
|
||||
<div class="abilities-content">
|
||||
<div class="habilidade1-label">
|
||||
<label>1.</label>
|
||||
</div>
|
||||
<div class="habilidade1-value">
|
||||
<input type="text" name="attr_habilidade1" />
|
||||
</div>
|
||||
<div class="habilidade2-label">
|
||||
<label>2.</label>
|
||||
</div>
|
||||
<div class="habilidade2-value">
|
||||
<input type="text" name="attr_habilidade2" />
|
||||
</div>
|
||||
<div class="habilidade3-label">
|
||||
<label>3.</label>
|
||||
</div>
|
||||
<div class="habilidade3-value">
|
||||
<input type="text" name="attr_habilidade3"/>
|
||||
</div>
|
||||
<div class="habilidade4-label">
|
||||
<label>4.</label>
|
||||
</div>
|
||||
<div class="habilidade4-value">
|
||||
<label class="up_atributo"> +1 em
|
||||
<select name="attr_atributo_habilidade4">
|
||||
<option value="" selected=""></option>
|
||||
<option value="for">Força</option>
|
||||
<option value="des">Destreza</option>
|
||||
<option value="con">Constituição</option>
|
||||
<option value="int">Inteligência</option>
|
||||
<option value="sab">Sabedoria</option>
|
||||
<option value="car">Carisma</option>
|
||||
</select>
|
||||
</label>
|
||||
</div>
|
||||
<div class="habilidade5-label">
|
||||
<label>5.</label>
|
||||
</div>
|
||||
<div class="habilidade5-value">
|
||||
<input type="text" name="attr_habilidade5" />
|
||||
</div>
|
||||
<div class="habilidade6-label">
|
||||
<label>6.</label>
|
||||
</div>
|
||||
<div class="habilidade6-value">
|
||||
<input type="text" name="attr_habilidade6" />
|
||||
</div>
|
||||
<div class="habilidade7-label">
|
||||
<label>7.</label>
|
||||
</div>
|
||||
<div class="habilidade7-value">
|
||||
<label class="up_atributo"> +1 em
|
||||
<select name="attr_atributo_habilidade7">
|
||||
<option value="" selected=""></option>
|
||||
<option value="for">Força</option>
|
||||
<option value="des">Destreza</option>
|
||||
<option value="con">Constituição</option>
|
||||
<option value="int">Inteligência</option>
|
||||
<option value="sab">Sabedoria</option>
|
||||
<option value="car">Carisma</option>
|
||||
</select>
|
||||
</label>
|
||||
</div>
|
||||
<div class="habilidade8-label">
|
||||
<label>8.</label>
|
||||
</div>
|
||||
<div class="habilidade8-value">
|
||||
<input type="text" name="attr_habilidade8" />
|
||||
</div>
|
||||
<div class="habilidade9-label">
|
||||
<label>9.</label>
|
||||
</div>
|
||||
<div class="habilidade9-value">
|
||||
<input type="text" name="attr_habilidade9" />
|
||||
</div>
|
||||
<div class="habilidade10-label">
|
||||
<label>10.</label>
|
||||
</div>
|
||||
<div class="habilidade1--value">
|
||||
<input type="text" name="attr_habilidade10" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="weapons">
|
||||
<div class="row" style="font-size:1em">
|
||||
<div class="col" style="max-width:150px">
|
||||
<label>Nome</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left:105px">
|
||||
<label>Tipo</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left:35px">
|
||||
<label>Dano</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left:48px">
|
||||
<label>Dado</label>
|
||||
</div>
|
||||
</div>
|
||||
<fieldset class="repeating_skills">
|
||||
<div class="row">
|
||||
<div class="col" style="max-width:150px">
|
||||
<input type="text" name="attr_nome_arma" style="width:150px;" />
|
||||
</div>
|
||||
<div class="col" style="max-width:80px">
|
||||
<select name="attr_atributoataque" style="font-size:0.7em; width:80px;">
|
||||
<option value="@{for_mod}" selected="">Corporal</option>
|
||||
<option value="0">Distância</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col" style=" max-width:60px">
|
||||
<input type="text" name="attr_dano_arma" style="width: 50px;" />
|
||||
</div>
|
||||
<div class="col">
|
||||
<button type="roll" align="right" value="&{template:ataque} {{nome=@{character_name} atacou com @{nome_arma}!}} {{ataque=[[?{Situação|Normal, 1d20|Vantagem, 2d20kh1|Desvantagem, 2d20kl1}+@{atributoataque}+?{Bônus|0}]]}} {{dano=[[@{dano_arma}}]]}}"></button>
|
||||
</div>
|
||||
<div class="col" style=" max-width:50px">
|
||||
<select name="attr_dado" style="width:50px;">
|
||||
<option value="1d4" selected="">d4</option>
|
||||
<option value="1d6">d6</option>
|
||||
<option value="1d8">d8</option>
|
||||
<option value="1d10">d10</option>
|
||||
<option value="1d12">d12</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col">
|
||||
<button type="roll" align="right" value="&{template:dado-uso} {{nome=@{character_name} rolou o dado de uso de @{nome_arma}!}} {{ataque=[[@{dado}}]]}}"></button>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="abaverso">
|
||||
<div class="dados-verso">
|
||||
<div class="rewards">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<label>Nível
|
||||
<input type="number" name="attr_nivel" style="width: 3.5em !important">
|
||||
</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<label>XP
|
||||
<input type="number" name="attr_xp">
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<label>PC
|
||||
<input type="number" name="attr_pc">
|
||||
</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<label>PP
|
||||
<input type="number" name="attr_pp">
|
||||
</label>
|
||||
</div>
|
||||
<div class="col">
|
||||
<label>PO
|
||||
<input type="number" name="attr_po">
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="equipaments">
|
||||
<label>Equipamentos</label>
|
||||
<div class="row" style="font-size:1em">
|
||||
<div class="col" style="max-width:150px">
|
||||
<label>Item</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left:105px">
|
||||
<label>Propriedades</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left:50px">
|
||||
<label>Carga</label>
|
||||
</div>
|
||||
<div class="col" style="margin-left:5px">
|
||||
<label>Dado</label>
|
||||
</div>
|
||||
</div>
|
||||
<fieldset class="repeating_skills">
|
||||
<div class="row">
|
||||
<div class="col" style="max-width:150px">
|
||||
<input type="text" name="attr_item" style="width:150px;" />
|
||||
</div>
|
||||
<div class="col" style="max-width:150px">
|
||||
<input type="text" name="attr_propriedades" style="width:150px;" />
|
||||
</div>
|
||||
<div class="col" style=" max-width:60px">
|
||||
<input type="number" name="attr_carga" style="width: 53px;" />
|
||||
</div>
|
||||
<div class="col" style=" max-width:50px">
|
||||
<select name="attr_item_dado" style="width:50px;">
|
||||
<option value="1d4" selected="">d4</option>
|
||||
<option value="1d6">d6</option>
|
||||
<option value="1d8">d8</option>
|
||||
<option value="1d10">d10</option>
|
||||
<option value="1d12">d12</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col">
|
||||
<button type="roll" align="right" value="&{template:dado-uso} {{nome=@{character_name} rolou o dado de uso de @{nome_arma}!}} {{ataque=[[@{dado}}]]}}"></button>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="notes">
|
||||
<label>Anotações</label>
|
||||
<div class="row">
|
||||
<textarea style="max-height:100%; height:100%" name="attr_notes"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-atributo">
|
||||
<div class="sheet-rollbox-container">
|
||||
<div class="header">
|
||||
<span class="left">Teste de {{atributo}}</span>
|
||||
</div>
|
||||
<br>
|
||||
<div class="rollbox">
|
||||
<div>
|
||||
<div class="roll">
|
||||
{{nome}} rolou
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="rollbox-desempenho">
|
||||
<div>
|
||||
<div class="roll">
|
||||
{{desempenho}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-ataque">
|
||||
<div class="sheet-rollbox-container">
|
||||
<div class="header">
|
||||
<span class="left">{{nome}}</span>
|
||||
</div>
|
||||
<br>
|
||||
<div class="rollbox">
|
||||
<div>
|
||||
<div class="roll">
|
||||
{{ataque}}
|
||||
</div>
|
||||
<div class="roll-label">
|
||||
Ataque
|
||||
</div>
|
||||
</div>
|
||||
<div class="divisor"><span></span></div>
|
||||
<div>
|
||||
<div class="roll">
|
||||
{{dano}}
|
||||
</div>
|
||||
<div class="roll-label">
|
||||
Dano
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
|
||||
<rolltemplate class="sheet-rolltemplate-dado-uso">
|
||||
<div class="sheet-rollbox-container">
|
||||
<div class="header">
|
||||
<span class="left">{{nome}}</span>
|
||||
</div>
|
||||
<br>
|
||||
<div class="rollbox">
|
||||
<div>
|
||||
<div class="roll">
|
||||
{{ataque}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
</div>
|
||||
|
||||
<script type="text/worker">
|
||||
var calc_mod = function (valor){
|
||||
if(isNaN(valor)){
|
||||
return 0;
|
||||
}
|
||||
return Math.floor((valor - 10) / 2);
|
||||
};
|
||||
|
||||
['for', 'des', 'con', 'int', 'sab', 'car'].forEach(stat => {
|
||||
on(`sheet:opened change:${stat}`, function(){
|
||||
getAttrs([stat], function(v){
|
||||
let mod = calc_mod(v[stat] ||10);
|
||||
setAttrs({
|
||||
[`${stat}_mod`]: mod
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
/*Controle de abas*/
|
||||
const outerTabsButtons = ["abafrente", "abaverso"];
|
||||
outerTabsButtons.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
typetoggle: button
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
After Width: | Height: | Size: 166 KiB |
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "arcanas.html",
|
||||
"css": "arcanas.css",
|
||||
"authors": "David Dornelles, Cleison Ferreira e Julia Yamamoto",
|
||||
"roll20userid": "2623485",
|
||||
"preview": "arcanas.png",
|
||||
"instructions": ""
|
||||
}
|
||||
@@ -0,0 +1,842 @@
|
||||
@font-face {
|
||||
font-family: 'Kalam';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: local('Kalam'), local('Kalam-Regular'), url(https://fonts.gstatic.com/s/kalam/v11/YA9dr0Wd4kDdMthfOCfzsw.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Piazzolla';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/piazzolla/v2/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7I_wUL13gA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
body {
|
||||
}
|
||||
|
||||
input {
|
||||
font-family: 'Kalam', cursive;
|
||||
font-size: 18px;
|
||||
padding: 0px 5px;
|
||||
color: #307187;
|
||||
background-color: rgba(255, 255, 255, .5);
|
||||
border-color: #a69c73;
|
||||
}
|
||||
|
||||
textarea {
|
||||
font-family: 'Kalam', cursive;
|
||||
font-size: 18px;
|
||||
color: #307187;
|
||||
background-color: rgba(255, 255, 255, .5);
|
||||
border-color: #a69c73;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
select {
|
||||
background-color: rgba(255, 255, 255, .5);
|
||||
border-color: #a69c73;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
button {
|
||||
position: relative;
|
||||
background-color: rgba(255, 255, 255, .5) !important;
|
||||
background-image: none !important;
|
||||
border: 1px solid #a69c73 !important;
|
||||
border-radius: 0px !important;
|
||||
padding: 5px 5px !important;
|
||||
}
|
||||
|
||||
.sheet-btn-min {
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
top: -2px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.sheet-hr_opt {
|
||||
margin-top: 5px;
|
||||
margin-bottom: 10px;
|
||||
border-top-color: #a69c73;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
.sheet-tabstoggle[value="1"] ~ div.sheet-options {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.sheet-tabstoggle[value="1"] ~ button.sheet-l_options {
|
||||
background: rgba(0, 0, 0, 0) url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Aria/images/close.png) no-repeat center center !important;
|
||||
background-size: 100% 100% !important;
|
||||
}
|
||||
|
||||
.sheet-co-comp1-hi[value="1"] ~ div.sheet-co-comp1-div {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.sheet-co-comp2-hi[value="1"] ~ div.sheet-co-comp2-div {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.sheet-co-comp3-hi[value="1"] ~ div.sheet-co-comp3-div {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.sheet-co-comp1-div {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
bottom: 0px;
|
||||
display: none;
|
||||
text-align: center;
|
||||
color: #ffffff;
|
||||
z-index: 500;
|
||||
width: calc(100% - 10px);
|
||||
height: calc(100% - 10px);
|
||||
padding: 5px;
|
||||
background: rgba(0, 0, 0, 0.80);
|
||||
}
|
||||
|
||||
.sheet-co-comp2-div {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
bottom: 0px;
|
||||
display: none;
|
||||
text-align: center;
|
||||
color: #ffffff;
|
||||
z-index: 500;
|
||||
width: calc(100% - 10px);
|
||||
height: calc(100% - 10px);
|
||||
padding: 5px;
|
||||
background: rgba(0, 0, 0, 0.80);
|
||||
}
|
||||
|
||||
.sheet-co-comp3-div {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
bottom: 0px;
|
||||
display: none;
|
||||
text-align: center;
|
||||
color: #ffffff;
|
||||
z-index: 500;
|
||||
width: calc(100% - 10px);
|
||||
height: calc(100% - 10px);
|
||||
padding: 5px;
|
||||
background: rgba(0, 0, 0, 0.80);
|
||||
}
|
||||
|
||||
.sheet-l_options {
|
||||
position: absolute;
|
||||
background: rgba(0, 0, 0, 0) url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Aria/images/options.png) no-repeat center center !important;
|
||||
background-size: 100% 100% !important;
|
||||
z-index: 100;
|
||||
top: 2px;
|
||||
right: 1px;
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
border: none !important;
|
||||
filter: brightness(0.8);
|
||||
}
|
||||
|
||||
.sheet-l_options:hover {
|
||||
filter: brightness(0.4);
|
||||
}
|
||||
|
||||
.sheet-options {
|
||||
position: relative;
|
||||
display: none;
|
||||
z-index: 50;
|
||||
width: calc(100% - 10px);
|
||||
height: auto;
|
||||
padding: 5px;
|
||||
background: rgba(245, 245, 245, 1);
|
||||
border: 1px solid #201f22;
|
||||
}
|
||||
|
||||
.sheet-fiche {
|
||||
height: 1380px;
|
||||
position: absolute;
|
||||
display: block;
|
||||
width: 100%;
|
||||
background: #fcf8f2 url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Aria/images/background.jpg) no-repeat center center;
|
||||
background-size: 100% 100%;
|
||||
border: 1px solid #a69c73;
|
||||
}
|
||||
|
||||
.sheet-body {
|
||||
position: relative;
|
||||
font-family: 'Piazzolla', serif;
|
||||
max-width: 1250px;
|
||||
min-width: 675px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
bottom: 0px;
|
||||
left: 0px;
|
||||
right: 0px;
|
||||
color: #201f22;
|
||||
}
|
||||
|
||||
.sheet-titre {
|
||||
text-transform: uppercase;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.sheet-av-texte {
|
||||
float: left;
|
||||
width: 25%;
|
||||
line-height: 25px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.sheet-av-input-texte {
|
||||
float: left;
|
||||
width: 75%;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.sheet-ca-button {
|
||||
float: left;
|
||||
width: 32px;
|
||||
height: 29px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.sheet-ca-texte {
|
||||
float: left;
|
||||
width: 33%;
|
||||
line-height: 25px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.sheet-ca-input-texte {
|
||||
float: left;
|
||||
width: 50px;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-vi-button {
|
||||
position: relative;
|
||||
top: 30px;
|
||||
width: 30px;
|
||||
height: 29px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.sheet-vi-input-texte {
|
||||
position: relative;
|
||||
width: calc(100% - 110px);
|
||||
top: 0px;
|
||||
left: 32px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.sheet-vi-input-texte-degats {
|
||||
position: absolute;
|
||||
float: right;
|
||||
width: 75px;
|
||||
height: 75px !important;
|
||||
top: 0px;
|
||||
right: 0px;
|
||||
border-radius: 37px;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
font-size: 20px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.sheet-vi-texte1 {
|
||||
position: absolute;
|
||||
float: left;
|
||||
overflow: hidden;
|
||||
top: 58px;
|
||||
left: 30px;
|
||||
}
|
||||
|
||||
.sheet-vi-texte2 {
|
||||
position: absolute;
|
||||
float: left;
|
||||
overflow: hidden;
|
||||
top: 58px;
|
||||
left: calc(100% - 106px);
|
||||
}
|
||||
|
||||
.sheet-sa-input-texte {
|
||||
width: 75px;
|
||||
height: 75px !important;
|
||||
border-radius: 37px;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
font-size: 25px;
|
||||
}
|
||||
|
||||
.sheet-sa-texte {
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-rp-texte {
|
||||
line-height: 12px;
|
||||
}
|
||||
|
||||
.sheet-rp-input-texte {
|
||||
position: relative;
|
||||
height: 50px;
|
||||
font-size: 15px;
|
||||
top: 5px;
|
||||
}
|
||||
|
||||
.sheet-comp {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 1px;
|
||||
margin-top: 28px;
|
||||
}
|
||||
|
||||
.sheet-co-button {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
width: 30px;
|
||||
height: 29px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.sheet-co-nom {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 32px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.sheet-co-lien {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: 70px;
|
||||
width: 80px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-co-score {
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
right: 0px;
|
||||
width: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-co-input-texte {
|
||||
width: 50px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-comp-sp {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 1px;
|
||||
margin-top: 28px;
|
||||
}
|
||||
|
||||
.sheet-co-sp-button {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
width: 30px;
|
||||
height: 29px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.sheet-co-sp-nom {
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
left: 32px;
|
||||
width: calc(100% - 212px);
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.sheet-co-sp-lien {
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
right: 70px;
|
||||
width: 105px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-co-sp-score {
|
||||
position: absolute;
|
||||
top: -5px;
|
||||
right: 0px;
|
||||
width: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-co-sp-input-nom {
|
||||
width: 100%;
|
||||
font-size: 15px;
|
||||
padding: 2px 2px;
|
||||
}
|
||||
|
||||
.sheet-co-sp-input-lien {
|
||||
width: 40px;
|
||||
text-align: center;
|
||||
font-size: 15px;
|
||||
padding: 2px 2px;
|
||||
}
|
||||
|
||||
.sheet-co-sp-input-score {
|
||||
width: 50px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-po-texte {
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.sheet-po-input-texte {
|
||||
position: relative;
|
||||
height: 150px;
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.sheet-po-input-notes {
|
||||
background: rgba(255, 255, 255, .5) url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Aria/images/logo_250.png) no-repeat center center;
|
||||
}
|
||||
|
||||
.sheet-bo-texte {
|
||||
float: left;
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
.sheet-bo-input-texte {
|
||||
float: left;
|
||||
width: calc(25% - 5px);
|
||||
margin-right: 5px;
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
|
||||
/*------------- AVENTURIER -------------*/
|
||||
|
||||
.sheet-block-av-ca {
|
||||
position: relative;
|
||||
top: 20px;
|
||||
left: 10px;
|
||||
width: calc(50% - 70px);
|
||||
}
|
||||
|
||||
.sheet-t-aventurier {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-av-nom {
|
||||
position: absolute;
|
||||
top: 35px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-av-profession {
|
||||
position: absolute;
|
||||
top: 65px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-av-age {
|
||||
position: absolute;
|
||||
top: 95px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
||||
/*---------- CARACTERISTIQUES ----------*/
|
||||
|
||||
.sheet-t-carac {
|
||||
position: absolute;
|
||||
top: 125px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-ca-force {
|
||||
position: absolute;
|
||||
top: 160px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-ca-dexterite {
|
||||
position: absolute;
|
||||
top: 190px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-ca-endurance {
|
||||
position: absolute;
|
||||
top: 220px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-ca-intelligence {
|
||||
position: absolute;
|
||||
top: 250px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-ca-charisme {
|
||||
position: absolute;
|
||||
top: 280px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
||||
/*--------- VIVRE OU SURVIVRE ---------*/
|
||||
|
||||
.sheet-block-vi {
|
||||
position: relative;
|
||||
top: 20px;
|
||||
left: calc(50% - 40px);
|
||||
width: calc(50% - 70px);
|
||||
}
|
||||
|
||||
.sheet-t-vivre {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-vi-arme1 {
|
||||
position: absolute;
|
||||
top: 35px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-vi-arme2 {
|
||||
position: absolute;
|
||||
top: 135px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-vi-arme3 {
|
||||
position: absolute;
|
||||
top: 235px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
||||
/*--------------- SANTE ---------------*/
|
||||
|
||||
.sheet-block-sa {
|
||||
position: relative;
|
||||
top: 20px;
|
||||
left: calc(100% - 100px);
|
||||
width: 100px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-sa-vie {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-sa-blessures {
|
||||
position: absolute;
|
||||
top: 110px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-sa-protection {
|
||||
position: absolute;
|
||||
top: 220px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-sa-hr1 {
|
||||
position: relative;
|
||||
top: 350px;
|
||||
}
|
||||
|
||||
|
||||
/*----------------- RP -----------------*/
|
||||
|
||||
.sheet-block-rp {
|
||||
position: relative;
|
||||
top: 360px;
|
||||
left: 10px;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
.sheet-rp-genial {
|
||||
float: left;
|
||||
width: calc(50% - 18px);
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.sheet-rp-problemes {
|
||||
float: left;
|
||||
width: calc(50% - 18px);
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-hr1 {
|
||||
position: relative;
|
||||
border-top-color: #a69c73;
|
||||
top: 380px;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
|
||||
/*----------- COMPETENCES -----------*/
|
||||
|
||||
.sheet-block-co-titre {
|
||||
position: relative;
|
||||
top: 380px;
|
||||
left: 10px;
|
||||
width: calc(50% - 20px);
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.sheet-co-titre1 {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.sheet-co-titre2 {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: 70px;
|
||||
width: 80px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-co-titre3 {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: 0px;
|
||||
width: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-block-co {
|
||||
position: relative;
|
||||
top: 400px;
|
||||
left: 10px;
|
||||
width: calc(50% - 20px);
|
||||
}
|
||||
|
||||
.sheet-block-co-separateur {
|
||||
position: absolute;
|
||||
top: -20px;
|
||||
left: -13px;
|
||||
width: 1px;
|
||||
height: 600px;
|
||||
background: #a69c73;
|
||||
}
|
||||
|
||||
.sheet-block-co-sp-titre {
|
||||
position: relative;
|
||||
top: -180px;
|
||||
left: calc(50% + 10px);
|
||||
width: calc(50% - 20px);
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.sheet-co-sp-titre1 {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.sheet-co-sp-titre2 {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: 70px;
|
||||
width: 105px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-co-sp-titre3 {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: 0px;
|
||||
width: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-block-co-sp {
|
||||
position: relative;
|
||||
top: -180px;
|
||||
left: calc(50% + 10px);
|
||||
width: calc(50% - 20px);
|
||||
}
|
||||
|
||||
.sheet-hr2 {
|
||||
position: relative;
|
||||
border-top-color: #a69c73;
|
||||
top: -150px;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
|
||||
/*---------- POSSESSION/NOTES ----------*/
|
||||
|
||||
.sheet-block-po {
|
||||
position: relative;
|
||||
top: -150px;
|
||||
left: 10px;
|
||||
width: calc(100% - 20px);
|
||||
}
|
||||
|
||||
.sheet-po-possessions {
|
||||
float: left;
|
||||
width: calc(50% - 18px);
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
.sheet-po-notes {
|
||||
float: left;
|
||||
width: calc(50% - 18px);
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.sheet-block-bo {
|
||||
position: relative;
|
||||
width: calc(100% + 15px);
|
||||
height: 50px;
|
||||
top: -10px;
|
||||
}
|
||||
|
||||
.sheet-block-bo-texte {
|
||||
}
|
||||
|
||||
.sheet-block-bo-input-texte {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/*---------- OPTIONS ----------*/
|
||||
.sheet-opt-titre {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
text-transform: uppercase;
|
||||
font-size: 18px;
|
||||
left: 30px;
|
||||
}
|
||||
|
||||
.sheet-opt-content {
|
||||
position: absolute;
|
||||
width: calc(100% - 10px);
|
||||
left: 5px;
|
||||
top: 30px;
|
||||
}
|
||||
|
||||
.sheet-opt-ligne {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-opt-nom {
|
||||
float: left;
|
||||
width: 100%;
|
||||
line-height: 25px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ===================================================== */
|
||||
/* ===================== TEMPLATES ===================== */
|
||||
/* ===================================================== */
|
||||
|
||||
.sheet-rolltemplate-aria1 {
|
||||
border-color: #a69c73;
|
||||
border-style: solid;
|
||||
border-width: 2px;
|
||||
background: #fcf8f2;
|
||||
padding: 5px 5px;
|
||||
padding-bottom: 1px;
|
||||
font-family: 'Piazzolla', serif;
|
||||
font-size: 10pt;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 h1,
|
||||
.sheet-rolltemplate-aria1 h2 {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 h1 {
|
||||
font-size: 16pt;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 h2 {
|
||||
border-bottom: 2px solid rgba(85, 78, 48, 0.20);
|
||||
margin-bottom: 10px;
|
||||
color: rgba(85, 78, 48, 1);
|
||||
font-size: 12pt;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body {
|
||||
margin-left: 1px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll {
|
||||
margin-top: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-footer {
|
||||
width: 100%;
|
||||
height: 10px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-buttons {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-buttons a {
|
||||
background: rgba(85, 78, 48, 1);
|
||||
padding: 5px;
|
||||
color: white;
|
||||
display: inline-block;
|
||||
border: 1px solid white;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-buttons .sheet-aria1-buttontext {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body .importantroll,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body .fullcrit,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body .fullfail,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body .inlinerollresult,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll .importantroll,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll .fullcrit,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll .fullfail,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll .inlinerollresult {
|
||||
border: none;
|
||||
background: transparent;
|
||||
font-family: inherit;
|
||||
font-size: 18pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body .fullfail,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll .fullfail {
|
||||
color: rgba(160, 50, 50, 1);
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-body .fullcrit,
|
||||
.sheet-rolltemplate-aria1 .sheet-aria1-roll .fullcrit {
|
||||
color: rgba(50, 120, 50, 1);
|
||||
}
|
||||
@@ -0,0 +1,996 @@
|
||||
<input type="hidden" name="attr_version" value="">
|
||||
<input type="hidden" name="attr_life" value="">
|
||||
<input type="hidden" name="attr_life_max" value="">
|
||||
<input type="hidden" name="attr_totalrois" value="fiche">
|
||||
<input type="hidden" name="attr_nameinrolls" value="1">
|
||||
<div class="body">
|
||||
|
||||
<input type="hidden" class="tabstoggle" name="attr_optiontab" value="0">
|
||||
<button type="action" class="l_options btn-min" name="act_options" title="Afficher/Cacher les options"></button>
|
||||
<div class="options">
|
||||
<h1>Options</h1>
|
||||
<hr class="hr_opt">
|
||||
<h3>Affichage des jets</h3> Chuchoter les jets au MJ :
|
||||
<select class="opt-field" name="attr_privaterolls">
|
||||
<option value="/w gm ">Oui (Toujours)</option>
|
||||
<option value=" ">Non (Jamais)</option>
|
||||
<option value="?{Chuchoter au MJ ?|Oui,/w gm |Non,}">Demander (Oui par défault)</option>
|
||||
<option value="?{Chuchoter au MJ ?|Non,|Oui,/w gm }">Demander (Non par défault)</option>
|
||||
</select>
|
||||
<br> Afficher le nom du personnage lors des jets :
|
||||
<select class="opt-field" name="attr_namerolls">
|
||||
<option value="1">Oui (Toujours)</option>
|
||||
<option value="0">Non (Jamais)</option>
|
||||
<option value="3">Demander (Oui par défault)</option>
|
||||
<option value="2">Demander (Non par défault)</option>
|
||||
</select>
|
||||
<hr class="hr_opt">
|
||||
<h3>Calculs des compétences</h3>
|
||||
<br>
|
||||
<p style="position: relative; font-size: 10px; top: -30px; margin-bottom: -20px;"><b style="color: #cc0000;">/!\ Vos compétences seront réinitialisées pour être recalculées.</b></p>
|
||||
Méthode 1 : Calculs prêts à jouer :
|
||||
<button type="action" class="l_co-comp1-bu" name="act_co-comp1-bu" title="( ( Lien1 + Lien2 ) / 2 ) x 5">Calculer</button>
|
||||
<br>
|
||||
<input type="hidden" class="co-comp1-hi" name="attr_co_comp1" value="0">
|
||||
<div class="co-comp1-div">
|
||||
<p style="margin-top: 50px"><b>ATTENTION</b></p>
|
||||
<p>Vos compétences seront réinitialisées pour être recalculées.</p>
|
||||
<button type="action" class="l_calcul-comp1" name="act_calcul-comp1">Confirmer</button>
|
||||
<button type="action" class="l_noconf1" name="act_noconf1">Annuler</button>
|
||||
</div>
|
||||
Méthode 2 : Calculs pour personnalisation de personnage :
|
||||
<button type="action" class="l_co-comp2-bu" name="act_co-comp2-bu" title="( Lien1 + Lien2 ) x 2">Calculer</button>
|
||||
<br>
|
||||
<input type="hidden" class="co-comp2-hi" name="attr_co_comp2" value="0">
|
||||
<p style="position: relative; font-size: 10px; top: -10px;">Il vous restera alors 50 points à répartir</p>
|
||||
<div class="co-comp2-div">
|
||||
<p style="margin-top: 50px"><b>ATTENTION</b></p>
|
||||
<p>Vos compétences seront réinitialisées pour être recalculées.</p>
|
||||
<button type="action" class="l_calcul-comp2" name="act_calcul-comp2">Confirmer</button>
|
||||
<button type="action" class="l_noconf2" name="act_noconf2">Annuler</button>
|
||||
</div>
|
||||
<hr class="hr_opt">
|
||||
</div>
|
||||
<div class="fiche">
|
||||
<div class="block-av-ca">
|
||||
<!------------- AVENTURIER -------------->
|
||||
<div class="titre t-aventurier">Aventurier</div>
|
||||
<div class="av-nom">
|
||||
<div class="av-texte">Nom :</div>
|
||||
<input class="av-input-texte" name="attr_character_name" type="text" placeholder="" title="@{character_name}"> </div>
|
||||
<div class="av-profession">
|
||||
<div class="av-texte"> </div>
|
||||
<input class="av-input-texte" name="attr_profession" type="text" placeholder="Profession" title="@{profession}"> </div>
|
||||
<div class="av-age">
|
||||
<div class="av-texte">Âge :</div>
|
||||
<input class="av-input-texte" style="width: 50px; text-align: center;" name="attr_age" type="text" placeholder="" title="@{age}"> </div>
|
||||
<!---------- CARACTERISTIQUES ----------->
|
||||
<div class="titre t-carac">Caractéristiques</div>
|
||||
<div class="ca-force">
|
||||
<div class="ca-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Force}} {{character_name=@{nameinrolls}}} {{body=Force : @{force}}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="ca-texte">Force :</div>
|
||||
<input class="ca-input-texte" name="attr_force" type="text" placeholder="" title="@{force}"> </div>
|
||||
<div class="ca-dexterite">
|
||||
<div class="ca-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Dextérité}} {{character_name=@{nameinrolls}}} {{body=Dextérité : @{dexterite}}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="ca-texte">Dextérité :</div>
|
||||
<input class="ca-input-texte" name="attr_dexterite" type="text" placeholder="" title="@{dexterite}"> </div>
|
||||
<div class="ca-endurance">
|
||||
<div class="ca-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Endurance}} {{character_name=@{nameinrolls}}} {{body=Endurance : @{endurance}}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="ca-texte">Endurance :</div>
|
||||
<input class="ca-input-texte" name="attr_endurance" type="text" placeholder="" title="@{endurance}"> </div>
|
||||
<div class="ca-intelligence">
|
||||
<div class="ca-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Intelligence}} {{character_name=@{nameinrolls}}} {{body=Intelligence : @{intelligence}}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="ca-texte">Intelligence :</div>
|
||||
<input class="ca-input-texte" name="attr_intelligence" type="text" placeholder="" title="@{intelligence}"> </div>
|
||||
<div class="ca-charisme">
|
||||
<div class="ca-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Charisme}} {{character_name=@{nameinrolls}}} {{body=Charisme: @{charisme}}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="ca-texte">Charisme :</div>
|
||||
<input class="ca-input-texte" name="attr_charisme" type="text" placeholder="" title="@{charisme}"> </div>
|
||||
</div>
|
||||
<!--------- VIVRE OU SURVIVRE ---------->
|
||||
<div class="block-vi">
|
||||
<div class="titre t-vivre">Vivre ou survivre</div>
|
||||
<div class="vi-arme1">
|
||||
<div class="vi-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Attaque}} {{character_name=@{nameinrolls}}} {{body=@{arme1} (@{degats1})}} {{roll=[[@{degats1}cf<0cs<0]]}}"></button>
|
||||
</div>
|
||||
<input class="vi-input-texte" name="attr_arme1" type="text" placeholder="" title="@{arme1}">
|
||||
<input class="vi-input-texte-degats" name="attr_degats1" type="text" placeholder="" title="@{degats1}">
|
||||
<div class="vi-texte1">Arme</div>
|
||||
<div class="vi-texte2">Dégâts</div>
|
||||
</div>
|
||||
<div class="vi-arme2">
|
||||
<div class="vi-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Attaque}} {{character_name=@{nameinrolls}}} {{body=@{arme2} (@{degats2})}} {{roll=[[@{degats2}cf<0cs<0]]}}"></button>
|
||||
</div>
|
||||
<input class="vi-input-texte" name="attr_arme2" type="text" placeholder="" title="@{arme2}">
|
||||
<input class="vi-input-texte-degats" name="attr_degats2" type="text" placeholder="" title="@{degats2}">
|
||||
<div class="vi-texte1">Arme</div>
|
||||
<div class="vi-texte2">Dégâts</div>
|
||||
</div>
|
||||
<div class="vi-arme3">
|
||||
<div class="vi-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Attaque}} {{character_name=@{nameinrolls}}} {{body=@{arme3} (@{degats3})}} {{roll=[[@{degats3}cf<0cs<0]]}}"></button>
|
||||
</div>
|
||||
<input class="vi-input-texte" name="attr_arme3" type="text" placeholder="" title="@{arme3}">
|
||||
<input class="vi-input-texte-degats" name="attr_degats3" type="text" placeholder="" title="@{degats3}">
|
||||
<div class="vi-texte1">Arme</div>
|
||||
<div class="vi-texte2">Dégâts</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--------------- SANTE ---------------->
|
||||
<div class="block-sa">
|
||||
<div class="sa-vie">
|
||||
<input class="sa-input-texte" name="attr_vie" type="text" value="0" placeholder="" title="@{vie} (ou @{life_max})">
|
||||
<div class="sa-texte">Points de vie</div>
|
||||
</div>
|
||||
<div class="sa-blessures">
|
||||
<input class="sa-input-texte" name="attr_blessures" type="text" value="0" placeholder="" title="@{blessures}">
|
||||
<div class="sa-texte">Blessures</div>
|
||||
</div>
|
||||
<div class="sa-protection">
|
||||
<input class="sa-input-texte" name="attr_protection" type="text" value="0" placeholder="" title="@{protection}">
|
||||
<div class="sa-texte">Protection</div>
|
||||
</div>
|
||||
</div>
|
||||
<!----------------- RP ------------------>
|
||||
<div class="block-rp">
|
||||
<div class="rp-genial">
|
||||
<div class="rp-texte">JE SUIS GÉNIAL·E
|
||||
<br>parce que...</div>
|
||||
<textarea class="rp-input-texte" name="attr_genial" title="@{genial}"></textarea>
|
||||
</div>
|
||||
<div class="rp-problemes">
|
||||
<div class="rp-texte">Mais LA SOCIÉTÉ A DES PROBLÈMES
|
||||
<br>avec moi parce que...</div>
|
||||
<textarea class="rp-input-texte" name="attr_problemes" title="@{problemes}"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<hr class="hr1">
|
||||
<!----------- COMPETENCES ------------>
|
||||
<div class="block-co-titre">
|
||||
<div class="co-titre1">Compétences</div>
|
||||
<div class="co-titre2">Lien</div>
|
||||
<div class="co-titre3">Score</div>
|
||||
</div>
|
||||
<div class="block-co">
|
||||
<div class="comp co-artisanat">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Artisanat, construire}} {{character_name=@{nameinrolls}}} {{body=Artisanat, construire : @{artisanat}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Artisanat, construire</div>
|
||||
<div class="co-lien">DEX/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_artisanat" type="text" placeholder="" title="@{artisanat}">%</div>
|
||||
</div>
|
||||
<div class="comp co-combatrapp">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Combat rapproché}} {{character_name=@{nameinrolls}}} {{body=Combat rapproché : @{combatrapp}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Combat rapproché</div>
|
||||
<div class="co-lien">FOR/DEX</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_combatrapp" type="text" placeholder="" title="@{combatrapp}">%</div>
|
||||
</div>
|
||||
<div class="comp co-combatdist">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Combat à distance}} {{character_name=@{nameinrolls}}} {{body=Combat à distance : @{combatdist}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Combat à distance</div>
|
||||
<div class="co-lien">DEX/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_combatdist" type="text" placeholder="" title="@{combatdist}">%</div>
|
||||
</div>
|
||||
<div class="comp co-connnature">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Connaissance de la nature}} {{character_name=@{nameinrolls}}} {{body=Connaissance de la nature : @{connnature}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Connaissance de la nature</div>
|
||||
<div class="co-lien">DEX/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_connnature" type="text" placeholder="" title="@{connnature}">%</div>
|
||||
</div>
|
||||
<div class="comp co-connsecret">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Connaissance des secrets}} {{character_name=@{nameinrolls}}} {{body=Connaissance des secrets : @{connsecret}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Connaissance des secrets</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_connsecret" type="text" placeholder="" title="@{connsecret}">%</div>
|
||||
</div>
|
||||
<div class="comp co-courir">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Courir, sauter}} {{character_name=@{nameinrolls}}} {{body=Courir, sauter : @{courir}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Courir, sauter</div>
|
||||
<div class="co-lien">DEX/END</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_courir" type="text" placeholder="" title="@{courir}">%</div>
|
||||
</div>
|
||||
<div class="comp co-discretion">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Discrétion}} {{character_name=@{nameinrolls}}} {{body=Discrétion : @{discretion}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Discrétion</div>
|
||||
<div class="co-lien">DEX/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_discretion" type="text" placeholder="" title="@{discretion}">%</div>
|
||||
</div>
|
||||
<div class="comp co-droit">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Droit}} {{character_name=@{nameinrolls}}} {{body=Droit : @{droit}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Droit</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_droit" type="text" placeholder="" title="@{droit}">%</div>
|
||||
</div>
|
||||
<div class="comp co-esquiver">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Esquiver}} {{character_name=@{nameinrolls}}} {{body=Esquiver : @{esquiver}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Esquiver</div>
|
||||
<div class="co-lien">DEX/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_esquiver" type="text" placeholder="" title="@{esquiver}">%</div>
|
||||
</div>
|
||||
<div class="comp co-intimiter">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Intimider}} {{character_name=@{nameinrolls}}} {{body=Intimider : @{intimider}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Intimider</div>
|
||||
<div class="co-lien">FOR/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_intimider" type="text" placeholder="" title="@{intimider}">%</div>
|
||||
</div>
|
||||
<div class="comp co-lire">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Lire, écrire}} {{character_name=@{nameinrolls}}} {{body=Lire, écrire : @{lire}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Lire, écrire</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_lire" type="text" placeholder="" title="@{lire}">%</div>
|
||||
</div>
|
||||
<div class="comp co-mentir">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Mentir, convaincre}} {{character_name=@{nameinrolls}}} {{body=Mentir, convaincre : @{mentir}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Mentir, convaincre</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_mentir" type="text" placeholder="" title="@{mentir}">%</div>
|
||||
</div>
|
||||
<div class="comp co-perception">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Perception}} {{character_name=@{nameinrolls}}} {{body=Perception : @{perception}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Perception</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_perception" type="text" placeholder="" title="@{perception}">%</div>
|
||||
</div>
|
||||
<div class="comp co-piloter">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Piloter}} {{character_name=@{nameinrolls}}} {{body=Piloter : @{piloter}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Piloter</div>
|
||||
<div class="co-lien">DEX/END</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_piloter" type="text" placeholder="" title="@{piloter}">%</div>
|
||||
</div>
|
||||
<div class="comp co-psychologie">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Psychologie}} {{character_name=@{nameinrolls}}} {{body=Psychologie : @{psychologie}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Psychologie</div>
|
||||
<div class="co-lien">END/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_psychologie" type="text" placeholder="" title="@{psychologie}">%</div>
|
||||
</div>
|
||||
<div class="comp co-reflexes">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Réflexes}} {{character_name=@{nameinrolls}}} {{body=Réflexes : @{reflexes}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Réflexes</div>
|
||||
<div class="co-lien">DEX/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_reflexes" type="text" placeholder="" title="@{reflexes}">%</div>
|
||||
</div>
|
||||
<div class="comp co-serrures">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Serrures et pièges}} {{character_name=@{nameinrolls}}} {{body=Serrures et pièges : @{serrures}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Serrures et pièges</div>
|
||||
<div class="co-lien">DEX/END</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_serrures" type="text" placeholder="" title="@{serrures}">%</div>
|
||||
</div>
|
||||
<div class="comp co-soigner">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Soigner}} {{character_name=@{nameinrolls}}} {{body=Soigner : @{soigner}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Soigner</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_soigner" type="text" placeholder="" title="@{soigner}">%</div>
|
||||
</div>
|
||||
<div class="comp co-survie">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Survie}} {{character_name=@{nameinrolls}}} {{body=Survie : @{survie}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Survie</div>
|
||||
<div class="co-lien">END/INT</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_survie" type="text" placeholder="" title="@{survie}">%</div>
|
||||
</div>
|
||||
<div class="comp co-voler">
|
||||
<div class="co-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=Voler}} {{character_name=@{nameinrolls}}} {{body=Voler : @{voler}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-nom">Voler</div>
|
||||
<div class="co-lien">INT/CHA</div>
|
||||
<div class="co-score">
|
||||
<input class="co-input-texte" name="attr_voler" type="text" placeholder="" title="@{voler}">%</div>
|
||||
</div>
|
||||
</div>
|
||||
<!------ COMPETENCES SPECIALES ------->
|
||||
<div class="block-co-sp-titre">
|
||||
<div class="co-sp-titre1">Compétences spéciales</div>
|
||||
<div class="co-sp-titre2">Lien</div>
|
||||
<div class="co-sp-titre3">Score</div>
|
||||
</div>
|
||||
<div class="block-co-sp">
|
||||
<div class="block-co-separateur"> </div>
|
||||
<div class="comp-sp co-sp1">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp1-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp1-nom} : @{cosp1-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp1-nom" type="text" placeholder="" title="@{cosp1-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp1-lien1" type="text" placeholder="" title="@{cosp1-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp1-lien2" type="text" placeholder="" title="@{cosp1-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp1-score" type="text" placeholder="" title="@{cosp1-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp2">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp2-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp2-nom} : @{cosp2-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp2-nom" type="text" placeholder="" title="@{cosp2-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp2-lien1" type="text" placeholder="" title="@{cosp2-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp2-lien2" type="text" placeholder="" title="@{cosp2-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp2-score" type="text" placeholder="" title="@{cosp2-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp3">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp3-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp3-nom} : @{cosp3-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp3-nom" type="text" placeholder="" title="@{cosp3-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp3-lien1" type="text" placeholder="" title="@{cosp3-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp3-lien2" type="text" placeholder="" title="@{cosp3-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp3-score" type="text" placeholder="" title="@{cosp3-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp4">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp4-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp4-nom} : @{cosp4-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp4-nom" type="text" placeholder="" title="@{cosp4-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp4-lien1" type="text" placeholder="" title="@{cosp4-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp4-lien2" type="text" placeholder="" title="@{cosp4-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp4-score" type="text" placeholder="" title="@{cosp4-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp5">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp5-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp5-nom} : @{cosp5-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp5-nom" type="text" placeholder="" title="@{cosp5-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp5-lien1" type="text" placeholder="" title="@{cosp5-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp5-lien2" type="text" placeholder="" title="@{cosp5-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp5-score" type="text" placeholder="" title="@{cosp5-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp6">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp6-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp6-nom} : @{cosp6-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp6-nom" type="text" placeholder="" title="@{cosp6-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp6-lien1" type="text" placeholder="" title="@{cosp6-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp6-lien2" type="text" placeholder="" title="@{cosp6-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp6-score" type="text" placeholder="" title="@{cosp6-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp7">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp7-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp7-nom} : @{cosp7-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp7-nom" type="text" placeholder="" title="@{cosp7-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp7-lien1" type="text" placeholder="" title="@{cosp7-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp7-lien2" type="text" placeholder="" title="@{cosp7-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp7-score" type="text" placeholder="" title="@{cosp7-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp8">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp8-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp8-nom} : @{cosp8-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp8-nom" type="text" placeholder="" title="@{cosp8-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp8-lien1" type="text" placeholder="" title="@{cosp8-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp8-lien2" type="text" placeholder="" title="@{cosp8-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp8-score" type="text" placeholder="" title="@{cosp8-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp9">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp9-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp9-nom} : @{cosp9-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp9-nom" type="text" placeholder="" title="@{cosp9-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp9-lien1" type="text" placeholder="" title="@{cosp9-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp9-lien2" type="text" placeholder="" title="@{cosp9-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp9-score" type="text" placeholder="" title="@{cosp9-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp10">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp10-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp10-nom} : @{cosp10-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp10-nom" type="text" placeholder="" title="@{cosp10-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp10-lien1" type="text" placeholder="" title="@{cosp10-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp10-lien2" type="text" placeholder="" title="@{cosp10-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp10-score" type="text" placeholder="" title="@{cosp10-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp11">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp11-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp11-nom} : @{cosp11-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp11-nom" type="text" placeholder="" title="@{cosp11-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp11-lien1" type="text" placeholder="" title="@{cosp11-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp11-lien2" type="text" placeholder="" title="@{cosp11-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp11-score" type="text" placeholder="" title="@{cosp11-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp12">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp12-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp12-nom} : @{cosp12-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp12-nom" type="text" placeholder="" title="@{cosp12-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp12-lien1" type="text" placeholder="" title="@{cosp12-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp12-lien2" type="text" placeholder="" title="@{cosp12-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp12-score" type="text" placeholder="" title="@{cosp12-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp13">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp13-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp13-nom} : @{cosp13-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp13-nom" type="text" placeholder="" title="@{cosp13-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp13-lien1" type="text" placeholder="" title="@{cosp13-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp13-lien2" type="text" placeholder="" title="@{cosp13-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp13-score" type="text" placeholder="" title="@{cosp13-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp14">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp14-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp14-nom} : @{cosp14-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp14-nom" type="text" placeholder="" title="@{cosp14-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp14-lien1" type="text" placeholder="" title="@{cosp14-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp14-lien2" type="text" placeholder="" title="@{cosp14-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp14-score" type="text" placeholder="" title="@{cosp14-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp15">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp15-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp15-nom} : @{cosp15-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp15-nom" type="text" placeholder="" title="@{cosp15-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp15-lien1" type="text" placeholder="" title="@{cosp15-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp15-lien2" type="text" placeholder="" title="@{cosp15-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp15-score" type="text" placeholder="" title="@{cosp15-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp16">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp16-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp16-nom} : @{cosp16-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp16-nom" type="text" placeholder="" title="@{cosp16-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp16-lien1" type="text" placeholder="" title="@{cosp16-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp16-lien2" type="text" placeholder="" title="@{cosp16-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp16-score" type="text" placeholder="" title="@{cosp16-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp17">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp17-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp17-nom} : @{cosp17-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp17-nom" type="text" placeholder="" title="@{cosp17-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp17-lien1" type="text" placeholder="" title="@{cosp17-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp17-lien2" type="text" placeholder="" title="@{cosp17-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp17-score" type="text" placeholder="" title="@{cosp17-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp18">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp18-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp18-nom} : @{cosp18-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp18-nom" type="text" placeholder="" title="@{cosp18-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp18-lien1" type="text" placeholder="" title="@{cosp18-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp18-lien2" type="text" placeholder="" title="@{cosp18-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp18-score" type="text" placeholder="" title="@{cosp18-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp19">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp19-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp19-nom} : @{cosp19-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp19-nom" type="text" placeholder="" title="@{cosp19-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp19-lien1" type="text" placeholder="" title="@{cosp19-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp19-lien2" type="text" placeholder="" title="@{cosp19-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp19-score" type="text" placeholder="" title="@{cosp19-score}">%</div>
|
||||
</div>
|
||||
<div class="comp-sp co-sp20">
|
||||
<div class="co-sp-button">
|
||||
<button class="btn-min" type="roll" value="@{privaterolls}&{template:aria1} {{name=@{cosp20-nom}}} {{character_name=@{nameinrolls}}} {{body=@{cosp20-nom} : @{cosp20-score}%}} {{roll=[[1d100cf>96cs<5]]}}"></button>
|
||||
</div>
|
||||
<div class="co-sp-nom">
|
||||
<input class="co-sp-input-nom" name="attr_cosp20-nom" type="text" placeholder="" title="@{cosp20-nom}">
|
||||
</div>
|
||||
<div class="co-sp-lien">
|
||||
<input class="co-sp-input-lien" name="attr_cosp20-lien1" type="text" placeholder="" title="@{cosp20-lien1}"> /
|
||||
<input class="co-sp-input-lien" name="attr_cosp20-lien2" type="text" placeholder="" title="@{cosp20-lien2}"> </div>
|
||||
<div class="co-sp-score">
|
||||
<input class="co-sp-input-score" name="attr_cosp20-score" type="text" placeholder="" title="@{cosp20-score}">%</div>
|
||||
</div>
|
||||
</div>
|
||||
<hr class="hr2">
|
||||
<!---------- POSSESSIONS/NOTES ----------->
|
||||
<div class="block-po">
|
||||
<div class="po-possessions">
|
||||
<div class="po-texte">Possessions</div>
|
||||
<textarea class="po-input-texte" name="attr_possessions" title="@{possessions}"></textarea>
|
||||
<div class="block-bo">
|
||||
<div class="block-bo-texte">
|
||||
<div class="bo-texte">Couronnes</div>
|
||||
<div class="bo-texte">Orbes</div>
|
||||
<div class="bo-texte">Sceptres</div>
|
||||
<div class="bo-texte">Rois</div>
|
||||
</div>
|
||||
<div class="block-bo-input-texte">
|
||||
<input class="bo-input-texte" name="attr_couronnes" type="text" placeholder="0" title="@{couronnes}">
|
||||
<input class="bo-input-texte" name="attr_orbes" type="text" placeholder="0" title="@{orbes}">
|
||||
<input class="bo-input-texte" name="attr_sceptres" type="text" placeholder="0" title="@{sceptres}">
|
||||
<input class="bo-input-texte" name="attr_rois" type="text" placeholder="0" title="@{rois} (ou @{totalrois} pour la fortune totale convertie en Rois)"> </div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="po-notes">
|
||||
<div class="po-texte">Notes</div>
|
||||
<textarea style="height: 190px;" class="po-input-texte po-input-notes" name="attr_notes" title="@{notes}"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ==================================================== -->
|
||||
<!-- ==================== TEMPLATES ===================== -->
|
||||
<!-- ==================================================== -->
|
||||
<rolltemplate class="sheet-rolltemplate-aria1">
|
||||
<div class="sheet-aria1-container"> {{#name}}
|
||||
<h1>{{name}} </h1> {{/name}} {{#character_name}}
|
||||
<h2>{{character_name}} </h2> {{/character_name}}
|
||||
<div class="sheet-aria1-body"> {{#body}} {{body}} {{/body}} </div>
|
||||
<div class="sheet-aria1-roll"> {{#roll}} {{roll}} {{/roll}} </div>
|
||||
<div class="sheet-aria1-buttons"> {{#buttons}} {{buttons}} {{/buttons}} </div>
|
||||
<div class="sheet-aria1-footer"></div>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
<!-- ==================================================== -->
|
||||
<!-- ==================== JAVASCRIPT ==================== -->
|
||||
<!-- ==================================================== -->
|
||||
<script type="text/worker">
|
||||
on(`sheet:opened`, function(eventInfo) {
|
||||
setAttrs({
|
||||
"version": "1.0",
|
||||
optiontab: "0",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
on("change:namerolls change:character_name sheet:opened", function() {
|
||||
getAttrs(["NAMEROLLS", "CHARACTER_NAME"], function(values) {
|
||||
let namerolls = parseInt(values.NAMEROLLS) || 0;
|
||||
let character_name = values.CHARACTER_NAME || 0;
|
||||
if(namerolls === 1) {
|
||||
setAttrs({
|
||||
"nameinrolls": character_name
|
||||
});
|
||||
} else if(namerolls === 2) {
|
||||
setAttrs({
|
||||
"nameinrolls": "?{Afficher le nom du personnage ?|Non, |Oui," + character_name + "}"
|
||||
});
|
||||
} else if(namerolls === 3) {
|
||||
setAttrs({
|
||||
"nameinrolls": "?{Afficher le nom du personnage ?|Oui," + character_name + "|Non,-}"
|
||||
});
|
||||
} else {
|
||||
setAttrs({
|
||||
"nameinrolls": " "
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
on("change:vie change:blessures sheet:opened", function() {
|
||||
getAttrs(["VIE", "BLESSURES"], function(values) {
|
||||
let vie = parseInt(values.VIE) || 0;
|
||||
let blessures = parseInt(values.BLESSURES) || 0;
|
||||
let lifemax1 = vie;
|
||||
let life1 = vie - blessures;
|
||||
setAttrs({
|
||||
"life": life1
|
||||
});
|
||||
setAttrs({
|
||||
"life_max": lifemax1
|
||||
});
|
||||
});
|
||||
});
|
||||
on("change:life", function() {
|
||||
getAttrs(["LIFE", "vie"], function(values) {
|
||||
let life = parseInt(values.LIFE) || 0;
|
||||
let vie1 = parseInt(values.vie) || 0;
|
||||
let blessures1 = vie1 - life;
|
||||
if(blessures1 > vie1) {
|
||||
blessures1 = vie1;
|
||||
}
|
||||
if(blessures1 < 0) {
|
||||
blessures1 = 0;
|
||||
}
|
||||
setAttrs({
|
||||
"blessures": blessures1
|
||||
});
|
||||
});
|
||||
});
|
||||
on("change:couronnes change:orbes change:scepres change:rois sheet:opened", function() {
|
||||
getAttrs(["COURONNES", "ORBES", "SCEPTRES", "ROIS"], function(values) {
|
||||
let couronnes = parseInt(values.COURONNES) || 0;
|
||||
let orbes = parseInt(values.ORBES) || 0;
|
||||
let scepres = parseInt(values.SCEPTRES) || 0;
|
||||
let rois = parseInt(values.ROIS) || 0;
|
||||
let totalrois1 = (couronnes * 1000) + (orbes * 100) + (scepres * 10) + rois;
|
||||
setAttrs({
|
||||
"totalrois": totalrois1
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_options = ["options"];
|
||||
button_options.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
getAttrs(["OptionTab"], function(values) {
|
||||
let OptionTab1 = values.OptionTab || 0;
|
||||
if(OptionTab1 === "1") {
|
||||
setAttrs({
|
||||
optiontab: "0",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
} else {
|
||||
setAttrs({
|
||||
optiontab: "1",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_co_comp1 = ["co-comp1-bu"];
|
||||
button_co_comp1.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
co_comp1: "1",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0",
|
||||
optiontab: "1"
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_co_comp2 = ["co-comp2-bu"];
|
||||
button_co_comp2.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
co_comp2: "1",
|
||||
co_comp1: "0",
|
||||
co_comp3: "0",
|
||||
optiontab: "1"
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_co_comp3 = ["co-comp3-bu"];
|
||||
button_co_comp3.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
co_comp3: "1",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
optiontab: "1"
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_noconf1 = ["noconf1"];
|
||||
button_noconf1.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_noconf2 = ["noconf2"];
|
||||
button_noconf2.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_noconf3 = ["noconf3"];
|
||||
button_noconf3.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
setAttrs({
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_calcul_comp1 = ["calcul-comp1"];
|
||||
button_calcul_comp1.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
getAttrs(["force", "dexterite", "endurance", "intelligence", "charisme"], function(values) {
|
||||
let FOR = parseInt(values.force) || 0;
|
||||
let DEX = parseInt(values.dexterite) || 0;
|
||||
let END = parseInt(values.endurance) || 0;
|
||||
let INT = parseInt(values.intelligence) || 0;
|
||||
let CHA = parseInt(values.charisme) || 0;
|
||||
let artisanat1 = Math.floor((DEX + INT) / 2) * 5;
|
||||
let combatrapp1 = Math.floor((FOR + DEX) / 2) * 5;
|
||||
let combatdist1 = Math.floor((DEX + INT) / 2) * 5;
|
||||
let connnature1 = Math.floor((DEX + INT) / 2) * 5;
|
||||
let connsecret1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
let courir1 = Math.floor((DEX + END) / 2) * 5;
|
||||
let discretion1 = Math.floor((DEX + CHA) / 2) * 5;
|
||||
let droit1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
let esquiver1 = Math.floor((DEX + INT) / 2) * 5;
|
||||
let intimider1 = Math.floor((FOR + CHA) / 2) * 5;
|
||||
let lire1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
let mentir1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
let perception1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
let piloter1 = Math.floor((DEX + END) / 2) * 5;
|
||||
let psychologie1 = Math.floor((END + INT) / 2) * 5;
|
||||
let reflexes1 = Math.floor((DEX + INT) / 2) * 5;
|
||||
let serrures1 = Math.floor((DEX + END) / 2) * 5;
|
||||
let soigner1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
let survie1 = Math.floor((END + INT) / 2) * 5;
|
||||
let voler1 = Math.floor((INT + CHA) / 2) * 5;
|
||||
setAttrs({
|
||||
artisanat: artisanat1,
|
||||
combatrapp: combatrapp1,
|
||||
combatdist: combatdist1,
|
||||
connnature: connnature1,
|
||||
connsecret: connsecret1,
|
||||
courir: courir1,
|
||||
discretion: discretion1,
|
||||
droit: droit1,
|
||||
esquiver: esquiver1,
|
||||
intimider: intimider1,
|
||||
lire: lire1,
|
||||
mentir: mentir1,
|
||||
perception: perception1,
|
||||
piloter: piloter1,
|
||||
psychologie: psychologie1,
|
||||
reflexes: reflexes1,
|
||||
serrures: serrures1,
|
||||
soigner: soigner1,
|
||||
survie: survie1,
|
||||
voler: voler1,
|
||||
optiontab: "0",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
const button_calcul_comp2 = ["calcul-comp2"];
|
||||
button_calcul_comp2.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
getAttrs(["force", "dexterite", "endurance", "intelligence", "charisme"], function(values) {
|
||||
let FOR = parseInt(values.force) || 0;
|
||||
let DEX = parseInt(values.dexterite) || 0;
|
||||
let END = parseInt(values.endurance) || 0;
|
||||
let INT = parseInt(values.intelligence) || 0;
|
||||
let CHA = parseInt(values.charisme) || 0;
|
||||
let artisanat1 = (DEX + INT) * 2;
|
||||
let combatrapp1 = (FOR + DEX) * 2;
|
||||
let combatdist1 = (DEX + INT) * 2;
|
||||
let connnature1 = (DEX + INT) * 2;
|
||||
let connsecret1 = (INT + CHA) * 2;
|
||||
let courir1 = (DEX + END) * 2;
|
||||
let discretion1 = (DEX + CHA) * 2;
|
||||
let droit1 = (INT + CHA) * 2;
|
||||
let esquiver1 = (DEX + INT) * 2;
|
||||
let intimider1 = (FOR + CHA) * 2;
|
||||
let lire1 = (INT + CHA) * 2;
|
||||
let mentir1 = (INT + CHA) * 2;
|
||||
let perception1 = (INT + CHA) * 2;
|
||||
let piloter1 = (DEX + END) * 2;
|
||||
let psychologie1 = (END + INT) * 2;
|
||||
let reflexes1 = (DEX + INT) * 2;
|
||||
let serrures1 = (DEX + END) * 2;
|
||||
let soigner1 = (INT + CHA) * 2;
|
||||
let survie1 = (END + INT) * 2;
|
||||
let voler1 = (INT + CHA) * 2;
|
||||
setAttrs({
|
||||
artisanat: artisanat1,
|
||||
combatrapp: combatrapp1,
|
||||
combatdist: combatdist1,
|
||||
connnature: connnature1,
|
||||
connsecret: connsecret1,
|
||||
courir: courir1,
|
||||
discretion: discretion1,
|
||||
droit: droit1,
|
||||
esquiver: esquiver1,
|
||||
intimider: intimider1,
|
||||
lire: lire1,
|
||||
mentir: mentir1,
|
||||
perception: perception1,
|
||||
piloter: piloter1,
|
||||
psychologie: psychologie1,
|
||||
reflexes: reflexes1,
|
||||
serrures: serrures1,
|
||||
soigner: soigner1,
|
||||
survie: survie1,
|
||||
voler: voler1,
|
||||
optiontab: "0",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
// Méthode de calcul alternative. Non utilisée.
|
||||
const button_calcul_comp3 = ["calcul-comp3"];
|
||||
button_calcul_comp3.forEach(button => {
|
||||
on(`clicked:${button}`, function() {
|
||||
getAttrs(["force", "dexterite", "endurance", "intelligence", "charisme"], function(values) {
|
||||
let FOR = parseInt(values.force) || 0;
|
||||
let DEX = parseInt(values.dexterite) || 0;
|
||||
let END = parseInt(values.endurance) || 0;
|
||||
let INT = parseInt(values.intelligence) || 0;
|
||||
let CHA = parseInt(values.charisme) || 0;
|
||||
let artisanat1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(INT, 2)) * 2);
|
||||
let combatrapp1 = Math.floor(Math.sqrt(Math.pow(FOR, 2) + Math.pow(DEX, 2)) * 2);
|
||||
let combatdist1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(INT, 2)) * 2);
|
||||
let connnature1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(INT, 2)) * 2);
|
||||
let connsecret1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let courir1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(END, 2)) * 2);
|
||||
let discretion1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let droit1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let esquiver1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(INT, 2)) * 2);
|
||||
let intimider1 = Math.floor(Math.sqrt(Math.pow(FOR, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let lire1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let mentir1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let perception1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let piloter1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(END, 2)) * 2);
|
||||
let psychologie1 = Math.floor(Math.sqrt(Math.pow(END, 2) + Math.pow(INT, 2)) * 2);
|
||||
let reflexes1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(INT, 2)) * 2);
|
||||
let serrures1 = Math.floor(Math.sqrt(Math.pow(DEX, 2) + Math.pow(END, 2)) * 2);
|
||||
let soigner1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
let survie1 = Math.floor(Math.sqrt(Math.pow(END, 2) + Math.pow(INT, 2)) * 2);
|
||||
let voler1 = Math.floor(Math.sqrt(Math.pow(INT, 2) + Math.pow(CHA, 2)) * 2);
|
||||
setAttrs({
|
||||
artisanat: artisanat1,
|
||||
combatrapp: combatrapp1,
|
||||
combatdist: combatdist1,
|
||||
connnature: connnature1,
|
||||
connsecret: connsecret1,
|
||||
courir: courir1,
|
||||
discretion: discretion1,
|
||||
droit: droit1,
|
||||
esquiver: esquiver1,
|
||||
intimider: intimider1,
|
||||
lire: lire1,
|
||||
mentir: mentir1,
|
||||
perception: perception1,
|
||||
piloter: piloter1,
|
||||
psychologie: psychologie1,
|
||||
reflexes: reflexes1,
|
||||
serrures: serrures1,
|
||||
soigner: soigner1,
|
||||
survie: survie1,
|
||||
voler: voler1,
|
||||
optiontab: "0",
|
||||
co_comp1: "0",
|
||||
co_comp2: "0",
|
||||
co_comp3: "0"
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
After Width: | Height: | Size: 976 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.7 MiB |
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "Aria.html",
|
||||
"css": "Aria.css",
|
||||
"authors": "PixelReveur",
|
||||
"roll20userID": "982901",
|
||||
"preview": "preview.png",
|
||||
"instructions": "Feuille de personnage pour Aria."
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
.DS_Store
|
||||
node_modules
|
||||
package-lock.jdson
|
||||
package-lock.json
|
||||
@@ -0,0 +1,21 @@
|
||||
Roll20 Character Sheet Template
|
||||
=======================
|
||||
|
||||
## Necessary files
|
||||
|
||||
For Roll20 the files you need are .css, .html, preview.png, and sheet.json. All the others are optional. They are intended to be used by front-end developers with NPM and compiled languages.
|
||||
|
||||
## NPM
|
||||
|
||||
This is a template uses [NPM](https://www.npmjs.com/get-npm) to develop character sheets.
|
||||
|
||||
Dependencies are outlined in the package.json. Just use `npm install` to download them.
|
||||
|
||||
Start the compiles for SCSS & PUG with `npm start`.
|
||||
|
||||
## Compile Files
|
||||
|
||||
If you wish to rename pug.pug and scss.scss be sure to update the package.json names.
|
||||
|
||||
## Unit Tests
|
||||
QUnit is setup to do unit tests. Tests folder can be removed if you're not wriing tests.
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "sheettemplate",
|
||||
"version": "1.0.0",
|
||||
"description": "Character sheet development in VS Code",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"node-sass": "^4.14.1",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"pug": "^2.0.4",
|
||||
"pug-cli": "^1.0.0-alpha6"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "npm-run-all --parallel compile:sass compile:pug",
|
||||
"compile:sass": "node-sass ./src/BlackVoid.scss ./BlackVoid.css -w",
|
||||
"compile:pug": "pug src/BlackVoid.pug -o ./ -w"
|
||||
},
|
||||
"keywords": [
|
||||
"Roll20"
|
||||
],
|
||||
"author": "Cassie Levett",
|
||||
"license": "ISC"
|
||||
}
|
||||
|
After Width: | Height: | Size: 176 KiB |
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "BlackVoid.html",
|
||||
"css": "BlackVoid.css",
|
||||
"authors": "Cassie Levett",
|
||||
"roll20userid": "557736",
|
||||
"preview": "preview.png",
|
||||
"instructions": "Black Void character sheet created for Penny For A Tale"
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
input(name='attr_version' type='hidden' value='1')
|
||||
|
||||
//- VARIABLES
|
||||
=============================
|
||||
include pug/abstracts/variables.pug
|
||||
|
||||
//- INCLUDES
|
||||
=============================
|
||||
include pug/abstracts/mixins.pug
|
||||
|
||||
//- TABS
|
||||
=============================
|
||||
input.type(name='attr_sheet_type' type='hidden' value='character')
|
||||
input.display_string(name='attr_character_settings' type='hidden' value='')
|
||||
|
||||
//-PC SHEET
|
||||
=============================
|
||||
include pug/pages/pc.pug
|
||||
|
||||
//-FOOTER
|
||||
=============================
|
||||
include pug/layout/footer.pug
|
||||
|
||||
//-ROLL TEMPLATE
|
||||
=============================
|
||||
include pug/components/rolltemplates.pug
|
||||
|
||||
//- SCRIPTS
|
||||
script(type="text/worker")
|
||||
include js/scripts.js
|
||||
@@ -0,0 +1,64 @@
|
||||
// COLORS & OTHER VARIABLES
|
||||
// ============================= *
|
||||
@import 'scss/abstracts/mixins';
|
||||
@import 'scss/abstracts/placeholders';
|
||||
@import 'scss/abstracts/variables';
|
||||
|
||||
/* GLOBAL SETTINGS
|
||||
============================= */
|
||||
@import 'scss/base/base';
|
||||
@import 'scss/base/utilities';
|
||||
@import 'scss/base/typography';
|
||||
|
||||
/* GRID
|
||||
============================= */
|
||||
@import 'scss/layout/grid';
|
||||
|
||||
span.sheet-display {
|
||||
border-bottom: 2px dotted $dark;
|
||||
padding-top: 3%;
|
||||
}
|
||||
|
||||
input.sheet-toggles {
|
||||
position: relative;
|
||||
opacity: 0;
|
||||
width: 100%;
|
||||
z-index: 2;
|
||||
|
||||
&:checked + span {
|
||||
color: $primary;
|
||||
margin-left: 5%;
|
||||
}
|
||||
}
|
||||
|
||||
/* HEADER
|
||||
============================= */
|
||||
@import 'scss/layout/header';
|
||||
|
||||
/* PC
|
||||
============================= */
|
||||
@import 'scss/pages/pc';
|
||||
|
||||
/* REPEATING SECTIONS
|
||||
============================= */
|
||||
@import 'scss/components/repeating_container';
|
||||
|
||||
/* SHOW & HIDE SECTIONS
|
||||
============================= */
|
||||
@import 'scss/layout/hide';
|
||||
|
||||
/* SWITCH
|
||||
============================= */
|
||||
@import 'scss/components/switch';
|
||||
|
||||
/* STYLED CHECKBOXES
|
||||
============================= */
|
||||
@import 'scss/components/checkbox';
|
||||
|
||||
/* FOOTER
|
||||
============================= */
|
||||
@import 'scss/layout/footer';
|
||||
|
||||
/* ROLL TEMPLATE STYLE
|
||||
============================= */
|
||||
@import 'scss/components/rolltemplate';
|
||||
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 370 KiB |
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 7.8 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 119 KiB |
|
After Width: | Height: | Size: 118 KiB |
|
After Width: | Height: | Size: 117 KiB |
|
After Width: | Height: | Size: 120 KiB |
|
After Width: | Height: | Size: 344 KiB |
|
After Width: | Height: | Size: 16 KiB |
@@ -0,0 +1,53 @@
|
||||
//Convert Integers to be Negative
|
||||
const convertIntegerNegative = number => number > 0 ? -Math.abs(number) : number
|
||||
|
||||
//Convert an object with negative numbers
|
||||
const convertIntegersNegatives = numbers => {
|
||||
numbers => {
|
||||
for (let [key, value] of Object.entries(numbers)) {
|
||||
numbers[key] = convertIntegerNegative(value);
|
||||
}
|
||||
return numbers
|
||||
}
|
||||
}
|
||||
|
||||
//Pass in eventinfo.triggerName
|
||||
const findRepeatingField = trigger => trigger.split('_')[1]
|
||||
|
||||
//Pass in eventinfo.triggerName
|
||||
const getReprowid = trigger => {
|
||||
const split = trigger.split('_');
|
||||
return `${split[0]}_${split[1]}_${split[2]}`
|
||||
}
|
||||
|
||||
//Pass in an object keep that has the repeating section
|
||||
//Example repeating_weapon_-m1czg68yzicwhfdpyys_name
|
||||
const getReprowAttribute = key => {
|
||||
const getReprowid = processingFunctions.getReprowid(key)
|
||||
return key.split(`${getReprowid}_`)[1]
|
||||
}
|
||||
|
||||
//Provide the function with an array of keys to find transations for
|
||||
//Example ['strenght', 'agility', 'willpower']
|
||||
const getTranslations = translationKeys => {
|
||||
let translations = {}
|
||||
translationKeys.forEach(key => translations[`${key}`] = getTranslationByKey(key))
|
||||
return translations
|
||||
}
|
||||
|
||||
const parseInteger = string => parseInt(string) || 0
|
||||
|
||||
//Use for convernting the result of getAttrs from strings into integers
|
||||
const parseIntegers = numbers => {
|
||||
for (let [key, value] of Object.entries(numbers)) {
|
||||
numbers[key] = parseInt(value) || 0
|
||||
}
|
||||
return numbers
|
||||
}
|
||||
|
||||
const setAttributes = (update, silent) => silent && typeof update === 'object' ? setAttrs(update, {silent:true}) : typeof update === 'object' ? setAttrs(update) : console.error(`${update} is not an object`)
|
||||
|
||||
//returns strength from @{strenght}
|
||||
const sliceAttr = attribute => attribute.slice(2, -1)
|
||||
|
||||
const sumIntegers = numbers => numbers.reduce((a,b) => a + b, 0)
|
||||
@@ -0,0 +1,35 @@
|
||||
let attributes = {};
|
||||
let sectionIDS = {};
|
||||
const maxAsyncDelay = 2000;
|
||||
const getRandomInt = function(max) {
|
||||
return Math.floor(Math.random() * Math.floor(max));
|
||||
};
|
||||
const getAttrs = function(attrs, callback) {
|
||||
let values = {};
|
||||
setTimeout(() => {
|
||||
attrs.forEach(i => {
|
||||
if(i in attributes) values[i] = attributes[i];
|
||||
});
|
||||
callback(values);
|
||||
}, getRandomInt(maxAsyncDelay));
|
||||
};
|
||||
const setAttrs = function(attrs, callback) {
|
||||
let values = {};
|
||||
setTimeout(() => {
|
||||
Object.keys(attrs).forEach(key => {
|
||||
attributes[key] = attrs[key];
|
||||
//Notify all components
|
||||
let components = document.querySelectorAll(`[name|="attr_${key}"]`);
|
||||
components.forEach(c => {
|
||||
c.value = attrs[key];
|
||||
});
|
||||
});
|
||||
callback(attributes);
|
||||
}, getRandomInt(maxAsyncDelay));
|
||||
};
|
||||
const getSectionIDs = function(section, callback) {
|
||||
setTimeout(() => {
|
||||
let ids = sectionIDS[section] || [];
|
||||
callback(ids);
|
||||
}, getRandomInt(maxAsyncDelay));
|
||||
};
|
||||
@@ -0,0 +1,18 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<title>dropFunctions</title>
|
||||
<link rel="stylesheet" href="https://code.jquery.com/qunit/qunit-2.9.2.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="qunit"></div>
|
||||
<div id="qunit-fixture"></div>
|
||||
<script src="https://code.jquery.com/qunit/qunit-2.9.2.js"></script>
|
||||
<script src="./Mocks/Mocks.js"></script>
|
||||
|
||||
<script src="../scripts.js"></script>
|
||||
<script src="./tests.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,8 @@
|
||||
QUnit.module('Unit tests', {
|
||||
before: () => maxAsyncDelay = 100, //Sets the mock delay for getAttrs and setAttrs to a maximum of 1000ms.
|
||||
beforeEach: () => {
|
||||
//Resets attributes before each test
|
||||
attributes = {}
|
||||
sectionIDS = {}
|
||||
}
|
||||
})
|
||||
@@ -0,0 +1,69 @@
|
||||
- const buttonName = name => name.replace(/ /g, '-');
|
||||
- const attrName = name => name.replace(/ /g, '_');
|
||||
- const removeSpace = name => name.replace(/ /g, '');
|
||||
- const toLowerCase = name => name.toLowerCase();
|
||||
|
||||
mixin textInput(name)
|
||||
label(data-i18n-title=`enter ${name}` title=`enter ${name}`)
|
||||
input(data-i18n-placeholder=name name=`attr_${attrName(name)}` title=`@{${attrName(name)}}` type='text' value='')
|
||||
|
||||
mixin numberInput(name)
|
||||
label(data-i18n-title=`enter ${name}` title=`enter ${name}`)
|
||||
input(name=`attr_${attrName(name)}` placeholder='0' title=`@{${attrName(name)}}` type='number' value='0')
|
||||
|
||||
mixin checkboxInput(name)
|
||||
label.styled-checkbox.grid(data-i18n-title=`toggle ${name}` title=`enter ${name}`)
|
||||
input(name=`attr_${attrName(name)}` title=`@{${attrName(name)}}` type='checkbox' value=name)
|
||||
span.pictos 3
|
||||
|
||||
mixin radioInput(name, value)
|
||||
label.styled-checkbox.grid(data-i18n-title=`${name}` title=`select ${name}`)
|
||||
input(name=`attr_${attrName(name)}` title=`@{${attrName(name)}}` type='radio' value=value)
|
||||
span.pictos 3
|
||||
|
||||
mixin checkboxSymbol(name, symbol)
|
||||
input.toggles.text-center(name=`attr_${attrName(name)}` title=`@{${attrName(name)}}` type='checkbox' value=name)
|
||||
span.toggles.text-center.pictos #{symbol}
|
||||
|
||||
mixin textarea(name)
|
||||
textarea(name=`attr_${attrName(name)}` data-i18n-placeholder=name)
|
||||
|
||||
- const rollTemplate = modifier => `1d12+(${modifier})+(?{Modifiers +/-|0})`
|
||||
mixin traitButton(name)
|
||||
button(data-i18n=name name=`roll_${buttonName(name)}` type='roll' value!=`&{template:rolls} {{header=^{${name}}}} {{dice=[[${rollTemplate(`@{${name}_modifier}`)}]]}}`)
|
||||
|
||||
mixin skillButton(name)
|
||||
button.text-left.font-weight-bold(name=`roll_${buttonName(name)}` type='roll' value!=`&{template:rolls} {{header=@{name}}} {{dice=[[${rollTemplate('@{trait_modifier}+@{rank}+@{modifier}')}]]}}`)
|
||||
span(name='attr_name')
|
||||
|
||||
mixin repeatingRollButton(name)
|
||||
button.text-left.font-weight-bold(name=`roll_${buttonName(name)}` type='roll' value!=`&{template:rolls} {{header=@{name}}} {{desc=@{description}}}`)
|
||||
span(name='attr_name')
|
||||
|
||||
mixin repeatingWeaponButton(name)
|
||||
button.text-left.font-weight-bold(name=`roll_${buttonName(name)}` type='roll' value!=`&{template:rolls} {{header=@{name}}} {{dice=[[${rollTemplate('@{attack_modifier}')}]]}} {{damage=^{damage} @{damage}}}`)
|
||||
span(name='attr_name')
|
||||
|
||||
mixin repeatingText(name)
|
||||
fieldset(class=`repeating_${buttonName(name)}`)
|
||||
.rowx.grid.descriptor
|
||||
button.text-left.font-weight-bold(name='roll_button' type='roll')
|
||||
span(name='attr_name')
|
||||
+checkboxSymbol('collapse', 'i')
|
||||
+checkboxSymbol('settings', 'p')
|
||||
.rowx.collapse
|
||||
span.collapse.description(name='attr_description')
|
||||
.rowx.settings
|
||||
+textInput(`name`)
|
||||
+textarea('description')
|
||||
|
||||
include mixins/repeatingBenefits.pug
|
||||
|
||||
include mixins/repeatingPowers.pug
|
||||
|
||||
include mixins/repeatingWithChecks.pug
|
||||
|
||||
include mixins/repeatingSkills.pug
|
||||
|
||||
include mixins/repeatingWeapons.pug
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
mixin repeatingBenefits(name)
|
||||
fieldset(class=`repeating_${buttonName(name)}`)
|
||||
.rowx.grid.descriptor
|
||||
+repeatingRollButton(name)
|
||||
+checkboxSymbol('collapse', 'i')
|
||||
+checkboxSymbol('settings', 'p')
|
||||
.rowx.collapse
|
||||
.grid.header
|
||||
.row
|
||||
h3.font-smallcaps(data-i18n='benefit')
|
||||
.grid.text-center.2autocolumn
|
||||
h3.font-smallcaps(data-i18n='type')
|
||||
span.text-capitalize(name='attr_type')
|
||||
.grid.text-center.2autocolumn
|
||||
h3.font-smallcaps(data-i18n='cost')
|
||||
span(name='attr_cost')
|
||||
.row
|
||||
span.collapse.description(name='attr_description')
|
||||
.rowx.settings
|
||||
.grid.mb-1
|
||||
.grid.2autocolumn.mb-2
|
||||
h3.font-smallcaps(data-i18n='name')
|
||||
+textInput(`name`)
|
||||
.grid.2column
|
||||
.grid.column.2autocolumn
|
||||
h3.font-smallcaps(data-i18n='type')
|
||||
select(name='attr_type')
|
||||
each val in ['attribute', 'background', 'talent', 'other']
|
||||
option(data-i18n=val value=val)
|
||||
.grid.column.2autocolumn
|
||||
h3.font-smallcaps(data-i18n='cost')
|
||||
+textInput(`cost`)
|
||||
.row
|
||||
h3.font-smallcaps(data-i18n='benefit')
|
||||
+textarea('description')
|
||||
@@ -0,0 +1,29 @@
|
||||
mixin repeatingPowers(name)
|
||||
fieldset(class=`repeating_${buttonName(name)}`)
|
||||
.rowx.grid.descriptor
|
||||
+repeatingRollButton(name)
|
||||
.row.text-center
|
||||
span(name='attr_rank')
|
||||
+checkboxSymbol('collapse', 'i')
|
||||
+checkboxSymbol('settings', 'p')
|
||||
.rowx.collapse
|
||||
.grid
|
||||
h3.font-smallcaps(data-i18n='description')
|
||||
h3.font-smallcaps(data-i18n='cost')
|
||||
span.text-center(name='attr_cost')
|
||||
.row
|
||||
span.collapse.description(name='attr_description')
|
||||
.rowx.settings
|
||||
.grid.2autocolumn.mb-1
|
||||
h3.font-smallcaps(data-i18n='name')
|
||||
+textInput(`name`)
|
||||
.grid.2column.mb-1
|
||||
.grid.2autocolumn
|
||||
h3.font-smallcaps(data-i18n='cost')
|
||||
+textInput(`cost`)
|
||||
.grid.2autocolumn
|
||||
h3.font-smallcaps(data-i18n='rank')
|
||||
+numberInput(`rank`)
|
||||
.row
|
||||
h3.font-smallcaps(data-i18n='description')
|
||||
+textarea('description')
|
||||
@@ -0,0 +1,38 @@
|
||||
mixin repeatingSkills(name)
|
||||
fieldset(class=`repeating_${buttonName(name)}`)
|
||||
.rowx.grid.descriptor
|
||||
+skillButton(name)
|
||||
.row.ellipsis.text-center
|
||||
span(name='attr_specialization')
|
||||
.row.text-center
|
||||
span(name='attr_rank')
|
||||
+checkboxSymbol('collapse', 'i')
|
||||
+checkboxSymbol('settings', 'p')
|
||||
.rowx.collapse
|
||||
.grid.benefit-cost-row
|
||||
h3.font-smallcaps(data-i18n='description')
|
||||
h3.font-smallcaps(data-i18n='cost')
|
||||
span.text-center(name='attr_cost')
|
||||
.row
|
||||
span.collapse.description(name='attr_description')
|
||||
.rowx.settings
|
||||
.grid.mb-1
|
||||
h3.font-smallcaps(data-i18n='name')
|
||||
+textInput(`name`)
|
||||
h3.font-smallcaps(data-i18n='rank')
|
||||
+numberInput(`rank`)
|
||||
.grid.mb-1
|
||||
h3.font-smallcaps(data-i18n='specialization')
|
||||
+textInput(`specialization`)
|
||||
h3.font-smallcaps(data-i18n='cost')
|
||||
+textInput(`cost`)
|
||||
.grid.mb-1
|
||||
h3.font-smallcaps(data-i18n='trait')
|
||||
select(name='attr_trait_modifier' value='@{agility_modifier}')
|
||||
each val in trait
|
||||
option(data-i18n=val value=`@{${val}_modifier}`)
|
||||
h3.font-smallcaps(data-i18n='modifier')
|
||||
+numberInput(`modifier`)
|
||||
.row
|
||||
h3.font-smallcaps(data-i18n='description')
|
||||
+textarea('description')
|
||||
@@ -0,0 +1,23 @@
|
||||
mixin repeatingWeapons(name)
|
||||
fieldset(class=`repeating_${buttonName(name)}`)
|
||||
.rowx.grid.descriptor
|
||||
+repeatingWeaponButton(name)
|
||||
each val in weaponFields
|
||||
.grid.column.text-center.mb-2.ellipsis(class=val)
|
||||
span(name=`attr_${attrName(val)}`)
|
||||
+checkboxSymbol('collapse', 'i')
|
||||
+checkboxSymbol('settings', 'p')
|
||||
.rowx.collapse
|
||||
each val in ['properties', 'special', 'description']
|
||||
.row.mb-1
|
||||
h3(data-i18n=val)
|
||||
span.collapse.description(name=`attr_${val}`)
|
||||
.rowx.settings
|
||||
.grid.weapon.mb-1
|
||||
each val in ['name', ...weaponFields]
|
||||
.grid.mb-2(class=val)
|
||||
h3.font-smallcaps(data-i18n=val)
|
||||
+textInput(val)
|
||||
.row
|
||||
h3.font-smallcaps(data-i18n='description')
|
||||
+textarea('description')
|
||||
@@ -0,0 +1,12 @@
|
||||
mixin repeatingWithChecks(name)
|
||||
fieldset(class=`repeating_${buttonName(name)}`)
|
||||
.rowx.grid.descriptor
|
||||
+checkboxInput('check')
|
||||
+repeatingRollButton(name)
|
||||
+checkboxSymbol('collapse', 'i')
|
||||
+checkboxSymbol('settings', 'p')
|
||||
.rowx.collapse
|
||||
span.collapse.description(name='attr_description')
|
||||
.rowx.settings
|
||||
+textInput(`name`)
|
||||
+textarea('description')
|
||||
@@ -0,0 +1,6 @@
|
||||
- const imgsrc = 'https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/'
|
||||
|
||||
- const trait = ['intellect', 'agility', 'persuasion', 'awareness', 'presence', 'stamina', 'willpower', 'strength'];
|
||||
- const movementSpeeds = ['walking speed', 'running speed (x2)', 'sprinting speed (x4)']
|
||||
- const defenceValues = ['agility modifier', 'skill modifier', 'shield modifier', 'other modifiers']
|
||||
- const weaponFields = ['type', 'size', 'range', 'attack modifier', 'speed', 'damage', 'properties', 'special']
|
||||
@@ -0,0 +1,20 @@
|
||||
.rolltemplates
|
||||
rolltemplate.sheet-rolltemplate-rolls
|
||||
.sheet-template-container
|
||||
// - Display a header on the template -
|
||||
.sheet-template-header
|
||||
| {{#header}}{{header}}{{/header}}
|
||||
// - Display the dice roll in the template -
|
||||
.sheet-template-body
|
||||
| {{#dice}}
|
||||
.sheet-template-row {{dice}}
|
||||
| {{/dice}}
|
||||
| {{#damage}}
|
||||
.sheet-template-row.sheet-template-damage
|
||||
span.sheet-template-desc {{damage}}
|
||||
| {{/damage}}
|
||||
// - Display a description. This is great for text included with a roll -
|
||||
| {{#desc}}
|
||||
.sheet-template-row
|
||||
span.sheet-template-desc {{desc}}
|
||||
| {{/desc}}
|
||||
@@ -0,0 +1,5 @@
|
||||
.footer
|
||||
span Version
|
||||
span(name='attr_version')
|
||||
span Original template created by Emerald Productions, LLC
|
||||
img(src="https://raw.githubusercontent.com/clevett/roll20-SheetTemplate/master/src/imgs/EProd_Emerald_Gloss.png", alt="Emerald Productions logo of an E")
|
||||
@@ -0,0 +1,174 @@
|
||||
.pc.character.container
|
||||
input(name='attr_page' type='hidden' value='one')
|
||||
|
||||
include pc/header.pug
|
||||
|
||||
.page-one
|
||||
.grid.box
|
||||
include pc/page-one/character-info.pug
|
||||
|
||||
.grid.3column.personality-row
|
||||
.grid.column.personality
|
||||
.row
|
||||
h2.text-center.text-uppercase(data-i18n='personality')
|
||||
each val in ['desire and motivation', 'dislikes secrets regrets', 'philosophy principles']
|
||||
.row
|
||||
h3.colon.font-smallcaps(data-i18n=val)
|
||||
+textarea(val)
|
||||
|
||||
.grid.column.mannerism
|
||||
.row
|
||||
h2.text-center.text-uppercase(data-i18n='mannerism')
|
||||
each val in ['quirk and habits', 'sayings']
|
||||
.row
|
||||
h3.colon.font-smallcaps(data-i18n=val)
|
||||
+textarea(val)
|
||||
|
||||
.grid.column.origin
|
||||
.row
|
||||
h2.text-center.text-uppercase(data-i18n='origin')
|
||||
.row
|
||||
h3.colon.font-smallcaps(data-i18n='ancestry and relations')
|
||||
+textarea('ancestry and relations')
|
||||
.grid.2autocolumn.bottom-border
|
||||
h3.colon.font-smallcaps(data-i18n='caste')
|
||||
+textInput('caste')
|
||||
.row
|
||||
h3.colon.font-smallcaps(data-i18n='faction and allegiance')
|
||||
+textarea('faction and allegiance')
|
||||
each val in ['occupation', 'patron']
|
||||
.grid.2autocolumn.bottom-border
|
||||
h3.colon.font-smallcaps(data-i18n=val)
|
||||
+textInput(val)
|
||||
|
||||
.mt-1.wastah-section
|
||||
.column.wastah
|
||||
.row.mt-1.mb-1.box
|
||||
.row
|
||||
h2.text-center.text-uppercase(data-i18n='wastah')
|
||||
.repeating-container
|
||||
+repeatingWithChecks('wastah')
|
||||
include pc/page-one/sanity.pug
|
||||
|
||||
.grid.column.traits
|
||||
.grid.experience.4column
|
||||
.row.header
|
||||
h2.text-center.text-uppercase(data-i18n=val)
|
||||
.row.input
|
||||
+numberInput('experience points')
|
||||
each val in trait
|
||||
.grid.trait.4column(class=val)
|
||||
.row.header
|
||||
+traitButton(val)
|
||||
.row.modifier
|
||||
+numberInput(`${val} modifier`)
|
||||
.row.score
|
||||
+numberInput(`${val} score`)
|
||||
|
||||
.column.enlightenment
|
||||
.row.mt-1.mb-1.box
|
||||
.row
|
||||
h2.text-center.text-uppercase(data-i18n='enlightenment')
|
||||
.repeating-container
|
||||
+repeatingWithChecks('enlightenment')
|
||||
include pc/page-one/health.pug
|
||||
|
||||
include pc/page-one/skills.pug
|
||||
|
||||
.page-two
|
||||
.character-history
|
||||
.grid.box.mb-2
|
||||
each val in ['character history', 'friend allies', 'known enemies', 'notable people', 'notable experiences']
|
||||
.rowx.grid
|
||||
.header
|
||||
h2.font-smallcaps(data-i18n=val)
|
||||
+checkboxSymbol(`${val} collapse`, 'i')
|
||||
+checkboxSymbol(`${val} settings`, 'p')
|
||||
.collapse
|
||||
span(name=`attr_${attrName(val)}`)
|
||||
.settings
|
||||
+textarea(val)
|
||||
|
||||
.mt-1.movement-section
|
||||
.column.movement-column
|
||||
.grid.box.movement
|
||||
.text-center
|
||||
h2(data-i18n='movement')
|
||||
span.subheader(data-i18n='(km/hour)')
|
||||
each val in movementSpeeds
|
||||
- const attrName = val.includes(' (') ? val.split(' (')[0] : val
|
||||
.grid.2autocolumn
|
||||
h3.font-smallcaps.colon(data-i18n=val)
|
||||
+textInput(attrName)
|
||||
.grid.2autocolumn
|
||||
h3.font-smallcaps.colon(data-i18n='other modifiers')
|
||||
+textInput('speed modifier')
|
||||
.grid.2autocolumn.speed
|
||||
.header
|
||||
h3.font-smallcaps.colon(data-i18n='combat speed')
|
||||
span.subheader(data-i18n='(meters/round)')
|
||||
.speed-total
|
||||
+numberInput('combat speed')
|
||||
|
||||
.grid.box.defence-value
|
||||
.grid
|
||||
h2(data-i18n="defence value")
|
||||
each val in defenceValues
|
||||
.grid.2autocolumn
|
||||
h3.font-smallcaps.colon(data-i18n=val)
|
||||
+textInput(val)
|
||||
.grid.2autocolumn
|
||||
.header
|
||||
h3.text-uppercase(data-i18n='defence value')
|
||||
.defence-value-total
|
||||
+numberInput('defence value')
|
||||
|
||||
.column.armor-column
|
||||
.grid.header
|
||||
h2(data-i18n="armour, tattoo's & graftings")
|
||||
.grid.content
|
||||
each val in ['head', 'torso', 'arms', 'legs']
|
||||
.grid.armor(class=val)
|
||||
.grid.column.armour-input
|
||||
.header
|
||||
h3.text-center(data-i18n=val)
|
||||
+numberInput(val)
|
||||
.grid.column.body
|
||||
+textarea(`${val} description`)
|
||||
.grid.2column
|
||||
.grid.column
|
||||
.grid.header
|
||||
h3.colon.text-center(data-i18n='bulk, properties, & other')
|
||||
.grid
|
||||
+textarea('bulk')
|
||||
.grid.column.damage-reduction.2autocolumn
|
||||
.header
|
||||
h2(data-i18n='damage reduction')
|
||||
span.subheader(data-i18n='(accumulated total)')
|
||||
.grid.content
|
||||
+numberInput('damage reduction')
|
||||
|
||||
.column.wealth-column
|
||||
.grid.box.wealth
|
||||
h2(data-i18n='wealth')
|
||||
+textarea('wealth')
|
||||
|
||||
.grid.box.property
|
||||
h2(data-i18n='property / assets')
|
||||
+textarea('property assets')
|
||||
|
||||
.mt-1.box.equipment-section
|
||||
.row
|
||||
h2.text-uppercase.text-center(data-i18n='equipment')
|
||||
.grid.equipment
|
||||
+textarea('equipment')
|
||||
|
||||
.mt-1.box.weapons-section
|
||||
.grid.headers
|
||||
h2.text-uppercase.text-left(data-i18n='weapons')
|
||||
each val in weaponFields
|
||||
h3.text-center.font-smallcaps(data-i18n=val)
|
||||
.grid.weapons
|
||||
.repeating-container
|
||||
+repeatingWeapons('weapons')
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
.grid.logo-row.mb-2
|
||||
.column.grid.2autocolumn.bottom-border
|
||||
h2.colon.font-smallcaps(data-i18n='player name')
|
||||
+textInput('player name')
|
||||
.column.grid.page-select
|
||||
.header
|
||||
h2.colon.font-smallcaps(data-i18n='page')
|
||||
.grid.button
|
||||
input(name='attr_page' type='radio' value='one' checked)
|
||||
.option
|
||||
span 1
|
||||
.grid.button
|
||||
input(name='attr_page' type='radio' value='two')
|
||||
.option
|
||||
span 2
|
||||
.column.grid.logo
|
||||
img(src=`${imgsrc}/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/logo.png` alt='Black Void')
|
||||
@@ -0,0 +1,19 @@
|
||||
.grid.mb-2.character-info
|
||||
.grid.bottom-border.name-row
|
||||
each val in ['name', 'species', 'homeworld']
|
||||
.column.grid.2autocolumn
|
||||
h2.colon.font-smallcaps(data-i18n=val)
|
||||
+textInput(val)
|
||||
.grid.bottom-border.5column.gender-row
|
||||
each val in ['gender', 'age', 'skin', 'eyes', 'hair']
|
||||
.column.grid.2autocolumn
|
||||
h2.colon.font-smallcaps(data-i18n=val)
|
||||
+textInput(val)
|
||||
.grid.bottom-border.2column.build-row
|
||||
each val in ['build', 'appearence']
|
||||
.column.grid.2autocolumn
|
||||
h2.colon.font-smallcaps(data-i18n=val)
|
||||
+textInput(val)
|
||||
.grid.bottom-border
|
||||
+textInput('notes')
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
.grid.health-row
|
||||
.grid.health
|
||||
.grid.column.input
|
||||
+numberInput('health')
|
||||
.grid.column.header
|
||||
h2.text-uppercase(data-i18n='health')
|
||||
.grid.total
|
||||
.grid.column.input
|
||||
+numberInput('total health')
|
||||
.grid.column.header
|
||||
h2.font-smallcaps(data-i18n='total health')
|
||||
.grid.anxious-hurt
|
||||
.grid.column.input
|
||||
+numberInput('hurt')
|
||||
.grid.column.header
|
||||
h2.font-smallcaps(data-i18n='hurt (-1 penality)')
|
||||
.grid.disturbed-injured
|
||||
.grid.column.input
|
||||
+numberInput('injured')
|
||||
.grid.column.header
|
||||
h2.font-smallcaps(data-i18n='injured (-3 penality)')
|
||||
.grid.dead
|
||||
.grid.column.input
|
||||
+numberInput('dead')
|
||||
.grid.column.header
|
||||
h2.text-uppercase(data-i18n='dead')
|
||||
@@ -0,0 +1,24 @@
|
||||
.grid.sanity-row
|
||||
.grid.sanity
|
||||
.grid.column.input
|
||||
+numberInput('sanity')
|
||||
.grid.column.header
|
||||
h2.text-uppercase(data-i18n='sanity')
|
||||
.grid.total
|
||||
.grid.column.input
|
||||
+numberInput('total sanity')
|
||||
.grid.column.header
|
||||
h2.font-smallcaps(data-i18n='total sanity')
|
||||
.grid.anxious-hurt
|
||||
.grid.column.input
|
||||
+numberInput('anxious')
|
||||
.grid.column.header
|
||||
h2.font-smallcaps(data-i18n='anxious (+1 to madness)')
|
||||
.grid.disturbed-injured
|
||||
.grid.column.input
|
||||
+numberInput('disturbed')
|
||||
.grid.column.header
|
||||
h2.font-smallcaps(data-i18n='disturbed (+3 to madness)')
|
||||
.grid.2autocolumn.madness
|
||||
h2.text-uppercase(data-i18n='madness')
|
||||
+textInput('madness')
|
||||
@@ -0,0 +1,31 @@
|
||||
.skills-row
|
||||
.column.benefits
|
||||
.grid.box.mb-2.benefit
|
||||
.grid
|
||||
h2.text-uppercase(data-i18n='Background / Attributes / Talents')
|
||||
.repeating-container
|
||||
+repeatingBenefits('benefit')
|
||||
.grid.powers.box
|
||||
.grid.box
|
||||
.grid.header
|
||||
h2.text-uppercase(data-i18n='powers')
|
||||
h3.font-smallcaps.text-center(data-i18n='rank')
|
||||
.repeating-container
|
||||
+repeatingPowers('powers')
|
||||
|
||||
.column.skills
|
||||
.grid.box.mb-2
|
||||
.grid.header
|
||||
h2.text-uppercase(data-i18n='skills')
|
||||
h3.font-smallcaps.text-center(data-i18n='specialization')
|
||||
h3.font-smallcaps.text-center(data-i18n='rank')
|
||||
.repeating-container
|
||||
+repeatingSkills('skills')
|
||||
.grid.box
|
||||
.grid.header
|
||||
h2.text-uppercase(data-i18n='combat skills')
|
||||
h3.font-smallcaps.text-center(data-i18n='specialization')
|
||||
h3.font-smallcaps.text-center(data-i18n='rank')
|
||||
.repeating-container
|
||||
+repeatingSkills('combat skills')
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
@mixin traitImage($image) {
|
||||
background-image: $image;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
content: '';
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
@mixin collapseSettingsInputs($endColumn) {
|
||||
input[name*='collapse'],
|
||||
input[name*='collapse'] + span {
|
||||
grid-area: #{1} / #{$endColumn - 1} / #{1} / #{$endColumn - 1};
|
||||
}
|
||||
|
||||
input[name*='settings'],
|
||||
input[name*='settings'] + span {
|
||||
grid-area: #{1} / $endColumn / #{1} / $endColumn;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
%middle-column {
|
||||
margin: 0px 0.5%;
|
||||
vertical-align: top;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
%partial-column {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
width: 24.5%;
|
||||
}
|
||||
|
||||
%circle-input {
|
||||
label {
|
||||
display: grid;
|
||||
|
||||
& > input {
|
||||
height: 4.5rem;
|
||||
width: 4.5rem;
|
||||
border: none;
|
||||
border-radius: 10rem;
|
||||
align-self: center;
|
||||
justify-self: center;
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
%display-block {
|
||||
display: block;
|
||||
}
|
||||
|
||||
%display-none {
|
||||
display: none;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
$primary: rgb(131, 50, 71);
|
||||
$secondary:rgb(91, 28, 42);
|
||||
$light: #b9dadf;
|
||||
$dark: hsl(0, 6%, 0%);
|
||||
$dark-font: #000;
|
||||
$gray:#e4e5e6;
|
||||
$transparentGray: hsla(0, 0%, 30%, 0.0784313725490196);
|
||||
$white: hsl(0, 0%, 96%);
|
||||
|
||||
//Box Shadows
|
||||
$box-shadow: inset 0px 0px 3px 1px rgba($dark, .3);
|
||||
$box-shadow-outset: -1px -1px 1px 1px rgba($dark, .5);
|
||||
|
||||
//Transition buttons
|
||||
$button-scale-small: scale(1.05);
|
||||
$button-scale-medium: scale(1.3);
|
||||
|
||||
$trait-circle1: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/Traitcircle1.svg');
|
||||
$trait-circle2: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/Traitcircle2.svg');
|
||||
$trait-circle3: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/Traitcircle3.svg');
|
||||
$trait-circle4: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/Traitcircle4.svg');
|
||||
$trait-inner-circle1: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/TraitInnerCircle1.svg');
|
||||
$trait-inner-circle2: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/TraitInnerCircle2.svg');
|
||||
$silhouette: url('https://raw.githubusercontent.com/clevett/roll20-character-sheets/blackvoidv1/Black%20Void%20by%20Penny%20for%20a%20Tale/src/imgs/Silhouette.png');
|
||||
@@ -0,0 +1,153 @@
|
||||
/* GLOBAL SETTINGS
|
||||
============================= */
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
font-family: sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 62.5%; //1rem = 10px
|
||||
}
|
||||
|
||||
button {
|
||||
font-family: serif;
|
||||
transition: all .2s;
|
||||
box-shadow: $box-shadow-outset;
|
||||
|
||||
@extend .sheet-ellipsis;
|
||||
@extend .sheet-font-smallcaps;
|
||||
|
||||
&:before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:hover,
|
||||
&:active {
|
||||
background: none;
|
||||
background-color: $primary !important;
|
||||
color: $white;
|
||||
transform: $button-scale-small;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
&[type="roll"],
|
||||
&[type="action"] {
|
||||
background-color: $white;
|
||||
border: {
|
||||
bottom : 1px solid #666;
|
||||
bottom-right-radius: 1px;
|
||||
color : hsl(0, 0%, 70%);
|
||||
radius : 0.25rem;
|
||||
right : 0.02rem solid hsl(0, 0%, 20%);
|
||||
style : outset;
|
||||
}
|
||||
padding: 0.2rem 0.5rem !important;
|
||||
}
|
||||
}
|
||||
|
||||
div {
|
||||
background-color: transparent;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
h2 {
|
||||
&.sheet-label {
|
||||
border-bottom: 0.15em solid $dark;
|
||||
text-align: center;
|
||||
margin-left: 3%;
|
||||
}
|
||||
}
|
||||
|
||||
%placeholder {
|
||||
&:placeholder-shown {
|
||||
border: 0.1em dotted $primary;
|
||||
background-color: #96939326;
|
||||
}
|
||||
|
||||
&:hover, &:focus {
|
||||
color: $white;
|
||||
background-color: $secondary;
|
||||
}
|
||||
}
|
||||
|
||||
input {
|
||||
&[type="text"],
|
||||
&[type="number"] {
|
||||
background-color: transparent;
|
||||
|
||||
border: {
|
||||
left : 0rem;
|
||||
radius: 0rem;
|
||||
right : 0rem;
|
||||
top : 0rem;
|
||||
};
|
||||
height: 2.1rem;
|
||||
width: 100%;
|
||||
|
||||
@extend %placeholder;
|
||||
}
|
||||
&[type='number'] {
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
&::-webkit-outer-spin-button,
|
||||
&::-webkit-inner-spin-button {
|
||||
-webkit-appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
margin-bottom: 0px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
select {
|
||||
margin-bottom: 0px;
|
||||
vertical-align: bottom;
|
||||
border: 2px solid $primary;
|
||||
font-size: 1.5rem;
|
||||
font-weight: bold;
|
||||
text-transform: capitalize;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
option {
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 1.5rem;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
textarea {
|
||||
background-color: transparent;
|
||||
text-align: left;
|
||||
border: none;
|
||||
font-size : 1.5rem;
|
||||
font-weight : normal;
|
||||
min-height : 5rem;
|
||||
line-height : 1.8rem;
|
||||
overflow : hidden;
|
||||
overflow-wrap : break-word;
|
||||
padding : 2px;
|
||||
resize : vertical;
|
||||
vertical-align: top;
|
||||
overflow: scroll;
|
||||
|
||||
@extend %placeholder;
|
||||
}
|
||||
|
||||
.charsheet {
|
||||
width: 880px;
|
||||
|
||||
div.sheet-row {
|
||||
display: inline-grid;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
h1 {
|
||||
color: $primary;
|
||||
text-transform: capitalize;
|
||||
font-family: serif;
|
||||
font-size: 2.5rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.5rem;
|
||||
line-height: 2rem;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.25rem;
|
||||
line-height: 2rem;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
|
||||
label {
|
||||
font-size: 3rem;
|
||||
}
|
||||
|
||||
.sheet-pictos {
|
||||
font-family: "pictos";
|
||||
}
|
||||
|
||||
.sheet-d20 {
|
||||
font-family: "dicefontd20";
|
||||
}
|
||||
|
||||
.sheet-font-smallcaps {
|
||||
font-variant: small-caps;
|
||||
}
|
||||
|
||||
.sheet-text-capitalize {
|
||||
text-transform: capitalize;
|
||||
}
|
||||
|
||||
.sheet-text-uppercase {
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.sheet-text-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-text-left {
|
||||
text-align: left !important;
|
||||
}
|
||||
|
||||
.sheet-text-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.sheet-text-primary {
|
||||
color: $primary;
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
|
||||
div.sheet-background {
|
||||
background-color: $transparentGray;
|
||||
}
|
||||
|
||||
.sheet-border {
|
||||
border: 0.15rem solid $gray;
|
||||
}
|
||||
|
||||
.sheet-bottom-border {
|
||||
border-bottom: 0.2rem solid $dark;
|
||||
}
|
||||
|
||||
.sheet-description {
|
||||
white-space: pre-line;
|
||||
}
|
||||
|
||||
.sheet-ellipsis {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.sheet-font-weight-bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.sheet-inline-block {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.sheet-text-vertical {
|
||||
transform: rotate(180deg);
|
||||
writing-mode: vertical-lr;
|
||||
}
|
||||
|
||||
@for $i from 1 through 6 {
|
||||
div.sheet-#{$i}column {
|
||||
grid-template-columns: repeat($i, 1fr);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-2autocolumn {
|
||||
grid-template-columns: auto 1fr;
|
||||
}
|
||||
|
||||
div.sheet-2autocolumn-reverse {
|
||||
grid-template-columns: 1fr auto;
|
||||
}
|
||||
|
||||
div.sheet-4autocolumn {
|
||||
grid-template-columns: auto 1fr auto 1fr;
|
||||
}
|
||||
|
||||
div.sheet-3columnbutton {
|
||||
grid-template-columns: auto 1fr 3rem;
|
||||
}
|
||||
|
||||
@for $i from 1 through 5 {
|
||||
.sheet-mb-#{$i} {
|
||||
margin-bottom: (1% * $i);
|
||||
}
|
||||
|
||||
.sheet-mt-#{$i} {
|
||||
margin-top: (1% * $i);
|
||||
}
|
||||
|
||||
.sheet-pb-#{$i} {
|
||||
padding-bottom: (1% * $i);
|
||||
}
|
||||
|
||||
.sheet-pt-#{$i} {
|
||||
padding-top: (1% * $i);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
label.sheet-styled-checkbox {
|
||||
input, span {
|
||||
grid-area: 1 / 1 / 1 / 1;
|
||||
height: 15px;
|
||||
width: 15px;
|
||||
position: relative;
|
||||
left: 20%;
|
||||
}
|
||||
|
||||
span {
|
||||
border: 2px solid $primary;
|
||||
display: inline-block;
|
||||
color: transparent;
|
||||
text-align: center;
|
||||
font-size: 1rem;
|
||||
border-radius: 2rem;
|
||||
line-height: 90%;
|
||||
}
|
||||
|
||||
input {
|
||||
opacity: 0;
|
||||
z-index: 2;
|
||||
|
||||
&[type="checkbox"]:checked + span,
|
||||
&[type="radio"]:checked + span {
|
||||
background-color: $primary;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
div.sheet-repeating-container {
|
||||
button {
|
||||
font-variant: none;
|
||||
width: fit-content;
|
||||
font-size: 1.5rem;
|
||||
padding: 1% 2%;
|
||||
|
||||
&[type='roll'] {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
textarea {
|
||||
margin-top: 2%;
|
||||
}
|
||||
|
||||
.repcontrol {
|
||||
margin-top: 5%;
|
||||
}
|
||||
|
||||
.repcontrol_del {
|
||||
font-family: "pictos";
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.repitem {
|
||||
margin-bottom: 2%;
|
||||
}
|
||||
|
||||
div.sheet-descriptor {
|
||||
grid-template-columns: 1fr repeat(2, 1.5rem);
|
||||
align-items: center;
|
||||
justify-items: center;
|
||||
|
||||
button[type='roll'] {
|
||||
min-height: 2rem;
|
||||
}
|
||||
|
||||
input[type='text'] {
|
||||
@extend .sheet-bottom-border
|
||||
}
|
||||
|
||||
div.sheet-collapse {
|
||||
padding-left: 5%;
|
||||
}
|
||||
|
||||
input[name='attr_collapse'] + span,
|
||||
input[name='attr_settings'] + span {
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
|
||||
@include collapseSettingsInputs(3)
|
||||
|
||||
div.sheet-collapse,
|
||||
div.sheet-settings {
|
||||
grid-column: 1 / 4;
|
||||
}
|
||||
|
||||
div.sheet-settings {
|
||||
grid-template-columns: 1fr;
|
||||
background-color: rgba($gray, .2);
|
||||
padding: 2%;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
position: absolute;
|
||||
top: -1rem;
|
||||
left: 50%;
|
||||
content: '';
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-left: 10px solid transparent;
|
||||
border-right: 10px solid transparent;
|
||||
|
||||
border-bottom: 10px solid rgba($gray, .2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
.sheet-rolltemplate-rolls {
|
||||
div.sheet-template-container {
|
||||
border: 2px solid $dark;
|
||||
border-radius: 0.3rem;
|
||||
box-shadow: inset 0px 0px 3px 1px $primary;
|
||||
text-align: center;
|
||||
font-family: 'fantasy';
|
||||
|
||||
/* DICE ROLL STYLES
|
||||
----------------------------- */
|
||||
.inlinerollresult.fullfail,
|
||||
.inlinerollresult.fullcrit,
|
||||
.inlinerollresult.importantroll {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.inlinerollresult.fullfail, .inlinerollresult.fullcrit {
|
||||
color: $primary;
|
||||
}
|
||||
|
||||
.inlinerollresult {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
font-size: 2rem;
|
||||
padding: unset;
|
||||
}
|
||||
|
||||
|
||||
div.sheet-template-header {
|
||||
background-color: $white;
|
||||
border-bottom: 2px solid $dark;
|
||||
border-top: 2px solid $dark;
|
||||
color: $dark-font;
|
||||
font-size: 2rem;
|
||||
font-variant: small-caps;
|
||||
font-weight: bold;
|
||||
margin-top: -2px;
|
||||
padding: 3% 2%;
|
||||
text-transform: capitalize;
|
||||
-moz-box-shadow: inset 0 0 10px #000000;
|
||||
-webkit-box-shadow: inset 0 0 10px #000000;
|
||||
box-shadow: inset 0 0 10px #000000;
|
||||
}
|
||||
|
||||
div.sheet-template-body {
|
||||
background-color: $gray;
|
||||
font-size: 1.75rem;
|
||||
|
||||
div.sheet-template-row {
|
||||
color: $dark-font;
|
||||
padding: 3% 2%;
|
||||
|
||||
&:nth-child(2n+0) {
|
||||
background-color: $white;
|
||||
border-top: 2px solid $dark;
|
||||
}
|
||||
|
||||
span {
|
||||
&.sheet-inlinerollresult {
|
||||
color: $white;
|
||||
font-size: 2rem;
|
||||
font-weight: bold;
|
||||
cursor: help;
|
||||
padding: 0 3px 0 3px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
&.sheet-percent,
|
||||
&.sheet-template-desc {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-template-damage {
|
||||
background-color: #fff;
|
||||
padding: 3% 2%;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
|
||||
div.sheet-template-roll {
|
||||
display: inline-grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
width: 100%;
|
||||
|
||||
div.sheet-template-col {
|
||||
padding: 5%;
|
||||
|
||||
&:nth-of-type(2) {
|
||||
border-left: 2px solid $dark;
|
||||
}
|
||||
|
||||
span {
|
||||
display: block;
|
||||
|
||||
&:last-child {
|
||||
margin-top: 5%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
/* SWITCH
|
||||
============================= */
|
||||
.sheet-switch {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 50px;
|
||||
height: 24px;
|
||||
|
||||
/* Hide default HTML checkbox */
|
||||
input {
|
||||
opacity: 0;
|
||||
width: 0;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* The slider */
|
||||
.sheet-slider {
|
||||
-webkit-transition: .4s;
|
||||
background-color: #ccc;
|
||||
border-radius: 34px;
|
||||
bottom: 0;
|
||||
cursor: pointer;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
transition: .4s;
|
||||
|
||||
&:before {
|
||||
-webkit-transition: .4s;
|
||||
background-color: white;
|
||||
border-radius: 50%;
|
||||
bottom: 4px;
|
||||
content: "";
|
||||
height: 16px;
|
||||
left: 4px;
|
||||
position: absolute;
|
||||
transition: .4s;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
input:checked + & {
|
||||
background-color: black;
|
||||
|
||||
&:before {
|
||||
-webkit-transform: translateX(26px);
|
||||
-ms-transform: translateX(26px);
|
||||
transform: translateX(26px);
|
||||
}
|
||||
}
|
||||
|
||||
input:focus + & {
|
||||
box-shadow: 0 0 1px black;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
.sheet-footer {
|
||||
display: block;
|
||||
text-align: center;
|
||||
|
||||
span[name="attr_version"] {
|
||||
&::after {
|
||||
content: '.';
|
||||
margin-right: 0.2rem;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
img {
|
||||
margin-left: 2%;
|
||||
height: 2.5rem;
|
||||
width: 2.5rem;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
.sheet-grid {
|
||||
display: inline-grid;
|
||||
grid-column-gap: 1%;
|
||||
grid-row-gap: 0.5%;
|
||||
}
|
||||
|
||||
%gridRowCol {
|
||||
display: inline-grid;
|
||||
overflow: hidden;
|
||||
grid-auto-rows: min-content;
|
||||
grid-column-gap: 1%;
|
||||
}
|
||||
|
||||
%traitRowTop {
|
||||
grid-template-rows: 2rem repeat(2, 1fr);
|
||||
}
|
||||
|
||||
%headerRowBottom {
|
||||
grid-template-rows: repeat(2, 1fr) 2rem;
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
// div.sheet- {
|
||||
// margin-top: 2%;
|
||||
// border-top: 2px solid $primary;
|
||||
// border-bottom: 2px solid $primary;
|
||||
// text-align: center;
|
||||
// background: $light; /* Old browsers */
|
||||
// background: -moz-linear-gradient(top, $light 0%, $secondary 50%, $light 100%); /* FF3.6-15 */
|
||||
// background: -webkit-linear-gradient(top, $light 0%,$secondary 50%,$light 100%); /* Chrome10-25,Safari5.1-6 */
|
||||
// background: linear-gradient(to bottom, $light 0%,$secondary 50%,$light 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
|
||||
// filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$light', endColorstr='$light',GradientType=0 ); /* IE6-9 */
|
||||
// }
|
||||
@@ -0,0 +1,29 @@
|
||||
/***** SETTINGS *****/
|
||||
input[name='attr_page']:not([value='one']) ~ div.sheet-page-one,
|
||||
input[name='attr_page']:not([value='two']) ~ div.sheet-page-two {
|
||||
@extend %display-none;
|
||||
}
|
||||
|
||||
div.sheet-collapse,
|
||||
.sheet-settings {
|
||||
opacity: 0;
|
||||
height: 0;
|
||||
transition: all .5s;
|
||||
}
|
||||
|
||||
input[name*='collapse']:hover + span,
|
||||
input[name*='settings']:hover + span {
|
||||
color: $primary;
|
||||
transform: scale(1.2);
|
||||
}
|
||||
|
||||
input[name*='collapse']:checked ~ div.sheet-collapse,
|
||||
input[name*='settings']:checked ~ div.sheet-settings {
|
||||
opacity: 1;
|
||||
height: 100%;
|
||||
transition: all .5s;
|
||||
}
|
||||
|
||||
input[name*='settings']:not(:checked) ~ div.sheet-settings {
|
||||
display: none;
|
||||
}
|
||||
@@ -0,0 +1,165 @@
|
||||
div.sheet-pc {
|
||||
padding: 2% 1%;
|
||||
grid-template-columns: 3fr 2fr 0.5fr;
|
||||
grid-row-gap: 1%;
|
||||
|
||||
input[type='number'] {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sheet-colon:after {
|
||||
content: ':'
|
||||
}
|
||||
|
||||
div.sheet-box {
|
||||
background-color: $gray;
|
||||
-moz-box-shadow: inset 0 0 10px #00000024;
|
||||
-webkit-box-shadow: inset 0 0 10px #00000024;
|
||||
box-shadow: inset 0 0 10px #00000024;
|
||||
padding: 2% 1%;
|
||||
}
|
||||
|
||||
div.sheet-logo-row {
|
||||
grid-column-gap: 5%;
|
||||
align-items: end;
|
||||
grid-template-columns: 1fr 20% 250px;
|
||||
|
||||
div.sheet-page-select {
|
||||
grid-template-columns: auto 1fr 1fr;
|
||||
|
||||
div.sheet-button {
|
||||
color: black;
|
||||
border: 2px solid black;
|
||||
text-align: center;
|
||||
border-radius: 10px;
|
||||
|
||||
div.sheet-option,
|
||||
input {
|
||||
grid-area: 1 / 1 / 1 / 1;
|
||||
min-height: 2rem;
|
||||
}
|
||||
|
||||
input:checked ~ div.sheet-option {
|
||||
color: white;
|
||||
background-color: $primary;
|
||||
border-radius: 0.8rem;
|
||||
}
|
||||
}
|
||||
|
||||
input[type='radio'] {
|
||||
opacity: 0;
|
||||
height: auto;
|
||||
width: 100%;
|
||||
z-index: 2;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-logo {
|
||||
justify-content: end;
|
||||
|
||||
img {
|
||||
max-height: 100px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-character-info {
|
||||
grid-row-gap: 5%;
|
||||
|
||||
h2 {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
|
||||
div.sheet-name-row {
|
||||
grid-template-columns: 2fr 1fr 2fr;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-personality-row {
|
||||
align-items: start;
|
||||
grid-row-gap: 5%;
|
||||
|
||||
h2 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.5rem;
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
|
||||
textarea {
|
||||
resize: none;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
div.sheet-personality,
|
||||
div.sheet-origin {
|
||||
textarea {
|
||||
height: 40px;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-mannerism {
|
||||
textarea {
|
||||
height: 86px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@import 'sections/wastah-section';
|
||||
|
||||
div.sheet-traits {
|
||||
grid-gap: unset;
|
||||
@extend %middle-column;
|
||||
|
||||
h2 {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
@import 'traits/trait';
|
||||
|
||||
@import 'traits/intellect';
|
||||
@import 'traits/agility';
|
||||
@import 'traits/persuasion';
|
||||
|
||||
@import 'traits/experience';
|
||||
|
||||
@import 'traits/awareness';
|
||||
@import 'traits/presence';
|
||||
@import 'traits/stamina';
|
||||
@import 'traits/willpower';
|
||||
@import 'traits/strength';
|
||||
|
||||
}
|
||||
|
||||
@import 'skills-row/skills-row';
|
||||
|
||||
div.sheet-character-history {
|
||||
div.sheet-rowx {
|
||||
grid-template-columns: 1fr repeat(2, 1.5rem);
|
||||
}
|
||||
|
||||
@include collapseSettingsInputs(3)
|
||||
|
||||
div.sheet-collapse,
|
||||
div.sheet-settings {
|
||||
grid-column: 1 / 4;
|
||||
margin: 1% 2%
|
||||
}
|
||||
|
||||
textarea {
|
||||
min-height: 50px;
|
||||
height: 75px;
|
||||
border: 1px dotted $primary;
|
||||
}
|
||||
|
||||
div.sheet-box {
|
||||
min-height: 20rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@import 'sections/movement-section';
|
||||
|
||||
@import 'sections/weapons-section';
|
||||
@@ -0,0 +1,165 @@
|
||||
div.sheet-movement-section {
|
||||
display: inline-block;
|
||||
|
||||
h2 {
|
||||
@extend .sheet-text-center;
|
||||
@extend .sheet-text-uppercase;
|
||||
}
|
||||
|
||||
input[type='number'],
|
||||
input[type='text'] {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
span.sheet-subheader {
|
||||
font-size: 1.3rem;
|
||||
}
|
||||
|
||||
div.sheet-movement-column,
|
||||
div.sheet-wealth-column {
|
||||
@extend %partial-column;
|
||||
}
|
||||
|
||||
div.sheet-speed-total,
|
||||
div.sheet-defence-value-total {
|
||||
position: relative;
|
||||
height: 5rem;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
z-index: 0;
|
||||
height: 5rem
|
||||
}
|
||||
|
||||
label {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@extend %circle-input;
|
||||
}
|
||||
|
||||
div.sheet-speed-total {
|
||||
&::before {
|
||||
transform: rotate(-125deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-box {
|
||||
min-height: 200px;
|
||||
padding: 1% 5%;
|
||||
|
||||
&:nth-of-type(1n+2) {
|
||||
margin-top: 10%;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-armor-column {
|
||||
display: inline-block;
|
||||
background-image: $silhouette;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
@extend %middle-column;
|
||||
|
||||
h2 {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
textarea {
|
||||
height: 50%;
|
||||
resize: none;
|
||||
overflow-x: hidden;
|
||||
border: 2px solid #e4e5e6;
|
||||
}
|
||||
|
||||
div.sheet-armor {
|
||||
position: relative;
|
||||
min-height: 8rem;
|
||||
width: 100%;
|
||||
|
||||
div.sheet-armour-input {
|
||||
position: relative;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
label, input {
|
||||
min-height: 3.5rem;
|
||||
}
|
||||
|
||||
input {
|
||||
border-radius: 2rem;
|
||||
width: 100%;
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-content {
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
div.sheet-body {
|
||||
align-self: center;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-head,
|
||||
div.sheet-arms {
|
||||
grid-template-columns: 7.5rem 40%;
|
||||
justify-content: end;
|
||||
|
||||
div.sheet-armour-input {
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-torso,
|
||||
div.sheet-legs {
|
||||
grid-template-columns: 40% 7.5rem;
|
||||
|
||||
div.sheet-armour-input {
|
||||
grid-area: 1/ 2 / 1 / 3;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-body {
|
||||
grid-area: 1 / 1 / 1 / 2;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-head,
|
||||
div.sheet-arms {
|
||||
&::before {
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-torso,
|
||||
div.sheet-legs {
|
||||
&::before {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-damage-reduction {
|
||||
div.sheet-header {
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
div.sheet-content {
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
}
|
||||
|
||||
@extend %circle-input;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,167 @@
|
||||
div.sheet-wastah-section {
|
||||
display: inline-block;
|
||||
margin-bottom: -2%;
|
||||
|
||||
div.sheet-wastah,
|
||||
div.sheet-enlightenment {
|
||||
@extend %partial-column;
|
||||
}
|
||||
|
||||
div.sheet-wastah,
|
||||
div.sheet-enlightenment {
|
||||
div.sheet-sanity-row,
|
||||
div.sheet-health-row {
|
||||
grid-row-gap: unset;
|
||||
|
||||
label {
|
||||
display: grid;
|
||||
justify-items: center;
|
||||
}
|
||||
|
||||
input {
|
||||
border: none;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
div.sheet-header {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
div.sheet-input {
|
||||
position: relative;
|
||||
|
||||
input[type='number']:hover,
|
||||
input[type='number']:focus {
|
||||
border-radius: 2rem;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-sanity-row {
|
||||
grid-template-rows: 5rem repeat(3, 3.8rem);
|
||||
width: 115%;
|
||||
}
|
||||
|
||||
div.sheet-health-row {
|
||||
grid-template-rows: 5rem repeat(4, 3.8rem);
|
||||
}
|
||||
|
||||
div.sheet-sanity,
|
||||
div.sheet-health,
|
||||
div.sheet-total {
|
||||
grid-column-gap: 2%;
|
||||
}
|
||||
|
||||
div.sheet-sanity,
|
||||
div.sheet-health {
|
||||
grid-template-columns: 5rem auto;
|
||||
grid-template-rows: 5rem;
|
||||
|
||||
div.sheet-input {
|
||||
input[type='number'] {
|
||||
width: 3.5rem;
|
||||
}
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle3);
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
%smallinput {
|
||||
grid-template-columns: 3.8rem auto;
|
||||
position: relative;
|
||||
|
||||
div.sheet-input {
|
||||
input[type='number'] {
|
||||
width: 3rem;
|
||||
}
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-total {
|
||||
left: 16%;
|
||||
position: relative;
|
||||
top: -30%;
|
||||
|
||||
@extend %smallinput;
|
||||
|
||||
div.sheet-input {
|
||||
&::before {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-anxious-hurt {
|
||||
@extend %smallinput;
|
||||
left: 5%;
|
||||
top: -55%;
|
||||
|
||||
div.sheet-input {
|
||||
&::before {
|
||||
transform: rotate(50deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-disturbed-injured {
|
||||
@extend %smallinput;
|
||||
left: 15%;
|
||||
top: -75%;
|
||||
|
||||
div.sheet-input {
|
||||
&::before {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-dead {
|
||||
@extend %smallinput;
|
||||
left: 5%;
|
||||
top: -90%;
|
||||
|
||||
div.sheet-input {
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
transform: rotate(95deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-madness {
|
||||
margin-top: -10%;
|
||||
|
||||
input[type='text'] {
|
||||
@extend .sheet-bottom-border;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-box {
|
||||
min-height: 300px;
|
||||
}
|
||||
|
||||
div.sheet-descriptor {
|
||||
grid-template-columns: 1.5rem 1fr repeat(2, 1.5rem);
|
||||
grid-column-gap: 3%;
|
||||
|
||||
button[type='roll'] {
|
||||
width: 95%;
|
||||
}
|
||||
|
||||
@include collapseSettingsInputs(4)
|
||||
|
||||
div.sheet-collapse,
|
||||
div.sheet-settings {
|
||||
grid-column: 1 / 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
div.sheet-weapons-section {
|
||||
$weaponGrid: 2fr repeat(6, 5rem) 1fr 1fr repeat(2, 1.5rem);
|
||||
|
||||
div.sheet-headers {
|
||||
grid-template-columns: $weaponGrid;
|
||||
}
|
||||
|
||||
div.sheet-repeating-container {
|
||||
div.sheet-descriptor {
|
||||
grid-template-columns: $weaponGrid;
|
||||
grid-gap: 0.5%;
|
||||
|
||||
button {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
input[name='attr_collapse'],
|
||||
input[name='attr_collapse'] + span {
|
||||
grid-column: 11 / 12;
|
||||
}
|
||||
|
||||
input[name='attr_settings'],
|
||||
input[name='attr_settings'] + span {
|
||||
grid-column: 12 / 13;
|
||||
}
|
||||
|
||||
div.sheet-collapse,
|
||||
div.sheet-settings {
|
||||
grid-column: 1 / 13;
|
||||
}
|
||||
}
|
||||
|
||||
.repitem {
|
||||
@extend .sheet-bottom-border;
|
||||
}
|
||||
|
||||
div.sheet-column {
|
||||
border-left: 1px solid black;
|
||||
|
||||
span {
|
||||
padding: 0px 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-weapon {
|
||||
grid-template-columns: 30% repeat(3, 1fr);
|
||||
|
||||
div.sheet-name {
|
||||
grid-area: 1 / 1 / 1 / 5;
|
||||
}
|
||||
|
||||
div.sheet-properties {
|
||||
grid-area: 2 / 1 / 2 / 2;
|
||||
}
|
||||
|
||||
div.sheet-special {
|
||||
grid-area: 3 / 1 / 3 / 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
div.sheet-skills-row {
|
||||
display: inline-block;
|
||||
|
||||
input[type='number'] {
|
||||
@extend .sheet-bottom-border;
|
||||
}
|
||||
|
||||
select {
|
||||
color: black;
|
||||
}
|
||||
|
||||
div.sheet-benefits,
|
||||
div.sheet-skills {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
width: 49.5%;
|
||||
|
||||
&:nth-of-type(1) {
|
||||
margin-right: 1%;
|
||||
}
|
||||
}
|
||||
|
||||
input[name='attr_cost'],
|
||||
input[name='attr_rank'] {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sheet-collapse {
|
||||
div.sheet-header {
|
||||
grid-template-columns: 3fr 2fr 1fr;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-powers {
|
||||
div.sheet-header,
|
||||
div.sheet-descriptor {
|
||||
grid-template-columns: 1fr 25% repeat(2, 1.5rem);
|
||||
}
|
||||
|
||||
div.sheet-collapse {
|
||||
div.sheet-grid {
|
||||
grid-template-columns: 1fr auto 5rem;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-descriptor {
|
||||
input[name='attr_collapse'],
|
||||
input[name='attr_collapse'] + span {
|
||||
grid-column: 3;
|
||||
}
|
||||
|
||||
input[name='attr_settings'],
|
||||
input[name='attr_settings'] + span {
|
||||
grid-column: 4;
|
||||
}
|
||||
|
||||
div.sheet-collapse,
|
||||
div.sheet-settings {
|
||||
grid-column: 1 / 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-skills {
|
||||
div.sheet-header,
|
||||
div.sheet-descriptor {
|
||||
grid-template-columns: 1.5fr 1fr 0.5fr repeat(2, 1.5rem);
|
||||
}
|
||||
|
||||
div.sheet-collapse {
|
||||
div.sheet-grid {
|
||||
grid-template-columns: 1fr auto 5rem;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-settings {
|
||||
div.sheet-grid {
|
||||
grid-template-columns: auto 1fr auto 5rem;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-descriptor {
|
||||
input[name='attr_collapse'],
|
||||
input[name='attr_collapse'] + span {
|
||||
grid-column: 4;
|
||||
}
|
||||
|
||||
input[name='attr_settings'],
|
||||
input[name='attr_settings'] + span {
|
||||
grid-column: 5;
|
||||
}
|
||||
|
||||
div.sheet-collapse,
|
||||
div.sheet-settings {
|
||||
grid-column: 1 / 6;
|
||||
}
|
||||
}
|
||||
|
||||
span[name='attr_specialization'] {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
div.sheet-agility {
|
||||
grid-area: 1 / 3 / 1 / 4;
|
||||
@extend %traitRowTop;
|
||||
top: 28%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 1;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 1 / 3 / 3 / 5;
|
||||
left: 15%;
|
||||
top: 20%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
transform: rotate(10deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 2 / 1 / 4 / 4;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle2);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
div.sheet-awareness {
|
||||
grid-area: 2 / 4 / 2 / 5;
|
||||
@extend %traitRowTop;
|
||||
right: 21%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 1;
|
||||
text-align: left;
|
||||
|
||||
h2 {
|
||||
margin-top: 5%;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 1 / 3 / 4 / 5;
|
||||
left: 30%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
transform: rotate(-90deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 2 / 1 / 4 / 4;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle1);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
div.sheet-experience {
|
||||
grid-area: 2 / 2 / 4 / 4;
|
||||
grid-template-rows: 66% 1fr;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
transform: scale(0.88);
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle1);
|
||||
transform: rotate(-90deg);
|
||||
min-height: 180px;
|
||||
}
|
||||
|
||||
div.sheet-header {
|
||||
grid-area: 2 / 2 / 2 / 4;
|
||||
}
|
||||
|
||||
div.sheet-input {
|
||||
grid-area: 1 / 1 / 1 / 5;
|
||||
padding: 20% 5% 10%;
|
||||
|
||||
label {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
input[type='number'] {
|
||||
border: none;
|
||||
font-size: 4.5rem;
|
||||
height: 100%;
|
||||
border-radius: 2rem 2rem 0rem 0rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
div.sheet-intellect {
|
||||
grid-area: 1 / 2 / 1 / 3;
|
||||
@extend %traitRowTop;
|
||||
top: 28%;
|
||||
right: 10%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 1;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 1 / 1 / 3 / 3;
|
||||
right: 15%;
|
||||
top: 24%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 2 / 2 / 4 / 5;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle3);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
div.sheet-persuasion {
|
||||
grid-area: 2 / 1 / 2 / 2;
|
||||
@extend %traitRowTop;
|
||||
left: 20%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 1;
|
||||
text-align: right;
|
||||
|
||||
h2 {
|
||||
margin-top: 5%;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 1 / 1 / 4 / 3;
|
||||
right: 35%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 2 / 2 / 4 / 5;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle4);
|
||||
transform: rotate(100deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
div.sheet-presence {
|
||||
grid-area: 3 / 1 / 3 / 2;
|
||||
@extend %headerRowBottom;
|
||||
left: 22%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 3;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 1 / 1 / 3 / 3;
|
||||
right: 30%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 1 / 2 / 3 / 5;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle1);
|
||||
transform: rotate(-100deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
div.sheet-stamina {
|
||||
grid-area: 3 / 4 / 3 / 5;
|
||||
@extend %headerRowBottom;
|
||||
right: 22%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 3;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 1 / 3 / 3 / 5;
|
||||
left: 30%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 1 / 1 / 3 / 4;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle4);
|
||||
transform: rotate(-10deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
div.sheet-strength {
|
||||
grid-area: 4 / 3 / 4 / 4;
|
||||
@extend %headerRowBottom;
|
||||
bottom: 30%;
|
||||
left: 10%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 3;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 2 / 3 / 3 / 5;
|
||||
left: 20%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle1);
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 1 / 1 / 3 / 4;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle3);
|
||||
transform: rotate(190deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
div.sheet-trait {
|
||||
min-height: 110px;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
|
||||
button[type='roll'] {
|
||||
font-size: 1.3rem;
|
||||
text-align: left;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
label {
|
||||
height: 100%;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
input[type='number'] {
|
||||
border: none;
|
||||
border-radius: 1rem;
|
||||
|
||||
&:hover {
|
||||
@extend .sheet-bottom-border;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-header {
|
||||
grid-column: 1 / 5;
|
||||
}
|
||||
|
||||
div.sheet-modifier,
|
||||
div.sheet-score {
|
||||
display: grid;
|
||||
position: relative;
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
input[type='number'] {
|
||||
font-size: 2.5rem;
|
||||
min-height: 3rem;
|
||||
}
|
||||
|
||||
&:before {
|
||||
min-height: 50px;
|
||||
min-width: 50px;
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
input[type='number'] {
|
||||
font-size: 3.5rem;
|
||||
min-height: 4rem;
|
||||
}
|
||||
|
||||
&:before {
|
||||
min-height: 80px;
|
||||
min-width: 80px;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
div.sheet-willpower {
|
||||
grid-area: 4 / 2 / 4 / 3;
|
||||
@extend %headerRowBottom;
|
||||
bottom: 30%;
|
||||
|
||||
div.sheet-header {
|
||||
grid-row: 3;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sheet-modifier {
|
||||
grid-area: 2 / 1 / 3 / 3;
|
||||
right: 20%;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-inner-circle2);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
}
|
||||
|
||||
div.sheet-score {
|
||||
grid-area: 1 / 2 / 3 / 5;
|
||||
|
||||
&::before {
|
||||
@include traitImage($trait-circle4);
|
||||
transform: rotate(40deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
{
|
||||
"black void" :"black void"
|
||||
,"name" :"name"
|
||||
,"player name" :"player name"
|
||||
,"notes":"notes"
|
||||
,"personality":"personality"
|
||||
,"desire and motivation":"desire and motivation"
|
||||
,"dislikes secrets regrets": "dislikes, secrets and regrets"
|
||||
,"philosophy principles":"philosophy & principles"
|
||||
,"quirk and habits":"quirk and habits"
|
||||
,"sayings":"sayings"
|
||||
,"species":"species"
|
||||
,"homeworld":"homeworld"
|
||||
,"gender":"gender"
|
||||
,"age":"age"
|
||||
,"skin":"skin"
|
||||
,"eyes":"eyes"
|
||||
,"hair":"hair"
|
||||
,"build":"build"
|
||||
,"appearence":"appearence"
|
||||
,"origin":"origin"
|
||||
,"mannerism":"mannerism"
|
||||
,"ancestry and relations":"ancestry and relations"
|
||||
,"caste":"caste"
|
||||
,"faction and allegiance":"faction and allegiance"
|
||||
,"occupation":"occupation"
|
||||
,"patron":"patron"
|
||||
,"wastah":"wastah"
|
||||
,"enlightenment":"enlightenment"
|
||||
,"intellect":"intellect"
|
||||
,"persuasion":"persuasion"
|
||||
,"agility":"agility"
|
||||
,"experience points":"experience points"
|
||||
,"awareness":"awareness"
|
||||
,"presence":"presence"
|
||||
,"stamina":"stamina"
|
||||
,"willpower":"willpower"
|
||||
,"strength":"strength"
|
||||
,"sanity":"sanity"
|
||||
,"total sanity":"total sanity"
|
||||
,"anxious (+1 to madness)":"anxious (+1 to madness)"
|
||||
,"disturbed (+3 to madness)":"disturbed (+3 to madness)"
|
||||
,"madness":"madness"
|
||||
,"health":"health"
|
||||
,"total health":"total health"
|
||||
,"hurt":"hurt"
|
||||
,"hurt (-1 penality)":"hurt (-1 penality)"
|
||||
,"injured":"injured"
|
||||
,"injured (-3 penality)":"injured (-3 penality)"
|
||||
,"dead":"dead"
|
||||
,"benefit":"benefit"
|
||||
,"cost":"cost"
|
||||
,"background":"background"
|
||||
,"talent":"talent"
|
||||
,"attribute":"attribute"
|
||||
,"powers":"powers"
|
||||
,"rank":"rank"
|
||||
,"description":"description"
|
||||
,"specialization":"specialization"
|
||||
,"combat skills":"combat skills"
|
||||
,"skills":"skills"
|
||||
,"other":"other"
|
||||
,"type":"type"
|
||||
,"Background / Attributes / Talents":"Background / Attributes / Talents"
|
||||
,"trait":"trait"
|
||||
,"modifier":"modifier"
|
||||
,"friend allies": "friend & allies"
|
||||
,"known enemies": "known enemies"
|
||||
,"notable people": "notable people"
|
||||
,"notable experiences":"notable experiences"
|
||||
,"character history":"character history"
|
||||
,"movement":"movement"
|
||||
,"(km/hour)":"(km/hour)"
|
||||
,"walking speed":"walking speed"
|
||||
,"running speed (x2)":"running speed (x2)"
|
||||
,"sprinting speed (x4)":"sprinting speed (x4)"
|
||||
,"combat speed": "combat speed"
|
||||
,"(meters/round)": "(meters/round)"
|
||||
,"defence value":"defence value"
|
||||
,"agility modifier":"agility modifier"
|
||||
,"skill modifier": "skill modifier"
|
||||
,"shield modifier":"shield modifier"
|
||||
,"other modifiers":"other modifiers"
|
||||
,"armour, tattoo's & graftings":"armour, tattoo's & graftings"
|
||||
,"wealth":"wealth"
|
||||
,"property / assets":"property / assets"
|
||||
,"size":"size"
|
||||
,"range":"range"
|
||||
,"attack modifier":"attack modifier"
|
||||
,"speed":"speed"
|
||||
,"damage":"damage"
|
||||
,"properties":"properties"
|
||||
,"special":"special"
|
||||
,"equipment":"equipment"
|
||||
,"weapons":"Weapons"
|
||||
,"bulk, properties, & other":"bulk, properties, & other"
|
||||
,"damage reduction":"damage reduction"
|
||||
,"(accumulated total)":"(accumulated total)"
|
||||
,"head":"head"
|
||||
,"torso":"torso"
|
||||
,"arms":"arms"
|
||||
,"legs":"legs"
|
||||
,"page":"page"
|
||||
,"bulk":"bulk"
|
||||
,"legs description":"legs description"
|
||||
,"torso description":"torso description"
|
||||
,"arms description":"arms description"
|
||||
,"head description":"head description"
|
||||
,"running speed":"running speed"
|
||||
,"sprinting speed":"sprint speed"
|
||||
,"property assets":"property assets"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
# Roll20-Kamigakari
|
||||
|
||||
|
||||
|
||||
This is a character sheet for Kamigakari: God Hunters.
|
||||
|
||||
Use the check boxes to keep track of spent spirit dice, then hit the spirit pool button to roll those dice.
|
||||
The track button next 'Initiative' to adds that character to the initiative tracker. You must have the token selected.
|
||||
|
||||
The Mononoke tab is for both contractors and Mononoke. For macro use all stats start with mononoke_ but are otherwise as they appear on the ship for example:
|
||||
|
||||
mononoke_acc
|
||||
mononoke_Initiative
|
||||
|
||||
Thanks to Jakob for the Text Expanding Area CSS and plexsoup for the working tabs
|
||||