mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 03:40:32 +00:00
Merge pull request #15208 from WilliamBarkerCoC/AFF2e.wb1
[Advanced Fighting Fantasy 2e] New Sheet
This commit is contained in:
+381
@@ -0,0 +1,381 @@
|
||||
@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Eagle+Lake&display=swap");
|
||||
|
||||
.ui-dialog .charsheet button[type=roll].nb::before {
|
||||
content: "";
|
||||
}
|
||||
div.page1 {
|
||||
width: 820px;
|
||||
height: 1080px;
|
||||
margin: -10px 0px 0px 0px;
|
||||
border: 2px solid Black;
|
||||
background-color: transparent;
|
||||
/* background-image: url('https://github.com/WilliamBarkerCoC/Public-Domain-Images/blob/main/advanced-fighting-fantasy-2e.jpg?raw=true'); */
|
||||
}
|
||||
input[type="text"].gqInput {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
width: 30px;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
background-color: transparent;
|
||||
margin: 4px 1px 0px 6px;
|
||||
padding: 0px;
|
||||
border-radius: 0;
|
||||
border: 0;
|
||||
border-bottom: 2px solid DimGray;
|
||||
}
|
||||
|
||||
/* General Styles */
|
||||
|
||||
.charsheet input[type="text"], textarea{
|
||||
display: inline-block;
|
||||
color: black;
|
||||
}
|
||||
.charsheet textarea{
|
||||
border-left: black solid 1px;
|
||||
resize: none;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.charsheet button{
|
||||
text-align: left;
|
||||
color: black;
|
||||
}
|
||||
.charsheet button:hover{
|
||||
background: black;
|
||||
color: #968c6a;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.charsheet input:focus, .charsheet textarea:focus{
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.charsheet input[type=checkbox]{
|
||||
opacity: 0;
|
||||
margin-right: -1.5em;
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
}
|
||||
.charsheet input[type=checkbox] + span:before{
|
||||
content: "❌";
|
||||
border: 2px solid black;
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
color: #00000000;
|
||||
font-size: 1em;
|
||||
}
|
||||
.charsheet input[type=checkbox]:checked + span:before{
|
||||
color: #000000FF;
|
||||
}
|
||||
|
||||
|
||||
input[type="checkbox"].sheet-toggle-show:not(:checked) ~ div.sheet-body {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Background Color/Image Option */
|
||||
.charsheet .sheet-hidden {
|
||||
display:none;
|
||||
}
|
||||
|
||||
|
||||
.charsheet .hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.charsheet .background1, .background2, .background3, .background4, .background5{
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
width: 120px;
|
||||
height: 170px;
|
||||
margin: -8px 0px 0px 0px;
|
||||
background-color: transparent;
|
||||
background-image: url('https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/goblin%20quest/GoblinQuest_Goblin.png');
|
||||
color: black;
|
||||
}
|
||||
|
||||
/* Alive */
|
||||
.charsheet .background-selection1[value='1']:checked ~ .background1,
|
||||
.charsheet .background-selection2[value='1']:checked ~ .background2,
|
||||
.charsheet .background-selection3[value='1']:checked ~ .background3,
|
||||
.charsheet .background-selection4[value='1']:checked ~ .background4,
|
||||
.charsheet .background-selection5[value='1']:checked ~ .background5 {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
width: 120px;
|
||||
height: 170px;
|
||||
margin: 0px 0px 0px 0px;
|
||||
background-color: transparent;
|
||||
background-image: url('https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/goblin%20quest/GoblinQuest_Goblin.png');
|
||||
color: black;
|
||||
|
||||
}
|
||||
|
||||
/* Dead */
|
||||
.charsheet .background-selection1[value='0']:checked ~ .background1,
|
||||
.charsheet .background-selection2[value='0']:checked ~ .background2,
|
||||
.charsheet .background-selection3[value='0']:checked ~ .background3,
|
||||
.charsheet .background-selection4[value='0']:checked ~ .background4,
|
||||
.charsheet .background-selection5[value='0']:checked ~ .background5 {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
width: 120px;
|
||||
height: 170px;
|
||||
margin: 0px 0px 0px 0px;
|
||||
background-color: transparent;
|
||||
background-image: url('https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/goblin%20quest/GoblinQuest_GoblinX.png');
|
||||
background-repeat: no-repeat;
|
||||
color: black;
|
||||
}
|
||||
|
||||
/* End CSS Wizardry */
|
||||
|
||||
|
||||
/* From https://stackoverflow.com/questions/75992689/change-the-label-background-color-when-a-checkbox-is-checked */
|
||||
input[type="checkbox"] {
|
||||
display: none;
|
||||
text-align: left;
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
input[type="checkbox"]:checked + label {
|
||||
color: DarkRed;
|
||||
text-align: left;
|
||||
/*font-size: 1.0em; */
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
/* Darkmode from Aborea - Don't know if needed */
|
||||
body.sheet-darkmode button,
|
||||
body.sheet-darkmode input,
|
||||
body.sheet-darkmode optgroup,
|
||||
body.sheet-darkmode select,
|
||||
body.sheet-darkmode textarea,
|
||||
body.sheet-darkmode .charsheet {
|
||||
color: #eee
|
||||
}
|
||||
body.sheet-darkmode .btn,
|
||||
body.sheet-darkmode .btn.btn-default {
|
||||
/* color: #c8c3bc; */
|
||||
/* text-shadow: rgba(24,26,27,.75) 0px 1px 1px;*/
|
||||
/* background-color: #1e2021;*/
|
||||
/* background-image: linear-gradient(#181a1b, #26292b); */
|
||||
/* border-color: #3e4446 #3e4446 #43494c;*/
|
||||
/* box-shadow: rgba(24,26,27,.2) 0px 1px 0px inset,rgba(0,0,0,.05) 0px 1px 2px */
|
||||
}
|
||||
body.sheet-darkmode .sheet-rolltemplate-check button {
|
||||
background-color: Brown ;
|
||||
}
|
||||
|
||||
body.sheet-darkmode .sheet-rolltemplate-initiative .inlinerollresult {
|
||||
color: Red;
|
||||
background-color: Yellow;
|
||||
border: none;
|
||||
}
|
||||
/* Buttons Styling */
|
||||
|
||||
.charsheet button[type=action].sheet-textButton,
|
||||
.charsheet button[type=roll].sheet-textButton {
|
||||
background-color: transparent;
|
||||
color: black;
|
||||
border: none;
|
||||
height: 18px;
|
||||
width: 136px;
|
||||
font-size: 1.8em;
|
||||
font-weight: bold;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
|
||||
.charsheet button[type=roll].sheet-attack-button {
|
||||
color: #cc0000;
|
||||
background-color: white;
|
||||
background-image: none;
|
||||
height: 16px;
|
||||
width: 12px;
|
||||
font-size: 1em;
|
||||
border: 1px solid #cc0000;
|
||||
text-shadow: none;
|
||||
box-shadow: none;
|
||||
font-family: "dicefontd20";
|
||||
content: "j";
|
||||
margin: 0px 0px 0px 2px;
|
||||
padding: 1px 1px 1px 1px;
|
||||
}
|
||||
|
||||
.charsheet label.sheet-attack-button {
|
||||
box-sizing: content-box;
|
||||
color: rgb(0, 59, 111);
|
||||
background-color: white;
|
||||
background-image: none;
|
||||
height: 24px;
|
||||
width: 14px;
|
||||
font-size: 1.4em;
|
||||
border: 0px solid #cc0000;
|
||||
text-shadow: none;
|
||||
box-shadow: none;
|
||||
font-family: "dicefontd20";
|
||||
margin: 0px 0px 0px 4px;
|
||||
padding: 0px 1px 0px 1px;
|
||||
}
|
||||
|
||||
.charsheet button[type=roll].sheet-textButton::before,
|
||||
.charsheet button[type=action].sheet-textButton::before {
|
||||
content: "" !important;
|
||||
}
|
||||
|
||||
|
||||
button[type=action]:hover, button[type=roll]:hover {
|
||||
background-color: rgba(255,255,0,0.3)!important;
|
||||
}
|
||||
|
||||
.charsheet button[type=roll].sheet-blank-button::before {
|
||||
content: '';
|
||||
}
|
||||
/*End Button Styling*/
|
||||
|
||||
|
||||
/* Roll Template */
|
||||
/* Check & Initiative Templates */
|
||||
.sheet-rolltemplate-check .sheet-container {
|
||||
color: Black;
|
||||
background-color: #ffffff;
|
||||
border: 1px solid;
|
||||
padding: 2px;
|
||||
width: 189px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-initiative .sheet-container {
|
||||
background-color: Thistle;
|
||||
color: Blue;
|
||||
border: 3px solid Blue;
|
||||
padding: 2px;
|
||||
width: 189px;
|
||||
}
|
||||
|
||||
|
||||
.sheet-rolltemplate-check .sheet-container h1,
|
||||
.sheet-rolltemplate-initiative .sheet-container h1{
|
||||
color: inherit;
|
||||
font-size: 1.2em;
|
||||
font-variant: small-caps;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-initiative div,
|
||||
.sheet-rolltemplate-check div {
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-check span,
|
||||
.sheet-rolltemplate-initiative span {
|
||||
color: currentColor;
|
||||
font-family: "Times New Roman", Times, serif;
|
||||
font-size: 1.2em;
|
||||
font-variant: small-caps;
|
||||
line-height: 1.4em;
|
||||
padding-left: 5px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-check .sheet-subheader,
|
||||
.sheet-rolltemplate-initiative .sheet-subheader {
|
||||
color: currentColor;
|
||||
font-size: 1em;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-check .sheet-arrow-right,
|
||||
.sheet-rolltemplate-initiative .sheet-arrow-right {
|
||||
border-bottom: 3px solid transparent;
|
||||
border-left: 180px solid currentColor;
|
||||
border-top: 3px solid transparent;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-initiative .sheet-tcat,
|
||||
.sheet-rolltemplate-check .sheet-tcat {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
||||
.sheet-rolltemplate-check .inlinerollresult {
|
||||
/*background-color: #ffffff;*/
|
||||
background-color: LightGray !important;
|
||||
border: none;
|
||||
}
|
||||
.sheet-rolltemplate-initiative .inlinerollresult {
|
||||
color: #FF8C00; /* DarkOrange */
|
||||
background-color: Yellow;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-check .inlinerollresult.fullcrit {
|
||||
color: #3FB315;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-check .inlinerollresult.fullfail {
|
||||
color: #B31515;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.sheet-rolltemplate-check .inlinerollresult.importandivoll {
|
||||
color: #4A57ED;
|
||||
border: none;
|
||||
}
|
||||
/* End Check & Initiative Templates */
|
||||
|
||||
/* TAB HANDLING */
|
||||
|
||||
.charsheet input[type=radio].sheet-page1,
|
||||
.charsheet input[type=radio].sheet-page2{
|
||||
display: none;
|
||||
float: left;
|
||||
}
|
||||
.charsheet input[type=radio].sheet-page1 + label,
|
||||
.charsheet input[type=radio].sheet-page2 + label{
|
||||
content: '';
|
||||
border: solid 1px black;
|
||||
background: white;
|
||||
color: black;
|
||||
font-weight: bold;
|
||||
width: auto;
|
||||
text-align: center;
|
||||
padding: 0 2px;;
|
||||
float: left;
|
||||
}
|
||||
.charsheet input[type=radio]:hover + label{
|
||||
background: #990000;
|
||||
}
|
||||
.charsheet input[type=radio]:checked + label{
|
||||
background: black;
|
||||
color: white;
|
||||
}
|
||||
.charsheet div.sheet-page1, .charsheet div.sheet-page2 {
|
||||
display: none;
|
||||
}
|
||||
.charsheet input.sheet-page1:checked ~ div.sheet-page1, .charsheet input.sheet-page2:checked ~ div.sheet-page2 {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Tome Tab Handling, borrowed from Roll20 CSS Wizardry */
|
||||
/* configure the tab buttons */
|
||||
.charsheet .sheet-tome1,
|
||||
.charsheet .sheet-tome2,
|
||||
.charsheet .sheet-tome3 {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* style the active button */
|
||||
.charsheet .sheet-tabstoggle[value="tome1"] ~ div .sheet-button0 {outline: 1px solid red;}
|
||||
.charsheet .sheet-tabstoggle[value="tome2"] ~ div .sheet-button1 {outline: 1px solid red;}
|
||||
.charsheet .sheet-tabstoggle[value="tome3"] ~ div .sheet-button2 {outline: 1px solid red;}
|
||||
|
||||
/* show the selected tab */
|
||||
.charsheet .sheet-tabstoggle[value="tome1"] ~ div.sheet-tome1,
|
||||
.charsheet .sheet-tabstoggle[value="tome2"] ~ div.sheet-tome2,
|
||||
.charsheet .sheet-tabstoggle[value="tome3"] ~ div.sheet-tome3 {
|
||||
display: block;
|
||||
}
|
||||
+1902
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
After Width: | Height: | Size: 80 KiB |
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"html": "AFF2e.html",
|
||||
"css": "AFF2e.css",
|
||||
"authors": "Vialmada",
|
||||
"preview": "AFF2e_NoBackground.png",
|
||||
"roll20userid": "6040293",
|
||||
"instructions": "## Advanced Fighting Fantasy is an **unofficial** character sheet for Arion Games' RPG. The layout is awaiting permisson for a background from Dyson Logos, which the author is unable to contact.\n If you have any questions or comments, please contact Vialmada(6040293).\n",
|
||||
"legacy": false
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"advancedFightingFantasyCharacterSheet-c": "Advanced Fighting Fantasy Character Sheet",
|
||||
"name:-sc": "Name:",
|
||||
"ancestry:-sc": "Ancestry:",
|
||||
"socialClass:-sc": "Social Class:",
|
||||
"gender:-sc": "Gender:",
|
||||
"age:-sc": "Age:",
|
||||
"initial:-sc": "Initial:",
|
||||
"current:-sc": "Current:",
|
||||
"skill-sc": "Skill",
|
||||
"stamina-sc": "Stamina",
|
||||
"luck-sc": "Luck",
|
||||
"magic-sc": "Magic",
|
||||
"magicPoints-sc": "Magic Points",
|
||||
"MP":"MP",
|
||||
"If checked, Stamina used - otherwise Magic Points":"If checked, Stamina used - otherwise Magic Points",
|
||||
"specialSkills-sc": "Special Skills",
|
||||
"equipment-sc": "Equipment",
|
||||
|
||||
"talents-sc": "Talents",
|
||||
"experience-sc": "Experience",
|
||||
"weapons-sc": "Weapons",
|
||||
"armour-sc": "Armour",
|
||||
"provisions-sc": "Provisions",
|
||||
"treasure-sc": "Treasure",
|
||||
"spells-sc": "Spells",
|
||||
"tomes-sc": "Tomes",
|
||||
"tome1-sc": "Tome 1",
|
||||
"tome2-sc": "Tome 2",
|
||||
"tome3-sc": "Tome 3",
|
||||
"displaySpell-c":"Display Spell",
|
||||
"castSpell-c":"Cast Spell",
|
||||
"displaySpell-c":"Display Spell",
|
||||
"notes-sc": "Notes",
|
||||
"spellDescription-c":"Spell Description",
|
||||
"spellCost-c":"Spell Cost",
|
||||
"GP": "GP",
|
||||
"SP": "SP",
|
||||
|
||||
|
||||
"check-c":"Check: ",
|
||||
"roll:-c":"Roll: ",
|
||||
"result-c":"Result: ",
|
||||
"alert:-c":"Alert: ",
|
||||
"failure-c":"Failure",
|
||||
"success-c":"Success!",
|
||||
"critical-c":"Critical!!",
|
||||
"choose2xDamageOr":"Choose 2x Damage or ",
|
||||
"fumble-c":"Fumble",
|
||||
"for-l":" *for* ",
|
||||
"misfire:-c":"Misfire: ",
|
||||
"misfire-u":"MISFIRE",
|
||||
"damage:-c":"Damage: ",
|
||||
|
||||
"roll-c":"Roll",
|
||||
"bonus/penalty:-c":"Bonus/Penalty:",
|
||||
"check:-c":"Check:",
|
||||
"description:-c":"Description:",
|
||||
"opposedRoll-c":"Opposed Roll: higher wins",
|
||||
"testRoll-c":"Test Roll: roll below or equal to threshold",
|
||||
"crit:-c":"Crit:",
|
||||
"fumble:-c":"Fumble:",
|
||||
"special:-c":"Special:",
|
||||
"target:-c":"Target:",
|
||||
"result:-c":"Result:",
|
||||
"circumstance:-c":"Circumstance:",
|
||||
"success!-c":"Success!",
|
||||
"failure-c":"failure",
|
||||
"fumble-u":"FUMBLE",
|
||||
"special!-u":"SPECIAL!",
|
||||
"critical!!-u":"CRITICAL!!",
|
||||
|
||||
"disclaimer":"2020 Dyson Logos"
|
||||
}
|
||||
Reference in New Issue
Block a user