lots of changes. described in description
changed config to point to reference by default added reference character, showing all options. added date to required references. modified code to handle some overrides, and adding current year. added sticky footer to css. rewrote templates to match schema in reference. improved features.master
parent
7aef58a46b
commit
9aa30f6091
|
@ -2,7 +2,7 @@
|
||||||
siteroot: /home/olivia/code/charbase/lib
|
siteroot: /home/olivia/code/charbase/lib
|
||||||
public: public
|
public: public
|
||||||
views: views
|
views: views
|
||||||
dsn: yaml://%siteroot%/../characters.yml
|
dsn: yaml://%siteroot%/../reference.yml
|
||||||
|
|
||||||
site:
|
site:
|
||||||
name: Charbase
|
name: Charbase
|
||||||
|
|
|
@ -6,5 +6,5 @@ require 'liquid'
|
||||||
require 'yaml'
|
require 'yaml'
|
||||||
require 'charbase/app'
|
require 'charbase/app'
|
||||||
require 'json'
|
require 'json'
|
||||||
|
require 'date'
|
||||||
Charbase::App.run!
|
Charbase::App.run!
|
||||||
|
|
|
@ -29,7 +29,7 @@ module Charbase
|
||||||
char = {}
|
char = {}
|
||||||
char["characters"] = @characters["characters"].select { |c| c["hidden"] != true }
|
char["characters"] = @characters["characters"].select { |c| c["hidden"] != true }
|
||||||
|
|
||||||
liquid :index, :locals => {:s => @site, :c => char}
|
liquid :index, :locals => {:s => @site, :c => char, :year => DateTime.now.strftime("%Y")}
|
||||||
end
|
end
|
||||||
get "/assets/css/characters.css" do
|
get "/assets/css/characters.css" do
|
||||||
char = {}
|
char = {}
|
||||||
|
@ -72,19 +72,20 @@ module Charbase
|
||||||
|
|
||||||
# this is a nasty hack, eventually i should find a way to add a filter
|
# this is a nasty hack, eventually i should find a way to add a filter
|
||||||
# to liquid to do this.
|
# to liquid to do this.
|
||||||
for x in [ "description","bodydesc","attire","skills","magic" ]
|
for x in [ "description","appearance","personality","attire","skills","magic" ].push(*char["overrides"]["paragraph"])
|
||||||
if char[x] != nil and char[x].include?("\n\n")
|
if char[x] != nil and char[x].include?("\n\n")
|
||||||
char[x].gsub!(/\n\n/,"</p><p>")
|
char[x].gsub!(/\n\n/,"</p><p>")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
# end hack
|
# end hack
|
||||||
|
|
||||||
liquid :character, :locals => {:site => @site, :character => char}
|
liquid :character, :locals => {:site => @site, :character => char, :year => DateTime.now.strftime("%Y")}
|
||||||
end
|
end
|
||||||
|
|
||||||
get "/assets/css/:nick.css" do |nick|
|
get "/assets/css/:nick.css" do |nick|
|
||||||
char = @characters["characters"].select { |n| n["nick"] == nick }.first
|
char = @characters["characters"].select { |n| n["nick"] == nick }.first
|
||||||
content_type "text/css"
|
content_type "text/css"
|
||||||
liquid :usercss, :locals => {:site => @site, :character => char}
|
liquid :usercss, :locals => {:site => @site, :css => char["overrides"]["css"], :nick => char["nick"]}
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -51,3 +51,24 @@ body {
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto
|
margin-right: auto
|
||||||
}
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
position: relative;
|
||||||
|
min-height: 100%;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
/* Margin bottom by footer height */
|
||||||
|
margin-bottom: 60px;
|
||||||
|
}
|
||||||
|
.footer {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
width: 100%;
|
||||||
|
/* Set the fixed height of the footer here */
|
||||||
|
height: 60px;
|
||||||
|
background-color: inherit;
|
||||||
|
}
|
||||||
|
.footer .container .text-muted {
|
||||||
|
margin: 20px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,8 +30,8 @@
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="sheet-header">
|
<div class="sheet-header">
|
||||||
{% if character.avatar %}
|
{% if character.images.avatar %}
|
||||||
<img src="{% unless user.avatar contains 'http' %}{{site.imgdir}}/{% endunless %}{{character.avatar}}" />
|
<img src="{% unless user.avatar contains 'http' %}{{site.imgdir}}/{% endunless %}{{character.images.avatar}}" />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<span class="sheet-header" id="title">
|
<span class="sheet-header" id="title">
|
||||||
{% if character.name %}
|
{% if character.name %}
|
||||||
|
@ -46,85 +46,47 @@
|
||||||
<div class="sheet-body">
|
<div class="sheet-body">
|
||||||
<h2>Summary</h2>
|
<h2>Summary</h2>
|
||||||
<p>{{character.description}}</p>
|
<p>{{character.description}}</p>
|
||||||
{% if character.ref %}
|
{% if character.images.ref %}
|
||||||
<div class="refsheet">
|
<div class="refsheet">
|
||||||
<h2>Reference Sheet</h2>
|
<h2>Reference Sheet</h2>
|
||||||
<img src="{% unless user.avatar contains 'http' %}{{site.imgdir}}/{% endunless %}{{character.ref}}" />
|
<img src="{% unless user.avatar contains 'http' %}{{site.imgdir}}/{% endunless %}{{character.images.ref}}" />
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if character.stat %}
|
{% if character.stats %}
|
||||||
<h2>Statistics</h2>
|
<h2>Statistics</h2>
|
||||||
<dl>
|
<dl class="dl-horizontal">
|
||||||
{% for s in character.stat %}
|
{% for s in character.stats %}
|
||||||
<dt>
|
<div class="pair">
|
||||||
{% if s.desc %}\
|
<div class="dl-emu-key">
|
||||||
|
{% if s.desc %}
|
||||||
<abbr title="{{s.desc}}">
|
<abbr title="{{s.desc}}">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{{s.key}}
|
{{s.key}}
|
||||||
{% if s.desc %}
|
{% if s.desc %}
|
||||||
</abbr>
|
</abbr>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</dt>
|
</div>
|
||||||
<dd>{{stat.value}}</dd>
|
<div class="dl-emu-value">{{s.value}}</div>
|
||||||
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</dl>
|
|
||||||
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<div class="clearfix" />
|
||||||
<h2>General Details</h2>
|
<h2>General Details</h2>
|
||||||
<div class="dl-emu">
|
<div class="dl-emu">
|
||||||
{% if character.general.sex %}
|
{% for attr in character.general.attr %}
|
||||||
<div class="pair">
|
<div class="pair">
|
||||||
<div class="dl-emu-key">Sex</div>
|
<div class="dl-emu-key">{{ attr[0] | replace:"_"," " | capitalize }}</div>
|
||||||
<div class="dl-emu-value">{{character.general.sex}}</div>
|
<div class="dl-emu-value">{{attr[1]}}</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endfor %}
|
||||||
{% if character.general.gender %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Gender</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.gender}}</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if character.general.class %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Class</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.class}}</div class="dl-emu-key">
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if character.general.alignment %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Alignment</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.alignment}}</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if character.general.species %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Species</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.species}} </div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if character.general.build %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Build</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.build}}</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if character.general.height %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Height</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.height}}</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if character.general.weight %}
|
|
||||||
<div class="pair">
|
|
||||||
<div class="dl-emu-key">Weight</div>
|
|
||||||
<div class="dl-emu-value">{{character.general.weight}}</div>
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
<span class="clearfix"></span>
|
<span class="clearfix"></span>
|
||||||
{% if character.general.colors %}
|
{% if character.general.color %}
|
||||||
<h2>Colours</h2>
|
<h2>Colours</h2>
|
||||||
<div class="dl-emu sheet-colors">
|
<div class="dl-emu sheet-colors">
|
||||||
{% for col in character.general.colors %}
|
{% for col in character.general.color %}
|
||||||
<div class="pair">
|
<div class="pair">
|
||||||
<div class="dl-emu-key">
|
<div class="dl-emu-key">
|
||||||
{{col.text}}
|
{{col.text}}
|
||||||
|
@ -140,12 +102,16 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="clearfix" style="margin-bottom: 3em;"></div>
|
<div class="clearfix" style="margin-bottom: 3em;"></div>
|
||||||
|
|
||||||
{% if character.bodydesc %}
|
{% if character.appearance %}
|
||||||
<h2>Appearance</h2>
|
<h2>Appearance</h2>
|
||||||
<p> {{character.bodydesc}} </p>
|
<p>{{character.appearance}}</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if character.personality %}
|
||||||
|
<h2>Personality</h2>
|
||||||
|
<p>{{character.personality}}</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if character.attire %}
|
{% if character.attire %}
|
||||||
<h2>Clothing</h2>
|
<h2>Clothing/Equipment</h2>
|
||||||
<p> {{character.attire}}</p>
|
<p> {{character.attire}}</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if character.skills or character.magic %}
|
{% if character.skills or character.magic %}
|
||||||
|
@ -163,7 +129,23 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<footer class="footer">
|
||||||
|
<div class="container">
|
||||||
|
<ul class="text-muted list-inline"
|
||||||
|
<li>Powered by <a href="http://bitbucket.com/foxiepaws/charbase/">Charbase</a> </li>
|
||||||
|
<li>Code under BSD2</li>
|
||||||
|
{% if character.player %}
|
||||||
|
<li>
|
||||||
|
{% if character.name %}
|
||||||
|
{{character.name | split:" " | first}} © {{year}} {{character.player}}
|
||||||
|
{% else %}
|
||||||
|
{{character.nick}} © {{year}} {{character.player}}
|
||||||
|
{% endif %}
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,29 +1,31 @@
|
||||||
/* front page character overrides. */
|
/* front page character overrides. */
|
||||||
|
|
||||||
{% for ch in c.characters %}
|
{% for ch in c.characters %}
|
||||||
{% if ch.overrides.css.backgroundcolor or ch.overrides.css.textcolor or ch.overrides.css.navbarcolor or ch.overrides.css.navhovercolor %}
|
{% if ch.overrides.css.color.homepagebg or ch.overrides.css.color.homepagehoverbg or ch.overrides.css.color.homepagefg or ch.overrides.css.color.homepagehoverfg %}
|
||||||
/* classes for {{ch.nick}} */
|
/* classes for {{ch.nick}} */
|
||||||
{% if ch.overrides.css.backgroundcolor or ch.overrides.css.textcolor %}
|
{% if ch.overrides.css.color.homepagebg or ch.overrides.css.color.homepagefg %}
|
||||||
.cu-{{ch.nick}} {
|
.cu-{{ch.nick}} { {% if ch.overrides.css.color.homepagebg %}
|
||||||
{% if ch.overrides.css.backgroundcolor %}
|
background-color: {{ch.overrides.css.color.homepagebg}};
|
||||||
background-color: {{ch.overrides.css.backgroundcolor}};
|
border-color: {{ch.overrides.css.color.homepagebg}};{% endif %}{% if ch.overrides.css.color.homepagefg %}
|
||||||
border-color: {{ch.overrides.css.backgroundcolor}};
|
color: {{ch.overrides.css.color.homepagefg}};{% endif %}
|
||||||
{% endif %}
|
|
||||||
{% if ch.overrides.css.textcolor %}
|
|
||||||
color: {{ch.overrides.css.textcolor}};
|
|
||||||
{%endif%}
|
|
||||||
}
|
}
|
||||||
{% endif %}
|
{%endif %}{% if ch.overrides.css.color.homepagehoverbg or ch.overrides.css.color.homepagehoverfg %}
|
||||||
{% if ch.overrides.css.navbarcolor or ch.overrides.css.navhovercolor %}
|
.cu-{{ch.nick}}:hover { {% if ch.overrides.css.color.homepagehoverbg %}
|
||||||
.cu-{{ch.nick}}:hover {
|
background-color: {{ch.overrides.css.color.homepagehoverbg}};
|
||||||
{% if ch.overrides.css.navbarcolor %}
|
border-color: {{ch.overrides.css.color.homepagehoverbg}};{% endif %}{% if ch.overrides.css.color.homepagehoverfg %}
|
||||||
background-color: {{ch.overrides.css.navbarcolor}};
|
color: {{ch.overrides.css.color.homepagehoverfg }};{% endif %}
|
||||||
border-color: {{ch.overrides.css.navbarcolor}};
|
}{% endif %}
|
||||||
{% endif %}
|
{% elsif ch.overrides.css.color.background or ch.overrides.css.color.text or ch.overrides.css.color.navfg or ch.overriced.css.color.navbg %}
|
||||||
{% if ch.overrides.css.navhovercolor %}
|
/* classes for {{ch.nick}} */{% if ch.overrides.css.color.background or ch.overrides.css.color.text %}
|
||||||
color: {{ch.overrides.css.navhovoercolor}}
|
.cu-{{ch.nick}} { {% if ch.overrides.css.color.background %}
|
||||||
{% endif %}
|
background-color: {{ch.overrides.css.color.background}};
|
||||||
}
|
border-color: {{ch.overrides.css.color.background}};{% endif %}{% if ch.overrides.css.color.text %}
|
||||||
{% endif %}
|
color: {{ch.overrides.css.color.text}};{%endif%}
|
||||||
{% endif %}
|
}{% endif %}
|
||||||
|
{% if ch.overrides.css.color.navbg or ch.overrides.css.color.navhoverfg %}
|
||||||
|
.cu-{{ch.nick}}:hover { {% if ch.overrides.css.color.navbg %}
|
||||||
|
background-color: {{ch.overrides.css.color.navbg}};
|
||||||
|
border-color: {{ch.overrides.css.color.navbg}};{% endif %}{% if ch.overrides.css.color.navhoverfg %}
|
||||||
|
color: {{ch.overrides.css.color.navhoverfg}}{% endif %}
|
||||||
|
}{% endif %}{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
|
@ -55,8 +55,10 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
{% for character in c.characters %}
|
{% for character in c.characters %}
|
||||||
<div class="character-unit cu-{{character.nick}}" onClick="location='/character/{{character.nick}}'"/>
|
<div class="character-unit cu-{{character.nick}}" onClick="location='/character/{{character.nick}}'"/>
|
||||||
{% if character.avatar %}
|
{% if character.image.homepage %}
|
||||||
<img src="{% unless user.avatar contains 'http' %}{{s.imgdir}}/{% endunless %}{{character.avatar}}" />
|
<img src="{% unless user.image.homepage contains 'http' %}{{s.imgdir}}/{% endunless %}{{character.image.homepage}}" />
|
||||||
|
{% elsif character.image.avatar %}
|
||||||
|
<img src="{% unless user.image.avatar contains 'http' %}{{s.imgdir}}/{% endunless %}{{character.image.avatar}}" />
|
||||||
{% else %}
|
{% else %}
|
||||||
<img src="{{s.imgdir}}/no_avatar.png" />
|
<img src="{{s.imgdir}}/no_avatar.png" />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -75,6 +77,13 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<div class="container">
|
||||||
|
<ul class="text-muted list-inline"
|
||||||
|
<li>Powered by <a href="http://bitbucket.com/foxiepaws/charbase/">Charbase</a> </li>
|
||||||
|
<li>Code under BSD2</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -1,40 +1,58 @@
|
||||||
/* css for {{character.nick}} */
|
/* css for {{nick}} */
|
||||||
|
|
||||||
{% if character.overrides.css.backgroundcolor or character.overrides.css.textcolor or character.overrides.css.navbarcolor or character.overrides.css.navhovercolor or character.overrides.css.linkcolor or character.overrides.css.linkhovercolor %}
|
{% if css.color.background or css.color.text or css.color.navbg or css.color.navhoverbg or css.color.navactivebg or css.color.navfg or css.color.navhoverfg or css.color.navactivefg %}
|
||||||
/* rules generated from yaml css overrides section */
|
/* rules generated from yaml css overrides section */
|
||||||
{% if character.overrides.css.backgroundcolor or character.overrides.css.textcolor %}
|
{% if css.color.background or css.color.text %}
|
||||||
body {
|
body {
|
||||||
{% if character.overrides.css.backgroundcolor %}
|
{% if css.color.background %}
|
||||||
background-color: {{character.overrides.css.backgroundcolor}};
|
background-color: {{css.color.background}};
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if character.overrides.css.textcolor %}
|
{% if css.color.text %}
|
||||||
color: {{character.overrides.css.textcolor }};
|
color: {{css.color.text }};
|
||||||
{% endif %}
|
{% endif %}
|
||||||
}
|
}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if character.overrides.css.navbarcolor or character.overrides.css.textcolor %}
|
|
||||||
|
{% if css.color.navbg or css.color.navfg or css.color.navborder %}
|
||||||
.navbar, .navbar-default,
|
.navbar, .navbar-default,
|
||||||
.navbar .navbar-brand,
|
.navbar .navbar-brand,
|
||||||
.navbar .navbar-nav li a {
|
.navbar .navbar-nav li a {
|
||||||
{% if character.overrides.css.navbarcolor %}
|
{% if css.color.navbg %}
|
||||||
background-color: {{character.overrides.css.navbarcolor}};
|
background-color: {{css.color.navbg}};
|
||||||
border-color: {{character.overrides.css.navbarcolor}};
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if character.overrides.css.textcolor %}
|
{% if css.color.navborder %}
|
||||||
color: {{character.overrides.css.textcolor}};
|
border-color: {{css.color.navborder}};
|
||||||
|
{% elsif css.color.navbg %}
|
||||||
|
border-color: {{css.color.navbg}};
|
||||||
|
{% endif %}
|
||||||
|
{% if css.color.navfg %}
|
||||||
|
color: {{css.color.navfg}};
|
||||||
{% endif %}
|
{% endif %}
|
||||||
}
|
}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if css.color.navhoverfg %}
|
||||||
{% if character.overrides.css.navhovercolor %}
|
.navbar .navbar-brand:hover {
|
||||||
.navbar .navbar-brand:hover,
|
color: {{css.color.navhoverfg}};
|
||||||
|
}
|
||||||
|
{% endif %}
|
||||||
|
{% if css.color.navhoverfg or css.color.navhoverbg or css.color.navhoverborder%}
|
||||||
.navbar .navbar-nav li a:hover {
|
.navbar .navbar-nav li a:hover {
|
||||||
color: {{character.overrides.css.navhovercolor}};
|
{% if css.color.navhoverfg %}
|
||||||
|
color: {{css.color.navhoverfg}};
|
||||||
|
{%endif %}
|
||||||
|
{% if css.color.navhoverborder %}
|
||||||
|
border-color: {{css.color.navhoverborder}};
|
||||||
|
{% elsif css.color.navhoverbg %}
|
||||||
|
border-color: {{css.color.navhoverbg}};
|
||||||
|
{% endif %}
|
||||||
|
{% if css.color.navhoverbg %}
|
||||||
|
background-color: {{css.color.navhoverbg}};
|
||||||
|
{% endif %}
|
||||||
}
|
}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if character.overrides.css.userrules %}
|
{% if character.overrides.css.style %}
|
||||||
/* user-defined custom rules */
|
/* user-defined custom rules */
|
||||||
{{character.overrides.css.style}}
|
{{css.style}}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
@ -0,0 +1,127 @@
|
||||||
|
|
||||||
|
|
||||||
|
characters: # array of all characters
|
||||||
|
- nick: reference # required: nickname/id for loading character.
|
||||||
|
hidden: false # optional: is sheet hidden from public if true
|
||||||
|
overrides: # all values in this section are optional.
|
||||||
|
css: # css knobs
|
||||||
|
color: # change color without writing css.
|
||||||
|
# overrides the background of the character sheet
|
||||||
|
background: '#fff'
|
||||||
|
# overrides the text colour of the character sheet
|
||||||
|
text: '#333'
|
||||||
|
# overrides the navbar background color on the character sheet
|
||||||
|
navbg: '#f8f8f8'
|
||||||
|
# overrides the color the navbar's background is while hovering
|
||||||
|
navhoverbg: '#f8f8f8'
|
||||||
|
# override the background color of the active link in the navbar
|
||||||
|
navactivebg: '#f8f8f8'
|
||||||
|
# override the foreground (text) color of the navbar
|
||||||
|
navfg: '#777'
|
||||||
|
# override the text color of the navbar while hovering
|
||||||
|
navhoverfg: '#333'
|
||||||
|
# override the text color of the active link on the navbar
|
||||||
|
navactivefg: '#777'
|
||||||
|
# override the border color of the navbar
|
||||||
|
navborder: '#e7e7e7'
|
||||||
|
# override the border color of the navbar while hovering
|
||||||
|
navhoverborder: '#e7e7e7'
|
||||||
|
# override the border color of the navbar while active
|
||||||
|
navactiveborder: '#e7e7e7'
|
||||||
|
# override the background color of the homepage banner
|
||||||
|
homepagebg: '#fff'
|
||||||
|
# override the background color of the homepage banner while hovering
|
||||||
|
homepagehoverbg: '#fff'
|
||||||
|
# override the text color of the homepage banner
|
||||||
|
homepagefg: '#fff'
|
||||||
|
# override the text color of the homepage banner while hovering
|
||||||
|
homepagehoverfg: '#fff'
|
||||||
|
style: # rules and text to add to the css file directly.
|
||||||
|
# todo: make this a working feature.
|
||||||
|
# override the order of the page, and fields used.
|
||||||
|
# order: ["desc","ref","general.attr","general.color","appearence","attire","skills","magic"]
|
||||||
|
paragraph: "" # additional sections to convert to paragraphs go here.
|
||||||
|
# an optional real name for the character to go by
|
||||||
|
name: Reference Character
|
||||||
|
# optional player of character, shown in footer in the copyright notice.
|
||||||
|
player: foxiepaws
|
||||||
|
general:
|
||||||
|
attr: # required section: any key/value pair can go here, keys will be title-cased and underbars will be replaced with spaces. examples follow.
|
||||||
|
age: 21
|
||||||
|
sex: female
|
||||||
|
gender: female
|
||||||
|
class: Mage
|
||||||
|
alignment: Lawful Good
|
||||||
|
species: Human
|
||||||
|
build: average
|
||||||
|
height: 5'9"
|
||||||
|
weight: 144lbs
|
||||||
|
color: # optional section: each color must have a location and text, hex value is optional.
|
||||||
|
- location: skin
|
||||||
|
text: White
|
||||||
|
- location: hair
|
||||||
|
text: Brown
|
||||||
|
- location: eyes
|
||||||
|
text: Blue
|
||||||
|
hex: '#4259e0'
|
||||||
|
|
||||||
|
stats: # optional section, must have key and value, desc (description) optional. example based on ADD basic stats
|
||||||
|
- key: STR
|
||||||
|
desc: Strength
|
||||||
|
value: 0
|
||||||
|
- key: DEX
|
||||||
|
desc: Dexterity
|
||||||
|
value: 0
|
||||||
|
- key: CON
|
||||||
|
value: 0
|
||||||
|
- key: INT
|
||||||
|
value: 0
|
||||||
|
- key: WIS
|
||||||
|
value: 0
|
||||||
|
- key: CHA
|
||||||
|
value: 0
|
||||||
|
|
||||||
|
images:
|
||||||
|
avatar: reference_avatar.png
|
||||||
|
homepage: reference_avatar-transparent.png
|
||||||
|
ref: reference_refsheet.png
|
||||||
|
more: # optional section
|
||||||
|
- path: /path/to/uploaded/file
|
||||||
|
caption: Some image
|
||||||
|
- path: http://somehostsite/path/to/file
|
||||||
|
caption: another image!
|
||||||
|
|
||||||
|
description: |
|
||||||
|
This section is shown at the top of the page as a summary.
|
||||||
|
It is required for each character.
|
||||||
|
|
||||||
|
double line breaks (\n\n) will be interpreted as the start
|
||||||
|
of a new paragraph
|
||||||
|
|
||||||
|
appearance: |
|
||||||
|
This section is used to describe what your character looks like in general.
|
||||||
|
It is not used for clothing/equipment, just a general overview. It also
|
||||||
|
supports double linebreaks -> paragraphs. It is optional.
|
||||||
|
|
||||||
|
personality: |
|
||||||
|
This section is used to describe your character's personality, it is optional
|
||||||
|
and supports formatting into paragraphs.
|
||||||
|
|
||||||
|
attire: |
|
||||||
|
This section is used to describe what your character wears. It is optional and
|
||||||
|
supports splitting into paragraphs
|
||||||
|
|
||||||
|
skills: |
|
||||||
|
This section is used to describe what skills your character has. it is optional
|
||||||
|
and supports splitting into paragraphs. It appears first in the skills and magic
|
||||||
|
section of the default template.
|
||||||
|
|
||||||
|
magic: |
|
||||||
|
This section is used to describe what magical abilities, hexes placed on, effects,
|
||||||
|
charms, etc your character has. it is optional, supports splitting into paragraphs
|
||||||
|
and appears second in the Skills and Magic section on the default template
|
||||||
|
|
||||||
|
# more sections can be added, and simply need to be added to the template in most cases.
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue