Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b407f6e8c0 | |||
| aecc15d8b9 |
@@ -1,6 +1,6 @@
|
|||||||
name: Release Creation
|
name: Release Creation
|
||||||
|
|
||||||
on:
|
on:
|
||||||
release:
|
release:
|
||||||
types: [published]
|
types: [published]
|
||||||
|
|
||||||
@@ -8,45 +8,56 @@ jobs:
|
|||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
|
- run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
|
||||||
|
|
||||||
#- uses: actions/checkout@v3
|
|
||||||
- uses: RouxAntoine/checkout@v3.5.4
|
|
||||||
|
|
||||||
# get part of the tag after the `v`
|
#- uses: actions/checkout@v3
|
||||||
- name: Extract tag version number
|
- uses: https://github.com/RouxAntoine/checkout@v3.5.4
|
||||||
id: get_version
|
|
||||||
uses: battila7/get-version-action@v2
|
|
||||||
|
|
||||||
# Substitute the Manifest and Download URLs in the module.json
|
# get part of the tag after the `v`
|
||||||
- name: Substitute Manifest and Download Links For Versioned Ones
|
- name: Extract tag version number
|
||||||
id: sub_manifest_link_version
|
id: get_version
|
||||||
uses: microsoft/variable-substitution@v1
|
uses: https://github.com/battila7/get-version-action@v2
|
||||||
with:
|
|
||||||
files: 'system.json'
|
|
||||||
env:
|
|
||||||
version: ${{steps.get_version.outputs.version-without-v}}
|
|
||||||
url: https://www.uberwald.me/gitea/${{gitea.repository}}
|
|
||||||
manifest: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/latest/system.json
|
|
||||||
download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/fvtt-te-deum-${{github.event.release.tag_name}}.zip
|
|
||||||
|
|
||||||
# Create a zip file with all files required by the module to add to the release
|
|
||||||
- run: |
|
|
||||||
apt update -y
|
|
||||||
apt install -y zip
|
|
||||||
|
|
||||||
- run: zip -r ./fvtt-te-deum-${{github.event.release.tag_name}}.zip system.json template.json README.md LICENSE.txt assets/ fonts/ images/ lang/ modules/ styles/ packs/ templates/ te-deum.mjs
|
# Substitute the Manifest and Download URLs in the module.json
|
||||||
|
- name: Substitute Manifest and Download Links For Versioned Ones
|
||||||
- name: setup go
|
id: sub_manifest_link_version
|
||||||
uses: https://github.com/actions/setup-go@v4
|
uses: https://github.com/microsoft/variable-substitution@v1
|
||||||
with:
|
with:
|
||||||
go-version: '>=1.20.1'
|
files: "system.json"
|
||||||
|
env:
|
||||||
- name: Use Go Action
|
version: ${{steps.get_version.outputs.version-without-v}}
|
||||||
id: use-go-action
|
url: https://www.uberwald.me/gitea/${{gitea.repository}}
|
||||||
uses: https://gitea.com/actions/release-action@main
|
manifest: https://www.uberwald.me/gitea/public/fvtt-te-deum/releases/download/latest/system.json
|
||||||
with:
|
download: https://www.uberwald.me/gitea/public/fvtt-te-deum/releases/download/${{github.event.release.tag_name}}/fvtt-te-deum.zip
|
||||||
files: |-
|
|
||||||
./fvtt-te-deum-${{github.event.release.tag_name}}.zip
|
# Create a zip file with all files required by the module to add to the release
|
||||||
system.json
|
- run: |
|
||||||
api_key: '${{secrets.ALLOW_PUSH_RELEASE}}'
|
apt update -y
|
||||||
|
apt install -y zip
|
||||||
|
|
||||||
|
- run: zip -r ./fvtt-te-deum.zip system.json README.md LICENSE.txt assets/ fonts/ images/ lang/ modules/ styles/ packs/ templates/
|
||||||
|
|
||||||
|
- name: setup go
|
||||||
|
uses: https://github.com/actions/setup-go@v4
|
||||||
|
with:
|
||||||
|
go-version: ">=1.20.1"
|
||||||
|
|
||||||
|
- name: Use Go Action
|
||||||
|
id: use-go-action
|
||||||
|
uses: https://gitea.com/actions/release-action@main
|
||||||
|
with:
|
||||||
|
files: |-
|
||||||
|
./fvtt-te-deum.zip
|
||||||
|
system.json
|
||||||
|
api_key: "${{secrets.ALLOW_PUSH_RELEASE}}"
|
||||||
|
|
||||||
|
- name: Publish to Foundry server
|
||||||
|
uses: https://github.com/djlechuck/foundryvtt-publish-package-action@v1
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.FOUNDRYVTT_RELEASE_TOKEN }}
|
||||||
|
id: 'fvtt-te-deum'
|
||||||
|
version: ${{github.event.release.tag_name}}
|
||||||
|
manifest: 'https://www.uberwald.me/gitea/public/fvtt-te-deum/releases/download/latest/system.json'
|
||||||
|
notes: 'https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/fvtt-te-deum.zip'
|
||||||
|
compatibility-minimum: '13'
|
||||||
|
compatibility-verified: '13'
|
||||||
|
|||||||
469
less/actor-sheet.less
Normal file
469
less/actor-sheet.less
Normal file
@@ -0,0 +1,469 @@
|
|||||||
|
.editor {
|
||||||
|
border: 2;
|
||||||
|
height: 100%;
|
||||||
|
padding: 0 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.medium-editor {
|
||||||
|
border: 2;
|
||||||
|
height: 240px;
|
||||||
|
max-height: 240px;
|
||||||
|
overflow-y: auto;
|
||||||
|
overflow-x: hidden;
|
||||||
|
padding: 0 3px;
|
||||||
|
|
||||||
|
prose-mirror, .editor, .editor-content, .ProseMirror {
|
||||||
|
overflow: hidden;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.small-editor {
|
||||||
|
border: 2;
|
||||||
|
height: 120px;
|
||||||
|
max-height: 120px;
|
||||||
|
overflow-y: auto;
|
||||||
|
overflow-x: hidden;
|
||||||
|
padding: 0 3px;
|
||||||
|
|
||||||
|
prose-mirror, .editor, .editor-content, .ProseMirror {
|
||||||
|
overflow: hidden;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.questionnaire-reponse {
|
||||||
|
max-width: 42rem;
|
||||||
|
margin-left: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.questionnaire-element {
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Style unifié pour tous les inputs et selects (fiches acteur, item, roll dialogs)
|
||||||
|
.fvtt-te-deum {
|
||||||
|
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="image"]):not([type="file"]),
|
||||||
|
select {
|
||||||
|
background: rgba(248, 245, 238, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.35);
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 0.15rem 0.3rem;
|
||||||
|
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
border-color: rgba(139, 115, 85, 0.65);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
outline: none;
|
||||||
|
border-color: rgba(139, 115, 85, 0.85);
|
||||||
|
box-shadow: 0 0 0 2px rgba(139, 115, 85, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:disabled {
|
||||||
|
color: rgba(19, 18, 18, 0.4);
|
||||||
|
background: rgba(220, 216, 205, 0.6);
|
||||||
|
border-color: rgba(139, 115, 85, 0.15);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
textarea {
|
||||||
|
background: rgba(248, 245, 238, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.35);
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 0.2rem 0.4rem;
|
||||||
|
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
border-color: rgba(139, 115, 85, 0.65);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
outline: none;
|
||||||
|
border-color: rgba(139, 115, 85, 0.85);
|
||||||
|
box-shadow: 0 0 0 2px rgba(139, 115, 85, 0.2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum.window-app .window-content,
|
||||||
|
.fvtt-te-deum.application .window-content,
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .sheet-body,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .sheet-body {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
background: rgba(226, 226, 222, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Améliorations pour les fiches d'items
|
||||||
|
.item-form {
|
||||||
|
.sheet-header {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(226, 226, 222, 0.95) 0%,
|
||||||
|
rgba(240, 235, 225, 0.9) 100%
|
||||||
|
);
|
||||||
|
padding: 0.8rem;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
|
||||||
|
h1.charname input {
|
||||||
|
// Voir règles haute-spécificité charname ci-dessous
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.sheet-body {
|
||||||
|
ul {
|
||||||
|
list-style: none;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
|
li.flexrow {
|
||||||
|
background: rgba(255, 255, 255, 0.3);
|
||||||
|
padding: 0.4rem 0.6rem;
|
||||||
|
margin: 0.3rem 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid rgba(139, 115, 85, 0.3);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(255, 255, 255, 0.5);
|
||||||
|
border-left-color: rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(196, 186, 166, 0.6) 0%,
|
||||||
|
rgba(226, 226, 222, 0.5) 100%
|
||||||
|
);
|
||||||
|
padding: 0.4rem 0.6rem;
|
||||||
|
margin: 0.8rem 0 0.4rem 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 4px solid rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
font-family: MailartRubberstamp;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: #3d3a2e;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type="checkbox"] {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Champ "name" — règles haute-spécificité (spec 0,6,2 / 0,7,2) pour surcharger les règles génériques d'input
|
||||||
|
// Fiche acteur : font-size 3rem
|
||||||
|
.fvtt-te-deum.application .window-content .sheet-header h1.charname input[name="name"],
|
||||||
|
.fvtt-te-deum.window-app .window-content .sheet-header h1.charname input[name="name"] {
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 3rem;
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
border-bottom: 2px solid rgba(139, 115, 85, 0.4);
|
||||||
|
color: rgba(50, 35, 15, 0.95);
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
letter-spacing: 0.05em;
|
||||||
|
transition: border-color 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
border-width: 2px;
|
||||||
|
border-color: rgba(139, 115, 85, 0.7);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
border-bottom-color: rgba(139, 115, 85, 0.9);
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fiche item : même style mais font-size plus petit
|
||||||
|
.fvtt-te-deum.application .window-content .item-form .sheet-header h1.charname input[name="name"],
|
||||||
|
.fvtt-te-deum.window-app .window-content .item-form .sheet-header h1.charname input[name="name"] {
|
||||||
|
font-size: 1.6rem;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .sheet-body {
|
||||||
|
padding: 0.25rem 0.5rem;
|
||||||
|
|
||||||
|
&:after {
|
||||||
|
content: "";
|
||||||
|
display: block;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum nav {
|
||||||
|
&.tabs {
|
||||||
|
.item {
|
||||||
|
z-index: 2;
|
||||||
|
position: relative;
|
||||||
|
opacity: 1;
|
||||||
|
color: rgba(29, 28, 31);
|
||||||
|
padding: 0 0.25rem;
|
||||||
|
|
||||||
|
&:after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
height: 2rem;
|
||||||
|
width: 1px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.select-diff {
|
||||||
|
display: inline-block;
|
||||||
|
text-align: left;
|
||||||
|
width: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .carac-value,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .carac-value,
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .competence-xp,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .competence-xp {
|
||||||
|
margin: 0.05rem;
|
||||||
|
flex-basis: 3rem;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum h1,
|
||||||
|
.fvtt-te-deum h2,
|
||||||
|
.fvtt-te-deum h3,
|
||||||
|
.fvtt-te-deum h4 {
|
||||||
|
font-weight: bold;
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .malus-sante {
|
||||||
|
font-size: 0.88rem;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .malus-sante-active {
|
||||||
|
color: rgba(200, 80, 10, 0.95);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum ul,
|
||||||
|
.fvtt-te-deum ol {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum ul,
|
||||||
|
.fvtt-te-deum li {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-fields {
|
||||||
|
li {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.alterne-list {
|
||||||
|
& > .list-item {
|
||||||
|
&:hover {
|
||||||
|
background: rgba(226, 226, 222, 0.4);
|
||||||
|
transform: translateX(2px);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:nth-child(even) {
|
||||||
|
background: rgba(240, 235, 225, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:nth-child(odd) {
|
||||||
|
background: rgba(250, 245, 235, 0.2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.specialisation-label {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.carac-label,
|
||||||
|
.attr-label {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item {
|
||||||
|
margin: 0.125rem;
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 0.3rem;
|
||||||
|
padding: 0.3rem 0.4rem;
|
||||||
|
flex: 1 1 5rem;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.15);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
border-color: rgba(139, 115, 85, 0.3);
|
||||||
|
background: rgba(255, 255, 255, 0.3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item-shadow {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(170, 168, 167, 0.25) 0%,
|
||||||
|
rgba(200, 195, 185, 0.2) 100%
|
||||||
|
);
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
justify-content: flex-start;
|
||||||
|
border-left: 3px solid rgba(139, 115, 85, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item-shadow2 {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(87, 60, 32, 0.2) 0%,
|
||||||
|
rgba(120, 90, 60, 0.15) 100%
|
||||||
|
);
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
justify-content: flex-start;
|
||||||
|
border-left: 3px solid rgba(87, 60, 32, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-display-show {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-display-hide {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-quantite {
|
||||||
|
margin-left: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item-margin1 {
|
||||||
|
margin-left: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item-margin2 {
|
||||||
|
margin-left: 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item-margin3 {
|
||||||
|
margin-left: 3rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item-margin4 {
|
||||||
|
margin-left: 4rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sheet-competence-img {
|
||||||
|
width: 24px;
|
||||||
|
max-width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
max-height: 24px;
|
||||||
|
flex-grow: 0;
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.competence-column {
|
||||||
|
flex-direction: column;
|
||||||
|
align-content: flex-start;
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.competence-header {
|
||||||
|
align-content: flex-start;
|
||||||
|
justify-content: flex-start;
|
||||||
|
font-weight: bold;
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.comp-li {
|
||||||
|
max-width: 8rem;
|
||||||
|
width: 8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.description-label {
|
||||||
|
flex-grow: 2;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.status-header-label {
|
||||||
|
margin-left: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.roll-dialog-label {
|
||||||
|
margin: 4px 0;
|
||||||
|
min-width: 96px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.short-label {
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.keyword-label {
|
||||||
|
font-size: 0.85rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-sheet-label {
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-text-long-line {
|
||||||
|
flex-grow: 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.score-label {
|
||||||
|
flex-grow: 2;
|
||||||
|
align-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.attribut-value,
|
||||||
|
.carac-value {
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 64px;
|
||||||
|
margin-right: 4px;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sante-value,
|
||||||
|
.competence-value {
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 2rem;
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
margin-left: 0.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.description-value {
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 4rem;
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
margin-left: 0.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.small-label {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
235
less/base.less
Normal file
235
less/base.less
Normal file
@@ -0,0 +1,235 @@
|
|||||||
|
.fvtt-te-deum.window-app,
|
||||||
|
.fvtt-te-deum.application {
|
||||||
|
text-align: justify;
|
||||||
|
font-size: 16px;
|
||||||
|
letter-spacing: 1px;
|
||||||
|
|
||||||
|
&.sheet {
|
||||||
|
.window-content {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
|
||||||
|
.sheet-header {
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
background: rgba(226, 226, 222, 0.95);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip {
|
||||||
|
&:hover {
|
||||||
|
.tooltiptext {
|
||||||
|
top: 2rem;
|
||||||
|
left: 2rem;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.25rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header h1 input,
|
||||||
|
.window-app .window-header,
|
||||||
|
.application .window-header,
|
||||||
|
#actors .directory-list,
|
||||||
|
#navigation #scene-list .scene.nav-item {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum.sheet {
|
||||||
|
nav {
|
||||||
|
&.sheet-tabs,
|
||||||
|
&.tabs {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-size: 1.2rem;
|
||||||
|
font-weight: bold;
|
||||||
|
height: 3rem;
|
||||||
|
flex: 0 0 3rem;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 0 0 0.25rem;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
border-top: 0 none;
|
||||||
|
border-bottom: 0 none;
|
||||||
|
background:
|
||||||
|
linear-gradient(rgba(226, 226, 222, 0.5), rgba(226, 226, 222, 0.5)),
|
||||||
|
url("../images/ui/frise_bottom_01.webp");
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
&.sheet-header {
|
||||||
|
.profile-img {
|
||||||
|
-o-object-fit: cover;
|
||||||
|
object-fit: cover;
|
||||||
|
-o-object-position: 50% 0;
|
||||||
|
object-position: 50% 0;
|
||||||
|
margin: 0.5rem 0 0.5rem 0.5rem;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-compteurs {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.resource-content {
|
||||||
|
width: 2rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab[data-tab] {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
margin: 0.2rem;
|
||||||
|
padding: 0.15rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum.window-app input,
|
||||||
|
.fvtt-te-deum.application input,
|
||||||
|
.fvtt-te-deum .item-form,
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .flex-group-center.flex-compteurs,
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .flex-group-center.flex-fatigue,
|
||||||
|
.fvtt-te-deum select,
|
||||||
|
.fvtt-te-deum button,
|
||||||
|
.item-checkbox,
|
||||||
|
#sidebar,
|
||||||
|
#players,
|
||||||
|
#navigation #nav-toggle {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-header {
|
||||||
|
background: rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
|
||||||
|
.strong-text {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .tabs .item.active,
|
||||||
|
.fvtt-te-deum .blessures-list li ul li:first-child:hover,
|
||||||
|
.fvtt-te-deum a:hover {
|
||||||
|
text-shadow: 1px 0px 0px #ff6600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.rollable:hover,
|
||||||
|
.rollable:focus {
|
||||||
|
color: #000;
|
||||||
|
text-shadow: 0 0 10px red;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
li.folder > .folder-header h3 {
|
||||||
|
color: #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum table {
|
||||||
|
border: 1px solid #7a7971;
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid,
|
||||||
|
.grid-2col {
|
||||||
|
display: grid;
|
||||||
|
grid-column: span 2 / span 2;
|
||||||
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||||
|
grid-gap: 10px;
|
||||||
|
grid-gap: 10px;
|
||||||
|
gap: 10px;
|
||||||
|
margin: 10px 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-3col {
|
||||||
|
grid-column: span 3 / span 3;
|
||||||
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-4col {
|
||||||
|
grid-column: span 4 / span 4;
|
||||||
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-5col {
|
||||||
|
grid-column: span 5 / span 5;
|
||||||
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-6col {
|
||||||
|
grid-column: span 5 / span 5;
|
||||||
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-7col {
|
||||||
|
grid-column: span 7 / span 7;
|
||||||
|
grid-template-columns: repeat(7, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-8col {
|
||||||
|
grid-column: span 8 / span 8;
|
||||||
|
grid-template-columns: repeat(8, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-9col {
|
||||||
|
grid-column: span 9 / span 9;
|
||||||
|
grid-template-columns: repeat(9, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-10col {
|
||||||
|
grid-column: span 10 / span 10;
|
||||||
|
grid-template-columns: repeat(10, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-11col {
|
||||||
|
grid-column: span 11 / span 11;
|
||||||
|
grid-template-columns: repeat(11, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-12col {
|
||||||
|
grid-column: span 12 / span 12;
|
||||||
|
grid-template-columns: repeat(12, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-group-center,
|
||||||
|
.flex-group-left,
|
||||||
|
.flex-group-right {
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-group-left {
|
||||||
|
justify-content: flex-start;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-group-right {
|
||||||
|
justify-content: flex-end;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-center {
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-create-actor {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-between {
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-shrink {
|
||||||
|
flex: "flex-shrink";
|
||||||
|
}
|
||||||
581
less/chat.less
Normal file
581
less/chat.less
Normal file
@@ -0,0 +1,581 @@
|
|||||||
|
.chat-message-header {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(226, 226, 222, 0.95) 0%,
|
||||||
|
rgba(196, 186, 166, 0.9) 100%
|
||||||
|
);
|
||||||
|
font-size: 0.9rem;
|
||||||
|
min-height: 26px;
|
||||||
|
text-align: center;
|
||||||
|
vertical-align: middle;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border-bottom: 2px solid rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
padding: 0.1rem 0.3rem;
|
||||||
|
border-radius: 6px 6px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-message .message-header .flavor-text,
|
||||||
|
.chat-message .message-header .whisper-to {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-result-text {
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: rgba(80, 50, 15, 0.95);
|
||||||
|
padding: 0 0 0.1rem 0;
|
||||||
|
line-height: 1.3;
|
||||||
|
border-bottom: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
letter-spacing: 0.03em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-actor-name {
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: rgba(80, 50, 15, 0.95);
|
||||||
|
line-height: 1;
|
||||||
|
letter-spacing: 0.03em;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-actor-name-opposition {
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: rgba(80, 50, 15, 0.95);
|
||||||
|
padding: 0.1rem 0.3rem;
|
||||||
|
letter-spacing: 0.03em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-result-success {
|
||||||
|
color: #2d5016;
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(144, 238, 144, 0.3),
|
||||||
|
rgba(107, 186, 107, 0.25)
|
||||||
|
);
|
||||||
|
padding: 0.25rem 0.6rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid #4a7c2c;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0.15rem 0;
|
||||||
|
box-shadow: 0 1px 3px rgba(45, 80, 22, 0.2);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-result-failure {
|
||||||
|
color: #7a1a1a;
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(255, 160, 160, 0.3),
|
||||||
|
rgba(205, 120, 120, 0.25)
|
||||||
|
);
|
||||||
|
padding: 0.25rem 0.6rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid #a82020;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0.15rem 0;
|
||||||
|
box-shadow: 0 1px 3px rgba(122, 26, 26, 0.2);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-img {
|
||||||
|
width: 64px;
|
||||||
|
height: 64px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-command-img {
|
||||||
|
border: 0px;
|
||||||
|
width: 32px;
|
||||||
|
height: 32px;
|
||||||
|
transition:
|
||||||
|
transform 0.2s ease,
|
||||||
|
box-shadow 0.2s ease;
|
||||||
|
border-radius: 4px;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
transform: scale(1.1);
|
||||||
|
box-shadow: 0 3px 8px rgba(255, 102, 0, 0.4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-result-column {
|
||||||
|
min-width: 70%;
|
||||||
|
width: 70%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.roll-dialog-header {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(226, 226, 222, 0.95) 0%,
|
||||||
|
rgba(196, 186, 166, 0.9) 100%
|
||||||
|
);
|
||||||
|
min-height: 48px;
|
||||||
|
padding: 0.4rem 0.6rem;
|
||||||
|
border-radius: 6px 6px 0 0;
|
||||||
|
border-bottom: 2px solid rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 0.5rem;
|
||||||
|
|
||||||
|
.actor-icon {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.5);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.dialog-roll-title {
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
margin: 0;
|
||||||
|
color: #3d3a2e;
|
||||||
|
text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.actor-icon {
|
||||||
|
width: 28px;
|
||||||
|
height: 28px;
|
||||||
|
padding: 1px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.5);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
||||||
|
flex-shrink: 0;
|
||||||
|
margin-right: 0.4rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.padding-dice {
|
||||||
|
padding-top: 0.2rem;
|
||||||
|
padding-bottom: 0.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dice-image {
|
||||||
|
box-sizing: border-box;
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dice-image-reroll {
|
||||||
|
background-color: rgba(115, 224, 115, 0.25);
|
||||||
|
border-color: #011d33;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border: 1px;
|
||||||
|
border-radius: 0%;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-dice {
|
||||||
|
width: 15%;
|
||||||
|
height: 15%;
|
||||||
|
font-size: 15px;
|
||||||
|
padding: 10px;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
padding-top: 0.2rem;
|
||||||
|
padding-bottom: 0.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.div-center {
|
||||||
|
align-self: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-message {
|
||||||
|
background: rgba(240, 235, 225, 0.95);
|
||||||
|
font-size: 0.9rem;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
|
||||||
|
&.whisper {
|
||||||
|
background: rgba(220, 220, 210, 0.85);
|
||||||
|
border: 2px solid #545469;
|
||||||
|
box-shadow: 0 3px 10px rgba(84, 84, 105, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 6px 2px 2px;
|
||||||
|
float: left;
|
||||||
|
width: 64px;
|
||||||
|
height: 64px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ability-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
max-width: 32px;
|
||||||
|
max-height: 32px;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.small-ability-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
max-width: 16px;
|
||||||
|
max-height: 16px;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.combat-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
max-width: 24px;
|
||||||
|
max-height: 24px;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar-tabs {
|
||||||
|
flex: 0 0 32px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
margin: 0 0 5px;
|
||||||
|
border-bottom: 1px solid rgba(0, 0, 0, 0);
|
||||||
|
box-shadow: inset 0 0 2rem rgba(0, 0, 0, 0.5);
|
||||||
|
|
||||||
|
& > .item {
|
||||||
|
&.active {
|
||||||
|
border: 1px solid rgba(114, 98, 72, 1);
|
||||||
|
background: rgba(30, 25, 20, 0.75);
|
||||||
|
box-shadow: 0 0 6px inset rgba(114, 98, 72, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#controls .scene-control,
|
||||||
|
#controls .control-tool {
|
||||||
|
box-shadow: 0 0 3px #000;
|
||||||
|
margin: 0 0 8px;
|
||||||
|
border-radius: 0;
|
||||||
|
background: rgba(30, 25, 20, 1);
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#controls .scene-control.active,
|
||||||
|
#controls .control-tool.active,
|
||||||
|
#controls .scene-control:hover,
|
||||||
|
#controls .control-tool:hover {
|
||||||
|
background: rgba(72, 46, 28, 1);
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
box-shadow: 0 0 3px #ff6400;
|
||||||
|
}
|
||||||
|
|
||||||
|
#hotbar {
|
||||||
|
#action-bar {
|
||||||
|
#macro-list {
|
||||||
|
border: 1px solid rgba(72, 46, 28, 1);
|
||||||
|
box-shadow: 2px 2px 5px #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.macro {
|
||||||
|
border-image: url(img/ui/bg_control.jpg) 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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bar-controls {
|
||||||
|
background: rgba(30, 25, 20, 1);
|
||||||
|
border: 1px solid rgba(72, 46, 28, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#players {
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
background: rgba(30, 25, 20, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigation {
|
||||||
|
#scene-list {
|
||||||
|
.scene {
|
||||||
|
&.nav-item {
|
||||||
|
background: rgba(30, 25, 20, 1);
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
background: rgba(72, 46, 28, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#nav-toggle {
|
||||||
|
background: rgba(30, 25, 20, 1);
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#navigation #scene-list .scene.view,
|
||||||
|
#navigation #scene-list .scene.context {
|
||||||
|
background: rgba(72, 46, 28, 1);
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
box-shadow: 0 0 3px #ff6400;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-card-button {
|
||||||
|
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
||||||
|
background: linear-gradient(
|
||||||
|
to bottom,
|
||||||
|
rgba(33, 55, 74, 0.98824) 5%,
|
||||||
|
rgba(21, 40, 51, 0.67059) 100%
|
||||||
|
);
|
||||||
|
background-color: rgba(125, 93, 59, 0);
|
||||||
|
border-radius: 3px;
|
||||||
|
border: 2px ridge #846109;
|
||||||
|
display: inline-block;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
padding: 4px 12px 0px 12px;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: 0px 1px 0px #4d3534;
|
||||||
|
position: relative;
|
||||||
|
margin: 2px;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
||||||
|
background-color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
position: relative;
|
||||||
|
top: 1px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.plus-minus-button {
|
||||||
|
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
||||||
|
background: linear-gradient(
|
||||||
|
to bottom,
|
||||||
|
rgba(33, 55, 74, 0.98824) 5%,
|
||||||
|
rgba(21, 40, 51, 0.67059) 100%
|
||||||
|
);
|
||||||
|
background-color: rgba(125, 93, 59, 0);
|
||||||
|
border-radius: 2px;
|
||||||
|
border: 1px ridge #846109;
|
||||||
|
display: inline-block;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #ffffff;
|
||||||
|
margin: 2px 2px 2px 2px;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: 0px 1px 0px #4d3534;
|
||||||
|
position: relative;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.plus-minus-button:hover,
|
||||||
|
.chat-card-button:hover {
|
||||||
|
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
||||||
|
background-color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.plus-minus-button:active,
|
||||||
|
.chat-card-button:active {
|
||||||
|
position: relative;
|
||||||
|
top: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.plus-minus {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ul-level1 {
|
||||||
|
padding-left: 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pause {
|
||||||
|
font-size: 2rem;
|
||||||
|
|
||||||
|
& > h3 {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
& > img {
|
||||||
|
content: url(../images/ui/logo_tedeum_pause.webp);
|
||||||
|
height: 200px;
|
||||||
|
width: 200px;
|
||||||
|
top: -200px;
|
||||||
|
left: calc(50% - 132px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#logo {
|
||||||
|
content: url(../images/ui/logo_tedeum_pause.webp);
|
||||||
|
width: 100px;
|
||||||
|
height: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dice-cell {
|
||||||
|
padding-left: 12px;
|
||||||
|
padding-right: 12px;
|
||||||
|
width: 60px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dice-formula,
|
||||||
|
.dice-total {
|
||||||
|
height: 54px;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Améliorations esthétiques pour les messages de chat
|
||||||
|
.chat-roll-details {
|
||||||
|
background: rgba(255, 255, 255, 0.4);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0.4rem 0.5rem;
|
||||||
|
margin: 0.25rem 0;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.25);
|
||||||
|
|
||||||
|
ul {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
|
||||||
|
li {
|
||||||
|
padding: 0.05rem 0;
|
||||||
|
line-height: 1.25;
|
||||||
|
|
||||||
|
strong {
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-roll-result-section {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(255, 250, 240, 0.6),
|
||||||
|
rgba(245, 240, 230, 0.5)
|
||||||
|
);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0.35rem;
|
||||||
|
margin: 0.2rem 0;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.3);
|
||||||
|
box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
|
||||||
|
.chat-total-result {
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #3d3a2e;
|
||||||
|
text-align: center;
|
||||||
|
padding: 0.25rem;
|
||||||
|
background: rgba(226, 226, 222, 0.5);
|
||||||
|
border-radius: 4px;
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-dice-formula {
|
||||||
|
display: inline-block;
|
||||||
|
background: rgba(139, 115, 85, 0.15);
|
||||||
|
padding: 0.15rem 0.4rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
font-family: monospace;
|
||||||
|
font-size: 0.9em;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
color: #5a4a3a;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-difficulty-badge {
|
||||||
|
display: inline-block;
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(180, 160, 130, 0.4),
|
||||||
|
rgba(160, 140, 110, 0.35)
|
||||||
|
);
|
||||||
|
padding: 0.15rem 0.5rem;
|
||||||
|
border-radius: 10px;
|
||||||
|
font-weight: bold;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
color: #4a3a2a;
|
||||||
|
font-size: 0.85em;
|
||||||
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-info-badge {
|
||||||
|
display: inline-block;
|
||||||
|
background: rgba(100, 149, 237, 0.15);
|
||||||
|
padding: 0.15rem 0.4rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-left: 2px solid rgba(70, 130, 180, 0.6);
|
||||||
|
margin: 0.08rem 0;
|
||||||
|
font-size: 0.8em;
|
||||||
|
color: #2c4a6a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-warning-badge {
|
||||||
|
display: inline-block;
|
||||||
|
background: rgba(255, 200, 100, 0.2);
|
||||||
|
padding: 0.15rem 0.4rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-left: 2px solid rgba(218, 165, 32, 0.7);
|
||||||
|
margin: 0.08rem 0;
|
||||||
|
font-size: 0.8em;
|
||||||
|
color: #7a5a1a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-actions-bar {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 0.3rem;
|
||||||
|
padding: 0.4rem;
|
||||||
|
background: rgba(226, 226, 222, 0.4);
|
||||||
|
border-top: 1px solid rgba(139, 115, 85, 0.25);
|
||||||
|
border-radius: 0 0 6px 6px;
|
||||||
|
margin-top: 0.25rem;
|
||||||
|
|
||||||
|
a {
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
transform: translateY(-2px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-negative-dice {
|
||||||
|
display: inline-block;
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(255, 100, 100, 0.2),
|
||||||
|
rgba(220, 80, 80, 0.15)
|
||||||
|
);
|
||||||
|
padding: 0.2rem 0.5rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
border: 2px solid rgba(178, 34, 34, 0.4);
|
||||||
|
font-weight: bold;
|
||||||
|
color: #8b0000;
|
||||||
|
margin: 0.15rem 0;
|
||||||
|
box-shadow: 0 1px 3px rgba(178, 34, 34, 0.2);
|
||||||
|
}
|
||||||
235
less/dialogs.less
Normal file
235
less/dialogs.less
Normal file
@@ -0,0 +1,235 @@
|
|||||||
|
.te-deum-roll-dialog {
|
||||||
|
.window-header {
|
||||||
|
border-radius: 10px 10px 0% 0%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.window-content {
|
||||||
|
border-radius: 0% 0% 10px 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.skill-roll-dialog {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(240, 235, 225, 0.98) 0%,
|
||||||
|
rgba(250, 245, 235, 0.95) 100%
|
||||||
|
);
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.flexcol {
|
||||||
|
padding: 0.6rem 0.8rem;
|
||||||
|
gap: 0.4rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flexrow {
|
||||||
|
margin: 0.3rem 0;
|
||||||
|
padding: 0.4rem 0.5rem;
|
||||||
|
background: rgba(255, 255, 255, 0.4);
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid rgba(139, 115, 85, 0.3);
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.5rem;
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(255, 255, 255, 0.6);
|
||||||
|
border-left-color: rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.roll-dialog-label {
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 0.85rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #3d3a2e;
|
||||||
|
min-width: 140px;
|
||||||
|
|
||||||
|
&:first-child {
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type="checkbox"] {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
div {
|
||||||
|
margin-top: 4px;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sheet-footer {
|
||||||
|
padding: 0.5rem 0.8rem;
|
||||||
|
gap: 0.5rem;
|
||||||
|
border-top: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
|
||||||
|
button {
|
||||||
|
flex: 1;
|
||||||
|
padding: 0.4rem 0.8rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 0.9rem;
|
||||||
|
cursor: pointer;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.5);
|
||||||
|
background: linear-gradient(135deg, rgba(196, 186, 166, 0.8) 0%, rgba(226, 226, 222, 0.9) 100%);
|
||||||
|
color: rgba(50, 35, 15, 0.95);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: linear-gradient(135deg, rgba(196, 186, 166, 1) 0%, rgba(210, 205, 195, 1) 100%);
|
||||||
|
border-color: rgba(139, 115, 85, 0.8);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.confront-dice {
|
||||||
|
border-width: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bonus-spec {
|
||||||
|
max-width: 48px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.confront-bonus-container {
|
||||||
|
position: relative;
|
||||||
|
flex-grow: 1;
|
||||||
|
text-align: center;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pool-list {
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.corps-combat-block {
|
||||||
|
position: relative;
|
||||||
|
width: 600px;
|
||||||
|
height: 600px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.silhouette-combat-picture {
|
||||||
|
width: 250px;
|
||||||
|
max-width: 250px;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.silhouette-combat-block {
|
||||||
|
position: absolute;
|
||||||
|
background: white;
|
||||||
|
border-color: darkgray;
|
||||||
|
border-style: ridge;
|
||||||
|
border: 1;
|
||||||
|
width: 180px;
|
||||||
|
min-height: 84px;
|
||||||
|
height: auto;
|
||||||
|
margin: 0 auto;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
align-self: center;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.silhouette-combat-space {
|
||||||
|
width: 60px;
|
||||||
|
min-width: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.center-content {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-message .message {
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 0.9rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum-character-creator {
|
||||||
|
/*background: rgba(226, 226, 222, 0.95);*/
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 0.9rem;
|
||||||
|
|
||||||
|
.field-title {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-group label {
|
||||||
|
color: rgba(30, 25, 15, 0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
.status-section {
|
||||||
|
display: block;
|
||||||
|
max-width: 34rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.creator-finished-section {
|
||||||
|
display: block;
|
||||||
|
max-width: 34rem;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.stage-main-details {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.grace-texte {
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.chat-welcome {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-name-label {
|
||||||
|
min-width: 12rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.compendium-sidebar .directory-item.compendium.locked .compendium-name {
|
||||||
|
background: rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.compendium-sidebar .directory-item.compendium .compendium-name {
|
||||||
|
background: rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.compendium-sidebar .directory-item.compendium:hover .compendium-name {
|
||||||
|
text-shadow: 0 0 8px var(--color-shadow-primary);
|
||||||
|
background: rgba(0, 0, 0, 0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
.compendium-sidebar .directory-item.compendium .compendium-footer .source {
|
||||||
|
display: inline-block;
|
||||||
|
font-size: var(--font-size-12);
|
||||||
|
padding: 1px 0.5rem 0 0.25rem;
|
||||||
|
border-radius: 0 3px 0 0;
|
||||||
|
background: rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tedeum-create-character {
|
||||||
|
align-self: anchor-center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.message-chat-center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.welcome-message-h3 {
|
||||||
|
font-size: 1.2rem;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
color: darkred;
|
||||||
|
}
|
||||||
414
less/items.less
Normal file
414
less/items.less
Normal file
@@ -0,0 +1,414 @@
|
|||||||
|
.padd-right {
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.padd-left {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fortune-row {
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.4rem;
|
||||||
|
padding: 0.3rem 0.5rem;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
|
||||||
|
label {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
min-width: unset;
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
input {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.stack-left {
|
||||||
|
align-items: center;
|
||||||
|
flex-shrink: 1;
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.packed-left {
|
||||||
|
white-space: nowrap;
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-numeric-short {
|
||||||
|
width: 52px;
|
||||||
|
max-width: 52px;
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-basis: 52px;
|
||||||
|
margin-right: 0.15rem;
|
||||||
|
margin-left: 0.15rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.abilities-table {
|
||||||
|
align-content: flex-start;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tokenhudext {
|
||||||
|
display: flex;
|
||||||
|
flex: 0 !important;
|
||||||
|
font-weight: 600;
|
||||||
|
|
||||||
|
&.left {
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-direction: column;
|
||||||
|
position: absolute;
|
||||||
|
top: 2.75rem;
|
||||||
|
right: 4rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.right {
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-direction: column;
|
||||||
|
position: absolute;
|
||||||
|
top: 2.75rem;
|
||||||
|
left: 4rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-icon {
|
||||||
|
&.tokenhudicon {
|
||||||
|
width: -moz-fit-content;
|
||||||
|
width: fit-content;
|
||||||
|
height: -moz-fit-content;
|
||||||
|
height: fit-content;
|
||||||
|
min-width: 6rem;
|
||||||
|
flex-basis: auto;
|
||||||
|
padding: 0;
|
||||||
|
line-height: 1rem;
|
||||||
|
margin: 0.25rem;
|
||||||
|
|
||||||
|
&.right {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#token-hud {
|
||||||
|
.status-effects {
|
||||||
|
&.active {
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.token-sheet {
|
||||||
|
.window-content {
|
||||||
|
.flexcol {
|
||||||
|
.sheet-tabs {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-checkbox {
|
||||||
|
height: 25px;
|
||||||
|
border: 1px solid rgba(115, 105, 83, 0.65098);
|
||||||
|
border-left: none;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 1rem;
|
||||||
|
color: black;
|
||||||
|
padding-top: 5px;
|
||||||
|
margin-right: 0px;
|
||||||
|
width: 45px;
|
||||||
|
position: relative;
|
||||||
|
left: 0px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.skill-label {
|
||||||
|
font-size: 0.7rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.skill-good-checkbox {
|
||||||
|
max-height: 10px;
|
||||||
|
max-width: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-actions-bar {
|
||||||
|
flex-grow: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar {
|
||||||
|
font-size: 1rem;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
background-position: 0px 35px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background: rgba(226, 226, 222, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
|
||||||
|
&.collapsed {
|
||||||
|
height: 470px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar-tabs {
|
||||||
|
i {
|
||||||
|
display: inline-block;
|
||||||
|
background-position: center;
|
||||||
|
background-size: cover;
|
||||||
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar-tabs > .collapsed,
|
||||||
|
#chat-controls .chat-control-icon {
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-tab {
|
||||||
|
.directory-list {
|
||||||
|
.entity {
|
||||||
|
border-top: 1px rgba(0, 0, 0, 0.25);
|
||||||
|
border-bottom: 0 none;
|
||||||
|
padding: 0.25rem 0;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(0, 0, 0, 0.05);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.status-small-label {
|
||||||
|
font-size: 0.65rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.no-grow {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.status-col-name {
|
||||||
|
max-width: 72px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.img-no-border {
|
||||||
|
max-width: 48px;
|
||||||
|
max-height: 48px;
|
||||||
|
border: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.items-title-bg {
|
||||||
|
margin-top: 6px;
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(196, 186, 166, 0.6) 0%,
|
||||||
|
rgba(226, 226, 222, 0.5) 100%
|
||||||
|
);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0.3rem 0.5rem;
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
border-left: 4px solid rgba(139, 115, 85, 0.6);
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-size: 1.15rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-name-label-header-long2 {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 14rem;
|
||||||
|
min-width: 14rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.impact-box {
|
||||||
|
border-width: 2px;
|
||||||
|
border-color: #000000;
|
||||||
|
border-radius: 6px;
|
||||||
|
border: 2px ridge #443307;
|
||||||
|
margin: 4px;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.impact-title {
|
||||||
|
font-size: bold;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.items-title-text {
|
||||||
|
text-align: center;
|
||||||
|
font-family: MailartRubberstamp;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.lock-icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-sheet-img {
|
||||||
|
width: 64px;
|
||||||
|
height: 64px;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.4);
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||||
|
object-fit: cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-name-img {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 2rem;
|
||||||
|
min-width: 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field {
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-xp {
|
||||||
|
margin-top: 4px;
|
||||||
|
min-width: 8rem;
|
||||||
|
max-width: 8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-label-short {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 4rem;
|
||||||
|
min-width: 4rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-label-medium {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 6rem;
|
||||||
|
min-width: 6rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-label-long,
|
||||||
|
.item-name-label-long {
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
min-width: 160px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-skill {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 6.8rem;
|
||||||
|
min-width: 6.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-label-long {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 10rem;
|
||||||
|
min-width: 10rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-title-long {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 12rem;
|
||||||
|
min-width: 12rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-field-label-long14 {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 14rem;
|
||||||
|
min-width: 14rem;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
font-size: 1.0rem;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.carac-box {
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(226, 226, 222, 0.4) 0%,
|
||||||
|
rgba(240, 235, 225, 0.3) 100%
|
||||||
|
);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 0.45rem;
|
||||||
|
padding: 0.3rem 0.5rem;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.2);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
border-color: rgba(139, 115, 85, 0.4);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.comp-box {
|
||||||
|
max-width: 16rem;
|
||||||
|
min-width: 16rem;
|
||||||
|
width: 16rem;
|
||||||
|
min-height: 1.6rem;
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(250, 245, 235, 0.5) 0%,
|
||||||
|
rgba(255, 255, 255, 0.3) 100%
|
||||||
|
);
|
||||||
|
padding: 0.25rem 0.4rem;
|
||||||
|
margin: 0.15rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-left: 2px solid rgba(139, 115, 85, 0.3);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(226, 226, 222, 0.4);
|
||||||
|
border-left-color: rgba(139, 115, 85, 0.6);
|
||||||
|
transform: translateX(2px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-control-end {
|
||||||
|
align-self: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alternate-list {
|
||||||
|
margin-top: 4px;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-filler {
|
||||||
|
flex-grow: 6;
|
||||||
|
flex-shrink: 7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-controls-fixed {
|
||||||
|
min-width: 2rem;
|
||||||
|
max-width: 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-controls-fixed-full {
|
||||||
|
min-width: 3rem;
|
||||||
|
max-width: 3rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-left-pad {
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.attribute-label {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flexrow-no-expand {
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-input-small {
|
||||||
|
max-width: 16px;
|
||||||
|
max-height: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.character-summary-rollable {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
240
less/layout.less
Normal file
240
less/layout.less
Normal file
@@ -0,0 +1,240 @@
|
|||||||
|
.fvtt-te-deum.window-app.sheet .window-content,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content {
|
||||||
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
// AppV2: le part wrapper et la section root du template doivent propager la hauteur
|
||||||
|
// Uniquement pour les fiches (.sheet) — les autres fenêtres (dialogs) gardent un layout block normal
|
||||||
|
.application.fvtt-te-deum.sheet .window-content > [data-application-part],
|
||||||
|
.application.fvtt-te-deum.sheet .window-content > [data-application-part] > section {
|
||||||
|
flex: 1 1 0;
|
||||||
|
min-height: 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
.sheet-header {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: flex-start;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
background: linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(226, 226, 222, 0.95) 0%,
|
||||||
|
rgba(240, 235, 225, 0.9) 100%
|
||||||
|
);
|
||||||
|
padding: 0.3rem 0.8rem;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
|
||||||
|
.profile-img {
|
||||||
|
flex: 0 0 128px;
|
||||||
|
width: 128px;
|
||||||
|
height: auto;
|
||||||
|
max-height: 128px;
|
||||||
|
margin-top: 0px;
|
||||||
|
margin-right: 10px;
|
||||||
|
-o-object-fit: cover;
|
||||||
|
object-fit: cover;
|
||||||
|
-o-object-position: 50% 0;
|
||||||
|
object-position: 50% 0;
|
||||||
|
border-width: 0px;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.4);
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-fields {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
&.charname {
|
||||||
|
height: 50px;
|
||||||
|
padding: 0px;
|
||||||
|
margin: 5px 0;
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-identity-fields {
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.3rem;
|
||||||
|
margin-top: 0.2rem;
|
||||||
|
|
||||||
|
input, select {
|
||||||
|
flex: 1 1 auto;
|
||||||
|
font-size: 0.75rem;
|
||||||
|
height: 1.6rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-identity-label {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
font-size: 0.7rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.sheet-tabs {
|
||||||
|
flex: 0;
|
||||||
|
font-family: "MailartRubberstamp";
|
||||||
|
font-size: 2.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tox {
|
||||||
|
.tox-editor-container {
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tox-edit-area {
|
||||||
|
padding: 0 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.resource-label {
|
||||||
|
font-weight: bold;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabs {
|
||||||
|
height: 40px;
|
||||||
|
border-top: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
border-bottom: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
background: linear-gradient(
|
||||||
|
180deg,
|
||||||
|
rgba(226, 226, 222, 0.5) 0%,
|
||||||
|
rgba(240, 235, 225, 0.3) 100%
|
||||||
|
);
|
||||||
|
color: #000000;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
|
||||||
|
.item {
|
||||||
|
line-height: 40px;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 0 1rem;
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(226, 226, 222, 0.6);
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
text-decoration: underline;
|
||||||
|
text-shadow: none;
|
||||||
|
background: rgba(196, 186, 166, 0.4);
|
||||||
|
border-bottom: 3px solid rgba(139, 115, 85, 0.8);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.items-list {
|
||||||
|
list-style: none;
|
||||||
|
margin: 1px 0;
|
||||||
|
padding: 0;
|
||||||
|
overflow-y: auto;
|
||||||
|
|
||||||
|
.item-header {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item {
|
||||||
|
height: 30px;
|
||||||
|
line-height: 24px;
|
||||||
|
padding: 1px 0;
|
||||||
|
border-bottom: 1px solid #bbb;
|
||||||
|
|
||||||
|
.item-image {
|
||||||
|
flex: 0 0 24px;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-name {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item-controls {
|
||||||
|
flex: 0 0 86px;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.profile-img-container {
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
max-width: 140px;
|
||||||
|
width: 140px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-img {
|
||||||
|
vertical-align: baseline;
|
||||||
|
width: 8%;
|
||||||
|
height: 8%;
|
||||||
|
max-height: 48px;
|
||||||
|
border-width: 0px;
|
||||||
|
border: 1px solid rgba(0, 0, 0, 0);
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: rgba(255, 255, 128, 0.7);
|
||||||
|
border: 1px solid rgba(255, 128, 0, 0.8);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-effect-img {
|
||||||
|
vertical-align: baseline;
|
||||||
|
width: 16px;
|
||||||
|
max-height: 16px;
|
||||||
|
height: 16;
|
||||||
|
border-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.small-button-container {
|
||||||
|
height: 16px;
|
||||||
|
width: 16px;
|
||||||
|
border: 0;
|
||||||
|
vertical-align: bottom;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .sheet-body {
|
||||||
|
flex: 1 1 0;
|
||||||
|
min-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .sheet-body .tab {
|
||||||
|
height: 100%;
|
||||||
|
overflow-y: auto;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
|
|
||||||
|
.fvtt-te-deum .sheet-body .tab .editor {
|
||||||
|
height: 100%;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
2077
less/tedeum.less
2077
less/tedeum.less
File diff suppressed because it is too large
Load Diff
30
less/variables.less
Normal file
30
less/variables.less
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: "MailartRubberstamp";
|
||||||
|
src: url("../fonts/MailartRubberstamp-Regular.woff") format("woff");
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
src: url("../fonts/IM_FELL_Great_Primer_Roman.woff") format("woff");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Variables LESS
|
||||||
|
@window-header-title-font-size: 1.3rem;
|
||||||
|
@window-header-title-font-weight: normal;
|
||||||
|
@window-header-title-color: #f5f5f5;
|
||||||
|
@major-button-font-size: 1.05rem;
|
||||||
|
@major-button-font-weight: normal;
|
||||||
|
@major-button-color: #dadada;
|
||||||
|
@tab-header-font-size: 1rem;
|
||||||
|
@tab-header-font-weight: 700;
|
||||||
|
@tab-header-color: #403f3e;
|
||||||
|
@tab-header-color-active: #4a0404;
|
||||||
|
@actor-input-font-size: 0.8rem;
|
||||||
|
@actor-input-font-weight: 500;
|
||||||
|
@actor-input-color: black;
|
||||||
|
@actor-label-font-size: 0.8rem;
|
||||||
|
@actor-label-font-weight: 700;
|
||||||
|
@actor-label-color: rgba(70, 67, 49, 0.76863);
|
||||||
|
@debug-background-color-red: rgba(255, 0, 0, 0.32941);
|
||||||
|
@debug-background-color-blue: rgba(29, 0, 255, 0.32941);
|
||||||
|
@debug-background-color-green: rgba(84, 255, 0, 0.32941);
|
||||||
|
@debug-box-shadow-red: inset 0 0 2px red;
|
||||||
|
@debug-box-shadow-blue: inset 0 0 2px blue;
|
||||||
|
@debug-box-shadow-green: inset 0 0 2px green;
|
||||||
@@ -1,179 +1,227 @@
|
|||||||
/**
|
/**
|
||||||
* Extend the basic ActorSheet with some very simple modifications
|
* Feuille de personnage Te Deum - AppV2
|
||||||
* @extends {ActorSheet}
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { TeDeumUtility } from "../common/tedeum-utility.js";
|
import { TeDeumUtility } from "../common/tedeum-utility.js";
|
||||||
|
|
||||||
|
const { HandlebarsApplicationMixin } = foundry.applications.api
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
export class TeDeumActorPJSheet extends foundry.appv1.sheets.ActorSheet {
|
export class TeDeumActorPJSheet extends HandlebarsApplicationMixin(foundry.applications.sheets.ActorSheetV2) {
|
||||||
|
|
||||||
|
constructor(options = {}) {
|
||||||
|
super(options)
|
||||||
|
this._sheetMode = this.constructor.SHEET_MODES.PLAY
|
||||||
|
}
|
||||||
|
|
||||||
|
static SHEET_MODES = { EDIT: 0, PLAY: 1 }
|
||||||
|
|
||||||
/** @override */
|
/** @override */
|
||||||
static get defaultOptions() {
|
static DEFAULT_OPTIONS = {
|
||||||
|
classes: ["fvtt-te-deum", "sheet", "actor"],
|
||||||
return foundry.utils.mergeObject(super.defaultOptions, {
|
position: {
|
||||||
classes: ["fvtt-te-deum", "sheet", "actor"],
|
|
||||||
template: "systems/fvtt-te-deum/templates/actors/actor-sheet.hbs",
|
|
||||||
width: 860,
|
width: 860,
|
||||||
height: 680,
|
height: 680,
|
||||||
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "skills" }],
|
},
|
||||||
dragDrop: [{ dragSelector: ".item-list .item", dropSelector: null }],
|
form: {
|
||||||
editScore: true
|
submitOnChange: true,
|
||||||
});
|
closeOnSubmit: false,
|
||||||
|
},
|
||||||
|
window: {
|
||||||
|
resizable: true,
|
||||||
|
},
|
||||||
|
dragDrop: [{ dragSelector: ".item-list .item", dropSelector: null }],
|
||||||
|
actions: {
|
||||||
|
editImage: TeDeumActorPJSheet.#onEditImage,
|
||||||
|
toggleSheet: TeDeumActorPJSheet.#onToggleSheet,
|
||||||
|
editItem: TeDeumActorPJSheet.#onEditItem,
|
||||||
|
deleteItem: TeDeumActorPJSheet.#onDeleteItem,
|
||||||
|
createItem: TeDeumActorPJSheet.#onCreateItem,
|
||||||
|
createBlessure: TeDeumActorPJSheet.#onCreateBlessure,
|
||||||
|
createCompetence: TeDeumActorPJSheet.#onCreateCompetence,
|
||||||
|
equipItem: TeDeumActorPJSheet.#onEquipItem,
|
||||||
|
modifyQuantity: TeDeumActorPJSheet.#onModifyQuantity,
|
||||||
|
rollCompetence: TeDeumActorPJSheet.#onRollCompetence,
|
||||||
|
rollArme: TeDeumActorPJSheet.#onRollArme,
|
||||||
|
rollDegats: TeDeumActorPJSheet.#onRollDegats,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @override */
|
||||||
|
static PARTS = {
|
||||||
|
sheet: {
|
||||||
|
template: "systems/fvtt-te-deum/templates/actors/actor-sheet.hbs",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
tabGroups = { primary: "principal" }
|
||||||
|
|
||||||
|
get isEditMode() {
|
||||||
|
return this._sheetMode === this.constructor.SHEET_MODES.EDIT
|
||||||
|
}
|
||||||
|
|
||||||
|
get isPlayMode() {
|
||||||
|
return this._sheetMode === this.constructor.SHEET_MODES.PLAY
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async getData() {
|
/** @override */
|
||||||
|
async _prepareContext() {
|
||||||
let formData = {
|
const actor = this.document
|
||||||
|
return {
|
||||||
title: this.title,
|
title: this.title,
|
||||||
id: this.actor.id,
|
id: actor.id,
|
||||||
type: this.actor.type,
|
type: actor.type,
|
||||||
img: this.actor.img,
|
img: actor.img,
|
||||||
name: this.actor.name,
|
name: actor.name,
|
||||||
editable: this.isEditable,
|
editable: this.isEditable,
|
||||||
cssClass: this.isEditable ? "editable" : "locked",
|
cssClass: this.isEditable ? "editable" : "locked",
|
||||||
system: foundry.utils.duplicate(this.object.system),
|
system: foundry.utils.duplicate(actor.system),
|
||||||
limited: this.object.limited,
|
systemFields: actor.system.schema.fields,
|
||||||
competences: this.actor.getCompetences(),
|
limited: actor.limited,
|
||||||
|
competences: actor.getCompetences(),
|
||||||
config: foundry.utils.duplicate(game.system.tedeum.config),
|
config: foundry.utils.duplicate(game.system.tedeum.config),
|
||||||
armes: this.actor.getArmes(),
|
armes: actor.getArmes(),
|
||||||
caracList: this.actor.prepareCaracteristiques(),
|
caracList: actor.prepareCaracteristiques(),
|
||||||
providence: this.actor.prepareProvidence(),
|
providence: actor.prepareProvidence(),
|
||||||
arbreCompetences: this.actor.prepareArbreCompetences(),
|
arbreCompetences: actor.prepareArbreCompetences(),
|
||||||
equipements: this.actor.getEquipements(),
|
equipements: actor.getEquipements(),
|
||||||
simples: this.actor.getSimples(),
|
simples: actor.getSimples(),
|
||||||
armures: this.actor.getArmures(),
|
armures: actor.getArmures(),
|
||||||
graces: this.actor.getGraces(),
|
graces: actor.getGraces(),
|
||||||
blessures: this.actor.getBlessures(),
|
blessures: actor.getBlessures(),
|
||||||
maladies: this.actor.getMaladies(),
|
maladies: actor.getMaladies(),
|
||||||
poisons: this.actor.getPoisons(),
|
poisons: actor.getPoisons(),
|
||||||
combat: this.actor.prepareCombat(),
|
combat: actor.prepareCombat(),
|
||||||
bonusDegats: this.actor.getBonusDegats(),
|
bonusDegats: actor.getBonusDegats(),
|
||||||
nbActions: this.actor.getNbActions(),
|
nbActions: actor.getNbActions(),
|
||||||
initiative: this.actor.getInitiative(),
|
initiative: actor.getInitiative(),
|
||||||
pointsArmuresLourdes: this.actor.getNbArmures(),
|
pointsArmuresLourdes: actor.getNbArmures(),
|
||||||
nbArmuresLourdes: this.actor.getNbArmuresLourdesActuel(),
|
nbArmuresLourdes: actor.getNbArmuresLourdesActuel(),
|
||||||
santeModifier: this.actor.getSanteModifier(),
|
santeModifier: actor.getSanteModifier(),
|
||||||
educations: this.actor.getEducations(),
|
educations: actor.getEducations(),
|
||||||
description: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.description, { async: true }),
|
enrichedDescription: await foundry.applications.ux.TextEditor.implementation.enrichHTML(actor.system.description, { async: true }),
|
||||||
equipmentfree: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.equipmentfree, { async: true }),
|
enrichedEquipmentFree: await foundry.applications.ux.TextEditor.implementation.enrichHTML(actor.system.equipmentfree, { async: true }),
|
||||||
notes: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.notes, { async: true }),
|
enrichedNotes: await foundry.applications.ux.TextEditor.implementation.enrichHTML(actor.system.notes, { async: true }),
|
||||||
histoire: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.histoire, { async: true }),
|
enrichedHistoire: await foundry.applications.ux.TextEditor.implementation.enrichHTML(actor.system.histoire, { async: true }),
|
||||||
options: this.options,
|
owner: actor.isOwner,
|
||||||
owner: this.document.isOwner,
|
isEditMode: this.isEditMode,
|
||||||
editScore: this.options.editScore,
|
isPlayMode: this.isPlayMode,
|
||||||
isGM: game.user.isGM
|
isGM: game.user.isGM,
|
||||||
}
|
}
|
||||||
this.formData = formData;
|
|
||||||
|
|
||||||
return formData;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
/** @override */
|
|
||||||
activateListeners(html) {
|
|
||||||
super.activateListeners(html);
|
|
||||||
|
|
||||||
// Everything below here is only needed if the sheet is editable
|
|
||||||
if (!this.options.editable) return;
|
|
||||||
|
|
||||||
html.bind("keydown", function (e) { // Ignore Enter in actores sheet
|
|
||||||
if (e.keyCode === 13) return false;
|
|
||||||
});
|
|
||||||
|
|
||||||
// Update Inventory Item
|
|
||||||
html.find('.item-edit').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item-id")
|
|
||||||
let itemId = li.data("item-id")
|
|
||||||
const item = this.actor.items.get(itemId);
|
|
||||||
item.sheet.render(true);
|
|
||||||
});
|
|
||||||
// Delete Inventory Item
|
|
||||||
html.find('.item-delete').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item-id")
|
|
||||||
TeDeumUtility.confirmDelete(this, li).catch("Error : No deletion confirmed")
|
|
||||||
})
|
|
||||||
html.find('.item-add').click(ev => {
|
|
||||||
let dataType = $(ev.currentTarget).data("type")
|
|
||||||
this.actor.createEmbeddedDocuments('Item', [{ name: "Nouveau " + dataType, type: dataType }], { renderSheet: true })
|
|
||||||
})
|
|
||||||
html.find('.blessure-add').click(ev => {
|
|
||||||
let dataType = $(ev.currentTarget).data("type")
|
|
||||||
this.actor.createEmbeddedDocuments('Item', [{ name: "Nouvelle " + dataType, type: dataType, system: { typeBlessure: "estafilade", localisation: "corps", value: 0, appliquee: true, description: "" } }], { renderSheet: true })
|
|
||||||
})
|
|
||||||
html.find('.competence-add').click(ev => {
|
|
||||||
let dataType = $(ev.currentTarget).data("type")
|
|
||||||
let caracKey = $(ev.currentTarget).data("carac-key")
|
|
||||||
this.actor.createEmbeddedDocuments('Item', [{ name: "Nouvelle " + dataType, type: dataType, system: { caracteristique: caracKey } }], { renderSheet: true })
|
|
||||||
})
|
|
||||||
|
|
||||||
html.find('.subactor-edit').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
let actorId = li.data("actor-id");
|
|
||||||
let actor = game.actors.get(actorId);
|
|
||||||
actor.sheet.render(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
html.find('.subactor-delete').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
let actorId = li.data("actor-id");
|
|
||||||
this.actor.delSubActor(actorId);
|
|
||||||
});
|
|
||||||
html.find('.quantity-minus').click(event => {
|
|
||||||
const li = $(event.currentTarget).parents(".item");
|
|
||||||
this.actor.incDecQuantity(li.data("item-id"), -1);
|
|
||||||
});
|
|
||||||
html.find('.quantity-plus').click(event => {
|
|
||||||
const li = $(event.currentTarget).parents(".item");
|
|
||||||
this.actor.incDecQuantity(li.data("item-id"), +1);
|
|
||||||
});
|
|
||||||
|
|
||||||
html.find('.roll-competence').click((event) => {
|
|
||||||
let compId = $(event.currentTarget).data("comp-id")
|
|
||||||
this.actor.rollCompetence(compId)
|
|
||||||
});
|
|
||||||
html.find('.roll-arme').click((event) => {
|
|
||||||
const armeId = $(event.currentTarget).data("arme-id")
|
|
||||||
this.actor.rollArme(armeId)
|
|
||||||
});
|
|
||||||
html.find('.roll-degats').click((event) => {
|
|
||||||
const armeId = $(event.currentTarget).data("arme-id")
|
|
||||||
this.actor.rollDegatsArme(armeId)
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
html.find('.lock-unlock-sheet').click((event) => {
|
|
||||||
this.options.editScore = !this.options.editScore;
|
|
||||||
this.render(true);
|
|
||||||
});
|
|
||||||
html.find('.item-equip').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
this.actor.equipItem(li.data("item-id"));
|
|
||||||
this.render(true);
|
|
||||||
});
|
|
||||||
html.find('.update-field').change(ev => {
|
|
||||||
const fieldName = $(ev.currentTarget).data("field-name");
|
|
||||||
let value = Number(ev.currentTarget.value);
|
|
||||||
this.actor.update({ [`${fieldName}`]: value });
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
/** @override */
|
/** @override */
|
||||||
setPosition(options = {}) {
|
_onRender(context, options) {
|
||||||
const position = super.setPosition(options);
|
super._onRender(context, options)
|
||||||
const sheetBody = this.element.find(".sheet-body");
|
|
||||||
const bodyHeight = position.height - 192;
|
// Tab navigation
|
||||||
sheetBody.css("height", bodyHeight);
|
const nav = this.element.querySelector('nav.tabs[data-group]')
|
||||||
return position;
|
if (nav) {
|
||||||
|
const group = nav.dataset.group
|
||||||
|
const activeTab = this.tabGroups[group] || "principal"
|
||||||
|
nav.querySelectorAll('[data-tab]').forEach(link => {
|
||||||
|
const tab = link.dataset.tab
|
||||||
|
link.classList.toggle('active', tab === activeTab)
|
||||||
|
link.addEventListener('click', event => {
|
||||||
|
event.preventDefault()
|
||||||
|
this.tabGroups[group] = tab
|
||||||
|
this.render()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.element.querySelectorAll(`[data-group="${group}"][data-tab]`).forEach(content => {
|
||||||
|
content.classList.toggle('active', content.dataset.tab === activeTab)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// Ignore Enter key in sheet inputs
|
||||||
|
this.element.addEventListener('keydown', e => {
|
||||||
|
if (e.keyCode === 13 && e.target.tagName !== 'TEXTAREA') e.preventDefault()
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
/** @override */
|
// #region Static action handlers
|
||||||
_updateObject(event, formData) {
|
|
||||||
// Update the Actor
|
static async #onEditImage(event) {
|
||||||
return this.object.update(formData);
|
const fp = new FilePicker({
|
||||||
|
type: "image",
|
||||||
|
current: this.document.img,
|
||||||
|
callback: path => this.document.update({ img: path }),
|
||||||
|
})
|
||||||
|
fp.browse()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static async #onToggleSheet(event) {
|
||||||
|
this._sheetMode = this.isEditMode
|
||||||
|
? this.constructor.SHEET_MODES.PLAY
|
||||||
|
: this.constructor.SHEET_MODES.EDIT
|
||||||
|
this.render()
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onEditItem(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
const item = this.actor.items.get(li?.dataset.itemId)
|
||||||
|
if (item) item.sheet.render(true)
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onDeleteItem(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
await TeDeumUtility.confirmDelete(this, li)
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onCreateItem(event, target) {
|
||||||
|
const type = target.dataset.type
|
||||||
|
await this.actor.createEmbeddedDocuments('Item', [{ name: "Nouveau " + type, type }], { renderSheet: true })
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onCreateBlessure(event, target) {
|
||||||
|
const type = target.dataset.type
|
||||||
|
await this.actor.createEmbeddedDocuments('Item', [{
|
||||||
|
name: "Nouvelle " + type, type,
|
||||||
|
system: { typeBlessure: "estafilade", localisation: "corps", value: 0, appliquee: true, description: "" }
|
||||||
|
}], { renderSheet: true })
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onCreateCompetence(event, target) {
|
||||||
|
const type = target.dataset.type
|
||||||
|
const caracKey = target.dataset.caracKey
|
||||||
|
await this.actor.createEmbeddedDocuments('Item', [{ name: "Nouvelle " + type, type, system: { caracteristique: caracKey } }], { renderSheet: true })
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onEquipItem(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
if (!li?.dataset.itemId) return
|
||||||
|
await this.actor.equipItem(li.dataset.itemId)
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onModifyQuantity(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
if (!li?.dataset.itemId) return
|
||||||
|
const item = this.actor.items.get(li.dataset.itemId)
|
||||||
|
if (!item) return
|
||||||
|
const delta = parseInt(target.dataset.qty) || 0
|
||||||
|
await this.actor.incDecQuantity(li.dataset.itemId, delta)
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onRollCompetence(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
if (!li?.dataset.itemId) return
|
||||||
|
await this.actor.rollCompetence(li.dataset.itemId)
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onRollArme(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
if (!li?.dataset.itemId) return
|
||||||
|
await this.actor.rollArme(li.dataset.itemId)
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onRollDegats(event, target) {
|
||||||
|
const li = target.closest("[data-item-id]")
|
||||||
|
if (!li?.dataset.itemId) return
|
||||||
|
await this.actor.rollDegatsArme(li.dataset.itemId)
|
||||||
|
}
|
||||||
|
|
||||||
|
// #endregion
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -785,8 +785,7 @@ export class TeDeumActor extends Actor {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async startRoll(rollData) {
|
async startRoll(rollData) {
|
||||||
console.log("startRoll", rollData)
|
console.log("startRoll", rollData)
|
||||||
let rollDialog = await TeDeumRollDialog.create(this, rollData)
|
await TeDeumRollDialog.create(this, rollData)
|
||||||
rollDialog.render(true)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -575,7 +575,7 @@ export class TeDeumCharacterCreator {
|
|||||||
for (let compName in this.competenceBonus) {
|
for (let compName in this.competenceBonus) {
|
||||||
let comp = actor.items.find( i => i.type == "competence" && i.name.toLowerCase() === compName.toLowerCase())
|
let comp = actor.items.find( i => i.type == "competence" && i.name.toLowerCase() === compName.toLowerCase())
|
||||||
if (comp) {
|
if (comp) {
|
||||||
updateComp.push({ _id: comp._id, "system.score": this.competenceBonus[compName].value })
|
updateComp.push({ _id: comp._id, "system.score": comp.system.score + this.competenceBonus[compName].value })
|
||||||
} else {
|
} else {
|
||||||
toAdd.push( compName)
|
toAdd.push( compName)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -147,6 +147,14 @@ export class TeDeumUtility {
|
|||||||
}
|
}
|
||||||
return value
|
return value
|
||||||
})
|
})
|
||||||
|
// Handle v12 removal of this helper
|
||||||
|
Handlebars.registerHelper('select', function (selected, options) {
|
||||||
|
const escapedValue = RegExp.escape(Handlebars.escapeExpression(selected));
|
||||||
|
const rgx = new RegExp(' value=[\"\']' + escapedValue + '[\"\']');
|
||||||
|
const html = options.fn(this);
|
||||||
|
return html.replace(rgx, "$& selected");
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
// Load compendium data
|
// Load compendium data
|
||||||
const competences = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences")
|
const competences = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences")
|
||||||
@@ -389,7 +397,17 @@ export class TeDeumUtility {
|
|||||||
'systems/fvtt-te-deum/templates/actors/editor-notes-gm.hbs',
|
'systems/fvtt-te-deum/templates/actors/editor-notes-gm.hbs',
|
||||||
'systems/fvtt-te-deum/templates/items/partial-item-nav.hbs',
|
'systems/fvtt-te-deum/templates/items/partial-item-nav.hbs',
|
||||||
'systems/fvtt-te-deum/templates/items/partial-item-description.hbs',
|
'systems/fvtt-te-deum/templates/items/partial-item-description.hbs',
|
||||||
'systems/fvtt-te-deum/templates/dialogs/partial-creator-status.hbs'
|
'systems/fvtt-te-deum/templates/dialogs/partial-creator-status.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-arme-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-armure-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-blessure-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-competence-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-education-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-equipement-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-grace-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-maladie-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-origine-sheet.hbs',
|
||||||
|
'systems/fvtt-te-deum/templates/items/item-simple-sheet.hbs',
|
||||||
]
|
]
|
||||||
return foundry.applications.handlebars.loadTemplates(templatePaths);
|
return foundry.applications.handlebars.loadTemplates(templatePaths);
|
||||||
}
|
}
|
||||||
@@ -885,7 +903,7 @@ export class TeDeumUtility {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async confirmDelete(actorSheet, li) {
|
static async confirmDelete(actorSheet, li) {
|
||||||
let itemId = li.data("item-id");
|
let itemId = li.dataset ? li.dataset.itemId : li.data("item-id");
|
||||||
let msgTxt = "<p>Etes vous certain de supprimer cet item ?";
|
let msgTxt = "<p>Etes vous certain de supprimer cet item ?";
|
||||||
let buttons = {
|
let buttons = {
|
||||||
delete: {
|
delete: {
|
||||||
@@ -893,7 +911,12 @@ export class TeDeumUtility {
|
|||||||
label: "Oui, aucun souci",
|
label: "Oui, aucun souci",
|
||||||
callback: () => {
|
callback: () => {
|
||||||
actorSheet.actor.deleteEmbeddedDocuments("Item", [itemId]);
|
actorSheet.actor.deleteEmbeddedDocuments("Item", [itemId]);
|
||||||
li.slideUp(200, () => actorSheet.render(false));
|
if (li.slideUp) {
|
||||||
|
li.slideUp(200, () => actorSheet.render(false));
|
||||||
|
} else {
|
||||||
|
li.style.display = "none";
|
||||||
|
actorSheet.render(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cancel: {
|
cancel: {
|
||||||
|
|||||||
@@ -1,102 +1,103 @@
|
|||||||
import { TeDeumUtility } from "../common/tedeum-utility.js";
|
import { TeDeumUtility } from "../common/tedeum-utility.js";
|
||||||
|
|
||||||
export class TeDeumRollDialog extends Dialog {
|
const { HandlebarsApplicationMixin } = foundry.applications.api
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
export class TeDeumRollDialog extends HandlebarsApplicationMixin(foundry.applications.api.ApplicationV2) {
|
||||||
|
|
||||||
|
static DEFAULT_OPTIONS = {
|
||||||
|
classes: ["fvtt-te-deum", "te-deum-roll-dialog"],
|
||||||
|
window: { title: "Lancer !", resizable: false },
|
||||||
|
position: { width: 540 },
|
||||||
|
actions: {
|
||||||
|
roll: TeDeumRollDialog.#onRoll,
|
||||||
|
cancel: TeDeumRollDialog.#onCancel,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static PARTS = {
|
||||||
|
content: { template: "systems/fvtt-te-deum/templates/dialogs/roll-dialog-generic.hbs" }
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
constructor(actor, rollData, options = {}) {
|
||||||
|
super(options)
|
||||||
|
this.actor = actor
|
||||||
|
this.rollData = rollData
|
||||||
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async create(actor, rollData) {
|
static async create(actor, rollData) {
|
||||||
|
const dialog = new TeDeumRollDialog(actor, rollData)
|
||||||
let options = { classes: ["tedeum-roll-dialog"], width: 540, height: 'fit-content', 'z-index': 99999 }
|
dialog.render(true)
|
||||||
let html = await foundry.applications.handlebars.renderTemplate('systems/fvtt-te-deum/templates/dialogs/roll-dialog-generic.hbs', rollData);
|
return dialog
|
||||||
return new TeDeumRollDialog(actor, rollData, html, options);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
constructor(actor, rollData, html, options, close = undefined) {
|
async _prepareContext() {
|
||||||
let conf = {
|
return { ...this.rollData }
|
||||||
title: "Lancer !",
|
|
||||||
content: html,
|
|
||||||
buttons: {
|
|
||||||
roll: {
|
|
||||||
icon: '<i class="fas fa-check"></i>',
|
|
||||||
label: "Lancer",
|
|
||||||
callback: () => { this.roll() }
|
|
||||||
},
|
|
||||||
cancel: {
|
|
||||||
icon: '<i class="fas fa-times"></i>',
|
|
||||||
label: "Annuler",
|
|
||||||
callback: () => { this.close() }
|
|
||||||
}
|
|
||||||
},
|
|
||||||
close: close
|
|
||||||
}
|
|
||||||
|
|
||||||
super(conf, options);
|
|
||||||
|
|
||||||
this.actor = actor;
|
|
||||||
this.rollData = rollData;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
roll() {
|
|
||||||
TeDeumUtility.rollTeDeum(this.rollData)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async refreshDialog() {
|
async refreshDialog() {
|
||||||
const content = await foundry.applications.handlebars.renderTemplate("systems/fvtt-te-deum/templates/dialogs/roll-dialog-generic.hbs", this.rollData)
|
this.render()
|
||||||
this.data.content = content
|
|
||||||
this.render(true)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
activateListeners(html) {
|
static #onRoll(event, target) {
|
||||||
super.activateListeners(html);
|
TeDeumUtility.rollTeDeum(this.rollData)
|
||||||
|
this.close()
|
||||||
|
}
|
||||||
|
|
||||||
let dialog = this;
|
/* -------------------------------------------- */
|
||||||
function onLoad() {
|
static #onCancel(event, target) {
|
||||||
}
|
this.close()
|
||||||
$(function () { onLoad(); });
|
}
|
||||||
|
|
||||||
html.find('#bonusMalusPerso').change((event) => {
|
/* -------------------------------------------- */
|
||||||
|
_onRender(context, options) {
|
||||||
|
super._onRender(context, options)
|
||||||
|
|
||||||
|
const html = this.element
|
||||||
|
|
||||||
|
html.querySelector('#bonusMalusPerso')?.addEventListener('change', (event) => {
|
||||||
this.rollData.bonusMalusPerso = Number(event.currentTarget.value)
|
this.rollData.bonusMalusPerso = Number(event.currentTarget.value)
|
||||||
})
|
})
|
||||||
html.find('#roll-allonge').change((event) => {
|
html.querySelector('#roll-allonge')?.addEventListener('change', (event) => {
|
||||||
this.rollData.allongeId = event.currentTarget.value
|
this.rollData.allongeId = event.currentTarget.value
|
||||||
})
|
})
|
||||||
html.find('#roll-main-gauche').change((event) => {
|
html.querySelector('#roll-main-gauche')?.addEventListener('change', (event) => {
|
||||||
this.rollData.isMainGauche = event.currentTarget.checked
|
this.rollData.isMainGauche = event.currentTarget.checked
|
||||||
})
|
})
|
||||||
html.find('#roll-difficulty').change((event) => {
|
html.querySelector('#roll-difficulty')?.addEventListener('change', (event) => {
|
||||||
this.rollData.difficulty = String(event.currentTarget.value) || "pardefaut"
|
this.rollData.difficulty = String(event.currentTarget.value) || "pardefaut"
|
||||||
})
|
})
|
||||||
html.find('#roll-attaque-ciblee').change((event) => {
|
html.querySelector('#roll-attaque-ciblee')?.addEventListener('change', (event) => {
|
||||||
this.rollData.attaqueCiblee = event.currentTarget.value || "0"
|
this.rollData.attaqueCiblee = event.currentTarget.value || "0"
|
||||||
})
|
})
|
||||||
html.find('#roll-bonus-malus').change((event) => {
|
html.querySelector('#roll-bonus-malus')?.addEventListener('change', (event) => {
|
||||||
this.rollData.bonusMalus = event.currentTarget.value || "0"
|
this.rollData.bonusMalus = event.currentTarget.value || "0"
|
||||||
})
|
})
|
||||||
html.find('#roll-enable-providence').change((event) => {
|
html.querySelector('#roll-enable-providence')?.addEventListener('change', (event) => {
|
||||||
this.rollData.enableProvidence = event.currentTarget.checked
|
this.rollData.enableProvidence = event.currentTarget.checked
|
||||||
})
|
})
|
||||||
html.find('#roll-portee-tir').change((event) => {
|
html.querySelector('#roll-portee-tir')?.addEventListener('change', (event) => {
|
||||||
this.rollData.porteeTir = event.currentTarget.value
|
this.rollData.porteeTir = event.currentTarget.value
|
||||||
this.rollData.difficulty = game.system.tedeum.config.ARME_PORTEES[this.rollData.porteeTir].difficulty
|
this.rollData.difficulty = game.system.tedeum.config.ARME_PORTEES[this.rollData.porteeTir].difficulty
|
||||||
this.rollData.porteeLabel = game.system.tedeum.config.ARME_PORTEES[this.rollData.porteeTir].label
|
this.rollData.porteeLabel = game.system.tedeum.config.ARME_PORTEES[this.rollData.porteeTir].label
|
||||||
|
this.refreshDialog()
|
||||||
})
|
})
|
||||||
html.find('#roll-tir-viser').change((event) => {
|
html.querySelector('#roll-tir-viser')?.addEventListener('change', (event) => {
|
||||||
this.rollData.isViser = event.currentTarget.checked
|
this.rollData.isViser = event.currentTarget.checked
|
||||||
})
|
})
|
||||||
html.find('#roll-tir-mouvement').change((event) => {
|
html.querySelector('#roll-tir-mouvement')?.addEventListener('change', (event) => {
|
||||||
this.rollData.isMouvement = event.currentTarget.checked
|
this.rollData.isMouvement = event.currentTarget.checked
|
||||||
})
|
})
|
||||||
html.find('#roll-charge-a-pied').change((event) => {
|
html.querySelector('#roll-charge-a-pied')?.addEventListener('change', (event) => {
|
||||||
this.rollData.isChargeAPied = event.currentTarget.checked
|
this.rollData.isChargeAPied = event.currentTarget.checked
|
||||||
})
|
})
|
||||||
html.find('#roll-charge-a-cheval').change((event) => {
|
html.querySelector('#roll-charge-a-cheval')?.addEventListener('change', (event) => {
|
||||||
this.rollData.isChargeACheval = event.currentTarget.checked
|
this.rollData.isChargeACheval = event.currentTarget.checked
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,172 +1,154 @@
|
|||||||
import { TeDeumUtility } from "../common/tedeum-utility.js";
|
import { TeDeumUtility } from "../common/tedeum-utility.js";
|
||||||
|
|
||||||
|
const { HandlebarsApplicationMixin } = foundry.applications.api
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Extend the basic ItemSheet with some very simple modifications
|
* Feuille d'item Te Deum - AppV2
|
||||||
* @extends {ItemSheet}
|
|
||||||
*/
|
*/
|
||||||
export class TeDeumItemSheet extends foundry.appv1.sheets.ItemSheet {
|
export class TeDeumItemSheet extends HandlebarsApplicationMixin(foundry.applications.sheets.ItemSheetV2) {
|
||||||
|
|
||||||
/** @override */
|
/** @override */
|
||||||
static get defaultOptions() {
|
static DEFAULT_OPTIONS = {
|
||||||
return foundry.utils.mergeObject(super.defaultOptions, {
|
classes: ["fvtt-te-deum", "sheet", "item"],
|
||||||
classes: ["fvtt-te-deum", "sheet", "item"],
|
position: {
|
||||||
template: "systems/fvtt-te-deum/templates/item-sheet.hbs",
|
|
||||||
dragDrop: [{ dragSelector: null, dropSelector: null }],
|
|
||||||
width: 620,
|
width: 620,
|
||||||
height: 580,
|
height: 580,
|
||||||
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description" }]
|
},
|
||||||
});
|
form: {
|
||||||
|
submitOnChange: true,
|
||||||
|
closeOnSubmit: false,
|
||||||
|
},
|
||||||
|
window: {
|
||||||
|
resizable: true,
|
||||||
|
},
|
||||||
|
actions: {
|
||||||
|
editImage: TeDeumItemSheet.#onEditImage,
|
||||||
|
postItem: TeDeumItemSheet.#onPostItem,
|
||||||
|
deleteSubitem: TeDeumItemSheet.#onDeleteSubitem,
|
||||||
|
viewSubitem: TeDeumItemSheet.#onViewSubitem,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
// Static PARTS pointing to the dynamic wrapper template
|
||||||
_getHeaderButtons() {
|
static PARTS = {
|
||||||
let buttons = super._getHeaderButtons();
|
sheet: { template: "systems/fvtt-te-deum/templates/items/item-sheet.hbs" },
|
||||||
// Add "Post to chat" button
|
|
||||||
// We previously restricted this to GM and editable items only. If you ever find this comment because it broke something: eh, sorry!
|
|
||||||
buttons.unshift(
|
|
||||||
{
|
|
||||||
class: "post",
|
|
||||||
icon: "fas fa-comment",
|
|
||||||
onclick: ev => { }
|
|
||||||
})
|
|
||||||
return buttons
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
tabGroups = { primary: "description" }
|
||||||
async getData() {
|
|
||||||
|
|
||||||
let formData = {
|
/* -------------------------------------------- */
|
||||||
|
/** @override */
|
||||||
|
async _prepareContext() {
|
||||||
|
const item = this.document
|
||||||
|
const TextEditor = foundry.applications.ux.TextEditor.implementation
|
||||||
|
const enrich = async (val) => val !== undefined ? await TextEditor.enrichHTML(val ?? "", { async: true }) : ""
|
||||||
|
const context = {
|
||||||
title: this.title,
|
title: this.title,
|
||||||
id: this.id,
|
id: item.id,
|
||||||
type: this.object.type,
|
type: item.type,
|
||||||
img: this.object.img,
|
img: item.img,
|
||||||
name: this.object.name,
|
name: item.name,
|
||||||
editable: this.isEditable,
|
editable: this.isEditable,
|
||||||
cssClass: this.isEditable ? "editable" : "locked",
|
cssClass: this.isEditable ? "editable" : "locked",
|
||||||
system: foundry.utils.duplicate(this.object.system),
|
system: foundry.utils.duplicate(item.system),
|
||||||
|
systemFields: item.system.schema.fields,
|
||||||
config: foundry.utils.duplicate(game.system.tedeum.config),
|
config: foundry.utils.duplicate(game.system.tedeum.config),
|
||||||
competences: TeDeumUtility.getCompetencesForDropDown(),
|
competences: TeDeumUtility.getCompetencesForDropDown(),
|
||||||
limited: this.object.limited,
|
limited: item.limited,
|
||||||
options: this.options,
|
owner: item.isOwner,
|
||||||
owner: this.document.isOwner,
|
enrichedDescription: await enrich(item.system.description),
|
||||||
description: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.description, { async: true }),
|
enrichedTransmission: await enrich(item.system.transmission),
|
||||||
notes: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.notes, { async: true }),
|
enrichedSymptomes: await enrich(item.system.symptomes),
|
||||||
isGM: game.user.isGM
|
enrichedComplications: await enrich(item.system.complications),
|
||||||
|
enrichedVertus: await enrich(item.system.vertus),
|
||||||
|
enrichedToxicite: await enrich(item.system.toxicite),
|
||||||
|
isGM: game.user.isGM,
|
||||||
|
itemPartialName: `systems/fvtt-te-deum/templates/items/item-${item.type}-sheet.hbs`,
|
||||||
}
|
}
|
||||||
|
if (item.type === "education") {
|
||||||
if (this.object.type == "education") {
|
TeDeumUtility.prepareEducationContent(context)
|
||||||
TeDeumUtility.prepareEducationContent(formData);
|
|
||||||
}
|
}
|
||||||
|
return context
|
||||||
this.options.editable = !(this.object.origin == "embeddedItem");
|
|
||||||
return formData;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
_getHeaderButtons() {
|
|
||||||
let buttons = super._getHeaderButtons();
|
|
||||||
buttons.unshift({
|
|
||||||
class: "post",
|
|
||||||
icon: "fas fa-comment",
|
|
||||||
onclick: ev => this.postItem()
|
|
||||||
});
|
|
||||||
return buttons
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
postItem() {
|
/** @override */
|
||||||
let chatData = duplicate(this.item)
|
_onRender(context, options) {
|
||||||
|
super._onRender(context, options)
|
||||||
|
|
||||||
|
// Tab navigation
|
||||||
|
const nav = this.element.querySelector('nav.tabs[data-group]')
|
||||||
|
if (nav) {
|
||||||
|
const group = nav.dataset.group
|
||||||
|
const activeTab = this.tabGroups[group] || "description"
|
||||||
|
nav.querySelectorAll('[data-tab]').forEach(link => {
|
||||||
|
const tab = link.dataset.tab
|
||||||
|
link.classList.toggle('active', tab === activeTab)
|
||||||
|
link.addEventListener('click', event => {
|
||||||
|
event.preventDefault()
|
||||||
|
this.tabGroups[group] = tab
|
||||||
|
this.render()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.element.querySelectorAll(`[data-group="${group}"][data-tab]`).forEach(content => {
|
||||||
|
content.classList.toggle('active', content.dataset.tab === activeTab)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// Ignore Enter key in inputs
|
||||||
|
this.element.addEventListener('keydown', e => {
|
||||||
|
if (e.keyCode === 13 && e.target.tagName !== 'TEXTAREA') e.preventDefault()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// #region Static action handlers
|
||||||
|
|
||||||
|
static async #onEditImage(event, target) {
|
||||||
|
const fp = new FilePicker({
|
||||||
|
type: "image",
|
||||||
|
current: this.document.img,
|
||||||
|
callback: path => this.document.update({ img: path }),
|
||||||
|
})
|
||||||
|
fp.browse()
|
||||||
|
}
|
||||||
|
|
||||||
|
static async #onPostItem(event, target) {
|
||||||
|
const chatData = foundry.utils.duplicate(this.item)
|
||||||
if (this.actor) {
|
if (this.actor) {
|
||||||
chatData.actor = { id: this.actor.id };
|
chatData.actor = { id: this.actor.id }
|
||||||
}
|
}
|
||||||
// Don't post any image for the item (which would leave a large gap) if the default image is used
|
if (chatData.img?.includes("/blank.png")) {
|
||||||
if (chatData.img.includes("/blank.png")) {
|
chatData.img = null
|
||||||
chatData.img = null;
|
|
||||||
}
|
}
|
||||||
// JSON object for easy creation
|
chatData.jsondata = JSON.stringify({ compendium: "postedItem", payload: chatData })
|
||||||
chatData.jsondata = JSON.stringify(
|
const html = await foundry.applications.handlebars.renderTemplate(
|
||||||
{
|
'systems/fvtt-te-deum/templates/post-item.html', chatData
|
||||||
compendium: "postedItem",
|
)
|
||||||
payload: chatData,
|
ChatMessage.create(TeDeumUtility.chatDataSetup(html))
|
||||||
});
|
|
||||||
|
|
||||||
foundry.applications.handlebars.renderTemplate('systems/fvtt-te-deum/templates/post-item.html', chatData).then(html => {
|
|
||||||
let chatOptions = TeDeumUtility.chatDataSetup(html);
|
|
||||||
ChatMessage.create(chatOptions)
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
static async #onDeleteSubitem(event, target) {
|
||||||
async viewSubitem(ev) {
|
const field = target.dataset.type
|
||||||
let levelIndex = Number($(ev.currentTarget).parents(".item").data("level-index"))
|
const idx = parseInt(target.dataset.index)
|
||||||
let choiceIndex = Number($(ev.currentTarget).parents(".item").data("choice-index"))
|
const oldArray = this.document.system[field]
|
||||||
let featureId = $(ev.currentTarget).parents(".item").data("feature-id")
|
if (Array.isArray(oldArray) && oldArray[idx]?.name !== 'None') {
|
||||||
|
const newArray = oldArray.filter((_, i) => i !== idx)
|
||||||
let itemData = this.object.system.levels[levelIndex].choices[choiceIndex].features[featureId]
|
this.document.update({ [`system.${field}`]: newArray })
|
||||||
|
|
||||||
if (itemData.name != 'None') {
|
|
||||||
let item = await Item.create(itemData, { temporary: true });
|
|
||||||
item.system.origin = "embeddedItem";
|
|
||||||
new TeDeumItemSheet(item).render(true);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
static async #onViewSubitem(event, target) {
|
||||||
async deleteSubitem(ev) {
|
const li = target.closest(".item")
|
||||||
let field = $(ev.currentTarget).data('type');
|
const levelIndex = parseInt(li?.dataset.levelIndex)
|
||||||
let idx = Number($(ev.currentTarget).data('index'));
|
const choiceIndex = parseInt(li?.dataset.choiceIndex)
|
||||||
let oldArray = this.object.system[field];
|
const featureId = li?.dataset.featureId
|
||||||
let itemData = this.object.system[field][idx];
|
const itemData = this.document.system.levels?.[levelIndex]?.choices?.[choiceIndex]?.features?.[featureId]
|
||||||
if (itemData.name != 'None') {
|
if (itemData?.name !== 'None') {
|
||||||
let newArray = [];
|
const item = await Item.create(itemData, { temporary: true })
|
||||||
for (let i = 0; i < oldArray.length; i++) {
|
item.system.origin = "embeddedItem"
|
||||||
if (i != idx) {
|
new TeDeumItemSheet(item).render(true)
|
||||||
newArray.push(oldArray[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.object.update({ [`system.${field}`]: newArray });
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
// #endregion
|
||||||
/** @override */
|
|
||||||
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 item = this.object.options.actor.getOwnedItem(li.data("item-id"));
|
|
||||||
item.sheet.render(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
html.find('.delete-subitem').click(ev => {
|
|
||||||
this.deleteSubitem(ev);
|
|
||||||
});
|
|
||||||
|
|
||||||
// Update Inventory Item
|
|
||||||
html.find('.item-delete').click(ev => {
|
|
||||||
const li = $(ev.currentTarget).parents(".item");
|
|
||||||
let itemId = li.data("item-id");
|
|
||||||
let itemType = li.data("item-type");
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
get template() {
|
|
||||||
let type = this.item.type;
|
|
||||||
return `systems/fvtt-te-deum/templates/items/item-${type}-sheet.hbs`
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
|
||||||
/** @override */
|
|
||||||
_updateObject(event, formData) {
|
|
||||||
return this.object.update(formData)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -1 +1 @@
|
|||||||
MANIFEST-000226
|
MANIFEST-000245
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.096861 7f821f7fe6c0 Recovering log #224
|
2026/02/28-09:14:40.938346 7f56f93fe6c0 Recovering log #243
|
||||||
2026/02/25-16:17:49.106471 7f821f7fe6c0 Delete type=3 #222
|
2026/02/28-09:14:40.993306 7f56f93fe6c0 Delete type=3 #241
|
||||||
2026/02/25-16:17:49.106539 7f821f7fe6c0 Delete type=0 #224
|
2026/02/28-09:14:40.993438 7f56f93fe6c0 Delete type=0 #243
|
||||||
|
2026/02/28-11:53:47.481993 7f54e37ef6c0 Level-0 table #248: started
|
||||||
|
2026/02/28-11:53:47.482026 7f54e37ef6c0 Level-0 table #248: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.487859 7f54e37ef6c0 Delete type=0 #246
|
||||||
|
2026/02/28-11:53:47.488058 7f54e37ef6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.937630 7f821ffff6c0 Recovering log #220
|
2026/02/27-17:11:33.828064 7f56f8bfd6c0 Recovering log #239
|
||||||
2026/02/25-15:53:40.949873 7f821ffff6c0 Delete type=3 #218
|
2026/02/27-17:11:33.838170 7f56f8bfd6c0 Delete type=3 #237
|
||||||
2026/02/25-15:53:40.949933 7f821ffff6c0 Delete type=0 #220
|
2026/02/27-17:11:33.838231 7f56f8bfd6c0 Delete type=0 #239
|
||||||
2026/02/25-16:16:19.716603 7f821d8d46c0 Level-0 table #225: started
|
2026/02/27-17:22:38.249017 7f54e37ef6c0 Level-0 table #244: started
|
||||||
2026/02/25-16:16:19.716652 7f821d8d46c0 Level-0 table #225: 0 bytes OK
|
2026/02/27-17:22:38.249057 7f54e37ef6c0 Level-0 table #244: 0 bytes OK
|
||||||
2026/02/25-16:16:19.765894 7f821d8d46c0 Delete type=0 #223
|
2026/02/27-17:22:38.255519 7f54e37ef6c0 Delete type=0 #242
|
||||||
2026/02/25-16:16:19.766155 7f821d8d46c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.255693 7f54e37ef6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/aides/MANIFEST-000245
Normal file
BIN
packs/aides/MANIFEST-000245
Normal file
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000329
|
MANIFEST-000347
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.007591 7f821f7fe6c0 Recovering log #327
|
2026/02/28-09:14:40.507166 7f56f8bfd6c0 Recovering log #345
|
||||||
2026/02/25-16:17:49.018485 7f821f7fe6c0 Delete type=3 #325
|
2026/02/28-09:14:40.569877 7f56f8bfd6c0 Delete type=3 #343
|
||||||
2026/02/25-16:17:49.018548 7f821f7fe6c0 Delete type=0 #327
|
2026/02/28-09:14:40.570013 7f56f8bfd6c0 Delete type=0 #345
|
||||||
|
2026/02/28-11:53:47.420510 7f54e37ef6c0 Level-0 table #350: started
|
||||||
|
2026/02/28-11:53:47.420538 7f54e37ef6c0 Level-0 table #350: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.427480 7f54e37ef6c0 Delete type=0 #348
|
||||||
|
2026/02/28-11:53:47.427767 7f54e37ef6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.848906 7f821effd6c0 Recovering log #323
|
2026/02/27-17:11:33.742557 7f56f8bfd6c0 Recovering log #341
|
||||||
2026/02/25-15:53:40.858667 7f821effd6c0 Delete type=3 #321
|
2026/02/27-17:11:33.751671 7f56f8bfd6c0 Delete type=3 #339
|
||||||
2026/02/25-15:53:40.858720 7f821effd6c0 Delete type=0 #323
|
2026/02/27-17:11:33.751725 7f56f8bfd6c0 Delete type=0 #341
|
||||||
2026/02/25-16:16:19.467652 7f821d8d46c0 Level-0 table #328: started
|
2026/02/27-17:22:38.183980 7f54e37ef6c0 Level-0 table #346: started
|
||||||
2026/02/25-16:16:19.467677 7f821d8d46c0 Level-0 table #328: 0 bytes OK
|
2026/02/27-17:22:38.184010 7f54e37ef6c0 Level-0 table #346: 0 bytes OK
|
||||||
2026/02/25-16:16:19.528659 7f821d8d46c0 Delete type=0 #326
|
2026/02/27-17:22:38.189997 7f54e37ef6c0 Delete type=0 #344
|
||||||
2026/02/25-16:16:19.528885 7f821d8d46c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.202756 7f54e37ef6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/armes/MANIFEST-000347
Normal file
BIN
packs/armes/MANIFEST-000347
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000329
|
MANIFEST-000348
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.020792 7f821effd6c0 Recovering log #327
|
2026/02/28-09:14:40.573416 7f56f93fe6c0 Recovering log #346
|
||||||
2026/02/25-16:17:49.030955 7f821effd6c0 Delete type=3 #325
|
2026/02/28-09:14:40.630571 7f56f93fe6c0 Delete type=3 #344
|
||||||
2026/02/25-16:17:49.031024 7f821effd6c0 Delete type=0 #327
|
2026/02/28-09:14:40.630725 7f56f93fe6c0 Delete type=0 #346
|
||||||
|
2026/02/28-11:53:47.408468 7f54e37ef6c0 Level-0 table #351: started
|
||||||
|
2026/02/28-11:53:47.408492 7f54e37ef6c0 Level-0 table #351: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.414369 7f54e37ef6c0 Delete type=0 #349
|
||||||
|
2026/02/28-11:53:47.427738 7f54e37ef6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.860848 7f821f7fe6c0 Recovering log #323
|
2026/02/27-17:11:33.753908 7f56f9bff6c0 Recovering log #342
|
||||||
2026/02/25-15:53:40.871268 7f821f7fe6c0 Delete type=3 #321
|
2026/02/27-17:11:33.763888 7f56f9bff6c0 Delete type=3 #340
|
||||||
2026/02/25-15:53:40.871372 7f821f7fe6c0 Delete type=0 #323
|
2026/02/27-17:11:33.763941 7f56f9bff6c0 Delete type=0 #342
|
||||||
2026/02/25-16:16:19.298465 7f821d8d46c0 Level-0 table #328: started
|
2026/02/27-17:22:38.176835 7f54e37ef6c0 Level-0 table #347: started
|
||||||
2026/02/25-16:16:19.298546 7f821d8d46c0 Level-0 table #328: 0 bytes OK
|
2026/02/27-17:22:38.176924 7f54e37ef6c0 Level-0 table #347: 0 bytes OK
|
||||||
2026/02/25-16:16:19.356349 7f821d8d46c0 Delete type=0 #326
|
2026/02/27-17:22:38.183841 7f54e37ef6c0 Delete type=0 #345
|
||||||
2026/02/25-16:16:19.528831 7f821d8d46c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.202741 7f54e37ef6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/armures/MANIFEST-000348
Normal file
BIN
packs/armures/MANIFEST-000348
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000327
|
MANIFEST-000346
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:48.995540 7f821e7fc6c0 Recovering log #325
|
2026/02/28-09:14:40.445424 7f56e3fff6c0 Recovering log #344
|
||||||
2026/02/25-16:17:49.005262 7f821e7fc6c0 Delete type=3 #323
|
2026/02/28-09:14:40.502194 7f56e3fff6c0 Delete type=3 #342
|
||||||
2026/02/25-16:17:49.005349 7f821e7fc6c0 Delete type=0 #325
|
2026/02/28-09:14:40.502321 7f56e3fff6c0 Delete type=0 #344
|
||||||
|
2026/02/28-11:53:47.402111 7f54e37ef6c0 Level-0 table #349: started
|
||||||
|
2026/02/28-11:53:47.402185 7f54e37ef6c0 Level-0 table #349: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.408357 7f54e37ef6c0 Delete type=0 #347
|
||||||
|
2026/02/28-11:53:47.427714 7f54e37ef6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.836015 7f821ffff6c0 Recovering log #321
|
2026/02/27-17:11:33.729701 7f56f93fe6c0 Recovering log #340
|
||||||
2026/02/25-15:53:40.846129 7f821ffff6c0 Delete type=3 #319
|
2026/02/27-17:11:33.739927 7f56f93fe6c0 Delete type=3 #338
|
||||||
2026/02/25-15:53:40.846180 7f821ffff6c0 Delete type=0 #321
|
2026/02/27-17:11:33.739998 7f56f93fe6c0 Delete type=0 #340
|
||||||
2026/02/25-16:16:19.415073 7f821d8d46c0 Level-0 table #326: started
|
2026/02/27-17:22:38.190111 7f54e37ef6c0 Level-0 table #345: started
|
||||||
2026/02/25-16:16:19.415106 7f821d8d46c0 Level-0 table #326: 0 bytes OK
|
2026/02/27-17:22:38.190141 7f54e37ef6c0 Level-0 table #345: 0 bytes OK
|
||||||
2026/02/25-16:16:19.467523 7f821d8d46c0 Delete type=0 #324
|
2026/02/27-17:22:38.196111 7f54e37ef6c0 Delete type=0 #343
|
||||||
2026/02/25-16:16:19.528868 7f821d8d46c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.202769 7f54e37ef6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/competences/MANIFEST-000346
Normal file
BIN
packs/competences/MANIFEST-000346
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000339
|
MANIFEST-000358
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.032966 7f821ffff6c0 Recovering log #337
|
2026/02/28-09:14:40.634961 7f56e3fff6c0 Recovering log #356
|
||||||
2026/02/25-16:17:49.043199 7f821ffff6c0 Delete type=3 #335
|
2026/02/28-09:14:40.683602 7f56e3fff6c0 Delete type=3 #354
|
||||||
2026/02/25-16:17:49.043264 7f821ffff6c0 Delete type=0 #337
|
2026/02/28-09:14:40.683765 7f56e3fff6c0 Delete type=0 #356
|
||||||
|
2026/02/28-11:53:47.414491 7f54e37ef6c0 Level-0 table #361: started
|
||||||
|
2026/02/28-11:53:47.414521 7f54e37ef6c0 Level-0 table #361: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.420403 7f54e37ef6c0 Delete type=0 #359
|
||||||
|
2026/02/28-11:53:47.427753 7f54e37ef6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.874436 7f821ffff6c0 Recovering log #333
|
2026/02/27-17:11:33.765979 7f56f93fe6c0 Recovering log #352
|
||||||
2026/02/25-15:53:40.884848 7f821ffff6c0 Delete type=3 #331
|
2026/02/27-17:11:33.775426 7f56f93fe6c0 Delete type=3 #350
|
||||||
2026/02/25-15:53:40.884904 7f821ffff6c0 Delete type=0 #333
|
2026/02/27-17:11:33.775496 7f56f93fe6c0 Delete type=0 #352
|
||||||
2026/02/25-16:16:19.356498 7f821d8d46c0 Level-0 table #338: started
|
2026/02/27-17:22:38.196266 7f54e37ef6c0 Level-0 table #357: started
|
||||||
2026/02/25-16:16:19.356535 7f821d8d46c0 Level-0 table #338: 0 bytes OK
|
2026/02/27-17:22:38.196298 7f54e37ef6c0 Level-0 table #357: 0 bytes OK
|
||||||
2026/02/25-16:16:19.414898 7f821d8d46c0 Delete type=0 #336
|
2026/02/27-17:22:38.202584 7f54e37ef6c0 Delete type=0 #355
|
||||||
2026/02/25-16:16:19.528852 7f821d8d46c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.202781 7f54e37ef6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/education/MANIFEST-000358
Normal file
BIN
packs/education/MANIFEST-000358
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000328
|
MANIFEST-000347
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.045639 7f821e7fc6c0 Recovering log #326
|
2026/02/28-09:14:40.690048 7f56f9bff6c0 Recovering log #345
|
||||||
2026/02/25-16:17:49.056537 7f821e7fc6c0 Delete type=3 #324
|
2026/02/28-09:14:40.753536 7f56f9bff6c0 Delete type=3 #343
|
||||||
2026/02/25-16:17:49.056606 7f821e7fc6c0 Delete type=0 #326
|
2026/02/28-09:14:40.753696 7f56f9bff6c0 Delete type=0 #345
|
||||||
|
2026/02/28-11:53:47.440306 7f54e37ef6c0 Level-0 table #350: started
|
||||||
|
2026/02/28-11:53:47.440331 7f54e37ef6c0 Level-0 table #350: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.446262 7f54e37ef6c0 Delete type=0 #348
|
||||||
|
2026/02/28-11:53:47.453090 7f54e37ef6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.888183 7f821effd6c0 Recovering log #322
|
2026/02/27-17:11:33.778709 7f56f8bfd6c0 Recovering log #341
|
||||||
2026/02/25-15:53:40.897808 7f821effd6c0 Delete type=3 #320
|
2026/02/27-17:11:33.788574 7f56f8bfd6c0 Delete type=3 #339
|
||||||
2026/02/25-15:53:40.897873 7f821effd6c0 Delete type=0 #322
|
2026/02/27-17:11:33.788626 7f56f8bfd6c0 Delete type=0 #341
|
||||||
2026/02/25-16:16:19.645632 7f821d8d46c0 Level-0 table #327: started
|
2026/02/27-17:22:38.202910 7f54e37ef6c0 Level-0 table #346: started
|
||||||
2026/02/25-16:16:19.645665 7f821d8d46c0 Level-0 table #327: 0 bytes OK
|
2026/02/27-17:22:38.202969 7f54e37ef6c0 Level-0 table #346: 0 bytes OK
|
||||||
2026/02/25-16:16:19.716424 7f821d8d46c0 Delete type=0 #325
|
2026/02/27-17:22:38.209282 7f54e37ef6c0 Delete type=0 #344
|
||||||
2026/02/25-16:16:19.766141 7f821d8d46c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.228524 7f54e37ef6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/graces/MANIFEST-000347
Normal file
BIN
packs/graces/MANIFEST-000347
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000328
|
MANIFEST-000347
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.058989 7f821effd6c0 Recovering log #326
|
2026/02/28-09:14:40.758009 7f56f8bfd6c0 Recovering log #345
|
||||||
2026/02/25-16:17:49.068511 7f821effd6c0 Delete type=3 #324
|
2026/02/28-09:14:40.809385 7f56f8bfd6c0 Delete type=3 #343
|
||||||
2026/02/25-16:17:49.068568 7f821effd6c0 Delete type=0 #326
|
2026/02/28-09:14:40.809522 7f56f8bfd6c0 Delete type=0 #345
|
||||||
|
2026/02/28-11:53:47.427947 7f54e37ef6c0 Level-0 table #350: started
|
||||||
|
2026/02/28-11:53:47.427981 7f54e37ef6c0 Level-0 table #350: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.434137 7f54e37ef6c0 Delete type=0 #348
|
||||||
|
2026/02/28-11:53:47.453062 7f54e37ef6c0 Manual compaction at level-0 from '!items!1icaxIywAwDXQcMz' @ 72057594037927935 : 1 .. '!items!ysGehYm1VkMWrI22' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.899737 7f821f7fe6c0 Recovering log #322
|
2026/02/27-17:11:33.790985 7f56e3fff6c0 Recovering log #341
|
||||||
2026/02/25-15:53:40.910545 7f821f7fe6c0 Delete type=3 #320
|
2026/02/27-17:11:33.800729 7f56e3fff6c0 Delete type=3 #339
|
||||||
2026/02/25-15:53:40.910590 7f821f7fe6c0 Delete type=0 #322
|
2026/02/27-17:11:33.800800 7f56e3fff6c0 Delete type=0 #341
|
||||||
2026/02/25-16:16:19.529006 7f821d8d46c0 Level-0 table #327: started
|
2026/02/27-17:22:38.215408 7f54e37ef6c0 Level-0 table #346: started
|
||||||
2026/02/25-16:16:19.529044 7f821d8d46c0 Level-0 table #327: 0 bytes OK
|
2026/02/27-17:22:38.215437 7f54e37ef6c0 Level-0 table #346: 0 bytes OK
|
||||||
2026/02/25-16:16:19.584573 7f821d8d46c0 Delete type=0 #325
|
2026/02/27-17:22:38.221481 7f54e37ef6c0 Delete type=0 #344
|
||||||
2026/02/25-16:16:19.766110 7f821d8d46c0 Manual compaction at level-0 from '!items!1icaxIywAwDXQcMz' @ 72057594037927935 : 1 .. '!items!ysGehYm1VkMWrI22' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.228550 7f54e37ef6c0 Manual compaction at level-0 from '!items!1icaxIywAwDXQcMz' @ 72057594037927935 : 1 .. '!items!ysGehYm1VkMWrI22' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/maladies/MANIFEST-000347
Normal file
BIN
packs/maladies/MANIFEST-000347
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000265
|
MANIFEST-000284
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.082827 7f821e7fc6c0 Recovering log #263
|
2026/02/28-09:14:40.881498 7f56f9bff6c0 Recovering log #282
|
||||||
2026/02/25-16:17:49.093869 7f821e7fc6c0 Delete type=3 #261
|
2026/02/28-09:14:40.932289 7f56f9bff6c0 Delete type=3 #280
|
||||||
2026/02/25-16:17:49.093933 7f821e7fc6c0 Delete type=0 #263
|
2026/02/28-09:14:40.932424 7f56f9bff6c0 Delete type=0 #282
|
||||||
|
2026/02/28-11:53:47.446364 7f54e37ef6c0 Level-0 table #287: started
|
||||||
|
2026/02/28-11:53:47.446388 7f54e37ef6c0 Level-0 table #287: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.452966 7f54e37ef6c0 Delete type=0 #285
|
||||||
|
2026/02/28-11:53:47.453100 7f54e37ef6c0 Manual compaction at level-0 from '!scenes!FJXugdbkBpEJEdR6' @ 72057594037927935 : 1 .. '!scenes!FJXugdbkBpEJEdR6' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.925187 7f821effd6c0 Recovering log #259
|
2026/02/27-17:11:33.815402 7f56f9bff6c0 Recovering log #278
|
||||||
2026/02/25-15:53:40.934520 7f821effd6c0 Delete type=3 #257
|
2026/02/27-17:11:33.825096 7f56f9bff6c0 Delete type=3 #276
|
||||||
2026/02/25-15:53:40.934568 7f821effd6c0 Delete type=0 #259
|
2026/02/27-17:11:33.825159 7f56f9bff6c0 Delete type=0 #278
|
||||||
2026/02/25-16:16:19.945947 7f821d8d46c0 Level-0 table #264: started
|
2026/02/27-17:22:38.221603 7f54e37ef6c0 Level-0 table #283: started
|
||||||
2026/02/25-16:16:19.946001 7f821d8d46c0 Level-0 table #264: 0 bytes OK
|
2026/02/27-17:22:38.221636 7f54e37ef6c0 Level-0 table #283: 0 bytes OK
|
||||||
2026/02/25-16:16:20.001848 7f821d8d46c0 Delete type=0 #262
|
2026/02/27-17:22:38.228408 7f54e37ef6c0 Delete type=0 #281
|
||||||
2026/02/25-16:16:20.001994 7f821d8d46c0 Manual compaction at level-0 from '!scenes!FJXugdbkBpEJEdR6' @ 72057594037927935 : 1 .. '!scenes!FJXugdbkBpEJEdR6' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.228561 7f54e37ef6c0 Manual compaction at level-0 from '!scenes!FJXugdbkBpEJEdR6' @ 72057594037927935 : 1 .. '!scenes!FJXugdbkBpEJEdR6' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/scenes/MANIFEST-000284
Normal file
BIN
packs/scenes/MANIFEST-000284
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000329
|
MANIFEST-000348
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
2026/02/25-16:17:49.070393 7f821ffff6c0 Recovering log #327
|
2026/02/28-09:14:40.813470 7f56f93fe6c0 Recovering log #346
|
||||||
2026/02/25-16:17:49.080654 7f821ffff6c0 Delete type=3 #325
|
2026/02/28-09:14:40.876043 7f56f93fe6c0 Delete type=3 #344
|
||||||
2026/02/25-16:17:49.080720 7f821ffff6c0 Delete type=0 #327
|
2026/02/28-09:14:40.876176 7f56f93fe6c0 Delete type=0 #346
|
||||||
|
2026/02/28-11:53:47.434224 7f54e37ef6c0 Level-0 table #351: started
|
||||||
|
2026/02/28-11:53:47.434247 7f54e37ef6c0 Level-0 table #351: 0 bytes OK
|
||||||
|
2026/02/28-11:53:47.440199 7f54e37ef6c0 Delete type=0 #349
|
||||||
|
2026/02/28-11:53:47.453078 7f54e37ef6c0 Manual compaction at level-0 from '!items!1bAL2MQVpVBd0c5Z' @ 72057594037927935 : 1 .. '!items!zs67k4sxCid6oTK3' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/02/25-15:53:40.912618 7f821e7fc6c0 Recovering log #323
|
2026/02/27-17:11:33.802695 7f56f93fe6c0 Recovering log #342
|
||||||
2026/02/25-15:53:40.922737 7f821e7fc6c0 Delete type=3 #321
|
2026/02/27-17:11:33.813017 7f56f93fe6c0 Delete type=3 #340
|
||||||
2026/02/25-15:53:40.922804 7f821e7fc6c0 Delete type=0 #323
|
2026/02/27-17:11:33.813086 7f56f93fe6c0 Delete type=0 #342
|
||||||
2026/02/25-16:16:19.584692 7f821d8d46c0 Level-0 table #328: started
|
2026/02/27-17:22:38.209394 7f54e37ef6c0 Level-0 table #347: started
|
||||||
2026/02/25-16:16:19.584724 7f821d8d46c0 Level-0 table #328: 0 bytes OK
|
2026/02/27-17:22:38.209417 7f54e37ef6c0 Level-0 table #347: 0 bytes OK
|
||||||
2026/02/25-16:16:19.645484 7f821d8d46c0 Delete type=0 #326
|
2026/02/27-17:22:38.215315 7f54e37ef6c0 Delete type=0 #345
|
||||||
2026/02/25-16:16:19.766128 7f821d8d46c0 Manual compaction at level-0 from '!items!1bAL2MQVpVBd0c5Z' @ 72057594037927935 : 1 .. '!items!zs67k4sxCid6oTK3' @ 0 : 0; will stop at (end)
|
2026/02/27-17:22:38.228539 7f54e37ef6c0 Manual compaction at level-0 from '!items!1bAL2MQVpVBd0c5Z' @ 72057594037927935 : 1 .. '!items!zs67k4sxCid6oTK3' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
BIN
packs/simples/MANIFEST-000348
Normal file
BIN
packs/simples/MANIFEST-000348
Normal file
Binary file not shown.
371
styles/actor-sheet.css
Normal file
371
styles/actor-sheet.css
Normal file
@@ -0,0 +1,371 @@
|
|||||||
|
.editor {
|
||||||
|
border: 2;
|
||||||
|
height: 100%;
|
||||||
|
padding: 0 3px;
|
||||||
|
}
|
||||||
|
.medium-editor {
|
||||||
|
border: 2;
|
||||||
|
height: 240px;
|
||||||
|
max-height: 240px;
|
||||||
|
overflow-y: auto;
|
||||||
|
overflow-x: hidden;
|
||||||
|
padding: 0 3px;
|
||||||
|
}
|
||||||
|
.medium-editor prose-mirror,
|
||||||
|
.medium-editor .editor,
|
||||||
|
.medium-editor .editor-content,
|
||||||
|
.medium-editor .ProseMirror {
|
||||||
|
overflow: hidden;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.small-editor {
|
||||||
|
border: 2;
|
||||||
|
height: 120px;
|
||||||
|
max-height: 120px;
|
||||||
|
overflow-y: auto;
|
||||||
|
overflow-x: hidden;
|
||||||
|
padding: 0 3px;
|
||||||
|
}
|
||||||
|
.small-editor prose-mirror,
|
||||||
|
.small-editor .editor,
|
||||||
|
.small-editor .editor-content,
|
||||||
|
.small-editor .ProseMirror {
|
||||||
|
overflow: hidden;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.questionnaire-reponse {
|
||||||
|
max-width: 42rem;
|
||||||
|
margin-left: 1rem;
|
||||||
|
}
|
||||||
|
.questionnaire-element {
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="image"]):not([type="file"]),
|
||||||
|
.fvtt-te-deum select {
|
||||||
|
background: rgba(248, 245, 238, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.35);
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 0.15rem 0.3rem;
|
||||||
|
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="image"]):not([type="file"]):hover,
|
||||||
|
.fvtt-te-deum select:hover {
|
||||||
|
border-color: rgba(139, 115, 85, 0.65);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="image"]):not([type="file"]):focus,
|
||||||
|
.fvtt-te-deum select:focus {
|
||||||
|
outline: none;
|
||||||
|
border-color: rgba(139, 115, 85, 0.85);
|
||||||
|
box-shadow: 0 0 0 2px rgba(139, 115, 85, 0.2);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="image"]):not([type="file"]):disabled,
|
||||||
|
.fvtt-te-deum select:disabled {
|
||||||
|
color: rgba(19, 18, 18, 0.4);
|
||||||
|
background: rgba(220, 216, 205, 0.6);
|
||||||
|
border-color: rgba(139, 115, 85, 0.15);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum textarea {
|
||||||
|
background: rgba(248, 245, 238, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.35);
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 0.2rem 0.4rem;
|
||||||
|
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum textarea:hover {
|
||||||
|
border-color: rgba(139, 115, 85, 0.65);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum textarea:focus {
|
||||||
|
outline: none;
|
||||||
|
border-color: rgba(139, 115, 85, 0.85);
|
||||||
|
box-shadow: 0 0 0 2px rgba(139, 115, 85, 0.2);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.window-app .window-content,
|
||||||
|
.fvtt-te-deum.application .window-content,
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .sheet-body,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .sheet-body {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
background: rgba(226, 226, 222, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
.item-form .sheet-header {
|
||||||
|
background: linear-gradient(135deg, rgba(226, 226, 222, 0.95) 0%, rgba(240, 235, 225, 0.9) 100%);
|
||||||
|
padding: 0.8rem;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.item-form .sheet-body ul {
|
||||||
|
list-style: none;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.item-form .sheet-body ul li.flexrow {
|
||||||
|
background: rgba(255, 255, 255, 0.3);
|
||||||
|
padding: 0.4rem 0.6rem;
|
||||||
|
margin: 0.3rem 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid rgba(139, 115, 85, 0.3);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.item-form .sheet-body ul li.flexrow:hover {
|
||||||
|
background: rgba(255, 255, 255, 0.5);
|
||||||
|
border-left-color: rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.item-form .sheet-body h3 {
|
||||||
|
background: linear-gradient(135deg, rgba(196, 186, 166, 0.6) 0%, rgba(226, 226, 222, 0.5) 100%);
|
||||||
|
padding: 0.4rem 0.6rem;
|
||||||
|
margin: 0.8rem 0 0.4rem 0;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 4px solid rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
font-family: MailartRubberstamp;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: #3d3a2e;
|
||||||
|
}
|
||||||
|
.item-form .sheet-body input[type="checkbox"] {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.application .window-content .sheet-header h1.charname input[name="name"],
|
||||||
|
.fvtt-te-deum.window-app .window-content .sheet-header h1.charname input[name="name"] {
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 3rem;
|
||||||
|
background: transparent;
|
||||||
|
border: none;
|
||||||
|
border-bottom: 2px solid rgba(139, 115, 85, 0.4);
|
||||||
|
color: rgba(50, 35, 15, 0.95);
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
letter-spacing: 0.05em;
|
||||||
|
transition: border-color 0.2s ease;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.application .window-content .sheet-header h1.charname input[name="name"]:hover,
|
||||||
|
.fvtt-te-deum.window-app .window-content .sheet-header h1.charname input[name="name"]:hover {
|
||||||
|
border-width: 2px;
|
||||||
|
border-color: rgba(139, 115, 85, 0.7);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.application .window-content .sheet-header h1.charname input[name="name"]:focus,
|
||||||
|
.fvtt-te-deum.window-app .window-content .sheet-header h1.charname input[name="name"]:focus {
|
||||||
|
border-bottom-color: rgba(139, 115, 85, 0.9);
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.application .window-content .item-form .sheet-header h1.charname input[name="name"],
|
||||||
|
.fvtt-te-deum.window-app .window-content .item-form .sheet-header h1.charname input[name="name"] {
|
||||||
|
font-size: 1.6rem;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-body {
|
||||||
|
padding: 0.25rem 0.5rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-body:after {
|
||||||
|
content: "";
|
||||||
|
display: block;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum nav.tabs .item {
|
||||||
|
z-index: 2;
|
||||||
|
position: relative;
|
||||||
|
opacity: 1;
|
||||||
|
color: rgba(29, 28, 31);
|
||||||
|
padding: 0 0.25rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum nav.tabs .item:after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
height: 2rem;
|
||||||
|
width: 1px;
|
||||||
|
}
|
||||||
|
.select-diff {
|
||||||
|
display: inline-block;
|
||||||
|
text-align: left;
|
||||||
|
width: 50px;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .carac-value,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .carac-value,
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .competence-xp,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .competence-xp {
|
||||||
|
margin: 0.05rem;
|
||||||
|
flex-basis: 3rem;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum h1,
|
||||||
|
.fvtt-te-deum h2,
|
||||||
|
.fvtt-te-deum h3,
|
||||||
|
.fvtt-te-deum h4 {
|
||||||
|
font-weight: bold;
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .malus-sante {
|
||||||
|
font-size: 0.88rem;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .malus-sante-active {
|
||||||
|
color: rgba(200, 80, 10, 0.95);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum ul,
|
||||||
|
.fvtt-te-deum ol {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum ul,
|
||||||
|
.fvtt-te-deum li {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
.header-fields li {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.alterne-list > .list-item:hover {
|
||||||
|
background: rgba(226, 226, 222, 0.4);
|
||||||
|
transform: translateX(2px);
|
||||||
|
}
|
||||||
|
.alterne-list > .list-item:nth-child(even) {
|
||||||
|
background: rgba(240, 235, 225, 0.3);
|
||||||
|
}
|
||||||
|
.alterne-list > .list-item:nth-child(odd) {
|
||||||
|
background: rgba(250, 245, 235, 0.2);
|
||||||
|
}
|
||||||
|
.specialisation-label {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
.carac-label,
|
||||||
|
.attr-label {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.list-item {
|
||||||
|
margin: 0.125rem;
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 0.3rem;
|
||||||
|
padding: 0.3rem 0.4rem;
|
||||||
|
flex: 1 1 5rem;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.15);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.list-item:hover {
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
border-color: rgba(139, 115, 85, 0.3);
|
||||||
|
background: rgba(255, 255, 255, 0.3);
|
||||||
|
}
|
||||||
|
.list-item-shadow {
|
||||||
|
background: linear-gradient(135deg, rgba(170, 168, 167, 0.25) 0%, rgba(200, 195, 185, 0.2) 100%);
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
justify-content: flex-start;
|
||||||
|
border-left: 3px solid rgba(139, 115, 85, 0.3);
|
||||||
|
}
|
||||||
|
.list-item-shadow2 {
|
||||||
|
background: linear-gradient(135deg, rgba(87, 60, 32, 0.2) 0%, rgba(120, 90, 60, 0.15) 100%);
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
justify-content: flex-start;
|
||||||
|
border-left: 3px solid rgba(87, 60, 32, 0.4);
|
||||||
|
}
|
||||||
|
.item-display-show {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.item-display-hide {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.item-quantite {
|
||||||
|
margin-left: 0.5rem;
|
||||||
|
}
|
||||||
|
.list-item-margin1 {
|
||||||
|
margin-left: 1rem;
|
||||||
|
}
|
||||||
|
.list-item-margin2 {
|
||||||
|
margin-left: 2rem;
|
||||||
|
}
|
||||||
|
.list-item-margin3 {
|
||||||
|
margin-left: 3rem;
|
||||||
|
}
|
||||||
|
.list-item-margin4 {
|
||||||
|
margin-left: 4rem;
|
||||||
|
}
|
||||||
|
.sheet-competence-img {
|
||||||
|
width: 24px;
|
||||||
|
max-width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
max-height: 24px;
|
||||||
|
flex-grow: 0;
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
}
|
||||||
|
.competence-column {
|
||||||
|
flex-direction: column;
|
||||||
|
align-content: flex-start;
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 1;
|
||||||
|
}
|
||||||
|
.competence-header {
|
||||||
|
align-content: flex-start;
|
||||||
|
justify-content: flex-start;
|
||||||
|
font-weight: bold;
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
.comp-li {
|
||||||
|
max-width: 8rem;
|
||||||
|
width: 8rem;
|
||||||
|
}
|
||||||
|
.description-label {
|
||||||
|
flex-grow: 2;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
.status-header-label {
|
||||||
|
margin-left: 2px;
|
||||||
|
}
|
||||||
|
.roll-dialog-label {
|
||||||
|
margin: 4px 0;
|
||||||
|
min-width: 96px;
|
||||||
|
}
|
||||||
|
.short-label {
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
.keyword-label {
|
||||||
|
font-size: 0.85rem;
|
||||||
|
}
|
||||||
|
.item-sheet-label {
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
.item-text-long-line {
|
||||||
|
flex-grow: 3;
|
||||||
|
}
|
||||||
|
.score-label {
|
||||||
|
flex-grow: 2;
|
||||||
|
align-content: center;
|
||||||
|
}
|
||||||
|
.attribut-value,
|
||||||
|
.carac-value {
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 64px;
|
||||||
|
margin-right: 4px;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
.sante-value,
|
||||||
|
.competence-value {
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 2rem;
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
margin-left: 0.25rem;
|
||||||
|
}
|
||||||
|
.description-value {
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-basis: 4rem;
|
||||||
|
margin-right: 0.25rem;
|
||||||
|
margin-left: 0.25rem;
|
||||||
|
}
|
||||||
|
.small-label {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
186
styles/base.css
Normal file
186
styles/base.css
Normal file
@@ -0,0 +1,186 @@
|
|||||||
|
.fvtt-te-deum.window-app,
|
||||||
|
.fvtt-te-deum.application {
|
||||||
|
text-align: justify;
|
||||||
|
font-size: 16px;
|
||||||
|
letter-spacing: 1px;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .sheet-header,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .sheet-header {
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
background: rgba(226, 226, 222, 0.95);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.window-app.sheet .window-content .tooltip:hover .tooltiptext,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content .tooltip:hover .tooltiptext {
|
||||||
|
top: 2rem;
|
||||||
|
left: 2rem;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.25rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header h1 input,
|
||||||
|
.window-app .window-header,
|
||||||
|
.application .window-header,
|
||||||
|
#actors .directory-list,
|
||||||
|
#navigation #scene-list .scene.nav-item {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet nav.sheet-tabs,
|
||||||
|
.fvtt-te-deum.sheet nav.tabs {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-size: 1.2rem;
|
||||||
|
font-weight: bold;
|
||||||
|
height: 3rem;
|
||||||
|
flex: 0 0 3rem;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 0 0 0.25rem;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
border-top: 0 none;
|
||||||
|
border-bottom: 0 none;
|
||||||
|
background: linear-gradient(rgba(226, 226, 222, 0.5), rgba(226, 226, 222, 0.5)), url("../images/ui/frise_bottom_01.webp");
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .profile-img {
|
||||||
|
-o-object-fit: cover;
|
||||||
|
object-fit: cover;
|
||||||
|
-o-object-position: 50% 0;
|
||||||
|
object-position: 50% 0;
|
||||||
|
margin: 0.5rem 0 0.5rem 0.5rem;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .flex-compteurs {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .resource-content {
|
||||||
|
width: 2rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet .tab[data-tab] {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.sheet li {
|
||||||
|
margin: 0.2rem;
|
||||||
|
padding: 0.15rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum.window-app input,
|
||||||
|
.fvtt-te-deum.application input,
|
||||||
|
.fvtt-te-deum .item-form,
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .flex-group-center.flex-compteurs,
|
||||||
|
.fvtt-te-deum.sheet header.sheet-header .flex-group-center.flex-fatigue,
|
||||||
|
.fvtt-te-deum select,
|
||||||
|
.fvtt-te-deum button,
|
||||||
|
.item-checkbox,
|
||||||
|
#sidebar,
|
||||||
|
#players,
|
||||||
|
#navigation #nav-toggle {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
.window-header {
|
||||||
|
background: rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
.strong-text {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tabs .item.active,
|
||||||
|
.fvtt-te-deum .blessures-list li ul li:first-child:hover,
|
||||||
|
.fvtt-te-deum a:hover {
|
||||||
|
text-shadow: 1px 0px 0px #ff6600;
|
||||||
|
}
|
||||||
|
.rollable:hover,
|
||||||
|
.rollable:focus {
|
||||||
|
color: #000;
|
||||||
|
text-shadow: 0 0 10px red;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
li.folder > .folder-header h3 {
|
||||||
|
color: #aaa;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum table {
|
||||||
|
border: 1px solid #7a7971;
|
||||||
|
}
|
||||||
|
.grid,
|
||||||
|
.grid-2col {
|
||||||
|
display: grid;
|
||||||
|
grid-column: span 2 / span 2;
|
||||||
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||||
|
grid-gap: 10px;
|
||||||
|
gap: 10px;
|
||||||
|
margin: 10px 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.grid-3col {
|
||||||
|
grid-column: span 3 / span 3;
|
||||||
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-4col {
|
||||||
|
grid-column: span 4 / span 4;
|
||||||
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-5col {
|
||||||
|
grid-column: span 5 / span 5;
|
||||||
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-6col {
|
||||||
|
grid-column: span 5 / span 5;
|
||||||
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-7col {
|
||||||
|
grid-column: span 7 / span 7;
|
||||||
|
grid-template-columns: repeat(7, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-8col {
|
||||||
|
grid-column: span 8 / span 8;
|
||||||
|
grid-template-columns: repeat(8, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-9col {
|
||||||
|
grid-column: span 9 / span 9;
|
||||||
|
grid-template-columns: repeat(9, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-10col {
|
||||||
|
grid-column: span 10 / span 10;
|
||||||
|
grid-template-columns: repeat(10, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-11col {
|
||||||
|
grid-column: span 11 / span 11;
|
||||||
|
grid-template-columns: repeat(11, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.grid-12col {
|
||||||
|
grid-column: span 12 / span 12;
|
||||||
|
grid-template-columns: repeat(12, minmax(0, 1fr));
|
||||||
|
}
|
||||||
|
.flex-group-center,
|
||||||
|
.flex-group-left,
|
||||||
|
.flex-group-right {
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
.flex-group-left {
|
||||||
|
justify-content: flex-start;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.flex-group-right {
|
||||||
|
justify-content: flex-end;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.flex-center {
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.table-create-actor {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
.flex-between {
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
.flex-shrink {
|
||||||
|
flex: "flex-shrink";
|
||||||
|
}
|
||||||
466
styles/chat.css
Normal file
466
styles/chat.css
Normal file
@@ -0,0 +1,466 @@
|
|||||||
|
.chat-message-header {
|
||||||
|
background: linear-gradient(135deg, rgba(226, 226, 222, 0.95) 0%, rgba(196, 186, 166, 0.9) 100%);
|
||||||
|
font-size: 0.9rem;
|
||||||
|
min-height: 26px;
|
||||||
|
text-align: center;
|
||||||
|
vertical-align: middle;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border-bottom: 2px solid rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
padding: 0.1rem 0.3rem;
|
||||||
|
border-radius: 6px 6px 0 0;
|
||||||
|
}
|
||||||
|
.chat-message .message-header .flavor-text,
|
||||||
|
.chat-message .message-header .whisper-to {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
}
|
||||||
|
.chat-result-text {
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: rgba(80, 50, 15, 0.95);
|
||||||
|
padding: 0 0 0.1rem 0;
|
||||||
|
line-height: 1.3;
|
||||||
|
border-bottom: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
letter-spacing: 0.03em;
|
||||||
|
}
|
||||||
|
.chat-actor-name {
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: rgba(80, 50, 15, 0.95);
|
||||||
|
line-height: 1;
|
||||||
|
letter-spacing: 0.03em;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.chat-actor-name-opposition {
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
color: rgba(80, 50, 15, 0.95);
|
||||||
|
padding: 0.1rem 0.3rem;
|
||||||
|
letter-spacing: 0.03em;
|
||||||
|
}
|
||||||
|
.chat-result-success {
|
||||||
|
color: #2d5016;
|
||||||
|
background: linear-gradient(135deg, rgba(144, 238, 144, 0.3), rgba(107, 186, 107, 0.25));
|
||||||
|
padding: 0.25rem 0.6rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid #4a7c2c;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0.15rem 0;
|
||||||
|
box-shadow: 0 1px 3px rgba(45, 80, 22, 0.2);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.chat-result-failure {
|
||||||
|
color: #7a1a1a;
|
||||||
|
background: linear-gradient(135deg, rgba(255, 160, 160, 0.3), rgba(205, 120, 120, 0.25));
|
||||||
|
padding: 0.25rem 0.6rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid #a82020;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0.15rem 0;
|
||||||
|
box-shadow: 0 1px 3px rgba(122, 26, 26, 0.2);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.chat-img {
|
||||||
|
width: 64px;
|
||||||
|
height: 64px;
|
||||||
|
}
|
||||||
|
.chat-command-img {
|
||||||
|
border: 0px;
|
||||||
|
width: 32px;
|
||||||
|
height: 32px;
|
||||||
|
transition: transform 0.2s ease, box-shadow 0.2s ease;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
.chat-command-img:hover {
|
||||||
|
transform: scale(1.1);
|
||||||
|
box-shadow: 0 3px 8px rgba(255, 102, 0, 0.4);
|
||||||
|
}
|
||||||
|
.chat-result-column {
|
||||||
|
min-width: 70%;
|
||||||
|
width: 70%;
|
||||||
|
}
|
||||||
|
.roll-dialog-header {
|
||||||
|
background: linear-gradient(135deg, rgba(226, 226, 222, 0.95) 0%, rgba(196, 186, 166, 0.9) 100%);
|
||||||
|
min-height: 48px;
|
||||||
|
padding: 0.4rem 0.6rem;
|
||||||
|
border-radius: 6px 6px 0 0;
|
||||||
|
border-bottom: 2px solid rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 0.5rem;
|
||||||
|
}
|
||||||
|
.roll-dialog-header .actor-icon {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.5);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
.roll-dialog-header .dialog-roll-title {
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 1.1rem;
|
||||||
|
margin: 0;
|
||||||
|
color: #3d3a2e;
|
||||||
|
text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5);
|
||||||
|
}
|
||||||
|
.actor-icon {
|
||||||
|
width: 28px;
|
||||||
|
height: 28px;
|
||||||
|
padding: 1px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.5);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
||||||
|
flex-shrink: 0;
|
||||||
|
margin-right: 0.4rem;
|
||||||
|
}
|
||||||
|
.padding-dice {
|
||||||
|
padding-top: 0.2rem;
|
||||||
|
padding-bottom: 0.2rem;
|
||||||
|
}
|
||||||
|
.dice-image {
|
||||||
|
box-sizing: border-box;
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
.dice-image-reroll {
|
||||||
|
background-color: rgba(115, 224, 115, 0.25);
|
||||||
|
border-color: #011d33;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border: 1px;
|
||||||
|
border-radius: 0%;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
.chat-dice {
|
||||||
|
width: 15%;
|
||||||
|
height: 15%;
|
||||||
|
font-size: 15px;
|
||||||
|
padding: 10px;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
padding-top: 0.2rem;
|
||||||
|
padding-bottom: 0.2rem;
|
||||||
|
}
|
||||||
|
.div-center {
|
||||||
|
align-self: center;
|
||||||
|
}
|
||||||
|
.chat-message {
|
||||||
|
background: rgba(240, 235, 225, 0.95);
|
||||||
|
font-size: 0.9rem;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
}
|
||||||
|
.chat-message.whisper {
|
||||||
|
background: rgba(220, 220, 210, 0.85);
|
||||||
|
border: 2px solid #545469;
|
||||||
|
box-shadow: 0 3px 10px rgba(84, 84, 105, 0.3);
|
||||||
|
}
|
||||||
|
.chat-message .chat-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 6px 2px 2px;
|
||||||
|
float: left;
|
||||||
|
width: 64px;
|
||||||
|
height: 64px;
|
||||||
|
}
|
||||||
|
.ability-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
max-width: 32px;
|
||||||
|
max-height: 32px;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.small-ability-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
max-width: 16px;
|
||||||
|
max-height: 16px;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.combat-icon {
|
||||||
|
border: 0;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
max-width: 24px;
|
||||||
|
max-height: 24px;
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
#sidebar-tabs {
|
||||||
|
flex: 0 0 32px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
margin: 0 0 5px;
|
||||||
|
border-bottom: 1px solid rgba(0, 0, 0, 0);
|
||||||
|
box-shadow: inset 0 0 2rem rgba(0, 0, 0, 0.5);
|
||||||
|
}
|
||||||
|
#sidebar-tabs > .item.active {
|
||||||
|
border: 1px solid #726248;
|
||||||
|
background: rgba(30, 25, 20, 0.75);
|
||||||
|
box-shadow: 0 0 6px inset #726248;
|
||||||
|
}
|
||||||
|
#controls .scene-control,
|
||||||
|
#controls .control-tool {
|
||||||
|
box-shadow: 0 0 3px #000;
|
||||||
|
margin: 0 0 8px;
|
||||||
|
border-radius: 0;
|
||||||
|
background: #1e1914;
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
}
|
||||||
|
#controls .scene-control.active,
|
||||||
|
#controls .control-tool.active,
|
||||||
|
#controls .scene-control:hover,
|
||||||
|
#controls .control-tool:hover {
|
||||||
|
background: #482e1c;
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
box-shadow: 0 0 3px #ff6400;
|
||||||
|
}
|
||||||
|
#hotbar #action-bar #macro-list {
|
||||||
|
border: 1px solid #482e1c;
|
||||||
|
box-shadow: 2px 2px 5px #000000;
|
||||||
|
}
|
||||||
|
#hotbar #action-bar .macro {
|
||||||
|
-o-border-image: url(img/ui/bg_control.jpg) 21 repeat;
|
||||||
|
border-image: url(img/ui/bg_control.jpg) 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 .bar-controls {
|
||||||
|
background: #1e1914;
|
||||||
|
border: 1px solid #482e1c;
|
||||||
|
}
|
||||||
|
#players {
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
background: #1e1914;
|
||||||
|
}
|
||||||
|
#navigation #scene-list .scene.nav-item {
|
||||||
|
background: #1e1914;
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
}
|
||||||
|
#navigation #scene-list .scene.nav-item.active {
|
||||||
|
background: #482e1c;
|
||||||
|
}
|
||||||
|
#navigation #nav-toggle {
|
||||||
|
background: #1e1914;
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
}
|
||||||
|
#navigation #scene-list .scene.view,
|
||||||
|
#navigation #scene-list .scene.context {
|
||||||
|
background: #482e1c;
|
||||||
|
background-origin: padding-box;
|
||||||
|
border-image-width: 4px;
|
||||||
|
border-image-outset: 0px;
|
||||||
|
box-shadow: 0 0 3px #ff6400;
|
||||||
|
}
|
||||||
|
.chat-card-button {
|
||||||
|
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
||||||
|
background: linear-gradient(to bottom, rgba(33, 55, 74, 0.98824) 5%, rgba(21, 40, 51, 0.67059) 100%);
|
||||||
|
background-color: rgba(125, 93, 59, 0);
|
||||||
|
border-radius: 3px;
|
||||||
|
border: 2px ridge #846109;
|
||||||
|
display: inline-block;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
padding: 4px 12px 0px 12px;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: 0px 1px 0px #4d3534;
|
||||||
|
position: relative;
|
||||||
|
margin: 2px;
|
||||||
|
}
|
||||||
|
.chat-card-button:hover {
|
||||||
|
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
||||||
|
background-color: red;
|
||||||
|
}
|
||||||
|
.chat-card-button:active {
|
||||||
|
position: relative;
|
||||||
|
top: 1px;
|
||||||
|
}
|
||||||
|
.plus-minus-button {
|
||||||
|
box-shadow: inset 0px 1px 0px 0px #a6827e;
|
||||||
|
background: linear-gradient(to bottom, rgba(33, 55, 74, 0.98824) 5%, rgba(21, 40, 51, 0.67059) 100%);
|
||||||
|
background-color: rgba(125, 93, 59, 0);
|
||||||
|
border-radius: 2px;
|
||||||
|
border: 1px ridge #846109;
|
||||||
|
display: inline-block;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #ffffff;
|
||||||
|
margin: 2px 2px 2px 2px;
|
||||||
|
padding: 2px 2px 2px 2px;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: 0px 1px 0px #4d3534;
|
||||||
|
position: relative;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
.plus-minus-button:hover,
|
||||||
|
.chat-card-button:hover {
|
||||||
|
background: linear-gradient(to bottom, #800000 5%, #3e0101 100%);
|
||||||
|
background-color: red;
|
||||||
|
}
|
||||||
|
.plus-minus-button:active,
|
||||||
|
.chat-card-button:active {
|
||||||
|
position: relative;
|
||||||
|
top: 1px;
|
||||||
|
}
|
||||||
|
.plus-minus {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.ul-level1 {
|
||||||
|
padding-left: 2rem;
|
||||||
|
}
|
||||||
|
#pause {
|
||||||
|
font-size: 2rem;
|
||||||
|
}
|
||||||
|
#pause > h3 {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
#pause > img {
|
||||||
|
content: url(../images/ui/logo_tedeum_pause.webp);
|
||||||
|
height: 200px;
|
||||||
|
width: 200px;
|
||||||
|
top: -200px;
|
||||||
|
left: calc(50% - 132px);
|
||||||
|
}
|
||||||
|
#logo {
|
||||||
|
content: url(../images/ui/logo_tedeum_pause.webp);
|
||||||
|
width: 100px;
|
||||||
|
height: 60px;
|
||||||
|
}
|
||||||
|
.dice-cell {
|
||||||
|
padding-left: 12px;
|
||||||
|
padding-right: 12px;
|
||||||
|
width: 60px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.dice-formula,
|
||||||
|
.dice-total {
|
||||||
|
height: 54px;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.chat-roll-details {
|
||||||
|
background: rgba(255, 255, 255, 0.4);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0.4rem 0.5rem;
|
||||||
|
margin: 0.25rem 0;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.25);
|
||||||
|
}
|
||||||
|
.chat-roll-details ul {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 0.8rem;
|
||||||
|
}
|
||||||
|
.chat-roll-details ul li {
|
||||||
|
padding: 0.05rem 0;
|
||||||
|
line-height: 1.25;
|
||||||
|
}
|
||||||
|
.chat-roll-details ul li strong {
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
}
|
||||||
|
.chat-roll-result-section {
|
||||||
|
background: linear-gradient(135deg, rgba(255, 250, 240, 0.6), rgba(245, 240, 230, 0.5));
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0.35rem;
|
||||||
|
margin: 0.2rem 0;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.3);
|
||||||
|
box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.chat-roll-result-section .chat-total-result {
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #3d3a2e;
|
||||||
|
text-align: center;
|
||||||
|
padding: 0.25rem;
|
||||||
|
background: rgba(226, 226, 222, 0.5);
|
||||||
|
border-radius: 4px;
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.5);
|
||||||
|
}
|
||||||
|
.chat-dice-formula {
|
||||||
|
display: inline-block;
|
||||||
|
background: rgba(139, 115, 85, 0.15);
|
||||||
|
padding: 0.15rem 0.4rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
font-family: monospace;
|
||||||
|
font-size: 0.9em;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
color: #5a4a3a;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.chat-difficulty-badge {
|
||||||
|
display: inline-block;
|
||||||
|
background: linear-gradient(135deg, rgba(180, 160, 130, 0.4), rgba(160, 140, 110, 0.35));
|
||||||
|
padding: 0.15rem 0.5rem;
|
||||||
|
border-radius: 10px;
|
||||||
|
font-weight: bold;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
color: #4a3a2a;
|
||||||
|
font-size: 0.85em;
|
||||||
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.chat-info-badge {
|
||||||
|
display: inline-block;
|
||||||
|
background: rgba(100, 149, 237, 0.15);
|
||||||
|
padding: 0.15rem 0.4rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-left: 2px solid rgba(70, 130, 180, 0.6);
|
||||||
|
margin: 0.08rem 0;
|
||||||
|
font-size: 0.8em;
|
||||||
|
color: #2c4a6a;
|
||||||
|
}
|
||||||
|
.chat-warning-badge {
|
||||||
|
display: inline-block;
|
||||||
|
background: rgba(255, 200, 100, 0.2);
|
||||||
|
padding: 0.15rem 0.4rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-left: 2px solid rgba(218, 165, 32, 0.7);
|
||||||
|
margin: 0.08rem 0;
|
||||||
|
font-size: 0.8em;
|
||||||
|
color: #7a5a1a;
|
||||||
|
}
|
||||||
|
.chat-actions-bar {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 0.3rem;
|
||||||
|
padding: 0.4rem;
|
||||||
|
background: rgba(226, 226, 222, 0.4);
|
||||||
|
border-top: 1px solid rgba(139, 115, 85, 0.25);
|
||||||
|
border-radius: 0 0 6px 6px;
|
||||||
|
margin-top: 0.25rem;
|
||||||
|
}
|
||||||
|
.chat-actions-bar a {
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.chat-actions-bar a:hover {
|
||||||
|
transform: translateY(-2px);
|
||||||
|
}
|
||||||
|
.chat-negative-dice {
|
||||||
|
display: inline-block;
|
||||||
|
background: linear-gradient(135deg, rgba(255, 100, 100, 0.2), rgba(220, 80, 80, 0.15));
|
||||||
|
padding: 0.2rem 0.5rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
border: 2px solid rgba(178, 34, 34, 0.4);
|
||||||
|
font-weight: bold;
|
||||||
|
color: #8b0000;
|
||||||
|
margin: 0.15rem 0;
|
||||||
|
box-shadow: 0 1px 3px rgba(178, 34, 34, 0.2);
|
||||||
|
}
|
||||||
191
styles/dialogs.css
Normal file
191
styles/dialogs.css
Normal file
@@ -0,0 +1,191 @@
|
|||||||
|
.te-deum-roll-dialog .window-header {
|
||||||
|
border-radius: 10px 10px 0% 0%;
|
||||||
|
}
|
||||||
|
.te-deum-roll-dialog .window-content {
|
||||||
|
border-radius: 0% 0% 10px 10px;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog {
|
||||||
|
background: linear-gradient(135deg, rgba(240, 235, 225, 0.98) 0%, rgba(250, 245, 235, 0.95) 100%);
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .flexcol {
|
||||||
|
padding: 0.6rem 0.8rem;
|
||||||
|
gap: 0.4rem;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .flexrow {
|
||||||
|
margin: 0.3rem 0;
|
||||||
|
padding: 0.4rem 0.5rem;
|
||||||
|
background: rgba(255, 255, 255, 0.4);
|
||||||
|
border-radius: 4px;
|
||||||
|
border-left: 3px solid rgba(139, 115, 85, 0.3);
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.5rem;
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .flexrow:hover {
|
||||||
|
background: rgba(255, 255, 255, 0.6);
|
||||||
|
border-left-color: rgba(139, 115, 85, 0.6);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .roll-dialog-label {
|
||||||
|
font-family: GreatPrimer;
|
||||||
|
font-size: 0.85rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #3d3a2e;
|
||||||
|
min-width: 140px;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .roll-dialog-label:first-child {
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog input[type="checkbox"] {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog div {
|
||||||
|
margin-top: 4px;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .sheet-footer {
|
||||||
|
padding: 0.5rem 0.8rem;
|
||||||
|
gap: 0.5rem;
|
||||||
|
border-top: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .sheet-footer button {
|
||||||
|
flex: 1;
|
||||||
|
padding: 0.4rem 0.8rem;
|
||||||
|
border-radius: 4px;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 0.9rem;
|
||||||
|
cursor: pointer;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.5);
|
||||||
|
background: linear-gradient(135deg, rgba(196, 186, 166, 0.8) 0%, rgba(226, 226, 222, 0.9) 100%);
|
||||||
|
color: rgba(50, 35, 15, 0.95);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.skill-roll-dialog .sheet-footer button:hover {
|
||||||
|
background: linear-gradient(135deg, #c4baa6 0%, #d2cdc3 100%);
|
||||||
|
border-color: rgba(139, 115, 85, 0.8);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.confront-dice {
|
||||||
|
border-width: 0px;
|
||||||
|
}
|
||||||
|
.bonus-spec {
|
||||||
|
max-width: 48px;
|
||||||
|
}
|
||||||
|
.confront-bonus-container {
|
||||||
|
position: relative;
|
||||||
|
flex-grow: 1;
|
||||||
|
text-align: center;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
.pool-list {
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.corps-combat-block {
|
||||||
|
position: relative;
|
||||||
|
width: 600px;
|
||||||
|
height: 600px;
|
||||||
|
}
|
||||||
|
.silhouette-combat-picture {
|
||||||
|
width: 250px;
|
||||||
|
max-width: 250px;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
.silhouette-combat-block {
|
||||||
|
position: absolute;
|
||||||
|
background: white;
|
||||||
|
border-color: darkgray;
|
||||||
|
border-style: ridge;
|
||||||
|
border: 1;
|
||||||
|
width: 180px;
|
||||||
|
min-height: 84px;
|
||||||
|
height: auto;
|
||||||
|
margin: 0 auto;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
align-self: center;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
.silhouette-combat-space {
|
||||||
|
width: 60px;
|
||||||
|
min-width: 60px;
|
||||||
|
}
|
||||||
|
.center-content {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.chat-message .message {
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 0.9rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum-character-creator {
|
||||||
|
/*background: rgba(226, 226, 222, 0.95);*/
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
font-size: 0.9rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum-character-creator .field-title {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum-character-creator .form-group label {
|
||||||
|
color: rgba(30, 25, 15, 0.9);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum-character-creator .status-section {
|
||||||
|
display: block;
|
||||||
|
max-width: 34rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum-character-creator .creator-finished-section {
|
||||||
|
display: block;
|
||||||
|
max-width: 34rem;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum-character-creator .stage-main-details {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
.grace-texte {
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
.chat-welcome {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.item-name-label {
|
||||||
|
min-width: 12rem;
|
||||||
|
}
|
||||||
|
.compendium-sidebar .directory-item.compendium.locked .compendium-name {
|
||||||
|
background: rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.compendium-sidebar .directory-item.compendium .compendium-name {
|
||||||
|
background: rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.compendium-sidebar .directory-item.compendium:hover .compendium-name {
|
||||||
|
text-shadow: 0 0 8px var(--color-shadow-primary);
|
||||||
|
background: rgba(0, 0, 0, 0.9);
|
||||||
|
}
|
||||||
|
.compendium-sidebar .directory-item.compendium .compendium-footer .source {
|
||||||
|
display: inline-block;
|
||||||
|
font-size: var(--font-size-12);
|
||||||
|
padding: 1px 0.5rem 0 0.25rem;
|
||||||
|
border-radius: 0 3px 0 0;
|
||||||
|
background: rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.tedeum-create-character {
|
||||||
|
align-self: anchor-center;
|
||||||
|
}
|
||||||
|
.message-chat-center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.welcome-message-h3 {
|
||||||
|
font-size: 1.2rem;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
color: darkred;
|
||||||
|
}
|
||||||
324
styles/items.css
Normal file
324
styles/items.css
Normal file
@@ -0,0 +1,324 @@
|
|||||||
|
.padd-right {
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
.padd-left {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
.fortune-row {
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.4rem;
|
||||||
|
padding: 0.3rem 0.5rem;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
.fortune-row label {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
min-width: unset;
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
}
|
||||||
|
.fortune-row input {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
}
|
||||||
|
.stack-left {
|
||||||
|
align-items: center;
|
||||||
|
flex-shrink: 1;
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
.packed-left {
|
||||||
|
white-space: nowrap;
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
.input-numeric-short {
|
||||||
|
width: 52px;
|
||||||
|
max-width: 52px;
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-basis: 52px;
|
||||||
|
margin-right: 0.15rem;
|
||||||
|
margin-left: 0.15rem;
|
||||||
|
}
|
||||||
|
.abilities-table {
|
||||||
|
align-content: flex-start;
|
||||||
|
}
|
||||||
|
.tokenhudext {
|
||||||
|
display: flex;
|
||||||
|
flex: 0 !important;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.tokenhudext.left {
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-direction: column;
|
||||||
|
position: absolute;
|
||||||
|
top: 2.75rem;
|
||||||
|
right: 4rem;
|
||||||
|
}
|
||||||
|
.tokenhudext.right {
|
||||||
|
justify-content: flex-start;
|
||||||
|
flex-direction: column;
|
||||||
|
position: absolute;
|
||||||
|
top: 2.75rem;
|
||||||
|
left: 4rem;
|
||||||
|
}
|
||||||
|
.control-icon.tokenhudicon {
|
||||||
|
width: -moz-fit-content;
|
||||||
|
width: fit-content;
|
||||||
|
height: -moz-fit-content;
|
||||||
|
height: fit-content;
|
||||||
|
min-width: 6rem;
|
||||||
|
flex-basis: auto;
|
||||||
|
padding: 0;
|
||||||
|
line-height: 1rem;
|
||||||
|
margin: 0.25rem;
|
||||||
|
}
|
||||||
|
.control-icon.tokenhudicon.right {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
#token-hud .status-effects.active {
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
.token-sheet .window-content .flexcol .sheet-tabs {
|
||||||
|
font-size: 0.8rem;
|
||||||
|
}
|
||||||
|
.item-checkbox {
|
||||||
|
height: 25px;
|
||||||
|
border: 1px solid rgba(115, 105, 83, 0.65098);
|
||||||
|
border-left: none;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 1rem;
|
||||||
|
color: black;
|
||||||
|
padding-top: 5px;
|
||||||
|
margin-right: 0px;
|
||||||
|
width: 45px;
|
||||||
|
position: relative;
|
||||||
|
left: 0px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.skill-label {
|
||||||
|
font-size: 0.7rem;
|
||||||
|
}
|
||||||
|
.skill-good-checkbox {
|
||||||
|
max-height: 10px;
|
||||||
|
max-width: 10px;
|
||||||
|
}
|
||||||
|
.flex-actions-bar {
|
||||||
|
flex-grow: 2;
|
||||||
|
}
|
||||||
|
#sidebar {
|
||||||
|
font-size: 1rem;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
background-position: 0px 35px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background: rgba(226, 226, 222, 0.95);
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
#sidebar.collapsed {
|
||||||
|
height: 470px !important;
|
||||||
|
}
|
||||||
|
#sidebar #sidebar-tabs i {
|
||||||
|
display: inline-block;
|
||||||
|
background-position: center;
|
||||||
|
background-size: cover;
|
||||||
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
#sidebar-tabs > .collapsed,
|
||||||
|
#chat-controls .chat-control-icon {
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.75);
|
||||||
|
}
|
||||||
|
.sidebar-tab .directory-list .entity {
|
||||||
|
border-top: 1px rgba(0, 0, 0, 0.25);
|
||||||
|
border-bottom: 0 none;
|
||||||
|
padding: 0.25rem 0;
|
||||||
|
}
|
||||||
|
.sidebar-tab .directory-list .entity:hover {
|
||||||
|
background: rgba(0, 0, 0, 0.05);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.status-small-label {
|
||||||
|
font-size: 0.65rem;
|
||||||
|
}
|
||||||
|
.no-grow {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 32px;
|
||||||
|
}
|
||||||
|
.status-col-name {
|
||||||
|
max-width: 72px;
|
||||||
|
}
|
||||||
|
.img-no-border {
|
||||||
|
max-width: 48px;
|
||||||
|
max-height: 48px;
|
||||||
|
border: 0px;
|
||||||
|
}
|
||||||
|
.items-title-bg {
|
||||||
|
margin-top: 6px;
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
background: linear-gradient(135deg, rgba(196, 186, 166, 0.6) 0%, rgba(226, 226, 222, 0.5) 100%);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0.3rem 0.5rem;
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
border-left: 4px solid rgba(139, 115, 85, 0.6);
|
||||||
|
}
|
||||||
|
.items-title-bg h3 {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-size: 1.15rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(19, 18, 18, 0.95);
|
||||||
|
}
|
||||||
|
.item-name-label-header-long2 {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 14rem;
|
||||||
|
min-width: 14rem;
|
||||||
|
}
|
||||||
|
.impact-box {
|
||||||
|
border-width: 2px;
|
||||||
|
border-color: #000000;
|
||||||
|
border-radius: 6px;
|
||||||
|
border: 2px ridge #443307;
|
||||||
|
margin: 4px;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
.impact-title {
|
||||||
|
font-size: bold;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.items-title-text {
|
||||||
|
text-align: center;
|
||||||
|
font-family: MailartRubberstamp;
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
.lock-icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
}
|
||||||
|
.item-sheet-img {
|
||||||
|
width: 64px;
|
||||||
|
height: 64px;
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.4);
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||||
|
-o-object-fit: cover;
|
||||||
|
object-fit: cover;
|
||||||
|
}
|
||||||
|
.item-name-img {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 2rem;
|
||||||
|
min-width: 2rem;
|
||||||
|
}
|
||||||
|
.item-field {
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
.item-field-xp {
|
||||||
|
margin-top: 4px;
|
||||||
|
min-width: 8rem;
|
||||||
|
max-width: 8rem;
|
||||||
|
}
|
||||||
|
.item-field-label-short {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 4rem;
|
||||||
|
min-width: 4rem;
|
||||||
|
}
|
||||||
|
.item-field-label-medium {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 6rem;
|
||||||
|
min-width: 6rem;
|
||||||
|
}
|
||||||
|
.item-field-label-long,
|
||||||
|
.item-name-label-long {
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
min-width: 160px;
|
||||||
|
}
|
||||||
|
.item-field-skill {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 6.8rem;
|
||||||
|
min-width: 6.8rem;
|
||||||
|
}
|
||||||
|
.item-field-label-long {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 10rem;
|
||||||
|
min-width: 10rem;
|
||||||
|
}
|
||||||
|
.item-field-title-long {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 12rem;
|
||||||
|
min-width: 12rem;
|
||||||
|
}
|
||||||
|
.item-field-label-long14 {
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 14rem;
|
||||||
|
min-width: 14rem;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
font-size: 1rem;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.carac-box {
|
||||||
|
background: linear-gradient(135deg, rgba(226, 226, 222, 0.4) 0%, rgba(240, 235, 225, 0.3) 100%);
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
border-radius: 0.45rem;
|
||||||
|
padding: 0.3rem 0.5rem;
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.2);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.carac-box:hover {
|
||||||
|
border-color: rgba(139, 115, 85, 0.4);
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.comp-box {
|
||||||
|
max-width: 16rem;
|
||||||
|
min-width: 16rem;
|
||||||
|
width: 16rem;
|
||||||
|
min-height: 1.6rem;
|
||||||
|
background: linear-gradient(135deg, rgba(250, 245, 235, 0.5) 0%, rgba(255, 255, 255, 0.3) 100%);
|
||||||
|
padding: 0.25rem 0.4rem;
|
||||||
|
margin: 0.15rem;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-left: 2px solid rgba(139, 115, 85, 0.3);
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.comp-box:hover {
|
||||||
|
background: rgba(226, 226, 222, 0.4);
|
||||||
|
border-left-color: rgba(139, 115, 85, 0.6);
|
||||||
|
transform: translateX(2px);
|
||||||
|
}
|
||||||
|
.item-control-end {
|
||||||
|
align-self: flex-end;
|
||||||
|
}
|
||||||
|
.alternate-list {
|
||||||
|
margin-top: 4px;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
.item-filler {
|
||||||
|
flex-grow: 6;
|
||||||
|
flex-shrink: 7;
|
||||||
|
}
|
||||||
|
.item-controls-fixed {
|
||||||
|
min-width: 2rem;
|
||||||
|
max-width: 2rem;
|
||||||
|
}
|
||||||
|
.item-controls-fixed-full {
|
||||||
|
min-width: 3rem;
|
||||||
|
max-width: 3rem;
|
||||||
|
}
|
||||||
|
.item-left-pad {
|
||||||
|
margin-left: 4px;
|
||||||
|
}
|
||||||
|
.attribute-label {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.flexrow-no-expand {
|
||||||
|
flex-grow: 0;
|
||||||
|
}
|
||||||
|
.item-input-small {
|
||||||
|
max-width: 16px;
|
||||||
|
max-height: 12px;
|
||||||
|
}
|
||||||
|
.character-summary-rollable {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
195
styles/layout.css
Normal file
195
styles/layout.css
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
.fvtt-te-deum.window-app.sheet .window-content,
|
||||||
|
.fvtt-te-deum.application.sheet .window-content {
|
||||||
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.application.fvtt-te-deum.sheet .window-content > [data-application-part],
|
||||||
|
.application.fvtt-te-deum.sheet .window-content > [data-application-part] > section {
|
||||||
|
flex: 1 1 0;
|
||||||
|
min-height: 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
overflow: hidden;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: flex-start;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
background: linear-gradient(135deg, rgba(226, 226, 222, 0.95) 0%, rgba(240, 235, 225, 0.9) 100%);
|
||||||
|
padding: 0.3rem 0.8rem;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
|
||||||
|
border: 1px solid rgba(139, 115, 85, 0.3);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header .profile-img {
|
||||||
|
flex: 0 0 128px;
|
||||||
|
width: 128px;
|
||||||
|
height: auto;
|
||||||
|
max-height: 128px;
|
||||||
|
margin-top: 0px;
|
||||||
|
margin-right: 10px;
|
||||||
|
-o-object-fit: cover;
|
||||||
|
object-fit: cover;
|
||||||
|
-o-object-position: 50% 0;
|
||||||
|
object-position: 50% 0;
|
||||||
|
border-width: 0px;
|
||||||
|
border-radius: 8px;
|
||||||
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||||
|
border: 2px solid rgba(139, 115, 85, 0.4);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header .header-fields {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header h1.charname {
|
||||||
|
height: 50px;
|
||||||
|
padding: 0px;
|
||||||
|
margin: 5px 0;
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header .header-identity-fields {
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.3rem;
|
||||||
|
margin-top: 0.2rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header .header-identity-fields input,
|
||||||
|
.fvtt-te-deum .sheet-header .header-identity-fields select {
|
||||||
|
flex: 1 1 auto;
|
||||||
|
font-size: 0.75rem;
|
||||||
|
height: 1.6rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-header .header-identity-label {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
font-size: 0.7rem;
|
||||||
|
font-weight: 600;
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-tabs {
|
||||||
|
flex: 0;
|
||||||
|
font-family: "MailartRubberstamp";
|
||||||
|
font-size: 2.2rem;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tox .tox-editor-container {
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tox .tox-edit-area {
|
||||||
|
padding: 0 8px;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .resource-label {
|
||||||
|
font-weight: bold;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tabs {
|
||||||
|
height: 40px;
|
||||||
|
border-top: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
border-bottom: 1px solid rgba(139, 115, 85, 0.4);
|
||||||
|
background: linear-gradient(180deg, rgba(226, 226, 222, 0.5) 0%, rgba(240, 235, 225, 0.3) 100%);
|
||||||
|
color: #000000;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tabs .item {
|
||||||
|
line-height: 40px;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 0 1rem;
|
||||||
|
transition: all 0.2s ease;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tabs .item:hover {
|
||||||
|
background: rgba(226, 226, 222, 0.6);
|
||||||
|
color: rgba(70, 67, 49, 0.9);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .tabs .item.active {
|
||||||
|
text-decoration: underline;
|
||||||
|
text-shadow: none;
|
||||||
|
background: rgba(196, 186, 166, 0.4);
|
||||||
|
border-bottom: 3px solid rgba(139, 115, 85, 0.8);
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list {
|
||||||
|
list-style: none;
|
||||||
|
margin: 1px 0;
|
||||||
|
padding: 0;
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list .item-header {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list .item {
|
||||||
|
height: 30px;
|
||||||
|
line-height: 24px;
|
||||||
|
padding: 1px 0;
|
||||||
|
border-bottom: 1px solid #bbb;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list .item .item-image {
|
||||||
|
flex: 0 0 24px;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list .item img {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list .item-name {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .items-list .item-controls {
|
||||||
|
flex: 0 0 86px;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.profile-img-container {
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
max-width: 140px;
|
||||||
|
width: 140px;
|
||||||
|
}
|
||||||
|
.button-img {
|
||||||
|
vertical-align: baseline;
|
||||||
|
width: 8%;
|
||||||
|
height: 8%;
|
||||||
|
max-height: 48px;
|
||||||
|
border-width: 0px;
|
||||||
|
border: 1px solid rgba(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
.button-img:hover {
|
||||||
|
color: rgba(255, 255, 128, 0.7);
|
||||||
|
border: 1px solid rgba(255, 128, 0, 0.8);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.button-effect-img {
|
||||||
|
vertical-align: baseline;
|
||||||
|
width: 16px;
|
||||||
|
max-height: 16px;
|
||||||
|
height: 16;
|
||||||
|
border-width: 0;
|
||||||
|
}
|
||||||
|
.small-button-container {
|
||||||
|
height: 16px;
|
||||||
|
width: 16px;
|
||||||
|
border: 0;
|
||||||
|
vertical-align: bottom;
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-body {
|
||||||
|
flex: 1 1 0;
|
||||||
|
min-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-body .tab {
|
||||||
|
height: 100%;
|
||||||
|
overflow-y: auto;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
|
.fvtt-te-deum .sheet-body .tab .editor {
|
||||||
|
height: 100%;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
}
|
||||||
1108
styles/tedeum.css
1108
styles/tedeum.css
File diff suppressed because it is too large
Load Diff
6
styles/variables.css
Normal file
6
styles/variables.css
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: "MailartRubberstamp";
|
||||||
|
src: url("../fonts/MailartRubberstamp-Regular.woff") format("woff");
|
||||||
|
font-family: "GreatPrimer";
|
||||||
|
src: url("../fonts/IM_FELL_Great_Primer_Roman.woff") format("woff");
|
||||||
|
}
|
||||||
42
system.json
42
system.json
@@ -151,6 +151,48 @@
|
|||||||
"version": "13.0.2",
|
"version": "13.0.2",
|
||||||
"download": "https://www.uberwald.me/gitea/public/fvtt-te-deum/releases/download/13.0.1/fvtt-te-deum-13.0.2.zip",
|
"download": "https://www.uberwald.me/gitea/public/fvtt-te-deum/releases/download/13.0.1/fvtt-te-deum-13.0.2.zip",
|
||||||
"background": "systems/fvtt-te-deum/images/ui/tdeum_welcome_page_01.webp",
|
"background": "systems/fvtt-te-deum/images/ui/tdeum_welcome_page_01.webp",
|
||||||
|
"documentTypes": {
|
||||||
|
"Actor": {
|
||||||
|
"pj": {
|
||||||
|
"htmlFields": ["description", "notes", "connaissances", "histoire", "vetements", "equipmentfree"]
|
||||||
|
},
|
||||||
|
"pnj": {
|
||||||
|
"htmlFields": ["description", "notes", "connaissances", "histoire", "vetements", "equipmentfree"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Item": {
|
||||||
|
"arme": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"competence": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"armure": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"equipement": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"origine": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"education": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"grace": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"blessure": {
|
||||||
|
"htmlFields": ["description"]
|
||||||
|
},
|
||||||
|
"maladie": {
|
||||||
|
"htmlFields": ["transmission", "symptomes", "complications", "description"]
|
||||||
|
},
|
||||||
|
"simple": {
|
||||||
|
"htmlFields": ["vertus", "toxicite", "description"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"flags": {
|
"flags": {
|
||||||
"hotReload": {
|
"hotReload": {
|
||||||
"extensions": [
|
"extensions": [
|
||||||
|
|||||||
22
template.json.BACKUP
Normal file
22
template.json.BACKUP
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"Actor": {
|
||||||
|
"types": ["pj", "pnj"],
|
||||||
|
"htmlFields": ["description", "equipmentfree", "histoire"],
|
||||||
|
"pj": {},
|
||||||
|
"pnj": {}
|
||||||
|
},
|
||||||
|
"Item": {
|
||||||
|
"types": ["arme", "competence", "armure", "grace", "equipement", "origine", "education", "blessure", "maladie", "simple"],
|
||||||
|
"htmlFields": ["description", "transmission", "symptomes", "vertus", "toxicité"],
|
||||||
|
"blessure": {},
|
||||||
|
"maladie": {},
|
||||||
|
"arme": {},
|
||||||
|
"competence": {},
|
||||||
|
"armure": {},
|
||||||
|
"equipement": {},
|
||||||
|
"origine": {},
|
||||||
|
"education": {},
|
||||||
|
"grace": {},
|
||||||
|
"debouche": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
|
|
||||||
{{!-- Sheet Header --}}
|
{{!-- Sheet Header --}}
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
@@ -6,24 +6,31 @@
|
|||||||
<div class="flexrow">
|
<div class="flexrow">
|
||||||
|
|
||||||
<div class="profile-img-container">
|
<div class="profile-img-container">
|
||||||
<img class="profile-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="profile-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flexcol">
|
<div class="flexcol">
|
||||||
<h1 class="charname margin-right"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname margin-right"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
|
|
||||||
<div class="flexrow">
|
<div class="flexrow header-identity-fields">
|
||||||
|
<label class="header-identity-label">Origine sociale</label>
|
||||||
|
<input type="text" name="system.statutocial" value="{{system.statutocial}}" data-dtype="String" />
|
||||||
|
<label class="header-identity-label">Genre</label>
|
||||||
|
<select type="text" name="system.genre" data-dtype="String">
|
||||||
|
{{selectOptions @root.config.genre selected=system.genre}}
|
||||||
|
</select>
|
||||||
|
<label class="header-identity-label">Religion</label>
|
||||||
|
<input type="text" name="system.religion" value="{{system.religion}}" data-dtype="String" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
{{!-- Sheet Tab Navigation --}}
|
{{!-- Sheet Tab Navigation --}}
|
||||||
<nav class="sheet-tabs tabs" data-group="primary">
|
<nav class="tabs" data-group="primary">
|
||||||
<a class="item" data-tab="principal">Carac&Santé</a>
|
<a class="item" data-tab="principal">Carac&Santé</a>
|
||||||
<a class="item" data-tab="competences">Compétences</a>
|
<a class="item" data-tab="competences">Compétences</a>
|
||||||
<a class="item" data-tab="combat">Combat</a>
|
<a class="item" data-tab="combat">Combat</a>
|
||||||
@@ -57,7 +64,7 @@
|
|||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h4>Malus de santé : {{santeModifier}} niveaux</h4>
|
<h4 class="malus-sante {{#if santeModifier}}malus-sante-active{{/if}}">Malus de santé : {{santeModifier}} niveaux</h4>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
@@ -66,13 +73,13 @@
|
|||||||
<h3><label class="item-field-label-long">Blessures</label></h3>
|
<h3><label class="item-field-label-long">Blessures</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control blessure-add" data-type="blessure" title="Ajouter une Blessure"><i class="fas fa-plus"></i></a>
|
<a class="item-control blessure-add" data-action="createBlessure" data-type="blessure" title="Ajouter une Blessure"><i class="fas fa-plus"></i></a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
{{#each blessures as |blessure key|}}
|
{{#each blessures as |blessure key|}}
|
||||||
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{blessure._id}}">
|
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{blessure._id}}">
|
||||||
<a class="item-edit item-name-img" title="Editer Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Editer Item"><img class="sheet-competence-img"
|
||||||
src="{{blessure.img}}" /></a>
|
src="{{blessure.img}}" /></a>
|
||||||
<span class="item-field-label-medium">
|
<span class="item-field-label-medium">
|
||||||
{{blessure.name}}
|
{{blessure.name}}
|
||||||
@@ -88,8 +95,8 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -104,7 +111,7 @@
|
|||||||
</li>
|
</li>
|
||||||
{{#each maladies as |maladie key|}}
|
{{#each maladies as |maladie key|}}
|
||||||
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{maladie._id}}">
|
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{maladie._id}}">
|
||||||
<a class="item-edit item-name-img" title="Editer Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Editer Item"><img class="sheet-competence-img"
|
||||||
src="{{maladie.img}}" /></a>
|
src="{{maladie.img}}" /></a>
|
||||||
<span class="item-field-label-medium">
|
<span class="item-field-label-medium">
|
||||||
{{maladie.name}}
|
{{maladie.name}}
|
||||||
@@ -114,14 +121,14 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
{{#each poisons as |poison key|}}
|
{{#each poisons as |poison key|}}
|
||||||
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{poison._id}}">
|
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{poison._id}}">
|
||||||
<a class="item-edit item-name-img" title="Editer Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Editer Item"><img class="sheet-competence-img"
|
||||||
src="{{poison.img}}" /></a>
|
src="{{poison.img}}" /></a>
|
||||||
<span class="item-field-label-medium">
|
<span class="item-field-label-medium">
|
||||||
{{poison.name}}
|
{{poison.name}}
|
||||||
@@ -131,8 +138,8 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -182,21 +189,21 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-add" data-type="grace" title="Créer une Grâce"><i
|
<a class="item-control item-add" data-action="createItem" data-type="grace" title="Créer une Grâce"><i
|
||||||
class="fas fa-plus"></i></a>
|
class="fas fa-plus"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{#each graces as |grace key|}}
|
{{#each graces as |grace key|}}
|
||||||
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{grace._id}}">
|
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{grace._id}}">
|
||||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Edit Item"><img class="sheet-competence-img"
|
||||||
src="{{grace.img}}" /></a>
|
src="{{grace.img}}" /></a>
|
||||||
<span class="item-field-label-long" data-tooltip="{{grace.system.effet}}">
|
<span class="item-field-label-long" data-tooltip="{{grace.system.effet}}">
|
||||||
{{grace.name}}
|
{{grace.name}}
|
||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -211,7 +218,7 @@
|
|||||||
|
|
||||||
{{#each arbreCompetences as |carac key|}}
|
{{#each arbreCompetences as |carac key|}}
|
||||||
<ul>
|
<ul>
|
||||||
<li class="flexrow">
|
<li class="flexrow items-title-bg">
|
||||||
<img class="sheet-competence-img" src="systems/fvtt-te-deum/images/icons/{{key}}.webp" />
|
<img class="sheet-competence-img" src="systems/fvtt-te-deum/images/icons/{{key}}.webp" />
|
||||||
<h3 class="item-field-label-long14" data-tooltip="Caracteristique">{{carac.name}} : {{carac.qualite}}</h3>
|
<h3 class="item-field-label-long14" data-tooltip="Caracteristique">{{carac.name}} : {{carac.qualite}}</h3>
|
||||||
<label class="item-field item-field-label-short">{{carac.value}}</label>
|
<label class="item-field item-field-label-short">{{carac.value}}</label>
|
||||||
@@ -226,7 +233,7 @@
|
|||||||
</label>
|
</label>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control competence-add" data-type="competence" data-carac-key="{{key}}"
|
<a class="item-control competence-add" data-action="createCompetence" data-type="competence" data-carac-key="{{key}}"
|
||||||
title="Ajouter une Compétence"><i class="fas fa-plus"></i></a>
|
title="Ajouter une Compétence"><i class="fas fa-plus"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@@ -234,14 +241,14 @@
|
|||||||
{{#each carac.competences as |comp skillkey|}}
|
{{#each carac.competences as |comp skillkey|}}
|
||||||
<li class="flexrow carac-box comp-box item-id" data-item-id="{{comp.id}}">
|
<li class="flexrow carac-box comp-box item-id" data-item-id="{{comp.id}}">
|
||||||
<label class="item-left-pad item-field item-field-label-long">
|
<label class="item-left-pad item-field item-field-label-long">
|
||||||
<a class="roll-competence" data-comp-id="{{comp.id}}">{{comp.name}} {{comp.system.formula}} </a>
|
<a class="roll-competence" data-action="rollCompetence">{{comp.name}} {{comp.system.formula}} </a>
|
||||||
</label>
|
</label>
|
||||||
<span> </span>
|
<span> </span>
|
||||||
<a class="item-control item-edit" title="Editer"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer"><i class="fas fa-edit"></i></a>
|
||||||
{{#if comp.system.isBase}}
|
{{#if comp.system.isBase}}
|
||||||
<span class="item-control"><i class="fa-solid fa-trash-slash"></i></span>
|
<span class="item-control"><i class="fa-solid fa-trash-slash"></i></span>
|
||||||
{{else}}
|
{{else}}
|
||||||
<a class="item-control item-delete" title="Supprimer"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer"><i class="fas fa-trash"></i></a>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -274,26 +281,25 @@
|
|||||||
</li>
|
</li>
|
||||||
{{#each armes as |arme key|}}
|
{{#each armes as |arme key|}}
|
||||||
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{arme._id}}">
|
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{arme._id}}">
|
||||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Edit Item"><img class="sheet-competence-img"
|
||||||
src="{{arme.img}}" /></a>
|
src="{{arme.img}}" /></a>
|
||||||
<span class="item-field-label-long">
|
<span class="item-field-label-long">
|
||||||
<a class="roll-arme" data-arme-id="{{arme._id}}">
|
<a class="roll-arme" data-action="rollArme">
|
||||||
{{arme.name}}
|
{{arme.name}}
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-medium">{{upperFirst arme.system.typeArme}}</span>
|
<span class="item-field-label-medium">{{upperFirst arme.system.typeArme}}</span>
|
||||||
<span class="item-field-label-medium">{{upperFirst arme.system.competence}}</span>
|
<span class="item-field-label-medium">{{upperFirst arme.system.competence}}</span>
|
||||||
<span class="item-field-label-medium"><a class="roll-degats"
|
<span class="item-field-label-medium"><a class="roll-degats" data-action="rollDegats">{{arme.system.degats}}</a></span>
|
||||||
data-arme-id="{{arme._id}}">{{arme.system.degats}}</a></span>
|
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed-full">
|
<div class="item-controls item-controls-fixed-full">
|
||||||
<a class="item-control item-equip" title="Equiper" {{#unless arme.system.equipe}}style="color:gray;"
|
<a class="item-control item-equip" data-action="equipItem" title="Equiper" {{#unless arme.system.equipe}}style="color:gray;"
|
||||||
{{/unless}}>
|
{{/unless}}>
|
||||||
<i class="fas fa-shield-alt"></i>
|
<i class="fas fa-shield-alt"></i>
|
||||||
</a>
|
</a>
|
||||||
<a class="item-control item-edit" title="Editer"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer l'arme"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -301,13 +307,13 @@
|
|||||||
|
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
<li class="item flexrow list-item items-title-bg">
|
<li class="item flexrow list-item items-title-bg">
|
||||||
<span class="item-name-label-header-long2">
|
<span class="item-field-label-long">
|
||||||
<h3><label class="item-name-label-header-long2">Armures</label></h3>
|
<h3><label class="item-field-label-long">Armures</label></h3>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
{{#each armures as |armure key|}}
|
{{#each armures as |armure key|}}
|
||||||
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{armure._id}}">
|
<li class="item flexrow list-item list-item-shadow item-id" data-item-id="{{armure._id}}">
|
||||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Edit Item"><img class="sheet-competence-img"
|
||||||
src="{{armure.img}}" /></a>
|
src="{{armure.img}}" /></a>
|
||||||
<span class="item-name-label-long2">
|
<span class="item-name-label-long2">
|
||||||
{{armure.name}}
|
{{armure.name}}
|
||||||
@@ -315,12 +321,12 @@
|
|||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed-full">
|
<div class="item-controls item-controls-fixed-full">
|
||||||
<a class="item-control item-equip" title="Equiper" {{#unless armure.system.equipe}}style="color:gray;"
|
<a class="item-control item-equip" data-action="equipItem" title="Equiper" {{#unless armure.system.equipe}}style="color:gray;"
|
||||||
{{/unless}}>
|
{{/unless}}>
|
||||||
<i class="fas fa-shield-alt"></i>
|
<i class="fas fa-shield-alt"></i>
|
||||||
</a>
|
</a>
|
||||||
<a class="item-control item-edit" title="Editer l'armure"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer l'armure"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer l'armure"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer l'armure"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -357,26 +363,29 @@
|
|||||||
{{!-- Equipement Tab --}}
|
{{!-- Equipement Tab --}}
|
||||||
<div class="tab equipements" data-group="primary" data-tab="equipements">
|
<div class="tab equipements" data-group="primary" data-tab="equipements">
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="flexrow fortune-row">
|
||||||
{{#each system.fortune as |fortune key|}}
|
{{#each system.fortune as |fortune key|}}
|
||||||
<div class="flexrow">
|
<label class="item-field item-field-label-medium">{{upperFirst key}}</label>
|
||||||
<label class="item-field item-field-label-medium">{{upperFirst key}}</label>
|
<input type="text" class="input-numeric-short" name="system.fortune.{{key}}" value="{{fortune}}"
|
||||||
<input type="text" class="input-numeric-short" name="system.fortune.{{key}}" value="{{fortune}}"
|
data-dtype="Number" />
|
||||||
data-dtype="Number" />
|
|
||||||
</div>
|
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<span class="item-name-label-header items-title-bg">
|
<ul class="item-list">
|
||||||
<h3><label class="items-title-text">Zone libre</label></h3>
|
<li class="item flexrow list-item items-title-bg">
|
||||||
</span>
|
<span class="item-field-title-long">
|
||||||
|
<h3><label class="item-field-label-long">Zone libre</label></h3>
|
||||||
|
</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
<div class="form-group small-editor">
|
<div class="form-group small-editor">
|
||||||
{{editor equipmentfree target="system.equipmentfree" button=true owner=owner editable=editable}}
|
{{formInput systemFields.equipmentfree enriched=enrichedEquipmentFree value=system.equipmentfree name="system.equipmentfree" toggled=true}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
<li class="item flexrow list-item items-title-bg">
|
<li class="item flexrow list-item items-title-bg">
|
||||||
<span class="item-field-label-long">
|
<span class="item-name-img"></span>
|
||||||
|
<span class="item-name-label">
|
||||||
<h3><label class="item-field-label-long">Equipements</label></h3>
|
<h3><label class="item-field-label-long">Equipements</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-medium">
|
<span class="item-field-label-medium">
|
||||||
@@ -384,22 +393,22 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-add" data-type="equipement" title="Créer un équipement"><i
|
<a class="item-control item-add" data-action="createItem" data-type="equipement" title="Créer un équipement"><i
|
||||||
class="fas fa-plus"></i></a>
|
class="fas fa-plus"></i></a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
{{#each equipements as |equip key|}}
|
{{#each equipements as |equip key|}}
|
||||||
<li class="item list-item flexrow list-item-shadow item-id" data-item-id="{{equip._id}}">
|
<li class="item list-item flexrow list-item-shadow item-id" data-item-id="{{equip._id}}">
|
||||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Edit Item"><img class="sheet-competence-img"
|
||||||
src="{{equip.img}}" /></a>
|
src="{{equip.img}}" /></a>
|
||||||
<span class="item-name-label">{{equip.name}}</span>
|
<span class="item-name-label">{{equip.name}}</span>
|
||||||
<span class="item-field-label-medium">{{equip.system.prix}} {{monnaie equip.system.monnaie}}</span>
|
<span class="item-field-label-medium">{{equip.system.prix}} {{monnaie equip.system.monnaie}}</span>
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer un équipement"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer un équipement"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer un équipement"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer un équipement"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -408,7 +417,8 @@
|
|||||||
|
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
<li class="item flexrow list-item items-title-bg">
|
<li class="item flexrow list-item items-title-bg">
|
||||||
<span class="item-field-label-long">
|
<span class="item-name-img"></span>
|
||||||
|
<span class="item-name-label">
|
||||||
<h3><label class="item-field-label-long">Simples</label></h3>
|
<h3><label class="item-field-label-long">Simples</label></h3>
|
||||||
</span>
|
</span>
|
||||||
<span class="item-field-label-medium">
|
<span class="item-field-label-medium">
|
||||||
@@ -416,20 +426,20 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-add" data-type="simple" title="Créer une simple"><i class="fas fa-plus"></i></a>
|
<a class="item-control item-add" data-action="createItem" data-type="simple" title="Créer une simple"><i class="fas fa-plus"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{#each simples as |simple key|}}
|
{{#each simples as |simple key|}}
|
||||||
<li class="item list-item flexrow list-item-shadow item-id" data-item-id="{{simple._id}}">
|
<li class="item list-item flexrow list-item-shadow item-id" data-item-id="{{simple._id}}">
|
||||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Edit Item"><img class="sheet-competence-img"
|
||||||
src="{{simple.img}}" /></a>
|
src="{{simple.img}}" /></a>
|
||||||
<span class="item-name-label">{{simple.name}}</span>
|
<span class="item-name-label">{{simple.name}}</span>
|
||||||
<span class="item-field-label-medium">{{simple.system.prix}} {{monnaie simple.system.monnaie}}</span>
|
<span class="item-field-label-medium">{{simple.system.prix}} {{monnaie simple.system.monnaie}}</span>
|
||||||
|
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer une simple"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer une simple"><i class="fas fa-edit"></i></a>
|
||||||
<a class="item-control item-delete" title="Supprimer une simple"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer une simple"><i class="fas fa-trash"></i></a>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
@@ -443,17 +453,6 @@
|
|||||||
<div class="grid grid-2col">
|
<div class="grid grid-2col">
|
||||||
<div>
|
<div>
|
||||||
<ul class="item-list alternate-list">
|
<ul class="item-list alternate-list">
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="item-name-label-medium">Genre</label>
|
|
||||||
<select type="text" class="" name="system.genre" value="{{system.genre}}" data-dtype="String" />
|
|
||||||
{{selectOptions @root.config.genre selected=system.genre}}
|
|
||||||
</select>
|
|
||||||
</li>
|
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="item-name-label-medium">Lieu de naissance</label>
|
|
||||||
<input type="text" class="" name="system.lieunaissance" value="{{system.lieunaissance}}"
|
|
||||||
data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<label class="item-name-label-medium">Age</label>
|
<label class="item-name-label-medium">Age</label>
|
||||||
<input type="text" class="" name="system.age" value="{{system.age}}" data-dtype="String" />
|
<input type="text" class="" name="system.age" value="{{system.age}}" data-dtype="String" />
|
||||||
@@ -468,8 +467,8 @@
|
|||||||
<div>
|
<div>
|
||||||
<ul>
|
<ul>
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
<label class="item-name-label-medium">Origine sociale</label>
|
<label class="item-name-label-medium">Lieu de naissance</label>
|
||||||
<input type="text" class="" name="system.statutocial" value="{{system.statutocial}}"
|
<input type="text" class="" name="system.lieunaissance" value="{{system.lieunaissance}}"
|
||||||
data-dtype="String" />
|
data-dtype="String" />
|
||||||
</li>
|
</li>
|
||||||
<li class="item flexrow">
|
<li class="item flexrow">
|
||||||
@@ -477,10 +476,6 @@
|
|||||||
<input type="text" class="" name="system.chargestitre" value="{{system.chargestitre}}"
|
<input type="text" class="" name="system.chargestitre" value="{{system.chargestitre}}"
|
||||||
data-dtype="String" />
|
data-dtype="String" />
|
||||||
</li>
|
</li>
|
||||||
<li class="item flexrow">
|
|
||||||
<label class="item-name-label-medium">Religion</label>
|
|
||||||
<input type="text" class="" name="system.religion" value="{{system.religion}}" data-dtype="String" />
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -499,15 +494,15 @@
|
|||||||
</li>
|
</li>
|
||||||
{{#each educations as |education key|}}
|
{{#each educations as |education key|}}
|
||||||
<li class="item list-item flexrow list-item-shadow item-id" data-item-id="{{education._id}}">
|
<li class="item list-item flexrow list-item-shadow item-id" data-item-id="{{education._id}}">
|
||||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
<a class="item-edit item-name-img" data-action="editItem" title="Edit Item"><img class="sheet-competence-img"
|
||||||
src="{{education.img}}" /></a>
|
src="{{education.img}}" /></a>
|
||||||
<span class="item-name-label">{{ education.name}}</span>
|
<span class="item-name-label">{{ education.name}}</span>
|
||||||
<span class="item-name-label">{{getEducationEtape education.system.etape}}</span>
|
<span class="item-name-label">{{getEducationEtape education.system.etape}}</span>
|
||||||
<div class="item-filler"> </div>
|
<div class="item-filler"> </div>
|
||||||
<div class="item-controls item-controls-fixed">
|
<div class="item-controls item-controls-fixed">
|
||||||
<a class="item-control item-edit" title="Editer une éducation"><i class="fas fa-edit"></i></a>
|
<a class="item-control item-edit" data-action="editItem" title="Editer une éducation"><i class="fas fa-edit"></i></a>
|
||||||
{{#if @root.isGM}}
|
{{#if @root.isGM}}
|
||||||
<a class="item-control item-delete" title="Supprimer une éducation"><i class="fas fa-trash"></i></a>
|
<a class="item-control item-delete" data-action="deleteItem" title="Supprimer une éducation"><i class="fas fa-trash"></i></a>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@@ -515,26 +510,25 @@
|
|||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
<span class="item-name-label-header items-title-bg">
|
<div class="items-title-bg">
|
||||||
<h3><label class="items-title-text">Background</label></h3>
|
<h3>Background</h3>
|
||||||
</span>
|
</div>
|
||||||
<div class="form-group editor">
|
<div class="form-group editor">
|
||||||
{{editor description target="system.description" button=true owner=owner
|
{{formInput systemFields.description enriched=enrichedDescription value=system.description name="system.description" toggled=true}}
|
||||||
editable=editable}}
|
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<span class="item-name-label-header items-title-bg">
|
<div class="items-title-bg">
|
||||||
<h3><label class="items-title-text">Notes</label></h3>
|
<h3>Notes</h3>
|
||||||
</span>
|
</div>
|
||||||
<div class="form-group editor">
|
<div class="form-group editor">
|
||||||
{{editor notes target="system.notes" button=true owner=owner editable=editable}}
|
{{formInput systemFields.notes enriched=enrichedNotes value=system.notes name="system.notes" toggled=true}}
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<span class="item-name-label-header items-title-bg">
|
<div class="items-title-bg">
|
||||||
<h3><label class="items-title-text">Histoire</label></h3>
|
<h3>Histoire</h3>
|
||||||
</span>
|
</div>
|
||||||
<div class="form-group editor">
|
<div class="form-group editor">
|
||||||
{{editor histoire target="system.histoire" button=true owner=owner editable=editable}}
|
{{formInput systemFields.histoire enriched=enrichedHistoire value=system.histoire name="system.histoire" toggled=true}}
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
@@ -542,4 +536,4 @@
|
|||||||
|
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
<form class="skill-roll-dialog">
|
<section class="skill-roll-dialog">
|
||||||
<header class="roll-dialog-header">
|
<header class="roll-dialog-header">
|
||||||
{{#if img}}
|
{{#if img}}
|
||||||
<img class="actor-icon" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="actor-icon" src="{{img}}" data-edit="img" title="{{name}}" />
|
||||||
@@ -175,4 +175,9 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</form>
|
<footer class="sheet-footer flexrow">
|
||||||
|
<button type="button" data-action="roll"><i class="fas fa-check"></i> Lancer</button>
|
||||||
|
<button type="button" data-action="cancel"><i class="fas fa-times"></i> Annuler</button>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -136,4 +136,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -75,4 +75,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -35,4 +35,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -41,4 +41,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -167,4 +167,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -34,4 +34,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -19,7 +19,9 @@
|
|||||||
<strong>Effet</strong> : {{system.effet}}
|
<strong>Effet</strong> : {{system.effet}}
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
{{editor description target="system.description" button=true owner=owner editable=editable}}
|
<div class="form-group editor">
|
||||||
|
{{formInput systemFields.description enriched=enrichedDescription value=system.description name="system.description" toggled=true}}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tab details" data-group="primary" data-tab="details">
|
<div class="tab details" data-group="primary" data-tab="details">
|
||||||
@@ -39,4 +41,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -23,25 +23,27 @@
|
|||||||
<strong>Complications</strong> : {{system.complications}}
|
<strong>Complications</strong> : {{system.complications}}
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
{{editor description target="system.description" button=true owner=owner editable=editable}}
|
<div class="form-group editor">
|
||||||
|
{{formInput systemFields.description enriched=enrichedDescription value=system.description name="system.description" toggled=true}}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tab details" data-group="primary" data-tab="details">
|
<div class="tab details" data-group="primary" data-tab="details">
|
||||||
|
|
||||||
<h4 class="item-name-label-long">Transmission</h4>
|
<h4 class="item-name-label-long">Transmission</h4>
|
||||||
<textarea name="system.transmission" rows="6" data-dtype="String">
|
<div class="form-group editor">
|
||||||
{{{system.transmission}}}
|
{{formInput systemFields.transmission enriched=enrichedTransmission value=system.transmission name="system.transmission" toggled=true}}
|
||||||
</textarea>
|
</div>
|
||||||
|
|
||||||
<h4 class="item-name-label-long">Symptômes</h4>
|
<h4 class="item-name-label-long">Symptômes</h4>
|
||||||
<textarea name="system.symptomes" rows="6" data-dtype="String">
|
<div class="form-group editor">
|
||||||
{{{system.symptomes}}}
|
{{formInput systemFields.symptomes enriched=enrichedSymptomes value=system.symptomes name="system.symptomes" toggled=true}}
|
||||||
</textarea>
|
</div>
|
||||||
|
|
||||||
<h4 class="item-name-label-long">Complications</h4>
|
<h4 class="item-name-label-long">Complications</h4>
|
||||||
<textarea name="system.complications" rows="6" data-dtype="String">
|
<div class="form-group editor">
|
||||||
{{{system.complications}}}
|
{{formInput systemFields.complications enriched=enrichedComplications value=system.complications name="system.complications" toggled=true}}
|
||||||
</textarea>
|
</div>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li class="flexrow">
|
<li class="flexrow">
|
||||||
@@ -73,4 +75,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -46,4 +46,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
2
templates/items/item-sheet.hbs
Normal file
2
templates/items/item-sheet.hbs
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
{{!-- Wrapper dynamique : inclut le partial du bon type d'item --}}
|
||||||
|
{{> (lookup . 'itemPartialName')}}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<form class="{{cssClass}}" autocomplete="off">
|
<section class="{{cssClass}}" autocomplete="off">
|
||||||
<header class="sheet-header">
|
<header class="sheet-header">
|
||||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}" />
|
<img class="item-sheet-img" src="{{img}}" data-action="editImage" title="{{name}}" />
|
||||||
<div class="header-fields">
|
<div class="header-fields">
|
||||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name" /></h1>
|
||||||
</div>
|
</div>
|
||||||
@@ -20,20 +20,22 @@
|
|||||||
<strong>Toxicité</strong> : {{system.toxicite}}
|
<strong>Toxicité</strong> : {{system.toxicite}}
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
{{editor description target="system.description" button=true owner=owner editable=editable}}
|
<div class="form-group editor">
|
||||||
|
{{formInput systemFields.description enriched=enrichedDescription value=system.description name="system.description" toggled=true}}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tab details" data-group="primary" data-tab="details">
|
<div class="tab details" data-group="primary" data-tab="details">
|
||||||
|
|
||||||
<h4 class="item-name-label-long">🌿 Vertus médicinales</h4>
|
<h4 class="item-name-label-long">🌿 Vertus médicinales</h4>
|
||||||
<textarea name="system.vertus" rows="6" data-dtype="String">
|
<div class="form-group editor">
|
||||||
{{{system.vertus}}}
|
{{formInput systemFields.vertus enriched=enrichedVertus value=system.vertus name="system.vertus" toggled=true}}
|
||||||
</textarea>
|
</div>
|
||||||
|
|
||||||
<h4 class="item-name-label-long">☠️ Toxicité</h4>
|
<h4 class="item-name-label-long">☠️ Toxicité</h4>
|
||||||
<textarea name="system.toxicite" rows="6" data-dtype="String">
|
<div class="form-group editor">
|
||||||
{{{system.toxicite}}}
|
{{formInput systemFields.toxicite enriched=enrichedToxicite value=system.toxicite name="system.toxicite" toggled=true}}
|
||||||
</textarea>
|
</div>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li class="flexrow">
|
<li class="flexrow">
|
||||||
@@ -68,4 +70,4 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</form>
|
</section>
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
<div class="tab description" data-group="primary" data-tab="description">
|
<div class="tab description" data-group="primary" data-tab="description">
|
||||||
{{editor description target="system.description" button=true owner=owner editable=editable}}
|
<div class="form-group editor">
|
||||||
|
{{formInput systemFields.description enriched=enrichedDescription value=system.description name="system.description" toggled=true}}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user