diff --git a/gulpfile.js b/gulpfile.js index 566ec09..049f9fb 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -40,7 +40,7 @@ const css = gulp.series(compileScss); /* ----------------------------------------- */ function watchUpdates() { - gulp.watch(SYSTEM_SCSS, css); + gulp.watch("system/styles/scss/**/*.scss", css); } /* ----------------------------------------- */ diff --git a/package.json b/package.json index 278766c..041fe62 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "main": "index.js", "scripts": { "compile": "gulp css", - "watch": "gulp watch", + "watch": "gulp", "prettier": "prettier --quote-props=preserve --print-width=5000 --write" }, "repository": { diff --git a/system/assets/icons/Leaf.webp b/system/assets/icons/Leaf.webp new file mode 100644 index 0000000..004318c Binary files /dev/null and b/system/assets/icons/Leaf.webp differ diff --git a/system/assets/icons/air.webp b/system/assets/icons/air.webp new file mode 100644 index 0000000..404703d Binary files /dev/null and b/system/assets/icons/air.webp differ diff --git a/system/assets/icons/clan/Crab.webp b/system/assets/icons/clan/Crab.webp new file mode 100644 index 0000000..7e01d64 Binary files /dev/null and b/system/assets/icons/clan/Crab.webp differ diff --git a/system/assets/icons/clan/Crane.webp b/system/assets/icons/clan/Crane.webp new file mode 100644 index 0000000..4000e4a Binary files /dev/null and b/system/assets/icons/clan/Crane.webp differ diff --git a/system/assets/icons/clan/Dragon.webp b/system/assets/icons/clan/Dragon.webp new file mode 100644 index 0000000..094562b Binary files /dev/null and b/system/assets/icons/clan/Dragon.webp differ diff --git a/system/assets/icons/clan/Lion.webp b/system/assets/icons/clan/Lion.webp new file mode 100644 index 0000000..9feb63d Binary files /dev/null and b/system/assets/icons/clan/Lion.webp differ diff --git a/system/assets/icons/clan/Phoenix.webp b/system/assets/icons/clan/Phoenix.webp new file mode 100644 index 0000000..6bc28de Binary files /dev/null and b/system/assets/icons/clan/Phoenix.webp differ diff --git a/system/assets/icons/clan/Scorpion.webp b/system/assets/icons/clan/Scorpion.webp new file mode 100644 index 0000000..fb3e42b Binary files /dev/null and b/system/assets/icons/clan/Scorpion.webp differ diff --git a/system/assets/icons/clan/Unicorn.webp b/system/assets/icons/clan/Unicorn.webp new file mode 100644 index 0000000..3c1d9b3 Binary files /dev/null and b/system/assets/icons/clan/Unicorn.webp differ diff --git a/system/assets/icons/earth.webp b/system/assets/icons/earth.webp new file mode 100644 index 0000000..0524d98 Binary files /dev/null and b/system/assets/icons/earth.webp differ diff --git a/system/assets/icons/fire.webp b/system/assets/icons/fire.webp new file mode 100644 index 0000000..8797b74 Binary files /dev/null and b/system/assets/icons/fire.webp differ diff --git a/system/assets/icons/void.webp b/system/assets/icons/void.webp new file mode 100644 index 0000000..3a50d44 Binary files /dev/null and b/system/assets/icons/void.webp differ diff --git a/system/assets/icons/water.webp b/system/assets/icons/water.webp new file mode 100644 index 0000000..0b85426 Binary files /dev/null and b/system/assets/icons/water.webp differ diff --git a/system/assets/imgs/bgL5R.jpg b/system/assets/imgs/bgL5R.jpg deleted file mode 100644 index b0a0579..0000000 Binary files a/system/assets/imgs/bgL5R.jpg and /dev/null differ diff --git a/system/assets/imgs/bgL5R.webp b/system/assets/imgs/bgL5R.webp new file mode 100644 index 0000000..859040a Binary files /dev/null and b/system/assets/imgs/bgL5R.webp differ diff --git a/system/assets/imgs/brushL5r.webp b/system/assets/imgs/brushL5r.webp new file mode 100644 index 0000000..4d1e4ec Binary files /dev/null and b/system/assets/imgs/brushL5r.webp differ diff --git a/system/assets/imgs/textBox.svg b/system/assets/imgs/textBox.svg new file mode 100644 index 0000000..8486a4f --- /dev/null +++ b/system/assets/imgs/textBox.svg @@ -0,0 +1,23 @@ + + + + + + + + diff --git a/system/assets/l5r-logo.webp b/system/assets/l5r-logo.webp new file mode 100644 index 0000000..7562269 Binary files /dev/null and b/system/assets/l5r-logo.webp differ diff --git a/system/assets/ui/Chat-box.webp b/system/assets/ui/Chat-box.webp new file mode 100644 index 0000000..1773286 Binary files /dev/null and b/system/assets/ui/Chat-box.webp differ diff --git a/system/assets/ui/background.webp b/system/assets/ui/background.webp new file mode 100644 index 0000000..83d536e Binary files /dev/null and b/system/assets/ui/background.webp differ diff --git a/system/assets/ui/bgSidebar.png b/system/assets/ui/bgSidebar.png new file mode 100644 index 0000000..41498bb Binary files /dev/null and b/system/assets/ui/bgSidebar.png differ diff --git a/system/assets/ui/chat-controls-border.webp b/system/assets/ui/chat-controls-border.webp new file mode 100644 index 0000000..5020493 Binary files /dev/null and b/system/assets/ui/chat-controls-border.webp differ diff --git a/system/assets/ui/chat-texture.webp b/system/assets/ui/chat-texture.webp new file mode 100644 index 0000000..e10aaa0 Binary files /dev/null and b/system/assets/ui/chat-texture.webp differ diff --git a/system/assets/ui/hotkeybox.webp b/system/assets/ui/hotkeybox.webp new file mode 100644 index 0000000..2977872 Binary files /dev/null and b/system/assets/ui/hotkeybox.webp differ diff --git a/system/assets/ui/macro-button.webp b/system/assets/ui/macro-button.webp new file mode 100644 index 0000000..6a48c07 Binary files /dev/null and b/system/assets/ui/macro-button.webp differ diff --git a/system/assets/ui/nav_button.webp b/system/assets/ui/nav_button.webp new file mode 100644 index 0000000..cfdcab0 Binary files /dev/null and b/system/assets/ui/nav_button.webp differ diff --git a/system/assets/ui/players-border.webp b/system/assets/ui/players-border.webp new file mode 100644 index 0000000..76e1c68 Binary files /dev/null and b/system/assets/ui/players-border.webp differ diff --git a/system/fonts/ArchitectsDaughter.ttf b/system/fonts/ArchitectsDaughter.ttf new file mode 100644 index 0000000..421f247 Binary files /dev/null and b/system/fonts/ArchitectsDaughter.ttf differ diff --git a/system/fonts/PatrickHand.ttf b/system/fonts/PatrickHand.ttf new file mode 100644 index 0000000..1e871cf Binary files /dev/null and b/system/fonts/PatrickHand.ttf differ diff --git a/system/l5r-ui/css/l5rui.css b/system/l5r-ui/css/l5rui.css index 10cf1ab..863c29f 100644 --- a/system/l5r-ui/css/l5rui.css +++ b/system/l5r-ui/css/l5rui.css @@ -9,25 +9,7 @@ body { /*************************************************************/ /*======================= SIDEBAR ===========================*/ /*************************************************************/ -#sidebar { - display: flex; - flex-direction: column; - flex-wrap: nowrap; - position: fixed; - right: 5px; - top: 5px; - width: 360px !important; - height: 99vh; - overflow: hidden; - margin: 0; - border: 30px solid transparent; - border-image-source: url(../ui/frames/Chat-box.webp); - border-image-slice: 30 fill; - background-position: center !important; - background-size: 300px 100%!important; - background-repeat: no-repeat; -} .collapse::before{ content: ""; @@ -209,12 +191,7 @@ body { /*************************************************************/ /*======================= CHAT TAB ==========================*/ /*************************************************************/ -.message-sender { - color: darkred; - font-weight: bold; - border-bottom-color: darkred; - text-decoration: underline; -} + #chat-message{ background-image: url(../ui/frames/chat-texture.webp) !important; } @@ -241,24 +218,6 @@ body { color: #520000; margin-top: -10px; } -.roll-type-select{ - font-family: CaslonPro; - font-weight: 500; - font-size: 14px; - text-align: left; - position: relative; - height: 24px; - top: 1px; - padding-top: 0px; - background: url(../ui/frames/chat-texture.webp) repeat !important; - background-position-x: 0%; - background-position-y: 0%; - background-position: initial; - box-shadow: inset 0 0 10px #000000; - border-image: url(../ui/frames/chat-controls-border.webp) 4 repeat; - border-image-width: 4px; - color: #520000; -} #sidebar .sidebar-tab #chat-controls div.roll-type-select select { font-family: CaslonPro; @@ -298,26 +257,6 @@ body { align-items: baseline; } -.sidebar-tab .directory-header .header-search input { - font-family: CaslonPro; - font-weight: 500; - font-size: 14px; - text-align: left; - position: relative; - height: 24px; - top: 7px; - padding-top: 3px; - background: url(../ui/frames/chat-texture.webp) repeat; - background-position-x: 0%; - background-position-y: 0%; - background-position: initial; - box-shadow: inset 0 0 10px #000000; - border-image: url(../ui/frames/chat-controls-border.webp) 4 repeat; - border-image-width: 4px; - border-image-outset: 3px 2px 2px 2px; - color: #520000; -} - .sidebar-tab .directory-header button { background-image: url(../ui/buttons/button-green.webp); text-align: center; @@ -441,198 +380,3 @@ body { content: " (Blind Roll) " !important; float: left; } - -/*************************************************************/ -/*================== NAVIGATION BAR =========================*/ -/*************************************************************/ -#navigation #scene-list .scene.view, #navigation #scene-list .scene.context { - cursor: default; - color: #FFF; - background: url(../ui/sidebar/sidebar_button-background_red.webp) repeat; - background-origin: padding-box; - border-image: url(../ui/sidebar/sidebar_button-footer-button.webp) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; - box-shadow: 0 0 20px red; - } - - #navigation #nav-toggle { - cursor: default; - color: #FFF; - background: url(../ui/sidebar/sidebar_button-background_cyan.webp) repeat; - background-origin: padding-box; - border-image: url(../ui/sidebar/sidebar_button-footer-button.webp) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; - font-family: CaslonPro; - font-weight: 500; - font-size: 14px; - padding-top: 3px; - height: 36px; - } - - #navigation #scene-list .scene.nav-item { - cursor: default; - color: #FFF; - background: url(../ui/sidebar/sidebar_button-background_cyan.webp) repeat; - background-origin: padding-box; - border-image: url(../ui/sidebar/sidebar_button-footer-button.webp) 10 repeat; - border-image-width: 4px; - border-image-outset: 0px; - font-family: CaslonPro; - font-weight: 500; - font-size: 14px; - padding-top: 2px; - } - #navigation #scene-list .scene.nav-item.active { - background: url(../ui/sidebar/sidebar_button-background_red.webp) repeat; - } - #navigation #scene-list .scene li.scene-player { - float: left; - height: 15px; - width: 15px; - margin: 0 2px 0 0; - line-height: 12px; - padding-top: 1px; - text-align: center; - color: #000000e8; - font-weight: 600; - background: #97dff4; - border: 1px solid #000; - border-radius: 8px; - font-family: "Signika", "Palatino Linotype", serif; - font-size: 13px; - box-shadow: inset 0 0 3px #000000; - } - - /*************************************************************/ - /*=================== SCENE CONTROLS ========================*/ - /*************************************************************/ - #controls .scene-control.active, #controls .control-tool.active, #controls .scene-control:hover, #controls .control-tool:hover { - cursor: default; - color: #FFF; - background: url(../ui/sidebar/sidebar_button-background_red.webp) repeat !important; - background-origin: padding-box !important; - border-image: url(../ui/sidebar/sidebar_button-footer-button.webp) 10 repeat !important; - border-image-width: 4px !important; - border-image-outset: 0px !important; - box-shadow: 0 0 10px red !important; - } - - #controls .scene-control, #controls .control-tool { - width: 36px !important; - height: 36px !important; - box-sizing: content-box !important; - font-size: 19px !important; - line-height: 36px !important; - background: rgba(0, 0, 0, 0.5) !important; - box-shadow: 0 0 3px #000 !important; - margin: 0 0 8px !important; - color: #BBB !important; - text-align: center !important; - border: 1px solid #000 !important; - border-radius: 5px !important; - cursor: pointer !important; - cursor: default !important; - color: #FFF !important; - background: url(../ui/sidebar/sidebar_button-background_cyan.webp) repeat !important; - background-origin: padding-box !important; - border-image: url(../ui/sidebar/sidebar_button-footer-button.webp) 10 repeat !important; - border-image-width: 4px !important; - border-image-outset: 0px !important; - } - -/*************************************************************/ -/*=================== PLAYERS LIST ==========================*/ -/*************************************************************/ -#players { - position: fixed; - bottom: 25px; - left: 13px; - width: 200px; - border: 1px solid blue; - border-image: url(../ui/frames/players-border.webp) 21 repeat; - border-image-slice: 23 19 23 19; - border-image-width: 23px 19px 23px 19px; - border-image-outset: 22px 17px 16px 14px; - border-radius: 0px; - box-shadow: inset 0 0 10px #000000; - background: #000000e8; - font-family: CaslonPro; - font-weight: 500; - font-size: 14px; - } - #players h3 .fas.fa-users { - margin-right: 10px; - display: none; - } - #players ol .player-name { - overflow: hidden; - white-space: nowrap; - word-break: break-all; - padding-top: 3px; - } - -/******************************************************************/ -/*========================= HOTBAR ===============================*/ -/******************************************************************/ - - /* ==================== (A) WINDOW FRAMEWORK ================== */ - #hotbar { - font-family: CaslonPro; - font-weight: 500; - font-size: 14px; - width: 600px; - height: 60px; - } - - #hotbar #action-bar { - flex: 1; - height: 100%; - justify-content: space-evenly; - } - #hotbar #action-bar #macro-list { - flex: 0 0 510px; - height: 100%; - list-style: none; - margin: 0 0px; - padding: 5px 0px 4px 0px; - border: none; - border-radius: 4px; - justify-content: center; - background: url(../ui/frames/hotkeybox-macro-list.webp); - box-shadow: 2px 2px 5px #000000; - } - #hotbar #action-bar .macro { - border-image: url(../ui/frames/hotkeybox.webp) 21 repeat; - border-image-slice: 6 6 6 6 fill; - border-image-width: 6px 6px 6px 6px; - border-image-outset: 0px 0px 0px 0px; - border-radius: 0px; - } - #hotbar .macro .macro-key { - position: absolute; - top: 2px; - right: 2px; - padding: 3px 3px; - text-shadow: 1px 1px 1px black; - color: #f0f0e0; - font-weight: normal; - background: #000000e0; - max-height: 19px; - border-radius: 6px; - box-shadow: 0px 0px 5px black; - } - #hotbar .bar-controls { - background: #000000de; - box-shadow: 0 0 4px black; - border-radius: 16px; - border: 2px solid #540e0ec2; - } - #hotbar .bar-controls span.page-number { - display: block; - font-size: 20px; - line-height: 8px; - position: relative; - top: 4px; - } diff --git a/system/l5r-ui/ui/cursors/default.svg b/system/l5r-ui/ui/cursors/default.svg new file mode 100644 index 0000000..5b2dcd7 --- /dev/null +++ b/system/l5r-ui/ui/cursors/default.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/dnd-move.svg b/system/l5r-ui/ui/cursors/dnd-move.svg new file mode 100644 index 0000000..2259ca3 --- /dev/null +++ b/system/l5r-ui/ui/cursors/dnd-move.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/dnd-no-drop.svg b/system/l5r-ui/ui/cursors/dnd-no-drop.svg new file mode 100644 index 0000000..e9ed0b9 --- /dev/null +++ b/system/l5r-ui/ui/cursors/dnd-no-drop.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/drag.webp b/system/l5r-ui/ui/cursors/drag.webp index 4f5baa3..c7061b1 100644 Binary files a/system/l5r-ui/ui/cursors/drag.webp and b/system/l5r-ui/ui/cursors/drag.webp differ diff --git a/system/l5r-ui/ui/cursors/fleur.svg b/system/l5r-ui/ui/cursors/fleur.svg new file mode 100644 index 0000000..e4440b4 --- /dev/null +++ b/system/l5r-ui/ui/cursors/fleur.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/help.svg b/system/l5r-ui/ui/cursors/help.svg new file mode 100644 index 0000000..d4c6c6a --- /dev/null +++ b/system/l5r-ui/ui/cursors/help.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/normal.webp b/system/l5r-ui/ui/cursors/normal.webp index 4f30bfe..934e5f9 100644 Binary files a/system/l5r-ui/ui/cursors/normal.webp and b/system/l5r-ui/ui/cursors/normal.webp differ diff --git a/system/l5r-ui/ui/cursors/not-allowed.svg b/system/l5r-ui/ui/cursors/not-allowed.svg new file mode 100644 index 0000000..cd899f1 --- /dev/null +++ b/system/l5r-ui/ui/cursors/not-allowed.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/openhand.svg b/system/l5r-ui/ui/cursors/openhand.svg new file mode 100644 index 0000000..153e765 --- /dev/null +++ b/system/l5r-ui/ui/cursors/openhand.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/pointer.svg b/system/l5r-ui/ui/cursors/pointer.svg new file mode 100644 index 0000000..b91d4cc --- /dev/null +++ b/system/l5r-ui/ui/cursors/pointer.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/system/l5r-ui/ui/cursors/pointer.webp b/system/l5r-ui/ui/cursors/pointer.webp index de5a5c6..b9f3ae5 100644 Binary files a/system/l5r-ui/ui/cursors/pointer.webp and b/system/l5r-ui/ui/cursors/pointer.webp differ diff --git a/system/lang/en.json b/system/lang/en-en.json similarity index 96% rename from system/lang/en.json rename to system/lang/en-en.json index 5050162..4270504 100644 --- a/system/lang/en.json +++ b/system/lang/en-en.json @@ -1,6 +1,7 @@ { + "I18N.LANGUAGE": "English", "I18N.MAINTAINERS": ["Team L5R"], - + "HEXA.COLOR" : "Enter a hexadecimal color (such as #FFFFFF).", "IC.BG.COLOR": "IC Background Color", "IC.TEXT.COLOR": "IC Text Color", @@ -12,8 +13,7 @@ "OTHER.TEXT.COLOR": "Other Text Color", "DEF.CHAT.PREF": "Default Chat Prefix", "SPE.CHAT.PREF": "If specified, this string will be prefixed to all chat messages that are not already commands (such as /emote.)", - - + "SETTINGS.SimpleMacroShorthandN": "Shortened Macro Syntax", "SETTINGS.SimpleMacroShorthandL": "Enable a shortened macro syntax which allows referencing attributes directly, for example @str instead of @attributes.str.value. Disable this setting if you need the ability to reference the full attribute model, for example @attributes.str.label.", "SETTINGS.SimpleInitFormulaN": "Initiative Formula", @@ -21,6 +21,7 @@ "SIMPLE.NotifyInitFormulaUpdated": "Initiative formula was updated to:", "SIMPLE.NotifyInitFormulaInvalid": "Initiative formula was invalid:", + "L5r5e": { "Rings": { "Title": "Rings", @@ -75,7 +76,7 @@ }, "Skills": { "Title": "Skills", - "artisan": { + "Artisan": { "Title": "Artisan", "Aesthetics": "Aesthetics", "Composition": "Composition", @@ -87,7 +88,7 @@ "Water": "Adapt", "Void": "Attune" }, - "martial": { + "Martial": { "Title": "Martial", "Fitness": "Fitness", "Melee": "Martial Arts [Melee]", @@ -101,7 +102,7 @@ "Water": "Shift", "Void": "Sacrifice" }, - "scholar": { + "Scholar": { "Title": "Scholar", "Culture": "Culture", "Government": "Government", @@ -114,7 +115,7 @@ "Water": "Survey", "Void": "Sense" }, - "social": { + "Social": { "Title": "Social", "Command": "Command", "Courtesy": "Courtesy", @@ -126,7 +127,7 @@ "Water": "Charm", "Void": "Enlighten" }, - "trade": { + "Trade": { "Title": "Trade", "Commerce": "Commerce", "Labor": "Labor", @@ -140,8 +141,8 @@ "Void": "Subsist" } }, - "Conflict": { - "Title": "Conflict", + "Attributes": { + "Title": "Attributes", "Endurance": "Endurance", "EnduranceTip": "(Earth + Fire) x2", "Composure": "Composure", @@ -151,9 +152,12 @@ "Vigilante": "Vigilante", "VigilanteTip": "(Air + Water) /2", "VoidPoints": "Void Points", - "Stance": "Stance", "Fatigue": "Fatigue", - "Strife": "Strife", + "Strife": "Strife" + }, + "Conflict": { + "Title": "Conflict", + "Stance": "Stance", "Stances": { "AirTip": "+1 to TN of Attack and Scheme checks targeting you (+2 at rank 4+).", "EarthTip": "Others cannot spend Opportunity to inflict critical strikes or conditions on you.", diff --git a/system/lang/es-es.json b/system/lang/es-es.json new file mode 100644 index 0000000..b704612 --- /dev/null +++ b/system/lang/es-es.json @@ -0,0 +1,175 @@ +{ + "I18N.LANGUAGE": "Español", + "I18N.MAINTAINERS": ["Team L5R"], + + "HEXA.COLOR" : "Introduzca un color hexadecimal (como #FFFFFF)", + "IC.BG.COLOR": "Color de fondo en el gato", + "IC.TEXT.COLOR": "Color del texto en el chat", + "EMOTE.BG.COLOR": "Color de fondo de los Emotes", + "EMOTE.TEXT.COLOR": "Color del texto de los Emotes", + "ROLL.BG.COLOR": "Color de fondo de la tirada", + "ROLL.TEXT.COLOR": "Color del texto de la tirada", + "OTHER.BG.COLOR": "Otro color de fondo", + "OTHER.TEXT.COLOR": "Otro color de texto", + "DEF.CHAT.PREF": "Prefijo del chat por defecto", + "SPE.CHAT.PREF": "Si está configurado, la cadena será prefijada para todos los mensajes de chat que no sean ya comandos (como /emote.)", + + "SETTINGS.SimpleMacroShorthandN": "Macro sintaxis acortada", + "SETTINGS.SimpleMacroShorthandL": "Habilitar una sintaxis de macro abreviada que permita referenciar directamente los atributos, por ejemplo @str en lugar de @attributes.str.value. Deshabilitar esta configuración si se necesita la capacidad de referenciar el modelo de atributos completo, por ejemplo @attributes.str.label", + "SETTINGS.SimpleInitFormulaN": "Fórmula de iniciativa", + "SETTINGS.SimpleInitFormulaL": "Introduzca una fórmula de iniciativa, como d20+@dex", + + "SIMPLE.NotifyInitFormulaUpdated": "La fórmula de la iniciativa fue actualizada a:", + "SIMPLE.NotifyInitFormulaInvalid": "La fórmula de la iniciativa fue inválida:", + + "L5r5e": { + "Rings": { + "Title": "Anillos", + "Earth": "Tierra", + "Air": "Aire", + "water": "Agua", + "Fire": "Fuego", + "Void": "Vacío" + }, + "Narrative": "Narrativa", + "Experience": "Experiencia", + "Clan": "Clan", + "Family": "Familia", + "School": "Escuela", + "SchoolRank": "Rango", + "Roles": "Funciones", + "Distinctions": "Distinciones", + "DistinctionsTip": "Puedes volver a lanzar hasta dos dados si una distición te ayuda en la tirada.", + "Adversities": "Adversidades", + "AdversitiesTip": "Vuelve a lanzar dos dados con Éxito o Éxito relanzable si una adversidad influye en tu tirada. Si fallas, ganas 1 punto de vacío.", + "Anxieties": "Ansiedades", + "AnxietiesTip": "Tras realizar una tirada relacionada con tu ansiedad, recibes 3 puntos de Conflicto. Luego ganas 1 punto de vacío (limitado a 1 por escena).", + "Passions": "Pasiones", + "PassionsTip": "Después de efectuar una tirada relacionada con tu pasión, descarta tres puntos de Conflicto.", + "Personality": "Personalidad", + "Max": "Max", + "Current": "Actuales", + "Quantity": "Cantidad", + "Weight": "Peso", + "Damage": "Daño", + "Range": "Rango", + "Properties": "Propiedades", + "Weapons": "Armas", + "Items": "Equipo", + "Feats": "Rasgos", + "Skill": "Habilidad", + "Level": "Nivel", + "Approaches": "Planteamientos", + "FeatPlaceholderName": "Nuevo Rasgo", + "Notes": "Notas", + "Inventory": "Inventario", + "Rank": "Rango", + "Name": "Nombre", + "SocialStanding": { + "Title": "Posición Social", + "Honor": "Honor", + "Glory": "Gloria", + "Status": "Estatus", + "Ninjo": "Ninjo", + "Giri": "Giri", + "SocialTitles": "Títulos" + }, + "Skills": { + "Title": "Habilidades", + "Artisan": { + "Title": "Artesanales", + "Aesthetics": "Estética", + "Composition": "Composición", + "Design": "Diseño", + "Smithing": "Herrería", + "Air": "Refinar", + "Earth": "Restaurar", + "Fire": "Inventar", + "Water": "Adaptar", + "Void": "Sintonizar" + }, + "Martial": { + "Title": "Marciales", + "Fitness": "Aptitud Física", + "Melee": "Cuerpo a Cuerpo", + "Ranged": "A distancia", + "Unarmed": "Sin armas", + "Meditation": "Meditación", + "Tactics": "Tácticas", + "Air": "Amagar", + "Earth": "Resistir", + "Fire": "Abrumar", + "Water": "Alterar", + "Void": "Sacrificarse" + }, + "scholar": { + "Title": "Académicas", + "Culture": "Cultura", + "Government": "Gobierno", + "Medicine": "Medicina", + "Sentiment": "Sentimiento", + "Theology": "Teología", + "Air": "Analizar", + "Earth": "Recordar", + "Fire": "Teorizar", + "Water": "Examinar", + "Void": "Percibir" + }, + "social": { + "Title": "Sociales", + "Command": "Mando", + "Courtesy": "Cortesía", + "Games": "Pasatiempos", + "Performance": "Interpretación", + "Air": "Engañar", + "Earth": "Razonar", + "Fire": "Incitar", + "Water": "Encandilar", + "Void": "Iluminar" + }, + "trade": { + "Title": "Mercantiles", + "Commerce": "Comercio", + "Labor": "Trabajo manual", + "Seafaring": "Navegación", + "Skulduggery": "Actividad criminal", + "Survival": "Supervivencia", + "Air": "Estafar", + "Earth": "Producir", + "Fire": "Idear", + "Water": "Intercambiar", + "Void": "Subsistir" + } + }, + "Conflict": { + "Endurance": "Aguante", + "EnduranceTip": "(Tierra + Fuego) x2", + "Composure": "Compostura", + "ComposureTip": "(Tierra + Agua) x2", + "Focus": "Concentración", + "FocusTip": "Aire + Fuego", + "Vigilante": "Alerta", + "VigilanteTip": "(Aire + Agua) /2", + "VoidPoints": "P. Vacío", + "Fatigue": "Fatiga", + "Strife": "Conflicto" + }, + "Attributes": { + "Title": "Enfrentamiento", + "Stance": "Actitud", + "Stances": { + "AirTip": "+1 al NO de las tiradas de ataque y maquinación que te tengan como objetivo (+2 a rango 4+).", + "EarthTip": "Oponentes no pueden gastar Oportunidad para causarte impactos críticos ni estados.", + "FireTip": "Si tienes éxito, +1 éxito adicional por cada símbolo de Conflicto.", + "WaterTip": "Efectúa una segunda acción durante tu turno que no requiera tirada ni comparta tipo con tu primera acción.", + "VoidTip": "No acumulas Conflicto de los símbolos de Conflicto de tus tiradas." + } + }, + "XP": { + "Total": "Total", + "Spent": "Usada", + "Saved": "Restante", + "Adquisitions": "Adquisiciones" + } + } +} \ No newline at end of file diff --git a/system/lang/fr.json b/system/lang/fr-fr.json similarity index 87% rename from system/lang/fr.json rename to system/lang/fr-fr.json index 305a5c5..a06ae3b 100644 --- a/system/lang/fr.json +++ b/system/lang/fr-fr.json @@ -14,14 +14,14 @@ "DEF.CHAT.PREF": "Préfixe de Chat par défaut", "SPE.CHAT.PREF": "Si renseignée, la chaîne sera préfixée pour tous les messages de chat qui ne sont pas déjà des commandes (comme /emote.)", - - "SETTINGS.SimpleMacroShorthandN": "Shortened Macro Syntax", - "SETTINGS.SimpleMacroShorthandL": "Enable a shortened macro syntax which allows referencing attributes directly, for example @str instead of @attributes.str.value. Disable this setting if you need the ability to reference the full attribute model, for example @attributes.str.label.", - "SETTINGS.SimpleInitFormulaN": "Initiative Formula", - "SETTINGS.SimpleInitFormulaL": "Enter an initiative formula, such as d20+@dex", - - "SIMPLE.NotifyInitFormulaUpdated": "Initiative formula was updated to:", - "SIMPLE.NotifyInitFormulaInvalid": "Initiative formula was invalid:", + "SETTINGS.SimpleMacroShorthandN": "Macro syntaxe abrégée", + "SETTINGS.SimpleMacroShorthandL": "Activer une syntaxe de macro raccourcie qui permet de référencer directement les attributs, par exemple @str au lieu de @attributes.str.value. Désactivez ce paramètre si vous avez besoin de pouvoir référencer le modèle d'attribut complet, par exemple @attributes.str.label", + "SETTINGS.SimpleInitFormulaN": "Formule d'initiative", + "SETTINGS.SimpleInitFormulaL": "Entrez une formule d'initiative, telle que d20+@dex", + + "SIMPLE.NotifyInitFormulaUpdated": "La formule de l'initiative a été mise à jour pour :", + "SIMPLE.NotifyInitFormulaInvalid": "La formule d'initiative suivante n'est pas valable :", + "L5r5e": { "Rings": { "Title": "Anneaux", @@ -76,7 +76,7 @@ }, "Skills": { "Title": "Compétences", - "artisan": { + "Artisan": { "Title": "Artisanales", "Aesthetics": "Esthétique", "Composition": "Composition", @@ -88,7 +88,7 @@ "Water": "Adapter", "Void": "S’harmoniser" }, - "martial": { + "Martial": { "Title": "Martiales", "Fitness": "Forme", "Melee": "Arts martiaux (corps à corps)", @@ -102,7 +102,7 @@ "Water": "Détourner", "Void": "Lâcher prise" }, - "scholar": { + "Scholar": { "Title": "Savantes", "Culture": "Culture", "Government": "Gouvernement", @@ -115,7 +115,7 @@ "Water": "Observer", "Void": "Ressentir" }, - "social": { + "Social": { "Title": "Sociales", "Command": "Commandement", "Courtesy": "Courtoisie", @@ -127,7 +127,7 @@ "Water": "Charmer", "Void": "Illuminer" }, - "trade": { + "Trade": { "Title": "Professionnelles", "Commerce": "Commerce", "Labor": "Travail manuel", @@ -141,8 +141,8 @@ "Void": "Subsister" } }, - "Conflict": { - "Title": "Conflit", + "Attributes": { + "Title": "Attributs", "Endurance": "Endurance", "EnduranceTip": "(Terre + Feu) x2", "Composure": "Sang Froid", @@ -152,9 +152,12 @@ "Vigilante": "Vigilance", "VigilanteTip": "(Air + Eau) /2", "VoidPoints": "Points de Vide", - "Stance": "Posture", "Fatigue": "Fatigue", - "Strife": "Conflit", + "Strife": "Conflit" + }, + "Conflict": { + "Title": "Conflit", + "Stance": "Posture", "Stances": { "AirTip": "Augmentez de 1 le ND des tests d'Attaque et de Manipulation dont vous êtes la cible. Si votre rang d'école est au moins égal à 4, augmentez le ND de 2 au lieu de 1.", "EarthTip": "Quand vous êtes la cible d'un test d'Attaque ou de Manipulation, votre adversaire ne peut pas dépenser d'Aubaine pour vous infliger des coups critiques ou des états.", diff --git a/system/scripts/actors/actor-sheet.js b/system/scripts/actors/actor-sheet.js deleted file mode 100644 index 0490086..0000000 --- a/system/scripts/actors/actor-sheet.js +++ /dev/null @@ -1,142 +0,0 @@ - -export class ActorSheetL5r5e extends ActorSheet { - - static get defaultOptions() { - return mergeObject(super.defaultOptions, { - classes: ["l5r5e", "sheet", "actor"], - template: "systems/l5r5e/templates/sheets/actor-sheet.html", - width: 600, - height: 600, - tabs: [{navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description"}], - dragDrop: [{dragSelector: ".item-list .item", dropSelector: null}] - }); - } - - getData() { - const sheetData = super.getData(); - - this._prepareItems(sheetData); - - const feats = sheetData.items.filter((item) => item.type === "feat"); - - sheetData.data.feats = feats; - - return sheetData; - } - - /** - * Update the actor. - * @param event - * @param formData - */ - _updateObject(event, formData) { - return this.object.update(formData); - } - - /** - * Prepare item data to be displayed in the actor sheet. - * @param sheetData Data of the actor been displayed in the sheet. - */ - _prepareItems(sheetData) { - for (let item of sheetData.items) { - if (item.type === "weapon") { - item.isWeapon = true; - item.isEquipment = true; - } else if (item.type === "feat"){ - item.isFeat = true; - } - else { - item.isEquipment = true; - } - } - } - - _prepareFeats() { - } - - /** - * Subscribe to events from the sheet. - * @param html HTML content of the sheet. - */ - activateListeners(html) { - super.activateListeners(html); - - // Everything below here is only needed if the sheet is editable - if (!this.options.editable) return; - - // Update Inventory Item - html.find('.item-edit').click(ev => { - const li = $(ev.currentTarget).parents(".item"); - const itemId = li.data("itemId"); - const item = this.actor.getOwnedItem(itemId); - item.sheet.render(true); - }); - - // Delete Inventory Item - html.find('.item-delete').click(ev => { - const li = $(ev.currentTarget).parents(".item"); - const itemId = li.data("itemId"); - this.actor.deleteOwnedItem(itemId); - }); - - html.find('.feat-add').click(ev => { - this._createFeat(); - }); - - html.find('.feat-delete').click(ev => { - const li = $(ev.currentTarget).parents(".feat"); - const featId = li.data("featId"); - console.log("Remove feat" + featId + " clicked"); - - this.actor.deleteOwnedItem(featId); - }); - - html.find('.feat-edit').click(ev => { - const li = $(ev.currentTarget).parents(".feat"); - const featId = li.data("featId"); - const feat = this.actor.getOwnedItem(featId); - feat.sheet.render(true); - }); - - html.find('.skill-name').click(ev => { - const li = $(ev.currentTarget).parents(".skill"); - const skillId = li.data("skill"); - - this._onSkillClicked(skillId); - }); - - html.find('.adquisition-add').click(ev => { - this._createFeat(); - }); - } - - /** - * Creates a new feat for the character and shows a window to edit it. - */ - async _createFeat() { - const data = { - name: game.i18n.localize('L5r5e.FeatPlaceholderName'), - type: "feat" - }; - const created = await this.actor.createEmbeddedEntity("OwnedItem", data); - const feat = this.actor.getOwnedItem(created._id); - - // Default values - //feat.rank = 1; - //feat.xp_used = 0; - - feat.sheet.render(true); - - return feat; - } - - /** - * React to a skill from the skills list been clicked. - * @param {string} skillId Unique ID of the skill been clicked. - */ - async _onSkillClicked(skillId) { - console.log("Clicked on skill " + skillId); - - // TODO - } -} \ No newline at end of file diff --git a/system/scripts/items/feat-sheet.js b/system/scripts/items/feat-sheet.js index 02bbeca..ec7744d 100644 --- a/system/scripts/items/feat-sheet.js +++ b/system/scripts/items/feat-sheet.js @@ -7,7 +7,7 @@ export class FeatSheetL5r5e extends ItemSheetL5r5e { /** @override */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["l5r", "sheet", "feat"], + classes: ["l5r5e", "sheet", "feat"], template: "systems/l5r5e/templates/item/feat-sheet.html", width: 520, height: 480, diff --git a/system/scripts/items/item-sheet.js b/system/scripts/items/item-sheet.js index 6a412c6..4650f7e 100644 --- a/system/scripts/items/item-sheet.js +++ b/system/scripts/items/item-sheet.js @@ -6,7 +6,7 @@ export class ItemSheetL5r5e extends ItemSheet { /** @override */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["l5r", "sheet", "item"], + classes: ["l5r5e", "sheet", "item"], template: "systems/l5r5e/templates/item/item-sheet.html", width: 520, height: 480, diff --git a/system/scripts/items/weapon-sheet.js b/system/scripts/items/weapon-sheet.js index 037269a..bc96351 100644 --- a/system/scripts/items/weapon-sheet.js +++ b/system/scripts/items/weapon-sheet.js @@ -7,7 +7,7 @@ export class WeaponSheetL5r5e extends ItemSheetL5r5e { /** @override */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["l5r", "sheet", "weapon"], + classes: ["l5r5e", "sheet", "weapon"], template: "systems/l5r5e/templates/item/weapon-sheet.html", width: 520, height: 480, diff --git a/system/scripts/main-l5r5e.js b/system/scripts/main-l5r5e.js index df00638..4f462a8 100644 --- a/system/scripts/main-l5r5e.js +++ b/system/scripts/main-l5r5e.js @@ -63,12 +63,12 @@ Hooks.once("init", async function () { }); Handlebars.registerHelper("localizeSkillCategory", function (skillName) { - const key = "L5r5e.Skills." + skillName + ".Title"; + const key = "L5r5e.Skills." + skillName.charAt(0).toUpperCase() + skillName.slice(1) + ".Title"; return game.i18n.localize(key); }); Handlebars.registerHelper("localizeSkill", function (skillCategory, skillName) { - const key = "L5r5e.Skills." + skillCategory + "." + skillName; + const key = "L5r5e.Skills." + skillCategory.charAt(0).toUpperCase() + skillCategory.slice(1) + "." + skillName.charAt(0).toUpperCase() + skillName.slice(1); return game.i18n.localize(key); }); @@ -153,4 +153,4 @@ Hooks.once("diceSoNiceReady", (dice3d) => { ); }); -// Add any additional hooks if necessary +// Add any additional hooks if necessary \ No newline at end of file diff --git a/system/scripts/sheets/actor-sheet.js b/system/scripts/sheets/actor-sheet.js index ab3fafd..f97db97 100644 --- a/system/scripts/sheets/actor-sheet.js +++ b/system/scripts/sheets/actor-sheet.js @@ -6,7 +6,7 @@ export class ActorSheetL5r5e extends ActorSheet { classes: ["l5r5e", "sheet", "actor"], template: "systems/l5r5e/templates/sheets/actor-sheet.html", width: 600, - height: 600, + height: 800, tabs: [{navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description"}], dragDrop: [{dragSelector: ".item-list .item", dropSelector: null}] }); diff --git a/system/styles/l5r5e.css b/system/styles/l5r5e.css index 9dded42..efeb377 100644 --- a/system/styles/l5r5e.css +++ b/system/styles/l5r5e.css @@ -1 +1 @@ -.window-app .window-content{background:url("../assets/imgs/bgL5R.jpg") no-repeat;background-size:cover}*{transition-property:background, color, border-color, text-shadow, box-shadow;transition-duration:0.5s;transition-timing-function:ease}input[type="text"]:focus,input[type="number"]:focus,input[type="password"]:focus,input[type="date"]:focus,input[type="time"]:focus{box-shadow:0 0 6px rgba(255,0,0,0.75)}.tabs .item.active{text-shadow:0 0 10px rgba(255,0,0,0.75)}ul,li{list-style-type:none;margin:0;padding:0}@font-face{font-family:"LogotypeL5r";src:url("../fonts/LogotypeL5r.ttf") format("truetype")}@font-face{font-family:"BrushtipTexe";src:url("../fonts/BrushtipTexe.otf") format("opentype")}h1{font:1.5rem "BrushtipTexe"}i.strife,i.success,i.explosive,i.opportunity,i.d6,i.d12,i.i_earth,i.i_water,i.i_fire,i.i_air,i.i_void{font-family:LogotypeL5r;line-height:1rem;font-style:normal;font-weight:normal;vertical-align:middle}i.strife:before{content:"f"}i.success:before{content:"s"}i.explosive:before{content:"e"}i.opportunity:before{content:"o"}i.d6:before{content:"r"}i.d12:before{content:"k"}i.i_earth:before{content:"g"}i.i_water:before{content:"w"}i.i_fire:before{content:"i"}i.i_air:before{content:"a"}i.i_void:before{content:"v"}#sidebar #sidebar-tabs{flex:0 0 1rem;box-sizing:border-box;margin:0 0 0.25rem;border-bottom:1px solid rgba(255,255,255,0.5);box-shadow:none}#sidebar #sidebar-tabs>.item{line-height:27px;border-radius:100%;margin:0;flex:0 0 27px;height:27px}#sidebar #sidebar-tabs>.item .active{border:1px solid rgba(255,100,0,0.75);box-shadow:0 0 6px rgba(255,100,0,0.75)}.l5r5e.chat-dice>img{border:1px solid transparent;background-repeat:no-repeat;background-position:center;background-size:100%;height:44px;width:44px;outline:none;margin:0;flex:0 0 20px;display:inline-block}.l5r5e.sheet{min-width:600px}.l5r5e.sheet .sheet-header h1{flex:0 0 100%}.l5r5e.sheet .sheet-header h1 input{height:3rem;line-height:1.5rem;margin:0;padding:0 0 0.5rem;width:100%;border:1px solid rgba(255,255,255,0.5);color:#963c41}.l5r5e.sheet .sheet-header img{flex:0 0 150px;height:150px;margin-right:0.25rem}.l5r5e.sheet .sheet-header .header-fields{display:flex;flex-wrap:wrap}.l5r5e.sheet .sheet-header .identity-wrapper{flex:0 0 calc(100% - 150px - 0.25rem)}.l5r5e.sheet .sheet-header .identity-wrapper .identity-content{flex:0 0 100%;display:flex;flex-wrap:wrap}.l5r5e.sheet .sheet-header .identity-wrapper .identity-content li{flex:33%}.l5r5e.sheet .sheet-header .identity-wrapper .identity-content li:nth-child(1),.l5r5e.sheet .sheet-header .identity-wrapper .identity-content li:nth-child(2){flex:50%;margin:0 0 0.5rem}.l5r5e.sheet .sheet-header .rings{flex:0 0 calc(50% - 0.25rem);display:flex;padding:0.25rem}.l5r5e.sheet .sheet-header .social-content{flex:0 0 100%;display:flex;padding:0.25rem}.l5r5e.sheet .sheet-header .attributes-wrapper{flex:0 0 calc(50% - 0.25rem);display:flex;padding:0.25rem}.l5r5e .testing{width:14.28571%}.l5r5e .testing{width:28.57143%}.l5r5e .rings{display:flex;flex-wrap:wrap;color:rgba(255,255,255,0.75)}.l5r5e .rings #earth,.l5r5e .rings #air,.l5r5e .rings #water,.l5r5e .rings #fire,.l5r5e .rings #void{position:relative;flex:1 1 50%;text-align:center}.l5r5e .rings #earth i.i_earth,.l5r5e .rings #earth i.i_water,.l5r5e .rings #earth i.i_fire,.l5r5e .rings #earth i.i_air,.l5r5e .rings #earth i.i_void,.l5r5e .rings #air i.i_earth,.l5r5e .rings #air i.i_water,.l5r5e .rings #air i.i_fire,.l5r5e .rings #air i.i_air,.l5r5e .rings #air i.i_void,.l5r5e .rings #water i.i_earth,.l5r5e .rings #water i.i_water,.l5r5e .rings #water i.i_fire,.l5r5e .rings #water i.i_air,.l5r5e .rings #water i.i_void,.l5r5e .rings #fire i.i_earth,.l5r5e .rings #fire i.i_water,.l5r5e .rings #fire i.i_fire,.l5r5e .rings #fire i.i_air,.l5r5e .rings #fire i.i_void,.l5r5e .rings #void i.i_earth,.l5r5e .rings #void i.i_water,.l5r5e .rings #void i.i_fire,.l5r5e .rings #void i.i_air,.l5r5e .rings #void i.i_void{font-size:5rem;line-height:4.75rem}.l5r5e .rings #earth label,.l5r5e .rings #air label,.l5r5e .rings #water label,.l5r5e .rings #fire label,.l5r5e .rings #void label{position:relative;width:5rem;line-height:0;float:right}.l5r5e .rings #earth input,.l5r5e .rings #air input,.l5r5e .rings #water input,.l5r5e .rings #fire input,.l5r5e .rings #void input{position:absolute;height:2rem;width:2rem;border-radius:100%;top:0;left:0;border:2px solid #babbb1;color:rgba(255,255,255,0.75)}.l5r5e .rings #earth input:hover,.l5r5e .rings #air input:hover,.l5r5e .rings #water input:hover,.l5r5e .rings #fire input:hover,.l5r5e .rings #void input:hover{border:2px solid rgba(255,0,0,0.75);text-shadow:0 0 6px rgba(255,0,0,0.75);box-shadow:0 0 6px inset rgba(255,0,0,0.75)}.l5r5e .rings #earth{float:right;color:#6e8d6b}.l5r5e .rings #earth input{top:auto;right:0;bottom:-1rem;left:auto;background:#6e8d6b}.l5r5e .rings #earth label strong{position:absolute;bottom:0.75rem;left:-1.5rem}.l5r5e .rings #air{color:#8e768c}.l5r5e .rings #air input{top:auto;right:auto;bottom:-1rem;left:0;background:#8e768c}.l5r5e .rings #air label{float:left}.l5r5e .rings #air label strong{position:absolute;bottom:0.75rem;right:-1rem}.l5r5e .rings #water{float:right;color:#6e8b91;padding-right:2rem}.l5r5e .rings #water input{top:17%;right:-1.25rem;bottom:auto;left:auto;background:#6e8b91}.l5r5e .rings #water label strong{position:absolute;bottom:-0.75rem;right:2rem}.l5r5e .rings #fire{color:#926f47;padding-left:2rem}.l5r5e .rings #fire input{top:17%;right:auto;bottom:auto;left:-1.25rem;background:#926f47}.l5r5e .rings #fire label{float:left}.l5r5e .rings #fire label strong{position:absolute;bottom:-0.75rem;right:2rem}.l5r5e .rings #void{top:-2rem;margin:0 calc(50% - 2.5rem);color:#4d4844}.l5r5e .rings #void input{top:-1rem;right:auto;bottom:auto;left:30%;background:#4d4844}.l5r5e .rings #void label strong{position:absolute;bottom:-0.75rem;left:1.75rem}.l5r5e .testing{width:14.28571%}.l5r5e .testing{width:28.57143%}.l5r5e .testing{width:14.28571%}.l5r5e .testing{width:28.57143%} +.window-app .window-content{z-index:1;position:relative;background:url("../assets/imgs/bgL5R.webp") no-repeat;background-size:cover}.window-app .window-resizable-handle{z-index:2;background:rgba(0,0,0,0.75)}*{transition-property:background, color, border-color, text-shadow, box-shadow;transition-duration:0.5s;transition-timing-function:ease}input[type="text"]:focus,input[type="number"]:focus,input[type="password"]:focus,input[type="date"]:focus,input[type="time"]:focus{box-shadow:0 0 6px rgba(255,0,0,0.75)}.tabs .item.active{text-shadow:0 0 10px rgba(255,0,0,0.75)}#controls .scene-control.active,#controls .control-tool.active,#controls .scene-control:hover,#controls .control-tool:hover{box-shadow:0 0 10px rgba(255,0,0,0.75)}ul,li{list-style-type:none;margin:0;padding:0}input[type="text"],input[type="number"],input[type="password"],input[type="date"],input[type="time"]{background:rgba(255,255,255,0.5);border:1px solid rgba(186,187,177,0.5);padding:0.25rem;color:#764f40}@font-face{font-family:"LogotypeL5r";src:url("../fonts/LogotypeL5r.ttf") format("truetype")}@font-face{font-family:"BrushtipTexe";src:url("../fonts/BrushtipTexe.otf") format("opentype")}@font-face{font-family:"PatrickHand";src:url("../fonts/PatrickHand.ttf") format("truetype")}body{font:16px "PatrickHand",sans-serif;letter-spacing:0.05rem}h1,h4{font-family:"BrushtipTexe",sans-serif}h1{font-size:2rem}h4{font-size:1.25rem}i.strife,i.success,i.explosive,i.opportunity,i.d6,i.d12,i.i_earth,i.i_water,i.i_fire,i.i_air,i.i_void{font-family:LogotypeL5r;line-height:1rem;font-style:normal;font-weight:normal;vertical-align:middle}i.strife:before{content:"f"}i.success:before{content:"s"}i.explosive:before{content:"e"}i.opportunity:before{content:"o"}i.d6:before{content:"r"}i.d12:before{content:"k"}i.i_earth:before{content:"g"}i.i_water:before{content:"w"}i.i_fire:before{content:"i"}i.i_air:before{content:"a"}i.i_void:before{content:"v"}#sidebar{background-position:top;background-size:100%;background-repeat:no-repeat;background:url("../assets/ui/bgSidebar.png") no-repeat;top:0;height:100%;padding:0.5rem}#sidebar #sidebar-tabs{flex:0 0 1rem;box-sizing:border-box;margin:0 0 0.25rem;border-bottom:1px solid rgba(255,255,255,0.25);box-shadow:none}#sidebar #sidebar-tabs>.item{line-height:27px;border-radius:100%;margin:0;flex:0 0 27px;height:27px}#sidebar #sidebar-tabs>.item .active{border:1px solid rgba(255,100,0,0.75);box-shadow:0 0 6px rgba(255,100,0,0.75)}#sidebar .message-sender{color:#963c41}#hotbar{margin:0}#hotbar #action-bar{flex:0 0 100%}#hotbar #action-bar .macro{-o-border-image:url("../assets/ui/macro-button.webp");border-image:url("../assets/ui/macro-button.webp");border-image-slice:8 fill;border-image-width:0.25rem;border-image-outset:0;border-radius:0}#hotbar #action-bar .macro .macro-key{background:transparent}#hotbar #action-bar #macro-list{background:rgba(0,0,0,0.75);margin:0;padding:0.05rem;border:none;border-radius:0;background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 15 repeat;border-image:url("../assets/ui/macro-button.webp") 15 repeat;border-image-width:0.5rem;border-image-outset:0px;box-shadow:0.25rem 0.25rem 0.5rem rgba(0,0,0,0.75)}#hotbar .bar-controls{background:rgba(0,0,0,0.75);background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 15 repeat;border-image:url("../assets/ui/macro-button.webp") 15 repeat;border-image-width:0.5rem;border-image-outset:0px;box-shadow:0 0 0.25rem rgba(0,0,0,0.75);border-radius:0;margin:0 0.5rem}#hotbar .bar-controls a.page-control,#hotbar .bar-controls span.page-number{font-size:1rem;line-height:0.95rem}#players{background:rgba(0,0,0,0.75);background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 15 repeat;border-image:url("../assets/ui/macro-button.webp") 15 repeat;border-image-width:0.5rem;border-image-outset:0px;margin:0;padding:0;left:1.15rem;bottom:0.65rem;box-shadow:inset 0 0 0.5rem rgba(0,0,0,0.75)}#players:before{z-index:-1;position:absolute;content:"";background:transparent url("../assets/ui/players-border.webp") no-repeat 0 0;background-size:100%;display:block;top:-12px;right:10%;left:10%;bottom:0}#logo{height:80px;margin-left:0.5rem;opacity:0.5}#logo:hover{opacity:0.75}#navigation{left:120px}#navigation #nav-toggle,#navigation #scene-list .scene.nav-item{cursor:default;color:rgba(255,255,255,0.65);background:linear-gradient(#285064, #0a141e, #285064);background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image-width:0.25rem;border-image-outset:0px}#navigation #scene-list .scene.nav-item.active{background:linear-gradient(#41140f, #230a05, #41140f)}#navigation #scene-list .scene.view,#navigation #scene-list .scene.context{cursor:default;color:#FFF;background:linear-gradient(#41140f, #230a05, #41140f);background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image-width:0.25rem;border-image-outset:0px;box-shadow:0 0 20px red}#controls{top:100px}#controls .scene-control.active,#controls .control-tool.active,#controls .scene-control:hover,#controls .control-tool:hover{background:linear-gradient(#41140f, #230a05, #41140f);background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image-width:0.25rem;border-image-outset:0px;box-shadow:0 0 10px rgba(255,0,0,0.75)}#controls .scene-control,#controls .control-tool{background:linear-gradient(#285064, #0a141e, #285064);background-origin:padding-box;-o-border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image:url("../assets/ui/macro-button.webp") 10 repeat;border-image-width:0.25rem;border-image-outset:0px}.l5r5e.chat-dice>img{border:1px solid transparent;background-repeat:no-repeat;background-position:center;background-size:100%;height:44px;width:44px;outline:none;margin:0;flex:0 0 20px;display:inline-block}.l5r5e.sheet{min-width:600px}.l5r5e.sheet .sheet-header h1{flex:auto;margin:0 0.5rem 0.25rem}.l5r5e.sheet .sheet-header h1 input{flex:0 0 100%;height:4rem;margin:0.5rem 0 0;width:100%;color:#963c41;background:transparent;border:0 none;border-radius:0;border-bottom:1px dotted rgba(0,0,0,0.5)}.l5r5e.sheet .sheet-header h1:before{content:"";position:absolute;background:url("../assets/imgs/brushL5r.png") no-repeat 0 0;background-size:contain;height:225px;width:100%;z-index:-1;left:-0.25rem}.l5r5e.sheet .sheet-header img{flex:0 0 150px;height:150px;margin-right:0;-o-object-fit:contain;object-fit:contain;background:rgba(255,255,255,0.5);border:1px solid rgba(186,187,177,0.5);--notchSize: 0.5rem;-webkit-clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100% - var(--notchSize)));clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100% - var(--notchSize)))}.l5r5e.sheet .sheet-header .header-fields h2{font-family:"BrushtipTexe",sans-serif;float:right;width:50%;padding:0 0.25rem;margin:0;text-align:right;color:rgba(0,0,0,0.5);border-bottom:rgba(255,255,255,0.65);--notchSize: 0.5rem;-webkit-clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100%) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100%));clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100%) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100%))}.l5r5e.sheet .sheet-header .header-fields h2:before{content:"";position:absolute;height:1px;width:100%}.l5r5e.sheet .sheet-header .identity-wrapper{display:flex;flex-wrap:wrap;flex:0 0 calc(100% - 150px - 0.25rem)}.l5r5e.sheet .sheet-header .identity-wrapper .identity-content{flex:0 0 100%;display:flex;flex-wrap:wrap;margin:0.5rem}.l5r5e.sheet .sheet-header .identity-wrapper .identity-content li{flex:33%}.l5r5e.sheet .sheet-header .identity-wrapper .identity-content li:nth-child(1),.l5r5e.sheet .sheet-header .identity-wrapper .identity-content li:nth-child(2){flex:50%;margin:0 0 0.5rem}.l5r5e.sheet .sheet-header .rings{float:left;width:calc(50% - 0.25rem);padding:0.25rem}.l5r5e.sheet .sheet-header .social-content{flex:0 0 100%;display:flex;padding:0.25rem}.l5r5e.sheet .sheet-header .attributes-wrapper{float:right;width:calc(50% - 0.25rem);padding:0.5rem 0 0.5rem 1rem;display:flex;flex-wrap:wrap;flex-direction:column;background:rgba(186,187,177,0.5);--notchSize: 0.5rem;-webkit-clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100%) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100%));clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100%) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100%))}.l5r5e.sheet .sheet-header .attributes-wrapper .endurance-content label,.l5r5e.sheet .sheet-header .attributes-wrapper .composure-content label,.l5r5e.sheet .sheet-header .attributes-wrapper .void-content label{float:left;width:50%}.l5r5e.sheet .sheet-header .attributes-wrapper li p{display:none;position:absolute}.l5r5e.sheet .sheet-header .attributes-wrapper li:hover p{display:block}.l5r5e.sheet .sheet-header .identity-wrapper label,.l5r5e.sheet .sheet-header .social-content label,.l5r5e.sheet .sheet-header .attributes-wrapper label{display:flex;color:#5a6e5a;text-transform:uppercase;font-size:0.75rem;line-height:2rem}.l5r5e.sheet .sheet-header .identity-wrapper label input,.l5r5e.sheet .sheet-header .social-content label input,.l5r5e.sheet .sheet-header .attributes-wrapper label input{flex:1;margin:0 1rem 0 0.5rem}.l5r5e.sheet article{background:rgba(255,255,255,0.5);padding:0.5rem}.l5r5e nav .sheet-tabs{background:rgba(186,187,177,0.5);color:rgba(0,0,0,0.5);--notchSize: 0.5rem;-webkit-clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100%) 100%, var(--notchSize) 100%, 0% calc(100%));clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100%) 100%, var(--notchSize) 100%, 0% calc(100%))}.l5r5e nav .item:hover{background-color:rgba(0,0,0,0.75);color:#fff;text-shadow:black 1px 2px 0}.l5r5e nav .item.active{height:2.5rem;line-height:2rem;background-color:rgba(73,12,11,0.85);color:#fff;background-color:rgba(73,12,11,0.85);-webkit-clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% 100%, 0 100%, 0% 0%, 0% 100%);clip-path:polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% 100%, 0 100%, 0% 0%, 0% 100%)}.l5r5e nav .item.active:hover{background-color:rgba(73,12,11,0.85);cursor:default}.l5r5e .rings{display:flex;flex-wrap:wrap;color:rgba(255,255,255,0.65)}.l5r5e .rings #earth,.l5r5e .rings #air,.l5r5e .rings #water,.l5r5e .rings #fire,.l5r5e .rings #void{position:relative;flex:1 1 50%;text-align:center}.l5r5e .rings #earth i.i_earth,.l5r5e .rings #earth i.i_water,.l5r5e .rings #earth i.i_fire,.l5r5e .rings #earth i.i_air,.l5r5e .rings #earth i.i_void,.l5r5e .rings #air i.i_earth,.l5r5e .rings #air i.i_water,.l5r5e .rings #air i.i_fire,.l5r5e .rings #air i.i_air,.l5r5e .rings #air i.i_void,.l5r5e .rings #water i.i_earth,.l5r5e .rings #water i.i_water,.l5r5e .rings #water i.i_fire,.l5r5e .rings #water i.i_air,.l5r5e .rings #water i.i_void,.l5r5e .rings #fire i.i_earth,.l5r5e .rings #fire i.i_water,.l5r5e .rings #fire i.i_fire,.l5r5e .rings #fire i.i_air,.l5r5e .rings #fire i.i_void,.l5r5e .rings #void i.i_earth,.l5r5e .rings #void i.i_water,.l5r5e .rings #void i.i_fire,.l5r5e .rings #void i.i_air,.l5r5e .rings #void i.i_void{font-size:5rem;line-height:4.75rem}.l5r5e .rings #earth label,.l5r5e .rings #air label,.l5r5e .rings #water label,.l5r5e .rings #fire label,.l5r5e .rings #void label{position:relative;width:5rem;line-height:0;float:right}.l5r5e .rings #earth input,.l5r5e .rings #air input,.l5r5e .rings #water input,.l5r5e .rings #fire input,.l5r5e .rings #void input{position:absolute;height:2rem;width:2rem;border-radius:100%;top:0;left:0;border:2px solid rgba(186,187,177,0.5);color:rgba(255,255,255,0.65)}.l5r5e .rings #earth input:hover,.l5r5e .rings #air input:hover,.l5r5e .rings #water input:hover,.l5r5e .rings #fire input:hover,.l5r5e .rings #void input:hover{border:2px solid rgba(255,0,0,0.75);text-shadow:0 0 6px rgba(255,0,0,0.75);box-shadow:0 0 6px inset rgba(255,0,0,0.75)}.l5r5e .rings #earth{float:right;color:#699678}.l5r5e .rings #earth input{top:auto;right:0;bottom:-1rem;left:auto;background:#699678}.l5r5e .rings #earth label strong{position:absolute;bottom:0.75rem;left:-1.75rem}.l5r5e .rings #air{color:#917896}.l5r5e .rings #air input{top:auto;right:auto;bottom:-1rem;left:0;background:#917896}.l5r5e .rings #air label{float:left}.l5r5e .rings #air label strong{position:absolute;bottom:0.75rem;right:-1rem}.l5r5e .rings #water{float:right;color:#5f919b;padding-right:2rem}.l5r5e .rings #water input{top:17%;right:-1.25rem;bottom:auto;left:auto;background:#5f919b}.l5r5e .rings #water label strong{position:absolute;bottom:-0.75rem;right:2rem}.l5r5e .rings #fire{color:#9b7350;padding-left:2rem}.l5r5e .rings #fire input{top:17%;right:auto;bottom:auto;left:-1.25rem;background:#9b7350}.l5r5e .rings #fire label{float:left}.l5r5e .rings #fire label strong{position:absolute;bottom:-0.75rem;right:2rem}.l5r5e .rings #void{top:-2rem;margin:0 calc(50% - 2.5rem);color:#4b4641}.l5r5e .rings #void input{top:-1rem;right:auto;bottom:auto;left:30%;background:#4b4641}.l5r5e .rings #void label strong{position:absolute;bottom:-0.75rem;left:1.75rem}.l5r5e .testing{width:14.28571%}.l5r5e .testing{width:28.57143%}.l5r5e .testing{width:14.28571%}.l5r5e .testing{width:28.57143%} diff --git a/system/styles/scss/colors.scss b/system/styles/scss/colors.scss index 300010d..99172c1 100644 --- a/system/styles/scss/colors.scss +++ b/system/styles/scss/colors.scss @@ -1,34 +1,49 @@ /** Colors **/ // -- Global -$white: rgba(255, 255, 255, 0.75); +$white: rgba(255, 255, 255, 0.65); $black: rgba(0, 0, 0, 0.75); +$dark-red: rgba(25, 0, 0, 0.75); $red: rgba(255, 0, 0, 0.75); $orange: rgba(255, 100, 0, 0.75); $blue: rgba(0, 0, 255, 0.75); $green: rgba(0, 255, 0, 0.75); // color title -$l5r5e-title: rgb(186, 187, 177); +$l5r5e-title: rgba(186, 187, 177, 0.5); // color bold $l5r5e-bold: rgb(118, 79, 64); +// color label +$l5r5e-label: rgb(90, 110, 90); // color red $l5r5e-red: rgb(150, 60, 65); // color white 0.5 $l5r5e-white: rgba(255, 255, 255, 0.5); +// color white 0.5 +$l5r5e-white-light: rgba(255, 255, 255, 0.25); // color black 0.5 $l5r5e-black: rgba(0, 0, 0, 0.5); +// gradient +$l5r5e-linear-gradient-red: rgba(65,20,15,1); +$l5r5e-linear-gradient-red-dark: rgba(35,10,5,1); +$l5r5e-linear-gradient-blue: rgba(40,80,100,1); +$l5r5e-linear-gradient-blue-dark: rgba(10,20,30,1); +$l5r5e-linear-gradient-green: rgba(40,100,50,1); +$l5r5e-linear-gradient-green-dark: rgba(10,60,15,1); + +// -- Rings + // Earth -$l5r5e-earth: rgb(110, 141, 107); +$l5r5e-earth: rgb(105, 150, 120); // Air -$l5r5e-air: rgb(142, 118, 140); +$l5r5e-air: rgb(145, 120, 150); // Water -$l5r5e-water: rgb(110, 139, 145); +$l5r5e-water: rgb(95, 145, 155); // Fire -$l5r5e-fire: rgb(146, 111, 71); +$l5r5e-fire: rgb(155, 115, 80); // Void -$l5r5e-void: rgb(77, 72, 68); +$l5r5e-void: rgb(75, 70, 65); // -- Clans diff --git a/system/styles/scss/fonts.scss b/system/styles/scss/fonts.scss index b39db77..e93c550 100644 --- a/system/styles/scss/fonts.scss +++ b/system/styles/scss/fonts.scss @@ -12,14 +12,27 @@ src: url("../fonts/BrushtipTexe.otf") format("opentype"); } -$font-primary: "Roboto", sans-serif; +// Font ArchitectsDaughter +@font-face { + font-family: "PatrickHand"; + src: url('../fonts/PatrickHand.ttf') format("truetype"); +} + +$font-primary: "PatrickHand", sans-serif; $font-secondary: "BrushtipTexe", sans-serif; $font-dice: "LogotypeL5r", sans-serif; -h1 { - font: 1.5rem "BrushtipTexe"; +body { + font: 16px $font-primary; + letter-spacing: 0.05rem; } +h1, h4 { + font-family: $font-secondary; +} +h1 {font-size: 2rem;} +h4 {font-size: 1.25rem;} + i.strife, i.success, i.explosive, diff --git a/system/styles/scss/global.scss b/system/styles/scss/global.scss index 8b6fbe9..a933e99 100644 --- a/system/styles/scss/global.scss +++ b/system/styles/scss/global.scss @@ -3,9 +3,15 @@ /* Windows */ .window-app { .window-content { - background: url("../assets/imgs/bgL5R.jpg") no-repeat; + z-index: 1; + position: relative; + background: url("../assets/imgs/bgL5R.webp") no-repeat; background-size: cover; } + .window-resizable-handle { + z-index: 2; + background: $black; + } } /* Focus, Active */ @@ -24,6 +30,7 @@ input[type="time"]:focus { .tabs .item.active { text-shadow: 0 0 10px $red; } +#controls .scene-control.active, #controls .control-tool.active, #controls .scene-control:hover, #controls .control-tool:hover {box-shadow: 0 0 10px $red;} /* lists */ ul, @@ -32,3 +39,11 @@ li { margin: 0; padding: 0; } + +// inputs +input[type="text"], input[type="number"], input[type="password"], input[type="date"], input[type="time"] { + background: $l5r5e-white; + border: 1px solid $l5r5e-title; + padding: 0.25rem; + color: $l5r5e-bold; +} diff --git a/system/styles/scss/nav.scss b/system/styles/scss/nav.scss index 105cebd..474ad32 100644 --- a/system/styles/scss/nav.scss +++ b/system/styles/scss/nav.scss @@ -1,9 +1,30 @@ -//SCSS -// l5re5.scss -.testing { - width: percentage(1/7); -} -// test -.testing { - width: percentage(2/7); +// -- Nav + +nav { + .sheet-tabs { + background: $l5r5e-title; + color: $l5r5e-black; + --notchSize: 0.5rem; + clip-path: polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100%) 100%, var(--notchSize) 100%, 0% calc(100%)); + } + .item { + &:hover { + background-color: rgba(0,0,0,0.75); + color: rgba(255,255,255,1); + text-shadow: black 1px 2px 0; + } + } + .item.active { + height: 2.5rem; + line-height: 2rem; + background-color: rgba(73, 12, 11, 0.85); + color: rgba(255,255,255,1); + background-color: rgba(73, 12, 11, 0.85); + clip-path: polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% 100%, 0 100%, 0% 0%, 0% 100%); + + &:hover { + background-color: rgba(73, 12, 11, 0.85); + cursor: default; + } + } } \ No newline at end of file diff --git a/system/styles/scss/rings.scss b/system/styles/scss/rings.scss index 5ff311a..fdac18a 100644 --- a/system/styles/scss/rings.scss +++ b/system/styles/scss/rings.scss @@ -61,7 +61,7 @@ strong { position: absolute; bottom: 0.75rem; - left: -1.5rem; + left: -1.75rem; } } } diff --git a/system/styles/scss/sheets.scss b/system/styles/scss/sheets.scss index 9372ff9..3a00c87 100644 --- a/system/styles/scss/sheets.scss +++ b/system/styles/scss/sheets.scss @@ -3,32 +3,69 @@ min-width: 600px; .sheet-header { h1 { - flex: 0 0 100%; + flex: auto; + margin: 0 0.5rem 0.25rem; input { - height: 3rem; - line-height: 1.5rem; - margin: 0; - padding: 0 0 0.5rem; + flex: 0 0 100%; + height: 4rem; + margin: 0.5rem 0 0; width: 100%; - border: 1px solid $l5r5e-white; color: $l5r5e-red; + background: transparent; + border: 0 none; + border-radius: 0; + border-bottom: 1px dotted $l5r5e-black; + } + &:before { + content: ""; + position: absolute; + background: url("../assets/imgs/brushL5r.webp") no-repeat 0 0; + background-size: contain; + height: 225px; + width: 100%; + z-index: -1; + left: -0.25rem; } } img { flex: 0 0 150px; height: 150px; - margin-right: 0.25rem; + margin-right: 0; + object-fit: contain; + background: $l5r5e-white; + border: 1px solid $l5r5e-title; + --notchSize: 0.5rem; + clip-path: polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100% - var(--notchSize)) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100% - var(--notchSize))); } .header-fields { - display: flex; - flex-wrap: wrap; + h2 { + font-family: $font-secondary; + float: right; + width: 50%; + padding: 0 0.25rem; + margin: 0; + text-align: right; + color: $l5r5e-black; + border-bottom: $white; + --notchSize: 0.5rem; + clip-path: polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100%) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100%)); + &:before { + content: ""; + position: absolute; + height: 1px; + width: 100%; + } + } } .identity-wrapper { + display: flex; + flex-wrap: wrap; flex: 0 0 calc(100% - 150px - 0.25rem); .identity-content { flex: 0 0 100%; display: flex; flex-wrap: wrap; + margin: 0.5rem; li { flex: 33%; &:nth-child(1), @@ -40,8 +77,8 @@ } } .rings { - flex: 0 0 calc(50% - 0.25rem); - display: flex; + float: left; + width: calc(50% - 0.25rem); padding: 0.25rem; } .social-content { @@ -50,9 +87,42 @@ padding: 0.25rem; } .attributes-wrapper { - flex: 0 0 calc(50% - 0.25rem); + float: right; + width: calc(50% - 0.25rem); + padding: 0.5rem 0 0.5rem 1rem; display: flex; - padding: 0.25rem; + flex-wrap: wrap; + flex-direction: column; + background: $l5r5e-title; + --notchSize: 0.5rem; + clip-path: polygon(0% var(--notchSize), var(--notchSize) 0%, calc(100%) 0%, 100% var(--notchSize), 100% calc(100% - var(--notchSize)), calc(100% - var(--notchSize)) 100%, var(--notchSize) 100%, 0% calc(100%)); + .endurance-content, .composure-content, .void-content { + label {float: left; width: 50%;} + } + li { + p { + display: none; + position: absolute; + } + &:hover { + p {display: block;} + } + } + } + .identity-wrapper label, .social-content label, .attributes-wrapper label { + display: flex; + color: $l5r5e-label; + text-transform: uppercase; + font-size: 0.75rem; + line-height: 2rem; + input { + flex: 1; + margin: 0 1rem 0 0.5rem; + } } } + article { + background: $l5r5e-white; + padding: 0.5rem; + } } diff --git a/system/styles/scss/ui.scss b/system/styles/scss/ui.scss index 64b7b39..373e41a 100644 --- a/system/styles/scss/ui.scss +++ b/system/styles/scss/ui.scss @@ -1,11 +1,19 @@ -//SCSS -// sdebar +/* SCSS */ + +// sidebar #sidebar { + background-position: top; + background-size: 100%; + background-repeat: no-repeat; + background: url("../assets/ui/bgSidebar.png") no-repeat; + top: 0; + height: 100%; + padding: 0.5rem; #sidebar-tabs { flex: 0 0 1rem; box-sizing: border-box; margin: 0 0 0.25rem; - border-bottom: 1px solid $l5r5e-white; + border-bottom: 1px solid rgba(255,255,255,0.25); box-shadow: none; > .item { line-height: 27px; @@ -19,4 +27,135 @@ } } } + .message-sender { + color: $l5r5e-red; + } } + + +// hotbar +#hotbar { + margin: 0; + #action-bar { + flex: 0 0 100%; + .macro { + border-image: url("../assets/ui/macro-button.webp"); + border-image-slice: 8 fill; + border-image-width: 0.25rem; + border-image-outset: 0; + border-radius: 0; + .macro-key{ + background: transparent; + } + } + #macro-list { + background: $black; + margin: 0; + padding: 0.05rem; + border: none; + border-radius: 0; + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 15 repeat; + border-image-width: 0.5rem; + border-image-outset: 0px; + box-shadow: 0.25rem 0.25rem 0.5rem $black; + } + } + .bar-controls { + background: $black; + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 15 repeat; + border-image-width: 0.5rem; + border-image-outset: 0px; + box-shadow: 0 0 0.25rem $black; + border-radius: 0; + margin: 0 0.5rem; + a.page-control, span.page-number { + font-size: 1rem; + line-height: 0.95rem; + } + } +} + +// players +#players { + background: $black; + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 15 repeat; + border-image-width: 0.5rem; + border-image-outset: 0px; + margin: 0; + padding: 0; + left: 1.15rem; + bottom: 0.65rem; + box-shadow: inset 0 0 0.5rem $black; + &:before { + z-index: -1; + position: absolute; + content: ""; + background: transparent url("../assets/ui/players-border.webp") no-repeat 0 0; + background-size: 100%; + display: block; + top: -12px; + right: 10%; + left: 10%; + bottom: 0; + } +} + +// logo +#logo { + height: 80px; + margin-left: 0.5rem; + opacity: 0.5; + &:hover {opacity: 0.75;} +} + +// navigation +#navigation { + left: 120px; + #nav-toggle, #scene-list .scene.nav-item { + cursor: default; + color: $white; + background: linear-gradient($l5r5e-linear-gradient-blue, $l5r5e-linear-gradient-blue-dark, $l5r5e-linear-gradient-blue); + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 10 repeat; + border-image-width: 0.25rem; + border-image-outset: 0px; + } + #scene-list { + .scene.nav-item.active { + background: linear-gradient($l5r5e-linear-gradient-red, $l5r5e-linear-gradient-red-dark, $l5r5e-linear-gradient-red); + } + .scene.view, .scene.context { + cursor: default; + color: #FFF; + background: linear-gradient($l5r5e-linear-gradient-red, $l5r5e-linear-gradient-red-dark, $l5r5e-linear-gradient-red); + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 10 repeat; + border-image-width: 0.25rem; + border-image-outset: 0px; + box-shadow: 0 0 20px red; + } + } +} + +// controls +#controls { + top: 100px; + .scene-control.active, .control-tool.active, .scene-control:hover, .control-tool:hover { + background: linear-gradient($l5r5e-linear-gradient-red, $l5r5e-linear-gradient-red-dark, $l5r5e-linear-gradient-red); + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 10 repeat; + border-image-width: 0.25rem; + border-image-outset: 0px; + box-shadow: 0 0 10px $red; + } + .scene-control, .control-tool { + background: linear-gradient($l5r5e-linear-gradient-blue, $l5r5e-linear-gradient-blue-dark, $l5r5e-linear-gradient-blue); + background-origin: padding-box; + border-image: url("../assets/ui/macro-button.webp") 10 repeat; + border-image-width: 0.25rem; + border-image-outset: 0px; + } +} \ No newline at end of file diff --git a/system/system.json b/system/system.json index 7b4ac43..594ab8e 100644 --- a/system/system.json +++ b/system/system.json @@ -1,7 +1,7 @@ { "name": "l5r5e", "title": "Legend of the Five Rings (5th Edition)", - "description": "This is a game system, in English and French, for Legend of the Five Rings (5th Edition) by Edge Studio

- Join the official Discord server: Official Discord

- Rejoignez la communauté Francophone: Francophone Discord

", + "description": "This is a game system, multilanguage in En/FR/ES, for Legend of the Five Rings (5th Edition) by Edge Studio

- Join the official Discord server: Official Discord

- Rejoignez la communauté Francophone: Francophone Discord

", "version": "0.0.2", "minimumCoreVersion": "0.7.8", "compatibleCoreVersion": "1.0.0", @@ -26,17 +26,22 @@ { "lang": "en", "name": "English", - "path": "lang/en.json" + "path": "lang/en-en.json" }, { "lang": "fr", - "name": "French (French)", - "path": "lang/fr.json" + "name": "French (France)", + "path": "lang/fr-fr.json" }, { - "lang": "pt-BR", + "lang": "es", + "name": "Spanish (Spain)", + "path": "lang/es-es.json" + }, + { + "lang": "pt-br", "name": "Português (Brasil)", - "path": "lang/pt-BR.json" + "path": "lang/pt-br.json" } ], diff --git a/system/template.json b/system/template.json index 6898fb2..daa7176 100644 --- a/system/template.json +++ b/system/template.json @@ -18,8 +18,8 @@ "void": 1 } }, - "social_standing": { - "social_standing": { + "social": { + "social": { "honor": 0, "glory": 0, "status": 0, @@ -102,14 +102,13 @@ } }, "character": { - "templates": ["identity", "rings", "social", "category", "conflict", "experience"], + "templates": ["identity", "rings", "social", "skills", "conflict", "xp"], "notes": "", "feats": [] } }, - "Item": { - "types": ["item", "weapon", "feat"], + "types": ["item", "weapon", "feat", "xp-advancement"], "item": { "description": "", "quantity": 1, @@ -120,7 +119,6 @@ "weight": 0, "description": "", "damage": 0, - "deadliness": 0, "range": 0, "properties": "" }, diff --git a/system/templates/sheets/actor-sheet.html b/system/templates/sheets/actor-sheet.html index 1ed70db..80bcbe6 100644 --- a/system/templates/sheets/actor-sheet.html +++ b/system/templates/sheets/actor-sheet.html @@ -8,6 +8,7 @@
{{> 'systems/l5r5e/templates/sheets/actor/social.html' }} +

{{ localize 'L5r5e.Attributes.Title' }}

{{> 'systems/l5r5e/templates/sheets/actor/rings.html' }} {{> 'systems/l5r5e/templates/sheets/actor/attributes.html' }}
@@ -33,7 +34,7 @@
{{> 'systems/l5r5e/templates/sheets/actor/feats.html' }} diff --git a/system/templates/sheets/actor/attributes.html b/system/templates/sheets/actor/attributes.html index 4670189..2a26cb4 100644 --- a/system/templates/sheets/actor/attributes.html +++ b/system/templates/sheets/actor/attributes.html @@ -1,52 +1,48 @@ \ No newline at end of file diff --git a/system/templates/sheets/actor/category.html b/system/templates/sheets/actor/category.html index 2df5b05..7116214 100644 --- a/system/templates/sheets/actor/category.html +++ b/system/templates/sheets/actor/category.html @@ -2,7 +2,7 @@

{{ localizeSkillCategory categoryId }}