init
This commit is contained in:
81
rpg-docs/client/css/character.css
Normal file
81
rpg-docs/client/css/character.css
Normal file
@@ -0,0 +1,81 @@
|
||||
.flexContainer {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
#abilityScores {
|
||||
text-align: center;
|
||||
flex-basis: 120px;
|
||||
flex-grow: 1;
|
||||
max-width: 340px;
|
||||
}
|
||||
|
||||
/*Float boxes are indivisble, have shadows*/
|
||||
.floatBox{
|
||||
border: 2px solid black;
|
||||
border-radius: 0px 0px 10px 10px;
|
||||
padding: 5px;
|
||||
margin: 5px;
|
||||
background: white;
|
||||
}
|
||||
|
||||
/* headings in floatboxes */
|
||||
.floatBox h2{
|
||||
background: black;
|
||||
color: white;
|
||||
font-size: 1em;
|
||||
margin: 0px -5px 0px -5px;
|
||||
padding: 2px 15px;
|
||||
}
|
||||
|
||||
.floatBox h2:first-child{
|
||||
margin: -5px -5px 0px -5px;
|
||||
}
|
||||
|
||||
.floatBox.rounded {
|
||||
border-radius: 10px;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Ability scores */
|
||||
.floatBox.ability {
|
||||
border-radius: 10px;
|
||||
width: 85px;
|
||||
text-align: center;
|
||||
margin: 5px 5px 20px 5px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.abilityName {
|
||||
|
||||
}
|
||||
|
||||
.abilityScore {
|
||||
font-size: 2em;
|
||||
}
|
||||
|
||||
.abilityMod {
|
||||
margin: 0 auto -15px;
|
||||
padding: 2px;
|
||||
border: 2px solid black;
|
||||
border-radius: 5px;
|
||||
background: white;
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
/* Stats */
|
||||
#armorClassBox {
|
||||
width: 90px;
|
||||
height: 100px;
|
||||
background-image: url('/svg/ac.svg');
|
||||
background-repeat: no-repeat;
|
||||
text-align: center;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.statValue {
|
||||
font-size: 2em;
|
||||
}
|
||||
7
rpg-docs/client/css/general.css
Normal file
7
rpg-docs/client/css/general.css
Normal file
@@ -0,0 +1,7 @@
|
||||
root {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
68
rpg-docs/client/views/character/abilities.html
Normal file
68
rpg-docs/client/views/character/abilities.html
Normal file
@@ -0,0 +1,68 @@
|
||||
<template name = "abilities">
|
||||
<div class="ability floatBox">
|
||||
<div class ="abilityName">
|
||||
Strength
|
||||
</div>
|
||||
<div class="abilityScore">
|
||||
{{attributeValue attributes.strength}}
|
||||
</div>
|
||||
<div class="abilityMod">
|
||||
{{abilityMod attributes.strength}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ability floatBox">
|
||||
<div class ="abilityName">
|
||||
Dexterity
|
||||
</div>
|
||||
<div class="abilityScore">
|
||||
{{attributeValue attributes.dexterity}}
|
||||
</div>
|
||||
<div class="abilityMod">
|
||||
{{abilityMod attributes.dexterity}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ability floatBox">
|
||||
<div class ="abilityName">
|
||||
Constitution
|
||||
</div>
|
||||
<div class="abilityScore">
|
||||
{{attributeValue attributes.constitution}}
|
||||
</div>
|
||||
<div class="abilityMod">
|
||||
{{abilityMod attributes.constitution}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ability floatBox">
|
||||
<div class ="abilityName">
|
||||
Intelligence
|
||||
</div>
|
||||
<div class="abilityScore">
|
||||
{{attributeValue attributes.intelligence}}
|
||||
</div>
|
||||
<div class="abilityMod">
|
||||
{{abilityMod attributes.intelligence}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ability floatBox">
|
||||
<div class ="abilityName">
|
||||
Wisdom
|
||||
</div>
|
||||
<div class="abilityScore">
|
||||
{{attributeValue attributes.wisdom}}
|
||||
</div>
|
||||
<div class="abilityMod">
|
||||
{{abilityMod attributes.wisdom}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ability floatBox">
|
||||
<div class ="abilityName">
|
||||
Charisma
|
||||
</div>
|
||||
<div class="abilityScore">
|
||||
{{attributeValue attributes.charisma}}
|
||||
</div>
|
||||
<div class="abilityMod">
|
||||
{{abilityMod attributes.charisma}}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
21
rpg-docs/client/views/character/character.html
Normal file
21
rpg-docs/client/views/character/character.html
Normal file
@@ -0,0 +1,21 @@
|
||||
<template name="character">
|
||||
<div>
|
||||
{{> characterName}}
|
||||
</div>
|
||||
<div class="flexContainer">
|
||||
<div id="abilityScores" class="flexItem">
|
||||
{{> abilities}}
|
||||
</div>
|
||||
<div class="flexItem">
|
||||
<div>
|
||||
Proficiency Bonus {{proficiencyBonus}}
|
||||
</div>
|
||||
<div id="savesAndSkills" class="floatBox">
|
||||
{{> savesAndSkills}}
|
||||
</div>
|
||||
</div>
|
||||
<div id="stats" class="flexItem">
|
||||
{{> characterStats}}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
11
rpg-docs/client/views/character/characterName.html
Normal file
11
rpg-docs/client/views/character/characterName.html
Normal file
@@ -0,0 +1,11 @@
|
||||
<template name="characterName">
|
||||
<div id="level">
|
||||
{{experience.level}}
|
||||
</div>
|
||||
<div id="name">
|
||||
{{name}}
|
||||
</div>
|
||||
<div id="role">
|
||||
{{alignment}} {{gender}} {{race}} {{#each class}} {{this}} {{/each}}
|
||||
</div>
|
||||
</template>
|
||||
50
rpg-docs/client/views/character/characterStats.html
Normal file
50
rpg-docs/client/views/character/characterStats.html
Normal file
@@ -0,0 +1,50 @@
|
||||
<template name="characterStats">
|
||||
<div id="hitPointBox">
|
||||
Hit Points
|
||||
<div id="hitPoints">
|
||||
<input type="number" value={{attributeValue attributes.hitPoints}}>
|
||||
</div>
|
||||
<div id="maxHitPoints">
|
||||
{{attributeValue attributes.maxHitPoints}}
|
||||
</div>
|
||||
</div>
|
||||
<div id="armorClassBox">
|
||||
<div id="armorClass">
|
||||
<div id="armorClassValue" class="statValue">
|
||||
{{attributeValue attributes.armor}}
|
||||
</div>
|
||||
<div id="armorClassLabel">
|
||||
Armor<br>Class
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="amorBox">
|
||||
</div>
|
||||
<div id="initiativeBox" class="floatBox rounded">
|
||||
<div class="statValue">
|
||||
{{skillMod skills.initiative}}
|
||||
</div>
|
||||
Initiative
|
||||
</div>
|
||||
<div id="speedBox" class="floatBox rounded">
|
||||
<div class="statValue">
|
||||
{{attributeValue attributes.speed}}
|
||||
</div>
|
||||
Speed
|
||||
</div>
|
||||
<div id="passivePerceptionBox" class="floatBox rounded">
|
||||
<div class="statValue">
|
||||
{{passiveSkill skills.perception}}
|
||||
</div>
|
||||
Passive Perception
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
Death Saves
|
||||
</div><div>
|
||||
Successes {{deathSaveSuccess}}
|
||||
</div><div>
|
||||
Failures {{deathSaveFail}}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
52
rpg-docs/client/views/character/savesAndSkills.html
Normal file
52
rpg-docs/client/views/character/savesAndSkills.html
Normal file
@@ -0,0 +1,52 @@
|
||||
<template name="savesAndSkills">
|
||||
<h2>Saving Throws</h2>
|
||||
<div>
|
||||
Strength Save {{skillMod skills.strengthSave}}
|
||||
</div><div>
|
||||
Dexterity Save {{skillMod skills.dexteritySave}}
|
||||
</div><div>
|
||||
Constitution Save {{skillMod skills.constitutionSave}}
|
||||
</div><div>
|
||||
Intelligence Save {{skillMod skills.intelligenceSave}}
|
||||
</div><div>
|
||||
Wisdom Save {{skillMod skills.wisdomSave}}
|
||||
</div><div>
|
||||
Charisma Save {{skillMod skills.charismaSave}}
|
||||
</div>
|
||||
<h2>Skills</h2>
|
||||
<div>
|
||||
Acrobatics {{skillMod skills.acrobatics}}
|
||||
</div><div>
|
||||
Animal Handling {{skillMod skills.animalHandling}}
|
||||
</div><div>
|
||||
Arcana {{skillMod skills.arcana}}
|
||||
</div><div>
|
||||
Athletics {{skillMod skills.athletics}}
|
||||
</div><div>
|
||||
Deception {{skillMod skills.deception}}
|
||||
</div><div>
|
||||
History {{skillMod skills.history}}
|
||||
</div><div>
|
||||
Insight {{skillMod skills.insight}}
|
||||
</div><div>
|
||||
Intimidation {{skillMod skills.intimidation}}
|
||||
</div><div>
|
||||
Investigation {{skillMod skills.investigation}}
|
||||
</div><div>
|
||||
Medicine {{skillMod skills.medicine}}
|
||||
</div><div>
|
||||
Nature {{skillMod skills.nature}}
|
||||
</div><div>
|
||||
Perception {{skillMod skills.perception}}
|
||||
</div><div>
|
||||
Persuasion {{skillMod skills.persuasion}}
|
||||
</div><div>
|
||||
Religion {{skillMod skills.religion}}
|
||||
</div><div>
|
||||
Sleight of Hand {{skillMod skills.sleightOfHand}}
|
||||
</div><div>
|
||||
Stealth {{skillMod skills.stealth}}
|
||||
</div><div>
|
||||
Survival {{skillMod skills.survival}}
|
||||
</div>
|
||||
</template>
|
||||
10
rpg-docs/client/views/home/home.html
Normal file
10
rpg-docs/client/views/home/home.html
Normal file
@@ -0,0 +1,10 @@
|
||||
<template name="home">
|
||||
{{>loginButtons}}
|
||||
<div>
|
||||
{{# each characters}}
|
||||
<li><a href="{{ pathFor 'character' }} ">{{_id}}</a></li>
|
||||
{{/each}}
|
||||
</div>
|
||||
<input id="addCharacter" type="button" value="Add Character">
|
||||
<input id="nukeCharacters" type="button" value="Clear all characters">
|
||||
</template>
|
||||
11
rpg-docs/client/views/home/home.js
Normal file
11
rpg-docs/client/views/home/home.js
Normal file
@@ -0,0 +1,11 @@
|
||||
Template.home.events({
|
||||
"click #addCharacter": function (event, template) {
|
||||
Characters.insert(new Character(Meteor.userId()));
|
||||
},
|
||||
"click #nukeCharacters": function(event, template){
|
||||
while(true){
|
||||
if(!Characters.findOne()) break;
|
||||
Characters.remove(Characters.findOne()._id);
|
||||
}
|
||||
}
|
||||
});
|
||||
4
rpg-docs/client/views/index.html
Normal file
4
rpg-docs/client/views/index.html
Normal file
@@ -0,0 +1,4 @@
|
||||
<head>
|
||||
<title>RPG Docs</title>
|
||||
<meta name="viewport" content="width=device-width">
|
||||
</head>
|
||||
Reference in New Issue
Block a user