From 96c0bc2118827bb7ad28cd58c15a72686d25c036 Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Fri, 20 Sep 2024 17:31:09 +0200 Subject: [PATCH 01/11] Adding Animon Story --- Animon_Story/Animon_Story.css | 29 ++++ Animon_Story/Animon_Story.html | 292 +++++++++++++++++++++++++++++++++ Animon_Story/sheet.json | 9 + 3 files changed, 330 insertions(+) create mode 100644 Animon_Story/Animon_Story.css create mode 100644 Animon_Story/Animon_Story.html create mode 100644 Animon_Story/sheet.json diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css new file mode 100644 index 0000000000..ce056fbd17 --- /dev/null +++ b/Animon_Story/Animon_Story.css @@ -0,0 +1,29 @@ +.charsheet { + display: flex; + flex-direction: column; + justify-content: stretch; + gap: 1em; +} + +.charsheet section { + flex-direction: column; + gap: 1em; +} + +.charsheet>div>div:first-child { + gap: 4px; +} + +.sheet-character, +.sheet-action, +.sheet-animon, +.sheet-option { + display: none; +} + +.sheet-tabstoggle[value="character"]~div.sheet-character, +.sheet-tabstoggle[value="action"]~div.sheet-action, +.sheet-tabstoggle[value="animon"]~div.sheet-animon, +.sheet-tabstoggle[value="option"]~div.sheet-option { + display: flex; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html new file mode 100644 index 0000000000..6c6d60e084 --- /dev/null +++ b/Animon_Story/Animon_Story.html @@ -0,0 +1,292 @@ + + + + + +
+ +
+
+ + + + +
+
+ +
+
+ +
+
+ +
+

Character Sheet

+
+
+ + + + + + +
+
+
+

Traits

+
+ + + +
+
+
+
+

Kid Type:

+ +
+
+ Type Feature: + + +
+
+
+
+
+
+

Stamina

+
+ + + +
+
+
+

Harm

+
+ Shaken + +
+
+
+
+ 1. + +
+
+ 2. + +
+
+ 3. + +
+
+
+
+
+
+

Talents:

+

Rank:

+
+
+
+ + +
+
+
+
+
+

Relationships

+
+
+
+ + +
+
+
+
+
+

Stuff & Ani-Tool:

+
+
+
+ + +
+
+ +
+
+
+
+
+

Notes

+
+
+
+ +
+
+
+
+
+ +
+ +
+

Character

+
+
+

Traits

+
+ + + +
+
+
+
+

Kid Type:

+ +
+
+ Type Feature: + + +
+
+
+
+
+
+

Stamina

+
+ + + +
+
+
+

Harm

+
+ Shaken + +
+
+
+
+ 1. + +
+
+ 2. + +
+
+ 3. + +
+
+
+
+
+
+

Talents:

+

Rank:

+
+
+
+ + +
+
+
+
+
+
+ +
+
+

Bond Level

+
+ +
+
+
+

XP

+
+
+ + + + + + + + + + +
+
+
+
+

Bond points

+
+ + +
+
+
+

Bond strain

+
+ +
+
+
+

Sig. Attack Uses

+
+ + + +
+
+
+ +
+ +

Animon:

+ + + +
+
+
+
+ +
+
+

Animon

+ +
+
+ +
+

Option

+
+
+ diff --git a/Animon_Story/sheet.json b/Animon_Story/sheet.json new file mode 100644 index 0000000000..8d4da9e595 --- /dev/null +++ b/Animon_Story/sheet.json @@ -0,0 +1,9 @@ +{ + "html": "Animon_Story.html", + "css": "Animon_Story.css", + "authors": "Aurélien \"Wagi\" Chabani", + "roll20userid": "4842841", + "preview": "Animon_Story.png", + "instructions": "**This is the first version of the Animon Story character sheet for Roll20, created by Wagi.**\nThis sheet might be subject to later changes and updates.\n\n**Thank you for using this sheet!**", + "legacy": false +} From cabb9ff8bec51279de96833fc319647a9f394af5 Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Mon, 23 Sep 2024 14:00:08 +0200 Subject: [PATCH 02/11] some css start for animon --- Animon_Story/Animon_Story.css | 24 +++++++++ Animon_Story/Animon_Story.html | 72 +++++++++++++++++++++++++- Animon_Story/aachen-bold-opentype.otf | Bin 0 -> 28144 bytes 3 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 Animon_Story/aachen-bold-opentype.otf diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index ce056fbd17..02b6c415f0 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -1,3 +1,8 @@ +@font-face { + font-family: "aachen"; + src: url("https://raw.githubusercontent.com/Wagii/roll20-character-sheets/master/Animon_Story/Animon_Story/aachen-bold-opentype.otf") format("opentype"); +} + .charsheet { display: flex; flex-direction: column; @@ -27,3 +32,22 @@ .sheet-tabstoggle[value="option"]~div.sheet-option { display: flex; } + +span, label, h1, h2, h3, h4, h5 { +} + +section { + display: flex; + background-color: #bcbdc0; + border: 6px solid #808285; + border-radius: 20px; + padding: 6px; +} + +article { + display: flex; + background-color: white; + border: 4px solid black; + border-radius: 15px; + padding: 4px; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 6c6d60e084..4cdd642b3b 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -280,8 +280,78 @@
-

Animon

+
+

Animon (Basic)

+
+
+

Stats

+
+ Heart + +
+
+ Power + +
+
+ Agility + +
+
+ Brains + +
+
+
+

HP

+
+ + + +
+
+
+

Damage

+
+ +
+
+
+

Dodge

+
+ +
+
+
+

Initiative

+
+ +
+
+
+ Name + +
+
+ Nature + +
+
+
+

Class

+ +
+
+

Element

+ +
+
+
+

Signature attack

+
+
+
diff --git a/Animon_Story/aachen-bold-opentype.otf b/Animon_Story/aachen-bold-opentype.otf new file mode 100644 index 0000000000000000000000000000000000000000..de8d0afa3844052f3d666de8b66d39b0fab90f00 GIT binary patch literal 28144 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 L8^H6@Du4YykXP$J literal 0 HcmV?d00001 From f6d2f87c8f21b7c7811c60276ed3bb8896a43f8d Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Mon, 23 Sep 2024 15:52:56 +0200 Subject: [PATCH 03/11] Continuing to put things in --- Animon_Story/Animon_Story.css | 6 +- Animon_Story/Animon_Story.html | 552 ++++++++++++++++++++++++++++++++- 2 files changed, 537 insertions(+), 21 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index 02b6c415f0..1034caa2f2 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -1,8 +1,3 @@ -@font-face { - font-family: "aachen"; - src: url("https://raw.githubusercontent.com/Wagii/roll20-character-sheets/master/Animon_Story/Animon_Story/aachen-bold-opentype.otf") format("opentype"); -} - .charsheet { display: flex; flex-direction: column; @@ -34,6 +29,7 @@ } span, label, h1, h2, h3, h4, h5 { + font-weight: bold; } section { diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 4cdd642b3b..07154a6703 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -7,6 +7,56 @@ setAttrs({sheetTab: button}); }); }); + + const animonLevels = ["fledgling", "basic", "super", "ultra", "giga"]; + const maxValues = { + maxAttr: [3, 4, 5, 6, 6], + hp: [0, 5, 10, 15, 20], + hpMult: [3, 3, 4, 5, 6], + damage: [1, 2, 2, 3, 4], + }; + + animonLevels.forEach((level, index) => { + on(`change:${level}_animon_heart`, function(eventInfo) { + const baseHeart = parseInt(eventInfo.newValue); + const heart = Math.max(1, Math.min(baseHeart, maxValues.maxAttr[index])); + const output = { + [eventInfo.sourceAttribute]: heart, + [`${level}_animon_hp_max`]: maxValues.hp[index] + heart * maxValues.hpMult[index] + }; + setAttrs(output); + }); + + on(`change:${level}_animon_power`, function(eventInfo) { + const basePower = parseInt(eventInfo.newValue); + const power = Math.max(1, Math.min(basePower, maxValues.maxAttr[index])); + const output = { + [eventInfo.sourceAttribute]: power, + [`${level}_animon_damage`]: power * maxValues.damage[index] + }; + setAttrs(output); + }); + + on(`change:${level}_animon_agility`, function(eventInfo) { + const baseAgility = parseInt(eventInfo.newValue); + const agility = Math.max(1, Math.min(baseAgility, maxValues.maxAttr[index])); + const output = { + [eventInfo.sourceAttribute]: agility, + [`${level}_animon_dodge`]: agility + }; + setAttrs(output); + }); + + on(`change:${level}_animon_brains`, function(eventInfo) { + const baseBrains = parseInt(eventInfo.newValue); + const brains = Math.max(1, Math.min(baseBrains, maxValues.maxAttr[index])); + const output = { + [eventInfo.sourceAttribute]: brains, + [`${level}_animon_initiative`]: brains + }; + setAttrs(output); + }); + }); @@ -281,77 +331,547 @@
-

