diff --git a/changelog.md b/changelog.md
index db12be88..3b321f59 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,9 +1,10 @@
# 12.0
## 12.0.27 - Les vêtements d'Astrobazzarh
- Ajout de la liste des armures dans l'onglet caractéristiques
-- Correction des ajouts de blessures (prise en compte de l'endurance et des contusions)
-- Correction du choix d'une cible parmi toutes les cibles pour les combats
+- Ajout d'une option pour choisir une carte des TMR alternatives
- Le Gardien peut créer des sorts en réserve parmi les sorts d'un personnage
+- Correction du choix d'une cible parmi toutes les cibles pour les combats
+- Correction des ajouts de blessures (prise en compte de l'endurance et des contusions)
- Correction des rituels de Détection et Lecture d'Aura des personnages prétirés
## 12.0.26 - Astrobazzarh le Haut-rêvant
diff --git a/icons/tmr/attache.svg b/icons/tmr/attache.svg
index 40dbd506..202997db 100644
--- a/icons/tmr/attache.svg
+++ b/icons/tmr/attache.svg
@@ -1 +1,191 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/conquete.svg b/icons/tmr/conquete.svg
index f5065afa..3d7203bc 100644
--- a/icons/tmr/conquete.svg
+++ b/icons/tmr/conquete.svg
@@ -1 +1,159 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/debordement.svg b/icons/tmr/debordement.svg
index d544562c..d6b684ff 100644
--- a/icons/tmr/debordement.svg
+++ b/icons/tmr/debordement.svg
@@ -1 +1,191 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/demi-reve.svg b/icons/tmr/demi-reve.svg
index 7b6ab0eb..a563657a 100644
--- a/icons/tmr/demi-reve.svg
+++ b/icons/tmr/demi-reve.svg
@@ -33,8 +33,8 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
- inkscape:window-width="2014"
- inkscape:window-height="1404"
+ inkscape:window-width="2513"
+ inkscape:window-height="1633"
id="namedview32"
showgrid="false"
inkscape:zoom="2.2094112"
@@ -43,7 +43,8 @@
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
- inkscape:current-layer="svg30" />
+ inkscape:current-layer="svg30"
+ inkscape:document-rotation="0" />
+ id="g28"
+ style="stroke:#000080;stroke-width:5;stroke-miterlimit:4;stroke-dasharray:none">
+ id="path26"
+ style="stroke:#000080;stroke-width:5;stroke-miterlimit:4;stroke-dasharray:none" />
diff --git a/icons/tmr/fermeture.svg b/icons/tmr/fermeture.svg
index e3d70c97..54fe11c5 100644
--- a/icons/tmr/fermeture.svg
+++ b/icons/tmr/fermeture.svg
@@ -33,8 +33,8 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
- inkscape:window-width="1680"
- inkscape:window-height="1083"
+ inkscape:window-width="2665"
+ inkscape:window-height="1441"
id="namedview54"
showgrid="false"
inkscape:zoom="1.5990661"
@@ -43,7 +43,8 @@
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
- inkscape:current-layer="svg52" />
+ inkscape:current-layer="svg52"
+ inkscape:document-rotation="0" />
+ transform="matrix(1.1287777,0,0,1.1287777,-32.967091,-40.026839)"
+ style="stroke:#000000;stroke-width:4.42957014;stroke-miterlimit:4;stroke-dasharray:none">
+ id="path48"
+ style="stroke:#000000;stroke-width:4.92174461;stroke-miterlimit:4;stroke-dasharray:none" />
diff --git a/icons/tmr/maitrisee.svg b/icons/tmr/maitrisee.svg
index fa2a5d9d..7ae19757 100644
--- a/icons/tmr/maitrisee.svg
+++ b/icons/tmr/maitrisee.svg
@@ -1 +1,187 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/pelerinage.svg b/icons/tmr/pelerinage.svg
index 371af982..f04a7d07 100644
--- a/icons/tmr/pelerinage.svg
+++ b/icons/tmr/pelerinage.svg
@@ -1 +1,159 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/periple.svg b/icons/tmr/periple.svg
index 7b287467..a3de5fb9 100644
--- a/icons/tmr/periple.svg
+++ b/icons/tmr/periple.svg
@@ -1 +1,191 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/present.svg b/icons/tmr/present.svg
index 6589cfd7..b8af2d56 100644
--- a/icons/tmr/present.svg
+++ b/icons/tmr/present.svg
@@ -1 +1,132 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/rencontre.svg b/icons/tmr/rencontre.svg
index fcf0c57e..12c99b75 100644
--- a/icons/tmr/rencontre.svg
+++ b/icons/tmr/rencontre.svg
@@ -1 +1,159 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/reserve.svg b/icons/tmr/reserve.svg
index 6cefe4c0..bc4eb818 100644
--- a/icons/tmr/reserve.svg
+++ b/icons/tmr/reserve.svg
@@ -1 +1,160 @@
-
\ No newline at end of file
+
+
diff --git a/icons/tmr/sort-reserve-humide.svg b/icons/tmr/sort-reserve-humide.svg
index 3c156328..5798ea98 100644
--- a/icons/tmr/sort-reserve-humide.svg
+++ b/icons/tmr/sort-reserve-humide.svg
@@ -11,7 +11,7 @@
style="height: 256px; width: 256px;"
version="1.1"
id="svg24"
- sodipodi:docname="sort-reserve-humide3.svg"
+ sodipodi:docname="sort-reserve-humide.svg"
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)">
@@ -35,68 +35,70 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
- inkscape:window-width="2794"
- inkscape:window-height="1756"
+ inkscape:window-width="2660"
+ inkscape:window-height="1472"
id="namedview26"
showgrid="false"
- inkscape:zoom="2.8786993"
- inkscape:cx="323.66586"
- inkscape:cy="227.70764"
+ inkscape:zoom="1.4393497"
+ inkscape:cx="557.39157"
+ inkscape:cy="411.60399"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
- inkscape:current-layer="svg24" />
+ inkscape:current-layer="svg24"
+ inkscape:document-rotation="0" />
+ transform="translate(2.1482304,2.80716)"
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal">
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
+ style="fill:#ffffff;stroke:#7d7db2;stroke-width:10;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal" />
diff --git a/icons/tmr/sort-reserve.svg b/icons/tmr/sort-reserve.svg
index 6a1b87c3..8246dbe8 100644
--- a/icons/tmr/sort-reserve.svg
+++ b/icons/tmr/sort-reserve.svg
@@ -37,13 +37,14 @@
inkscape:window-height="1268"
id="namedview34"
showgrid="false"
- inkscape:zoom="1.9888504"
- inkscape:cx="256"
- inkscape:cy="256"
- inkscape:window-x="0"
- inkscape:window-y="0"
+ inkscape:zoom="0.7031648"
+ inkscape:cx="1044.9871"
+ inkscape:cy="610.71305"
+ inkscape:window-x="518"
+ inkscape:window-y="680"
inkscape:window-maximized="0"
- inkscape:current-layer="svg32" />
+ inkscape:current-layer="svg32"
+ inkscape:document-rotation="0" />
+ style="fill:#ffffff;fill-opacity:1;stroke:#7d7db2;stroke-width:13;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
+ style="fill:#ffffff;fill-opacity:1;stroke:#7d7db2;stroke-width:13;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
diff --git a/icons/tmr/trounoir.svg b/icons/tmr/trounoir.svg
index 7a5f018e..1d0ac214 100644
--- a/icons/tmr/trounoir.svg
+++ b/icons/tmr/trounoir.svg
@@ -33,17 +33,18 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
- inkscape:window-width="1553"
- inkscape:window-height="1145"
+ inkscape:window-width="1879"
+ inkscape:window-height="1569"
id="namedview34"
showgrid="false"
inkscape:zoom="1.4374483"
inkscape:cx="256"
inkscape:cy="256"
- inkscape:window-x="0"
- inkscape:window-y="0"
+ inkscape:window-x="460"
+ inkscape:window-y="170"
inkscape:window-maximized="0"
- inkscape:current-layer="svg32" />
+ inkscape:current-layer="svg32"
+ inkscape:document-rotation="0" />
+ style="fill:#3a174d;fill-opacity:0.69999999" />
+ style="fill:#380f4d;fill-opacity:1" />
diff --git a/icons/tmr/urgence.svg b/icons/tmr/urgence.svg
index cb683bfd..fd571e74 100644
--- a/icons/tmr/urgence.svg
+++ b/icons/tmr/urgence.svg
@@ -1 +1,159 @@
-
\ No newline at end of file
+
+
diff --git a/module/rdd-main.js b/module/rdd-main.js
index 64f78328..3056cb42 100644
--- a/module/rdd-main.js
+++ b/module/rdd-main.js
@@ -135,6 +135,7 @@ export class SystemReveDeDragon {
RdDCalendrier.initSettings()
SystemCompendiums.initSettings()
DialogChronologie.initSettings()
+ EffetsDraconiques.initSettings()
RdDTMRDialog.initSettings()
Environnement.initSettings()
diff --git a/module/tmr/animation.js b/module/tmr/animation.js
index 9b8312e9..1fca6a61 100644
--- a/module/tmr/animation.js
+++ b/module/tmr/animation.js
@@ -1,32 +1,3 @@
-// pixiTMR.animate(pixiApp => pixiApp.ticker.add((delta) => {
-// if (!sprite.waveAnimation) {
-// sprite.waveAnimation = {
-// originx: sprite.x,
-// movex: 0,
-// step: 0.03
-// }
-// }
-// else {
-// if (Math.abs(sprite.waveAnimation.movex) > 2) {
-// sprite.waveAnimation.step = -sprite.waveAnimation.step
-// }
-// sprite.waveAnimation.movex += sprite.waveAnimation.step;
-// }
-// sprite.x = sprite.waveAnimation.originx + sprite.waveAnimation.movex
-// }));
-
-// return pixiTMR.square(this.code(),
-// {
-// zIndex: tmrTokenZIndex.trounoir,
-// tint: tmrColors.trounoir,
-// alpha: 1,
-// taille: () => pixiTMR.sizes.full,
-// decallage: {
-// x: -pixiTMR.sizes.half,
-// y: -pixiTMR.sizes.half
-// }
-// })
-
export class TMRAnimations {
static withAnimation(sprite, pixiTMR, ...animations) {
diff --git a/module/tmr/carte-tmr.js b/module/tmr/carte-tmr.js
index 94513e5f..2256b9f0 100644
--- a/module/tmr/carte-tmr.js
+++ b/module/tmr/carte-tmr.js
@@ -1,16 +1,38 @@
-import { TMRUtility } from "../tmr-utility.js";
+import { SYSTEM_RDD } from "../constants.js";
import { Draconique } from "./draconique.js";
import { PixiTMR } from "./pixi-tmr.js";
+const IMAGE_CARTE_TMR = 'image-carte-tmr';
+const TMR_V1 = "systems/foundryvtt-reve-de-dragon/styles/img/ui/tmr-v1.webp";
+const TMR_V2 = "systems/foundryvtt-reve-de-dragon/styles/img/ui/tmr-v2.webp";
+const TMR_V3_COULEUR = "systems/foundryvtt-reve-de-dragon/styles/img/ui/tmr-v3-couleur.webp";
+
export class CarteTmr extends Draconique {
+ static initSettings() {
+ game.settings.register(SYSTEM_RDD, IMAGE_CARTE_TMR,
+ {
+ name: 'Carte des TMR',
+ hint: "Choix de l'image de la carte des TMR",
+ scope: "client",
+ config: true,
+ choices: {
+ [TMR_V3_COULEUR]: "TMR Scriptarium v3 couleur",
+ [TMR_V2]: "TMR Multisim v2",
+ [TMR_V1]: "TMR NEF v1",
+ },
+ default: TMR_V3_COULEUR,
+ type: String
+ })
+ }
+
type() { return '' }
match(item) { return false; }
manualMessage() { return false }
async onActorCreateOwned(actor, item) { }
code() { return 'tmr' }
- img() { return 'systems/foundryvtt-reve-de-dragon/styles/img/ui/tmr.webp' }
+ img() { return game.settings.get(SYSTEM_RDD, IMAGE_CARTE_TMR) }
createSprite(pixiTMR) {
const img = PixiTMR.getImgFromCode(this.code())
diff --git a/module/tmr/effets-draconiques.js b/module/tmr/effets-draconiques.js
index 80ed02ca..c60c50c8 100644
--- a/module/tmr/effets-draconiques.js
+++ b/module/tmr/effets-draconiques.js
@@ -43,6 +43,9 @@ export class EffetsDraconiques {
static augmentationSeuil = new AugmentationSeuil();
+ static initSettings() {
+ CarteTmr.initSettings()
+ }
static init() {
Draconique.init();
Draconique.register(EffetsDraconiques.carteTmr);
diff --git a/module/tmr/sort-reserve.js b/module/tmr/sort-reserve.js
index c0f2aeec..2e1f9c22 100644
--- a/module/tmr/sort-reserve.js
+++ b/module/tmr/sort-reserve.js
@@ -17,11 +17,11 @@ export class SortReserve extends Draconique {
createSprite(pixiTMR) {
return pixiTMR.sprite(this.code(), {
zIndex: tmrTokenZIndex.sort,
- decallage: pixiTMR.sizes.decallage(-1, 0),
- taille: () => pixiTMR.sizes.third,
+ decallage: pixiTMR.sizes.decallage(-0.6, 0),
+ taille: () => pixiTMR.sizes.half,
});
}
-
+
tokens(pixiTMR, linkData, coordTMR, type = undefined) {
if (TMRUtility.getTMR(coordTMR()).type == 'fleuve') {
const tooltip = this.tooltip(linkData)
diff --git a/module/tmr/terre-attache.js b/module/tmr/terre-attache.js
index 2c28ba44..220a6194 100644
--- a/module/tmr/terre-attache.js
+++ b/module/tmr/terre-attache.js
@@ -19,8 +19,8 @@ export class TerreAttache extends Draconique {
createSprite(pixiTMR) {
return pixiTMR.sprite(this.code(), {
zIndex: tmrTokenZIndex.tetes,
- decallage: pixiTMR.sizes.decallage(1, 1),
- taille: () => pixiTMR.sizes.third
+ decallage: pixiTMR.sizes.decallage(0.8, 0.8),
+ taille: () => pixiTMR.sizes.half
});
}
diff --git a/styles/img/ui/tmr-v1.webp b/styles/img/ui/tmr-v1.webp
new file mode 100644
index 00000000..5316a7d6
Binary files /dev/null and b/styles/img/ui/tmr-v1.webp differ
diff --git a/styles/img/ui/tmr-v2.webp b/styles/img/ui/tmr-v2.webp
new file mode 100644
index 00000000..7244296d
Binary files /dev/null and b/styles/img/ui/tmr-v2.webp differ
diff --git a/styles/img/ui/tmr.webp b/styles/img/ui/tmr-v3-couleur.webp
similarity index 100%
rename from styles/img/ui/tmr.webp
rename to styles/img/ui/tmr-v3-couleur.webp