Initial build

This commit is contained in:
cbkcook
2022-01-27 21:51:31 -05:00
parent 3d440b6b52
commit 8f4bf8fa9f
4 changed files with 813 additions and 0 deletions
+726
View File
@@ -0,0 +1,726 @@
/*----------------- FONTS ------------------*/
@import url('https://fonts.googleapis.com/css?family=Balthazar|UnifrakturMaguntia&display=swap');
/*
regular text
font-family: 'Balthazar', serif;
headings
font-family: 'UnifrakturMaguntia', cursive;
*/
/*----------------- BACKGROUND ------------------*/
.charsheet {
background: none;
background-color:white;
background-size: 64px 128px;
background-repeat: round;
width: 830px;
height: auto;
}
/*----------------- GRIDS ------------------*/
.sheet-main {
}
.sheet-main-top {
display: grid;
width: 310px;
height: 50px;
grid-gap: 6px;
grid-template-columns: 310px;
grid-template-rows: 50px;
grid-template-areas:"topgrid";
}
/*----------------- 2 columned, 406px each ------------------*/
.sheet-main-pc {
display: block;
width: 820px;
height: auto;
grid-gap: 6px;
align-items: start;
grid-template-columns: 406px 406x;
grid-template-rows: minmax(min-content, max-content) ;
grid-template-areas:"pcinfo pcinfo"
"skillstyles skillstyles"
"focuses focuses"
"talents talents"
"weapons weapons"
"armor armor"
"items items"
"contacts contacts"
"bonecharms bonecharms"
"mana mana"
"powers powers"
"notes notes";
}
.sheet-main-npc {
display: block;
width: 820px;
height: auto;
grid-gap: 6px;
align-items: start;
grid-template-columns: 406px 406x;
grid-template-rows: minmax(min-content, max-content) ;
grid-template-areas:"npcinfo npcinfo"
"skillstyles skillstyles"
"focuses focuses"
"specialrules specialrules"
"weapons weapons"
"armor armor"
"items items"
"storyhooks storyhooks";
}
/*----------------- GENERAL CSS ------------------*/
textarea {
width: 70%;
height: 85%;
}
textarea.sheet-notetext{
width: 800px;
height: 140px;
}
.sheet-hidden {
display: none;
}
.sheet-section {
padding: 5px;
border-style: solid;
justify-content: center;
}
.sheet-flex-col {
display: flex;
flex-flow: row wrap;
/*justify-content: flex-start;*/
}
.sheet-flex-col-center {
display: flex;
flex-flow: row wrap;
justify-content: center;
align-content: center;
/*justify-content: flex-start;*/
}
.sheet-flex-center {
display: grid;
justify-content: center;
align-content: center;
}
.sheet-hide-section {
display: none;
}
/* --------------------------------Hide and Display section of Code-------------------------------- */
/* Configure the tab buttons*/
.sheet-main-pc,
.sheet-main-npc {display: none;}
/* show the selected tab */
.sheet-tabstoggle[value="pc"] ~ div.sheet-main-pc,
.sheet-tabstoggle[value="npc"] ~ div.sheet-main-npc {display: block;}
/*------------- Top Section -------------*/
.sheet-topgrid {
grid-area: topgrid;
align-self: self-start;
font-family: 'Balthazar', serif;
grid-template-columns: 200px 100px 50px 6px 50px 6px 50px 10px 70px 15px 60px 10px 70px 10px 70px;
display: grid;
grid-gap: 4px;
grid-template-rows: 30px;
}
label.sheet-big-label {
font-family: 'Balthazar', serif;
text-align: center;
color: black;
display: inline;
font-size: 1.5em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
}
.sheet-topgrid input[type=number].sheet-stat-inputs{
font-family: 'Balthazar', serif;
color: black;
display: inline;
height:30px;
width:40px;
text-align: center;
font-size: 1.5em;
}
.sheet-gamename {
grid-area: gamename;
background-image: url("https://i.ibb.co/yy2gL1K/red-giant-logo.png"); /*Red Giant logo, used with publisher permission*/
/*background-image: url("https://github.com/Roll20/roll20-character-sheets/blob/master/Red%20Giant/red_giant_logo.PNG?raw=true"); /*Red Giant logo, used with publisher permission*/
background-size: contain;
align-items: center;
justify-items: center;
}
button.sheet-radio-roll-state {
font-family: 'Balthazar', serif;
font-size: 1.5em;
color: black;
border-style: solid;
/*border-radius: 8px;*/
text-align: center;
line-height: 25px;
height: 25px;
}
button.sheet-radio-roll-state-advantage {
background-color: rgb(213, 235, 217);
}
button.sheet-radio-roll-state-flat {
background-color: rgb(235, 237, 235);
}
button.sheet-radio-roll-state-disadvantage {
background-color: rgb(230, 204, 208);
}
input.sheet-radio-roll-state[value="advantage"] ~ button.sheet-radio-roll-state-advantage {
background-color: rgb(149, 232, 164);
}
input.sheet-radio-roll-state[value="flat"] ~ button.sheet-radio-roll-state-flat {
/*background-color: rgb(160, 163, 160);*/
background-color: #888;
}
input.sheet-radio-roll-state[value="disadvantage"] ~ button.sheet-radio-roll-state-disadvantage {
background-color: rgb(212, 97, 115);
}
h1 {
font-family: 'Yeseva One', cursive;
color: white;
}
h2 {
font-family: 'Yeseva One', cursive;
color: black;
}
h2.sheet-middle-title{
font-family: 'Yeseva One', cursive;
color: white;
text-align: center;
display: inline;
font-size: 1.5em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
}
h2.sheet-left-title{
font-family: 'Yeseva One', cursive;
color: white;
display: inline;
font-size: 1.5em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
}
h2.sheet-middle-title-1{
font-family: 'Yeseva One', cursive;
color: white;
text-align: center;
display: inline;
font-size: 1.5em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
grid-column: 1 / -1;
}
label.sheet-middle-label {
font-family: 'Yeseva One', cursive;
text-align: center;
color: white;
display: inline;
font-size: 1.2em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
}
label.sheet-left-label{
font-family: 'Yeseva One', cursive;
color: white;
display: inline;
font-size: 1.2em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
}
label.sheet-left-label-small{
font-family: 'Yeseva One', cursive;
color: white;
display: inline;
font-size: 1em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
}
label.sheet-left-label-1 {
font-family: 'Yeseva One', cursive;
color: black;
display: inline;
font-size: 1.2em;
font-weight: normal;
line-height: 30px;
margin-bottom: 0px;
background-color: #FFFFF0;
background-repeat: repeat;
background-size: 70px;
grid-column: 1 / -1;
}
span.sheet-left-span {
font-family: 'Open Sans', sans-serif;
color: white;
display: inline;
font-size: 1em;
font-weight: normal;
line-height: 18px;
margin-bottom: 0px;
background: rgba(162, 159, 167, 0.5);
}
span.sheet-centre-span {
font-family: 'Open Sans', sans-serif;
color: white;
display: inline;
font-size: 1em;
font-weight: normal;
line-height: 18px;
margin-bottom: 0px;
background: rgba(162, 159, 167, 0.5);
margin: auto;
}
input.sheet-char-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:150px;
}
input.sheet-name-inputs{
color:white;
background: transparent;
border: none;
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:180px;
}
input.sheet-talent-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:200px;
}
input.sheet-talent-inputs-short{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:165px;
}
input.sheet-talent-inputs-long{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:302px;
}
input.sheet-talent-inputs-extra-long{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:474px;
}
input.sheet-specialrules-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:468px;
}
div.sheet-notes textarea,
div.sheet-storyhooks textarea {
font-family: 'Open Sans', sans-serif;
}
input.sheet-focus-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:97px;
}
input.sheet-readonly-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:130px;
}
.sheet-pcinfo input[type=number].sheet-char-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:150px;
}
.sheet-pcinfo input[type=number].sheet-char-inputs-short,
.sheet-focuses input[type=number].sheet-char-inputs-short,
.sheet-weapons input[type=number].sheet-char-inputs-short,
.sheet-armor input[type=number].sheet-char-inputs-short{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:61px;
}
.sheet-skillsstyles input[type=number].sheet-stat-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:40px;
text-align: center;
}
input.sheet-char-inputs-long{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:686px;
}
select.sheet-select-inputs{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:98px;
}
select.sheet-select-inputs-long{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:130px;
}
select.sheet-select-inputs-npc{
font-family: 'Open Sans', sans-serif;
display: inline;
height:30px;
width:134px;
}
input.sheet-stat-inputs {
font-family: 'Open Sans', sans-serif;
margin: auto;
display: inline;
height:25px;
width:25px;
}
input.sheet-truth-inputs {
font-family: 'Open Sans', sans-serif;
color: white;
justify-content: center;
align-content: center;
display: inline;
font-size: 1.5em;
font-weight: normal;
line-height: 20px;
width:386px;
margin-bottom: 0px;
}
.charsheet .repcontrol_add,
.charsheet .repcontrol_edit,
.charsheet .repcontrol_del {
font-family: 'Yeseva One', cursive;
background-color: #6b71a7;
background-image: none;
color: white;
width: 80px;
height: 25px;
border-style: none;
border-radius: 8px;
text-align: center;
}
.charsheet .repcontrol_add:hover,
.charsheet .repcontrol_edit:hover,
.charsheet .repcontrol_del:hover {
background-color: #868ac4;
}
button.sheet-selectbutton {
font-family: 'Yeseva One', cursive;
background-color: #6b71a7;
color: white;
width: 25px;
height: 25px;
border-style: none;
border-radius: 8px;
text-align: center;
}
.sheet-focuses button[type=roll].sheet-selectbutton-long {
font-family: 'Yeseva One', cursive;
background-color: #6b71a7;
color: white;
width: 200px;
height: 25px;
border-style: none;
border-radius: 8px;
text-align: center;
background-image: none;
}
.sheet-talents button[type=roll].sheet-usebutton,
.sheet-items button[type=roll].sheet-usebutton,
.sheet-bonecharms button[type=roll].sheet-usebutton,
.sheet-powers button[type=roll].sheet-usebutton,
.sheet-specialrules button[type=roll].sheet-usebutton {
font-family: 'Yeseva One', cursive;
background-color: #6b71a7;
color: white;
width: 40px;
height: 25px;
border-style: none;
border-radius: 8px;
text-align: center;
background-image: none;
}
button.sheet-tabbutton {
font-family: 'Yeseva One', cursive;
background-color: #6b71a7;
font-size: 150%;
color: white;
width: 140px;
height: 30px;
border-style: none;
border-radius: 8px;
}
button.sheet-tabbutton:hover,
button.sheet-selectbutton:hover,
.sheet-focuses button[type=roll].sheet-selectbutton-long:hover,
.sheet-talents button[type=roll].sheet-usebutton:hover,
.sheet-items button[type=roll].sheet-usebutton:hover,
.sheet-bonecharms button[type=roll].sheet-usebutton:hover,
.sheet-powers button[type=roll].sheet-usebutton:hover,
.sheet-specialrules button[type=roll].sheet-usebutton:hover {
background-color: #868ac4;
}
.sheet-focuses button[type=roll].sheet-selectbutton-long::before,
.sheet-skillstyles button[type=act].sheet-selectbutton::before,
.sheet-talents button[type=roll].sheet-usebutton:before,
.sheet-items button[type=roll].sheet-usebutton:before,
.sheet-bonecharms button[type=roll].sheet-usebutton:before,
.sheet-powers button[type=roll].sheet-usebutton:before,
.sheet-specialrules button[type=roll].sheet-usebutton:before {
content: "";
}
.sheet-tabselector {
grid-area: tabselector;
font-family: 'Yeseva One', cursive;
grid-template-columns: 200px 290px 150px 20px 150px ;
display: grid;
grid-template-rows: 50px;
grid-gap: 4px;
}
.sheet-pcinfo {
grid-area: pcinfo;
align-self: self-start;
font-family: 'Yeseva One', cursive;
grid-template-columns: 120px 160px 80px 160px 120px 160px;
display: grid;
grid-gap: 4px;
grid-template-rows: 30px 30px 30px 30px 30px;
grid-template-areas:". . . . . ."
". . . . . voidpointarea"
". . . . . stressarea"
". firsttruth firsttruth firsttruth firsttruth firsttruth"
". secondtruth secondtruth secondtruth secondtruth secondtruth";
}
.sheet-voidpointarea {
grid-area: voidpointarea;
font-family: 'Yeseva One', cursive;
grid-template-columns: 71px 10px 71px;
display: grid;
grid-gap: 4px;
grid-template-rows: 30px;
}
+78
View File
@@ -0,0 +1,78 @@
<div class="sheet-main">
<!-- Game Name, and roll toggles -->
<div class='sheet-topgrid'>
<a href="https://ibb.co/KqnVCkB"><img src="https://i.ibb.co/yy2gL1K/red-giant-logo.png" alt="red-giant-logo" border="0"></a>
<span> </span>
<input type="hidden" class="sheet-radio-roll-state" name="attr_rollstate" value="flat" />
<button type="action" name="act_roll_state_disadvantage" class="sheet-radio-roll-state sheet-radio-roll-state-disadvantage"> Dis
</button>
<span> </span>
<button type="action" name="act_roll_state_flat" class="sheet-radio-roll-state sheet-radio-roll-state-flat"> -
</button>
<span> </span>
<button type="action" name="act_roll_state_advantage" class="sheet-radio-roll-state sheet-radio-roll-state-advantage"> Adv
</button>
<span> </span>
<label class="sheet-big-label" > Roll Mod </label>
<input name="attr_roll_mod" class="sheet-stat-inputs" type="number" value="0" />
<span> </span>
<button type="action" name="act_pc" class="sheet-tabbutton" >PC</button>
<span> </span>
<button type="action" name="act_npc" class="sheet-tabbutton" >NPC</button>
</div>
<!-- Spacing fix -->
<div class="col" style="width: 100%; height: 10px;"></div>
</div>
<script type="text/worker">
//Buttons for Tabs
const buttonlist = ["pc","npc"];
buttonlist.forEach(button => {
on(`clicked:${button}`, function() {
setAttrs({
sheetTab: button,
});
});
});
const rollStateRadioValues = ["advantage","flat","disadvantage"];
rollStateRadioValues.forEach(function(value) {
on(`clicked:roll_state_${value}`, function() {
setAttrs({
["rollstate"]: value
});
});
});
</script>
Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

+9
View File
@@ -0,0 +1,9 @@
{
"html": "RedGiant.html",
"css": "RedGiant.css",
"authors": "Christine Cook",
"roll20userid": "4360886",
"preview": "preview.png",
"instructions": "Compatible for use with Red Giant, an OSR game published by Rookie Jet Studio. You can reach me at christine.cook1538@yahoo.ca if there are issues, or you have questions. ",
"legacy": false
}