Animon (Basic)

+

Fledgling

+
+
+ Name: + +
+
+ Nature: + +
+
+ Class: + +
+
+ Element: +

Stats

Heart - +
Power - +
Agility - +
Brains - +

HP

- - - + + +

Damage

- +

Dodge

- +

Initiative

- + +
+
+ + + + + + + + + + +
+
+
+

Basic

+
+
+

Stats

+
+ Heart + +
+
+ Power + +
+
+ Agility + +
+
+ Brains + +
+
+
+

HP

+
+ + + +
+
+
+

Damage

+
+ +
+
+
+

Dodge

+
+ +
+
+
+

Initiative

+
+
Name - +
Nature - +

Class

- +

Element

- +

Signature attack

- +
+ Name: + +
+
+
+ Rank: + +
+
+ Element: + +
+
+
+ Effect 1) + +
+
+ Effect 2) + +
+
+ Effect 3) + +
+
+ + + + + + + + + + + + + + +
+ Qualities:Rank:
1.
2.
+
+
+
+
+

Super

+
+
+

Stats

+
+ Heart + +
+
+ Power + +
+
+ Agility + +
+
+ Brains + +
+
+
+

HP

+
+ + + +
+
+
+

Damage

+
+ +
+
+
+

Dodge

+
+ +
+
+
+

Initiative

+
+ +
+
+
+ Name + +
+
+ Nature + +
+
+
+

Class

+ +
+
+

Element

+ +
+
+
+

Signature attack

+
+
+ Name: + +
+
+
+ Rank: + +
+
+ Element: + +
+
+
+ Effect 1) + +
+
+ Effect 2) + +
+
+ Effect 3) + +
+
+
+
+ + + + + + + + + + + + + + +
+ Qualities:Rank:
1.
2.
+
+
+
+
+

Ultra

+
+
+

Stats

+
+ Heart + +
+
+ Power + +
+
+ Agility + +
+
+ Brains + +
+
+
+

HP

+
+ + + +
+
+
+

Damage

+
+ +
+
+
+

Dodge

+
+ +
+
+
+

Initiative

+
+ +
+
+
+ Name + +
+
+ Nature + +
+
+
+

Class

+ +
+
+

Element

+ +
+
+
+

Signature attack

+
+
+ Name: + +
+
+
+ Rank: + +
+
+ Element: + +
+
+
+ Effect 1) + +
+
+ Effect 2) + +
+
+ Effect 3) + +
+
+
+
+ + + + + + + + + + + + + + +
+ Qualities:Rank:
1.
2.
+
+
+
+
+

Giga

+
+
+

Stats

+
+ Heart + +
+
+ Power + +
+
+ Agility + +
+
+ Brains + +
+
+
+

HP

+
+ + + +
+
+
+

Damage

+
+ +
+
+
+

Dodge

+
+ +
+
+
+

Initiative

+
+ +
+
+
+ Name + +
+
+ Nature + +
+
+
+

Class

+ +
+
+

Element

+ +
+
+
+

Signature attack

+
+
+ Name: + +
+
+
+ Rank: + +
+
+ Element: + +
+
+
+ Effect 1) + +
+
+ Effect 2) + +
+
+ Effect 3) + +
+
+
+
+ + + + + + + + + + + + + + +
+ Qualities:Rank:
1.
2.
+
From 2b123307d4474ba2fa2e3f159106d055ba4dbf7b Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Tue, 24 Sep 2024 18:03:27 +0200 Subject: [PATCH 04/11] Adding new functionalities --- Animon_Story/Animon_Story.css | 5 + Animon_Story/Animon_Story.html | 496 ++++++++++++++++++++++++++++++--- 2 files changed, 458 insertions(+), 43 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index 1034caa2f2..b8804b17a9 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -47,3 +47,8 @@ article { border-radius: 15px; padding: 4px; } + +span.sheet-stage, +h3.sheet-stage { + text-transform: uppercase; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 07154a6703..78066d0605 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -16,45 +16,146 @@ damage: [1, 2, 2, 3, 4], }; + on("clicked:animon_evolve clicked:animon_devolve", function(eventInfo) { + const delta = eventInfo.htmlAttributes.name === "act_animon_evolve" ? 1 : -1; + getAttrs(["display_animon_evo"], function(values) { + var output = {}; + const evo = values["display_animon_evo"]; + const newEvo = (animonLevels.indexOf(evo) + delta + animonLevels.length) % animonLevels.length; + const evoStage = animonLevels[newEvo]; + + output["display_animon_evo"] = evoStage; + + setAttrs(output, {silent: false}); + }); + }); + + on("change:display_animon_evo", function(eventInfo) { + const evoStage = eventInfo.newValue; + + var attrs_to_get = [ + `${evoStage}_animon_name`, + `${evoStage}_animon_nature`, + `${evoStage}_animon_class`, + `${evoStage}_animon_element`, + `${evoStage}_animon_heart`, + `${evoStage}_animon_power`, + `${evoStage}_animon_agility`, + `${evoStage}_animon_brains`, + `${evoStage}_animon_hp`, + `${evoStage}_animon_damage`, + `${evoStage}_animon_dodge`, + `${evoStage}_animon_initiative`, + `${evoStage}_animon_sigAttack_name`, + `${evoStage}_animon_sigAttack_rank`, + `${evoStage}_animon_sigAttack_element`, + `${evoStage}_animon_sigAttack_effect1`, + `${evoStage}_animon_sigAttack_effect2`, + `${evoStage}_animon_sigAttack_effect3`, + `${evoStage}_animon_quality_1`, + `${evoStage}_animon_quality_1_rank`, + `${evoStage}_animon_quality_2`, + `${evoStage}_animon_quality_2_rank` + ]; + + getAttrs(attrs_to_get, function(values) { + var output = {}; + + const name = values[`${evoStage}_animon_name`]; + const nature = values[`${evoStage}_animon_nature`]; + const animonClass = values[`${evoStage}_animon_class`]; + const element = values[`${evoStage}_animon_element`]; + const heart = values[`${evoStage}_animon_heart`]; + const power = values[`${evoStage}_animon_power`]; + const agility = values[`${evoStage}_animon_agility`]; + const brains = values[`${evoStage}_animon_brains`]; + const hp = values[`${evoStage}_animon_hp`]; + const damage = values[`${evoStage}_animon_damage`]; + const dodge = values[`${evoStage}_animon_dodge`]; + const initiative = values[`${evoStage}_animon_initiative`]; + const sigAttackName = values[`${evoStage}_animon_sigAttack_name`]; + const sigAttackRank = values[`${evoStage}_animon_sigAttack_rank`]; + const sigAttackElement = values[`${evoStage}_animon_sigAttack_element`]; + const sigAttackEffect1 = values[`${evoStage}_animon_sigAttack_effect1`]; + const sigAttackEffect2 = values[`${evoStage}_animon_sigAttack_effect2`]; + const sigAttackEffect3 = values[`${evoStage}_animon_sigAttack_effect3`]; + const quality1 = values[`${evoStage}_animon_quality_1`]; + const quality1Rank = values[`${evoStage}_animon_quality_1_rank`]; + const quality2 = values[`${evoStage}_animon_quality_2`]; + const quality2Rank = values[`${evoStage}_animon_quality_2_rank`]; + + output["display_animon_name"] = name; + output["display_animon_nature"] = nature; + output["display_animon_class"] = animonClass; + output["display_animon_element"] = element; + output["display_animon_heart"] = heart; + output["display_animon_power"] = power; + output["display_animon_agility"] = agility; + output["display_animon_brains"] = brains; + output["display_animon_hp"] = hp; + output["display_animon_damage"] = damage; + output["display_animon_dodge"] = dodge; + output["display_animon_initiative"] = initiative; + output["display_animon_sigAttack_name"] = sigAttackName; + output["display_animon_sigAttack_rank"] = sigAttackRank; + output["display_animon_sigAttack_element"] = sigAttackElement; + output["display_animon_sigAttack_effect1"] = sigAttackEffect1; + output["display_animon_sigAttack_effect2"] = sigAttackEffect2; + output["display_animon_sigAttack_effect3"] = sigAttackEffect3; + output["display_animon_quality_1"] = quality1; + output["display_animon_quality_1_rank"] = quality1Rank; + output["display_animon_quality_2"] = quality2; + output["display_animon_quality_2_rank"] = quality2Rank; + + setAttrs(output, {silent: false}); + }); + }); + animonLevels.forEach((level, index) => { - on(`change:${level}_animon_heart`, function(eventInfo) { - const baseHeart = parseInt(eventInfo.newValue); - const heart = Math.max(1, Math.min(baseHeart, maxValues.maxAttr[index])); - const output = { - [eventInfo.sourceAttribute]: heart, - [`${level}_animon_hp_max`]: maxValues.hp[index] + heart * maxValues.hpMult[index] - }; - setAttrs(output); + on(`change:${level}_animon_heart change:bonusHP_${level} change:bonusHPMultiplier_${level}`, function(eventInfo) { + getAttrs([`${level}_animon_heart`, `bonusHP_${level}`, `bonusHPMultiplier_${level}`], function(values) { + const heart = Math.max(1, Math.min(maxValues.maxAttr[index], parseInt(values[`${level}_animon_heart`]))); + const bonusHp = parseInt(values[`bonusHP_${level}`]); + const heartMult = parseInt(values[`bonusHPMultiplier_${level}`]); + setAttrs({ + [`${level}_animon_heart`]: heart, + [`${level}_animon_hp_max`]: bonusHp + maxValues.hp[0] + heart * (maxValues.hpMult[0] + heartMult) + }, {silent: true}); + }); }); - on(`change:${level}_animon_power`, function(eventInfo) { - const basePower = parseInt(eventInfo.newValue); - const power = Math.max(1, Math.min(basePower, maxValues.maxAttr[index])); - const output = { - [eventInfo.sourceAttribute]: power, - [`${level}_animon_damage`]: power * maxValues.damage[index] - }; - setAttrs(output); + on(`change:${level}_animon_power change:bonusDamage_${level} change:bonusDamageMultiplier_${level}`, function(eventInfo) { + getAttrs([`${level}_animon_power`, `bonusDamage_${level}`, `bonusDamageMultiplier_${level}`], function(values) { + const power = Math.max(1, Math.min(maxValues.maxAttr[index], parseInt(values[`${level}_animon_power`]))); + const bonusDamage = parseInt(values[`bonusDamage_${level}`]); + const powerMult = parseInt(values[`bonusDamageMultiplier_${level}`]); + setAttrs({ + [`${level}_animon_power`]: power, + [`${level}_animon_damage`]: bonusDamage + power * (powerMult + maxValues.damage[index]) + }, {silent: true}); + }); }); - on(`change:${level}_animon_agility`, function(eventInfo) { - const baseAgility = parseInt(eventInfo.newValue); - const agility = Math.max(1, Math.min(baseAgility, maxValues.maxAttr[index])); - const output = { - [eventInfo.sourceAttribute]: agility, - [`${level}_animon_dodge`]: agility - }; - setAttrs(output); + on(`change:${level}_animon_agility change:bonusDodge_${level}`, function(eventInfo) { + getAttrs([`${level}_animon_agility`, `bonusDodge_${level}`], function(values) { + const agility = Math.max(1, Math.min(maxValues.maxAttr[index], parseInt(values[`${level}_animon_agility`]))); + const bonusDodge = parseInt(values[`bonusDodge_${level}`]); + setAttrs({ + [`${level}_animon_agility`]: agility, + [`${level}_animon_dodge`]: bonusDodge + agility + }, {silent: true}); + }); }); - on(`change:${level}_animon_brains`, function(eventInfo) { - const baseBrains = parseInt(eventInfo.newValue); - const brains = Math.max(1, Math.min(baseBrains, maxValues.maxAttr[index])); - const output = { - [eventInfo.sourceAttribute]: brains, - [`${level}_animon_initiative`]: brains - }; - setAttrs(output); + on(`change:${level}_animon_brains change:bonusInitiative_${level}`, function(eventInfo) { + getAttrs([`${level}_animon_brains`, `bonusInitiative_${level}`], function(values) { + const brains = Math.max(1, Math.min(maxValues.maxAttr[index], parseInt(values[`${level}_animon_brains`]))); + const bonusInitiative = parseInt(values[`bonusInitiative_${level}`]); + setAttrs({ + [`${level}_animon_brains`]: brains, + [`${level}_animon_initiative`]: bonusInitiative + brains + }, {silent: true}); + }); }); }); @@ -269,7 +370,6 @@
-

Bond Level

@@ -316,12 +416,126 @@
- +

Animon:

- - +
+
+ Stage: + +
+
+ Name: + + +
+
+ Nature: + + +
+
+ Class: + + +
+
+ Element: + + +
+
+ Heart: + + +
+
+ Power: + + +
+
+ Agility: + + +
+
+ Brains: + + +
+
+ HP: + + +
+
+ Damage: + + +
+
+ Dodge: + + +
+
+ Initiative: + + +
+
+ Sig. Attack: + + +
+
+ Rank: + + +
+
+ Element: + + +
+
+ Effect 1: + + +
+
+ Effect 2: + + +
+
+ Effect 3: + + +
+
+ Quality 1: + + +
+
+ Rank: + + +
+
+ Quality 2: + + +
+
+ Rank: + + +
+
@@ -331,7 +545,7 @@
-

Fledgling

+

Fledgling

Name: @@ -401,13 +615,13 @@ - +
-

Basic

+

Basic

Stats

@@ -524,7 +738,7 @@
-

Super

+

Super

Stats

@@ -641,7 +855,7 @@
-

Ultra

+

Ultra

Stats

@@ -758,7 +972,7 @@
-

Giga

+

Giga

Stats

@@ -876,7 +1090,203 @@
-

Option

+
+
+

Roll type

+
+ Roll visibility: + +
+
+
+

Roll popup

+
+ Pops every time: + +
+
+ Default bonus dice: + +
+
+ Default modifier: + +
+
+
+
+
+

Bonus HP

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
+

Bonus HP Multiplier

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
+

Bonus Damage

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
+

Bonus Damage Multiplier

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
+

Bonus Dodge

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
+

Bonus Initiative

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
+

Bonus Sig. Attack

+
+ Fledgling: + +
+
+ Basic: + +
+
+ Super: + +
+
+ Ultra: + +
+
+ Giga: + +
+
+
From 23715f952f882b7a7a683a3b5b5744dbae346231 Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Wed, 25 Sep 2024 16:04:49 +0200 Subject: [PATCH 05/11] adding some buttons --- Animon_Story/Animon_Story.css | 4 + Animon_Story/Animon_Story.html | 559 ++++++++++++++++++--------------- 2 files changed, 313 insertions(+), 250 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index b8804b17a9..6e4a4db382 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -52,3 +52,7 @@ span.sheet-stage, h3.sheet-stage { text-transform: uppercase; } + +fieldset.sheet-noModifs ~ div.repcontrol { + display: none; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 78066d0605..d6e5e1b17a 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -1,165 +1,5 @@ - -
@@ -181,36 +21,47 @@
-

Character Sheet

- - - - - - + + + + + +

Traits

- - - +
+ Logic + +
+
+ Reflex + +
+
+ Spirit + +

Kid Type:

- +
Type Feature: - - + +
@@ -254,8 +105,9 @@
- - +
@@ -305,9 +157,18 @@

Traits

- - - +
+ Logic + +
+
+ Reflex + +
+
+ Spirit + +
@@ -317,8 +178,10 @@
Type Feature: - - + +
+ +
@@ -328,7 +191,6 @@

Stamina

-
@@ -360,10 +222,11 @@

Talents:

Rank:

-
+
- - +
@@ -374,7 +237,7 @@

Bond Level

- +
@@ -398,7 +261,8 @@

Bond points

- + +
@@ -718,22 +582,23 @@
- - - - - - - - - - - - - - -
- Qualities:Rank:
1.
2.
+
+
+
+
Qualities:
+
Rank:
+
+
+
1.
+
+
+
+
+
2.
+
+
+
+
@@ -835,22 +700,23 @@
- - - - - - - - - - - - - - -
- Qualities:Rank:
1.
2.
+
+
+
+
Qualities:
+
Rank:
+
+
+
1.
+
+
+
+
+
2.
+
+
+
+
@@ -952,22 +818,23 @@
- - - - - - - - - - - - - - -
- Qualities:Rank:
1.
2.
+
+
+
+
Qualities:
+
Rank:
+
+
+
1.
+
+
+
+
+
2.
+
+
+
+
@@ -1069,22 +936,23 @@
- - - - - - - - - - - - - - -
- Qualities:Rank:
1.
2.
+
+
+
+
Qualities:
+
Rank:
+
+
+
1.
+
+
+
+
+
2.
+
+
+
+
@@ -1289,4 +1157,195 @@ + + From 06590736b4b8fdc59ea2be3b9edfb59a786196b6 Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Thu, 10 Oct 2024 12:33:01 +0200 Subject: [PATCH 06/11] Styling and things --- Animon_Story/Animon_Story.css | 32 ++++++++++++++ Animon_Story/Animon_Story.html | 76 +++++++++++++++++++++++++--------- 2 files changed, 89 insertions(+), 19 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index 6e4a4db382..a4ff7fd68d 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -56,3 +56,35 @@ h3.sheet-stage { fieldset.sheet-noModifs ~ div.repcontrol { display: none; } + +.sheet-grid { + display: grid; +} + +article.sheet-flexContent div { + display: flex; +} + +article span, +article h1, +article h2, +article h3 { + align-self: center; +} + +article.sheet-kid span { + align-self: flex-end; +} +article.sheet-kid input { + flex: 1 1 auto; + width: fit-content; +} + +article.sheet-kid div { + padding: 2px; + border-bottom: 2px dashed gray; +} +article.sheet-grid div:nth-child(2), +article.sheet-grid div:nth-child(3) { + border-right: 2px solid gray; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index d6e5e1b17a..4ee0f87cae 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -20,18 +20,47 @@
-
-
-

Character Sheet

-
-
- - - - - - -
+
+
+
+

Kid

+
+
+
+ Kid Name: + +
+
+ Virtue: + +
+
+ Desire: + +
+
+ Flaw: + +
+
+ Special Item: + +
+
+

Traits

@@ -136,7 +165,7 @@
-
+

Notes

@@ -152,7 +181,6 @@
-

Character

Traits

@@ -312,22 +340,30 @@
Heart: - +
Power: - +
Agility: - +
Brains: - +
HP: @@ -347,7 +383,9 @@
Initiative: - +
Sig. Attack: From 3f3535b8cad8aef3b59fb08959e71884f8cc8708 Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Thu, 10 Oct 2024 17:42:58 +0200 Subject: [PATCH 07/11] Layout continuing --- Animon_Story/Animon_Story.css | 68 ++++++++++++++++ Animon_Story/Animon_Story.html | 143 +++++++++++++++++++-------------- 2 files changed, 150 insertions(+), 61 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index a4ff7fd68d..78f6cb0e1a 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -88,3 +88,71 @@ article.sheet-grid div:nth-child(2), article.sheet-grid div:nth-child(3) { border-right: 2px solid gray; } + +article.sheet-traits { + grid-row: 2 / 3; + grid-column: 1 / 2; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-traits header { + flex: 1 1 auto; + height: 32px; +} + +article.sheet-traits header.sheet-separation { + border-bottom: 1px solid gray; +} + +article.sheet-traits header h2 { + text-align: center; + font-size: xx-large; +} + +article.sheet-traits div { + flex: 1 1 auto; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-traits>div { + display: flex; + flex-flow: row nowrap; + align-items: stretch; +} + +article.sheet-traits div button, +article.sheet-traits div input { + flex: 1 1 auto; + max-width: 100px; + min-width: 100px; +} + +article.sheet-traits div button { + margin: 0 !important; + border: 0; + padding: 0 !important; + border-radius: 0; + background: none; +} + +article.sheet-traits div button::before { + content: "" !important; +} + +article.sheet-traits div input { + padding-left: 13px; + border: 0; + text-align: center; + font-size: large; + font-weight: bold; +} + +article.sheet-traits div.sheet-separation { + border-right: 4px dotted gray; + padding-right: 4px; + margin-right: 4px; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 4ee0f87cae..787e8c467c 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -61,27 +61,72 @@
-
-
+
+

Traits

- Logic - -
-
- Reflex - -
-
- Spirit - - + +
+
+ + +
+
+ + +
-
+
+
+

Stamina

+
+ + + +
+
+
+

Harm

+
+ Shaken + +
+
+
+
+ 1. + +
+
+ 2. + +
+
+ 3. + +
+
+
+

Kid Type:

@@ -94,40 +139,24 @@
-
-
-
-

Stamina

-
- - - -
-
-
-

Harm

-
- Shaken - -
-
-
-
- 1. - -
-
- 2. - -
-
- 3. - -
+
+
+

Relationships

+
+
+
+ +
-
-
-
+ +
+

Talents:

Rank:

@@ -140,18 +169,10 @@
-
-
-

Relationships

-
-
-
- - -
-
-
-
+

Stuff & Ani-Tool:

From a87cc0d7d6d9074f6eef363b68db46d2f8f09d1d Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Wed, 16 Oct 2024 17:52:11 +0200 Subject: [PATCH 08/11] layout and things --- Animon_Story/Animon_Story.css | 426 +++++++++++++++++++- Animon_Story/Animon_Story.html | 687 +++++++++++++++++---------------- 2 files changed, 776 insertions(+), 337 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index 78f6cb0e1a..7b595752f1 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -25,13 +25,54 @@ .sheet-tabstoggle[value="action"]~div.sheet-action, .sheet-tabstoggle[value="animon"]~div.sheet-animon, .sheet-tabstoggle[value="option"]~div.sheet-option { - display: flex; + display: grid; +} + +div.sheet-folder { + width: 18px; +} +input.sheet-foldable[type="checkbox"] { + opacity: 0; + min-width: 18px; + position: relative; + z-index: 1; +} +span.sheet-foldable { + left: -15px; + display: inline-flex; + cursor: pointer; + font-size: larger; + position: relative; + z-index: 0; +} +span.sheet-foldable::before { + z-index: 1; + content: "▼"; + display: inline-block; + transition: transform 0.2s ease; +} +input.sheet-foldable[type="checkbox"]:not(:checked)+span.sheet-foldable::before { + transform: rotate(-90deg); +} +input.sheet-foldable[type="checkbox"]:checked+div.sheet-foldable { + display: none; +} +input.sheet-foldable[type="hidden"][value="0"]+div.sheet-foldable { + display: none; } span, label, h1, h2, h3, h4, h5 { font-weight: bold; } +input { + border: 0; +} + +input[type="text"] { + background-color: transparent; +} + section { display: flex; background-color: #bcbdc0; @@ -100,15 +141,12 @@ article.sheet-traits { article.sheet-traits header { flex: 1 1 auto; height: 32px; -} - -article.sheet-traits header.sheet-separation { border-bottom: 1px solid gray; } article.sheet-traits header h2 { text-align: center; - font-size: xx-large; + font-size: x-large; } article.sheet-traits div { @@ -131,7 +169,8 @@ article.sheet-traits div input { min-width: 100px; } -article.sheet-traits div button { +article.sheet-traits div button, +article.sheet-kid-type button { margin: 0 !important; border: 0; padding: 0 !important; @@ -139,7 +178,8 @@ article.sheet-traits div button { background: none; } -article.sheet-traits div button::before { +article.sheet-traits div button::before, +article.sheet-kid-type button::before { content: "" !important; } @@ -151,8 +191,376 @@ article.sheet-traits div input { font-weight: bold; } -article.sheet-traits div.sheet-separation { - border-right: 4px dotted gray; +article.sheet-traits>div>div { + border-right: 4px dotted lightgray; padding-right: 4px; margin-right: 4px; } + +article.sheet-traits>div>div:last-child { + border-right: 0; + padding-right: 0; + margin-right: 0; +} + +article.sheet-stamina { + grid-row: 3 / 4; + grid-column: 1 / 2; + display: flex; + flex-flow: row wrap; + align-items: stretch; +} + +article.sheet-stamina header { + flex: 0 0 auto; + padding-right: 4px; + border-right: 2px solid gray; + margin-right: 4px; + display: flex; +} + +article.sheet-stamina header h2 { + text-align: start; + font-size: x-large; + vertical-align: middle; +} + +article.sheet-stamina>div { + flex: 1 1 auto; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; + position: relative; +} + +article.sheet-stamina input { + align-self: flex-start; + flex: 1 1 auto; + font-size: large; +} + +article.sheet-stamina span { + align-self: flex-end; + flex: 1 1 auto; + font-size: large; +} + +div.bar { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: linear-gradient( + to bottom right, + transparent 49%, + black 50%, + transparent 51% + ); + pointer-events: none; +} + +article.sheet-harm { + grid-row: 4 / 5; + grid-column: 1 / 2; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-harm header { + display: flex; + justify-content: space-between; + padding-bottom: 2px; + border-bottom: 2px solid lightgray; + margin-bottom: 2px; +} + +article.sheet-harm header h2 { + text-align: left; + font-size: x-large; + vertical-align: bottom; +} + +article.sheet-harm header div { + display: flex; + flex-flow: row nowrap; + align-items: center; +} + +article.sheet-harm header div span { + font-size: larger; + vertical-align: bottom; +} + +article.sheet-harm>div { + flex: 1 1 auto; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-harm>div>div { + display: flex; + flex-flow: row nowrap; + align-items: stretch; + border-bottom: 2px dashed lightgray; +} + +article.sheet-harm div.no-border { + border: 0; +} + +article.sheet-harm>div input { + flex: 1 1 auto; + font-size: large; +} + +article.sheet-kid-type { + grid-row: 2 / 5; + grid-column: 2 / 3; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-kid-type div, +article.sheet-kid-type header { + display: flex; + justify-content: stretch; + gap: 4px; +} + +article.sheet-kid-type header { + padding-bottom: 2px; + border-bottom: 2px solid lightgray; + margin-bottom: 2px; +} + +article.sheet-kid-type header h2 { + text-align: center; + font-size: x-large; +} + +article.sheet-kid-type header input { + flex: 1 1 auto; + font-size: large; +} + +article.sheet-kid-type>div span { + font-size: large; + vertical-align: middle; +} + +article.sheet-kid-type>div input { + flex: 1 1 auto; + font-size: large; +} + +article.sheet-kid-type textarea { + flex: 1 1 auto; + font-size: large; + border: 0; + width: auto; +} + +article.sheet-relationships { + grid-row: 5 / 6; + grid-column: 1 / 2; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-relationships header { + display: flex; + justify-content: space-between; + padding-bottom: 2px; + border-bottom: 2px solid lightgray; + margin-bottom: 2px; +} + +div.repcontainer[data-groupname="repeating_relationship"] div.itemcontrol { + z-index: 2; +} +div.repcontainer[data-groupname="repeating_relationship"] div.repitem { + border-bottom: 2px dashed lightgray; +} +div.repcontainer[data-groupname="repeating_relationship"] div.repitem:last-child { + border-bottom: 0; +} + +div.repeating_relationship_row { + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +div.repeating_relationship_row div { + display: flex; + flex-flow: row nowrap; + justify-content: space-between; +} + +div.repeating_relationship_row div input[type="text"] { + flex: 1 1 auto; + font-size: large; +} + +div.repeating_relationship_row span.sheet-foldable { + font-size: large; +} + +div.repeating_relationship_row textarea { + flex: 1 1 auto; + border: 0; + width: auto; +} + +article.sheet-talents { + grid-row: 5 / 6; + grid-column: 2 / 3; + display: flex; + flex-flow: column nowrap; + gap: 2px; +} + +article.sheet-talents header { + grid-column: 1 / 4; + border-bottom: 2px solid lightgray; + display: grid; + grid-template-columns: 1fr 70px; +} + +div.repcontainer[data-groupname="repeating_talent"] div.repeating_talent_row { + display: grid; + grid-template-columns: 30px 1fr 70px; +} + +div.repeating_talent_row input { + width: auto; + font-size: large; +} + +div.repeating_talent_row input[type="number"] { + font-size: large; + background-color: transparent; +} + +div.repeating_talent_row button { + background-color: transparent; + background-image: none; + border: none; + align-self: self-end; +} + +div.repcontainer[data-groupname="repeating_talent"] div.repitem { + border-bottom: 2px dashed lightgray; +} +div.repcontainer[data-groupname="repeating_talent"] div.repitem:last-child { + border-bottom: 0; +} + +article.sheet-stuff { + grid-row: 6 / 7; + grid-column: 1 / 3; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-stuff header { + display: flex; + justify-content: space-between; + border-bottom: 2px solid lightgray; + margin-bottom: 2px; +} + +div.repeating_stuff_row { + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +div.repeating_stuff_row div { + display: flex; + flex-flow: row nowrap; +} + +div.repcontainer[data-groupname="repeating_stuff"] { + display: flex; + flex-flow: row wrap; + gap: 4px; +} + +div.repcontainer[data-groupname="repeating_stuff"] div.repitem { + flex: 1 1 auto; +} + +div.repcontainer[data-groupname="repeating_stuff"] div.repitem input[type="text"] { + flex: 1 1 auto; + font-size: large; +} + +div.repcontainer[data-groupname="repeating_stuff"] div.repitem textarea { + flex: 1 1 auto; + border: 0; + width: auto; +} + +article.sheet-notes { + grid-column: 1 / 3; + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +article.sheet-notes header { + border-bottom: 2px solid lightgray; + margin-bottom: 2px; +} + +div.repcontainer[data-groupname="repeating_note"] { + display: flex; + flex-flow: row wrap; + gap: 4px; +} + +div.repcontainer[data-groupname="repeating_note"] div.repitem { + flex: 1 1 auto; +} + +div.repeating_note_row { + display: flex; + flex-flow: column nowrap; + align-items: stretch; +} + +div.repeating_note_row div { + display: flex; + flex-flow: row nowrap; +} + +div.repeating_note_row input[type="text"] { + flex: 1 1 auto; + font-size: large; +} + +div.repeating_note_row textarea { + flex: 1 1 auto; + border: 0; + width: auto; +} + +div.sheet-action article.sheet-traits button { + display: flex; + flex-flow: column nowrap; + align-items: stretch; + justify-content: center; +} + +div.sheet-action { + grid-template: repeat(2, 1fr) / repeat(2, 1fr); + gap: 4px; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 787e8c467c..812dbb1cb7 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -62,17 +62,17 @@
-
+

Traits

-
+
-
+
@@ -86,25 +86,196 @@
-
+

Stamina

- - - +
+ + + +
+
-
+
+
+

Harm:

+
+ Shaken: + +
+
+
+
+ 1. + +
+
+ 2. + +
+
+ 3. + +
+
+
+
+
+ + +
+
+ Type Feature: + +
+ +
+
+
+

Relationships:

+
+
+
+
+
+ + +
+ +
+ +
+ +
+
+
+
+
+
+

Talents:

+

Rank:

+
+
+
+
+
+
+
+
+

Stuff & Ani-Tool:

+
+
+
+
+
+ + +
+ + +
+ +
+ +
+
+
+
+
+
+

Notes

+
+
+
+
+
+ + +
+ +
+ +
+ +
+
+
+
+ + + +
+ +
+
+
+

Traits

+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+ + +
+
+ Type Feature: + +
+ +
+
+
+

Stamina

+
+
+ + + +
+
+
+

Harm

-
- Shaken +
+ Shaken:
@@ -123,346 +294,206 @@
-
-
-
-

Kid Type:

- -
-
- Type Feature: - - -
-
-
-
-
-

Relationships

-
-
-
- - -
-
-
-
+

Talents:

-

Rank:

+

Rank:

-
-
-
-
-

Stuff & Ani-Tool:

-
-
-
- - -
-
- -
-
-
-
-
-

Notes

-
-
-
- + +
- - -
- -
+
-

Traits

+

Bond Level

+
+ +
+
+
+

XP

- Logic - -
-
- Reflex - -
-
- Spirit - + + + + + + + + + +
-
-

Kid Type:

- -
-
- Type Feature: - -
- -
-
+

Bond points

+ + +
-
-
-
-

Stamina

-
- - -
-
-
-

Harm

-
- Shaken - -
-
-
-
- 1. - -
-
- 2. - -
-
- 3. - -
-
-
-
-

Talents:

-

Rank:

+

Bond strain

-
-
-
-
+ +
+
+
+

Sig. Attack Uses

+
+ + +
-
-
-
-
-

Bond Level

-
- -
-
-
-

XP

-
+
+ +
+ +

Animon:

+
- - - - - - - - - - + Stage: +
-
-
-
-

Bond points

-
- - - -
-
-
-

Bond strain

-
- -
-
-
-

Sig. Attack Uses

-
- - - -
-
-
- -
- -

Animon:

-
-
- Stage: - -
-
- Name: - - -
-
- Nature: - - -
-
- Class: - - -
-
- Element: - - -
-
- Heart: - - -
-
- Power: - - -
-
- Agility: - - -
-
- Brains: - - -
-
- HP: - - -
-
- Damage: - - -
-
- Dodge: - - -
-
- Initiative: - - -
-
- Sig. Attack: - - -
-
- Rank: - - -
-
- Element: - - -
-
- Effect 1: - - -
-
- Effect 2: - - -
-
- Effect 3: - - -
-
- Quality 1: - - -
-
- Rank: - - -
-
- Quality 2: - - -
-
- Rank: - - -
+
+ Name: + +
- -
-
-
+
+ Nature: + + +
+
+ Class: + + +
+
+ Element: + + +
+
+ Heart: + + +
+
+ Power: + + +
+
+ Agility: + + +
+
+ Brains: + + +
+
+ HP: + + +
+
+ Damage: + + +
+
+ Dodge: + + +
+
+ Initiative: + + +
+
+ Sig. Attack: + + +
+
+ Rank: + + +
+
+ Element: + + +
+
+ Effect 1: + + +
+
+ Effect 2: + + +
+
+ Effect 3: + + +
+
+ Quality 1: + + +
+
+ Rank: + + +
+
+ Quality 2: + + +
+
+ Rank: + + +
+
+ +
+
From 5e7dc9218ef0baee2f826d0136b987b1b9676be1 Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Fri, 18 Oct 2024 17:40:06 +0200 Subject: [PATCH 09/11] Refactor Animon_Story CSS layout --- Animon_Story/Animon_Story.css | 34 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 22 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index 7b595752f1..dc2a66a45e 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -14,6 +14,12 @@ gap: 4px; } +.ui-dialog .charsheet input[type=number] { + width: auto; + min-width: 100px; + max-width: fit-content; +} + .sheet-character, .sheet-action, .sheet-animon, @@ -133,7 +139,6 @@ article.sheet-grid div:nth-child(3) { article.sheet-traits { grid-row: 2 / 3; grid-column: 1 / 2; - display: flex; flex-flow: column nowrap; align-items: stretch; } @@ -149,26 +154,12 @@ article.sheet-traits header h2 { font-size: x-large; } -article.sheet-traits div { - flex: 1 1 auto; - display: flex; - flex-flow: column nowrap; - align-items: stretch; -} - article.sheet-traits>div { display: flex; flex-flow: row nowrap; align-items: stretch; } -article.sheet-traits div button, -article.sheet-traits div input { - flex: 1 1 auto; - max-width: 100px; - min-width: 100px; -} - article.sheet-traits div button, article.sheet-kid-type button { margin: 0 !important; @@ -195,6 +186,8 @@ article.sheet-traits>div>div { border-right: 4px dotted lightgray; padding-right: 4px; margin-right: 4px; + flex: 1 1 auto; + display: grid; } article.sheet-traits>div>div:last-child { @@ -206,7 +199,6 @@ article.sheet-traits>div>div:last-child { article.sheet-stamina { grid-row: 3 / 4; grid-column: 1 / 2; - display: flex; flex-flow: row wrap; align-items: stretch; } @@ -264,7 +256,6 @@ div.bar { article.sheet-harm { grid-row: 4 / 5; grid-column: 1 / 2; - display: flex; flex-flow: column nowrap; align-items: stretch; } @@ -320,7 +311,6 @@ article.sheet-harm>div input { article.sheet-kid-type { grid-row: 2 / 5; grid-column: 2 / 3; - display: flex; flex-flow: column nowrap; align-items: stretch; } @@ -368,7 +358,6 @@ article.sheet-kid-type textarea { article.sheet-relationships { grid-row: 5 / 6; grid-column: 1 / 2; - display: flex; flex-flow: column nowrap; align-items: stretch; } @@ -421,11 +410,14 @@ div.repeating_relationship_row textarea { article.sheet-talents { grid-row: 5 / 6; grid-column: 2 / 3; - display: flex; flex-flow: column nowrap; gap: 2px; } +div.sheet-action article.sheet-talents div.repcontrol { + display: none; +} + article.sheet-talents header { grid-column: 1 / 4; border-bottom: 2px solid lightgray; @@ -465,7 +457,6 @@ div.repcontainer[data-groupname="repeating_talent"] div.repitem:last-child { article.sheet-stuff { grid-row: 6 / 7; grid-column: 1 / 3; - display: flex; flex-flow: column nowrap; align-items: stretch; } @@ -511,7 +502,6 @@ div.repcontainer[data-groupname="repeating_stuff"] div.repitem textarea { article.sheet-notes { grid-column: 1 / 3; - display: flex; flex-flow: column nowrap; align-items: stretch; } From 3bb024c8e974c51200f7391c723329e766020cff Mon Sep 17 00:00:00 2001 From: aurelien chabani Date: Thu, 7 Nov 2024 10:43:50 +0100 Subject: [PATCH 10/11] changing things for XP bar --- Animon_Story/Animon_Story.css | 78 +++++++++++++++++++++++++++++++++- Animon_Story/Animon_Story.html | 46 ++++++++++++-------- 2 files changed, 105 insertions(+), 19 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index dc2a66a45e..adcab79360 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -199,7 +199,7 @@ article.sheet-traits>div>div:last-child { article.sheet-stamina { grid-row: 3 / 4; grid-column: 1 / 2; - flex-flow: row wrap; + flex-flow: row nowrap; align-items: stretch; } @@ -230,6 +230,7 @@ article.sheet-stamina input { align-self: flex-start; flex: 1 1 auto; font-size: large; + background-color: transparent; } article.sheet-stamina span { @@ -554,3 +555,78 @@ div.sheet-action { grid-template: repeat(2, 1fr) / repeat(2, 1fr); gap: 4px; } + +article.sheet-bondLevel { + grid-row: 1 / 2; + grid-column: 1 / 3; + flex-flow: flex nowrap; + align-items: stretch; +} + +article.sheet-bondLevel header { + display: flex; + border-right: 2px solid lightgray; + margin-right: 2px; +} + +article.sheet-bondLevel * { + flex: 1 1 auto; +} + +article.sheet-bondLevel input { + text-align: center; + font-weight: bolder; + background-color: transparent; +} + +article.sheet-xp { + grid-column: 1 / 2; + grid-row: 2 / 6; + flex-flow: column nowrap; + align-items: center; + gap: 4px; +} + +article.sheet-xp header { + display: flex; + justify-content: stretch; +} + +article.sheet-xp input[type="checkbox"] { + width: 20px; + height: 20px; + border-radius: 50%; + appearance: none; + border: 2px solid black; +} + +article.sheet-xp input[type="checkbox"]:checked { + background-color: black; +} + +article.sheet-xp div.sheet-circle { + width: 22px; + height: 22px; + border-radius: 50%; + border: 2px solid black; + display: flex; + justify-content: center; + align-items: center; +} + +article.sheet-xp div.sheet-circle.sheet-half { + border-style: dashed; +} + +article.sheet-bonds { + +} + +article.sheet-bonds>div { + flex: 1 1 auto; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; + position: relative; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 812dbb1cb7..4ddb22e95f 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -313,37 +313,47 @@
-
-
+
+

Bond Level

-
+

XP

-
- - - - - - - - - - + + + + +
+ +
+ + + + +
+
-
+

Bond points

- - - +
+ + + +
+
From a374e7edf362c72f05d1967084cb7436c68a2e98 Mon Sep 17 00:00:00 2001 From: Wagi Date: Tue, 26 Nov 2024 00:45:12 +0100 Subject: [PATCH 11/11] Refactor CSS layout for character sheet components to use flexbox for improved responsiveness and alignment --- Animon_Story/Animon_Story.css | 89 +++++++- Animon_Story/Animon_Story.html | 386 +++++++++++++++++---------------- 2 files changed, 280 insertions(+), 195 deletions(-) diff --git a/Animon_Story/Animon_Story.css b/Animon_Story/Animon_Story.css index adcab79360..8c211e4e2d 100644 --- a/Animon_Story/Animon_Story.css +++ b/Animon_Story/Animon_Story.css @@ -2,7 +2,6 @@ display: flex; flex-direction: column; justify-content: stretch; - gap: 1em; } .charsheet section { @@ -552,13 +551,15 @@ div.sheet-action article.sheet-traits button { } div.sheet-action { - grid-template: repeat(2, 1fr) / repeat(2, 1fr); + display: flex !important; + flex-flow: row nowrap; gap: 4px; } article.sheet-bondLevel { grid-row: 1 / 2; grid-column: 1 / 3; + display: flex; flex-flow: flex nowrap; align-items: stretch; } @@ -577,6 +578,7 @@ article.sheet-bondLevel input { text-align: center; font-weight: bolder; background-color: transparent; + font-size: medium; } article.sheet-xp { @@ -619,14 +621,91 @@ article.sheet-xp div.sheet-circle.sheet-half { } article.sheet-bonds { + display: flex; + flex-flow: row nowrap; + gap: 4px; +} +article.sheet-bonds header { + flex: 0 0 auto; } article.sheet-bonds>div { flex: 1 1 auto; display: flex; - flex-direction: column; - justify-content: space-between; - align-items: flex-start; + flex-direction: row; + justify-content: stretch; position: relative; } + +article.sheet-bonds>div>input[type="number"] { + font-size: large; + background-color: transparent; + text-align: start; + width: 40% !important; + min-width: 0 !important; +} + +article.sheet-bonds>div>span { + flex: 1 1 auto; + text-align: center; +} + +article.sheet-bonds div.bar { + left: 40%; + width: 20%; +} + +article.sheet-strain header { + flex: 0 0 auto; +} + +article.sheet-strain input { + font-size: large; + background-color: transparent; + flex: 1 1 auto; + text-align: center; +} + +article.sheet-attack-uses header { + flex: 0 0 auto; +} + +article.sheet-attack-uses input[type="number"] { + font-size: large; + background-color: transparent; + width: 40% !important; + min-width: 0 !important; + text-align: center; +} + +article.sheet-attack-uses>div { + flex: 1 1 auto; + display: flex; + flex-direction: row; + justify-content: stretch; + position: relative; +} + +article.sheet-attack-uses span { + flex: 1 1 auto; + text-align: center; +} + +article.sheet-attack-uses div.bar { + left: 40%; + width: 20%; +} + +article.sheet-animon-preview { + display: flex; + flex-flow: row nowrap; + gap: 4px; +} + +article.sheet-animon-preview>button { + flex: 0 0 auto; +} +article.sheet-animon-preview>div { + flex: 1 1 auto; +} diff --git a/Animon_Story/Animon_Story.html b/Animon_Story/Animon_Story.html index 4ddb22e95f..15ea688d10 100644 --- a/Animon_Story/Animon_Story.html +++ b/Animon_Story/Animon_Story.html @@ -11,7 +11,7 @@
- @@ -313,197 +313,203 @@
-
-
-
-

Bond Level

-
- -
-
-
-

XP

-
- - - - -
- -
- - - - -
- -
-
-
-
-

Bond points

-
-
- - - -
-
-
-
-
-

Bond strain

-
- -
-
-
-

Sig. Attack Uses

-
- - - -
-
-
- -
- -

Animon:

-
-
- Stage: - -
-
- Name: - - -
-
- Nature: - - -
-
- Class: - - -
-
- Element: - - -
-
- Heart: - - -
-
- Power: - - -
-
- Agility: - - -
-
- Brains: - - -
-
- HP: - - -
-
- Damage: - - -
-
- Dodge: - - -
-
- Initiative: - - -
-
- Sig. Attack: - - -
-
- Rank: - - -
-
- Element: - - -
-
- Effect 1: - - -
-
- Effect 2: - - -
-
- Effect 3: - - -
-
- Quality 1: - - -
-
- Rank: - - -
-
- Quality 2: - - -
-
- Rank: - - +
+
+
+
+
+

XP

+
+ + + + +
+ +
+ + + + +
+ +
+
+
+
+
+

Bond Level

+
+ +
+
+
+

Bond points

+
+
+ + + +
+
+
+
+
+

Bond strain

+
+ +
+
+
+

Sig. Attack Uses

+
+
+ + + +
+
+
- -
-
+
+
+ +
+ +
+

Animon:

+
+
+ Stage: + +
+
+ Name: + + +
+
+ Nature: + + +
+
+ Class: + + +
+
+ Element: + + +
+
+ Heart: + + +
+
+ Power: + + +
+
+ Agility: + + +
+
+ Brains: + + +
+
+ HP: + + +
+
+ Damage: + + +
+
+ Dodge: + + +
+
+ Initiative: + + +
+
+ Sig. Attack: + + +
+
+ Rank: + + +
+
+ Element: + + +
+
+ Effect 1: + + +
+
+ Effect 2: + + +
+
+ Effect 3: + + +
+
+ Quality 1: + + +
+
+ Rank: + + +
+
+ Quality 2: + + +
+
+ Rank: + + +
+
+
+ +
+
+