dissociated Pc & All for : Scene End, Sleep, Void Pts actions.

This commit is contained in:
Vlyan
2021-08-16 20:04:28 +02:00
parent c0049aaf38
commit ba4eb99dcb
10 changed files with 147 additions and 143 deletions

View File

@@ -1,7 +1,7 @@
# Changelog # Changelog
## 1.3.3 - Send to Chat ## 1.3.3 - Send'n'Watch
- Added "Gm Monitor", a little windows to see a summary of actor (drop any actor on it). - Added "Gm Monitor", a windows to see summaries of actor (drop any actor on it, by default all controlled pc will fill it).
- Added "reset void point" and "Gm Monitor" button to GM toolbox. - Added "reset void point" and "Gm Monitor" button to GM toolbox.
- Added "send to chat" header button on : Actor, Item and Journal sheets. - Added "send to chat" header button on : Actor, Item and Journal sheets.
- Added Opportunity usage helper in Journal Compendium (courteously authorized by Edge). - Added Opportunity usage helper in Journal Compendium (courteously authorized by Edge).

View File

@@ -130,12 +130,12 @@
"gm_toolbox": { "gm_toolbox": {
"title": "GM ToolBox", "title": "GM ToolBox",
"difficulty_hidden": "Change difficulty visibility", "difficulty_hidden": "Change difficulty visibility",
"difficulty": "Change difficulty (right: add, left: subtract, middle: TN 2)", "difficulty": "Change difficulty (right click: add, left: subtract, middle: TN 2)",
"sleep": "Comfortable rest for all characters (Remove Water x2 fatigue)", "sleep": "Comfortable rest for all characters (Remove Water x2 fatigue. Right click: controlled pc only. Left: All actors)",
"sleep_info": "The characters had a good night's sleep.", "sleep_info": "The characters had a good night's sleep.",
"scene_end": "End of scene (Conflict and Fatigue half reset for all characters)", "scene_end": "End of scene (Conflict and Fatigue half reset for all characters. Right click: controlled pc only. Left: All actors)",
"scene_end_info": "The tension of the scene finally drops.", "scene_end_info": "The tension of the scene finally drops.",
"reset_void": "Start of the game: Reset the players' void points", "reset_void": "Start of the game: Reset the players' void points (Right click: controlled pc only. Left: All actors",
"reset_void_info": "Void points have been attributed." "reset_void_info": "Void points have been attributed."
}, },
"gm_monitor": { "gm_monitor": {

View File

@@ -131,11 +131,11 @@
"title": "GM ToolBox", "title": "GM ToolBox",
"difficulty_hidden": "Cambiar la dificultad visible", "difficulty_hidden": "Cambiar la dificultad visible",
"difficulty": "Cambiar dificultad (derecha: añadir, izquierda: sustraer, central: NO 2)", "difficulty": "Cambiar dificultad (derecha: añadir, izquierda: sustraer, central: NO 2)",
"sleep": "Descanso confortable para todos los personajes (Eliminar fatiga = Agua x2)", "sleep": "Descanso confortable para todos los personajes (Eliminar fatiga = Agua x2. Right click: controlled pc only. Left: All actors)",
"sleep_info": "Los personajes han dormido bien.", "sleep_info": "Los personajes han dormido bien.",
"scene_end": "Final de la escena (El Conflicto y la Fatiga de los personajes se reduce hasta la mitad del máximo del valor)", "scene_end": "Final de la escena (El Conflicto y la Fatiga de los personajes se reduce hasta la mitad del máximo del valor. Right click: controlled pc only. Left: All actors)",
"scene_end_info": "La tensión de la escena por fin disminuye.", "scene_end_info": "La tensión de la escena por fin disminuye.",
"reset_void": "Start of the game: Reset the players' void points", "reset_void": "Start of the game: Reset the players' void points (Right click: controlled pc only. Left: All actors)",
"reset_void_info": "Void points have been attributed." "reset_void_info": "Void points have been attributed."
}, },
"gm_monitor": { "gm_monitor": {

View File

@@ -130,12 +130,12 @@
"gm_toolbox": { "gm_toolbox": {
"title": "GM ToolBox", "title": "GM ToolBox",
"difficulty_hidden": "Modifier la visibilité de la difficulté", "difficulty_hidden": "Modifier la visibilité de la difficulté",
"difficulty": "Modifier la difficulté (droite: ajout, gauche: soustraction, milieu: ND 2)", "difficulty": "Modifier la difficulté (Clic Droit: ajout, Gauche: soustraction, Milieu: ND 2)",
"sleep": "Repos confortable pour tous les personnages (Enlève Eau x2 de fatigue)", "sleep": "Repos confortable pour tous les personnages (Enlève Eau x2 de fatigue. Clic Droit: Personnage contrôlé uniquement. Gauche: Tous)",
"sleep_info": "Les personnages ont passé une bonne nuit de sommeil.", "sleep_info": "Les personnages ont passé une bonne nuit de sommeil.",
"scene_end": "Fin de scène (Conflit et Fatigue à moitié pour tous les personnages dont la valeur dépasse ce seuil)", "scene_end": "Fin de scène (Conflit et Fatigue à moitié pour tous les personnages dont la valeur dépasse ce seuil. Clic Droit: Personnage contrôlé uniquement. Gauche: Tous)",
"scene_end_info": "La tension de la scène retombe enfin", "scene_end_info": "La tension de la scène retombe enfin",
"reset_void": "Début de partie : Réinitialiser les points du vide des joueurs", "reset_void": "Début de partie : Réinitialiser les points du vide des joueurs (Clic Droit: Personnage contrôlé uniquement. Gauche: Tous)",
"reset_void_info": "Les points du vide ont été attribués" "reset_void_info": "Les points du vide ont été attribués"
}, },
"gm_monitor": { "gm_monitor": {

View File

@@ -152,12 +152,8 @@ export class GmToolbox extends FormApplication {
game.settings.set("l5r5e", "initiative-difficulty-value", this.object.difficulty).then(() => this.submit()); game.settings.set("l5r5e", "initiative-difficulty-value", this.object.difficulty).then(() => this.submit());
}); });
// Scene End, Sleep, void pt // Scene End, Sleep, Void Pts
html.find(`.gm_actor_updates`).on("click", (event) => { html.find(`.gm_actor_updates`).on("mousedown", this._updatesActors.bind(this));
event.preventDefault();
event.stopPropagation();
this._updatesActors($(event.currentTarget).data("type"));
});
// GM Monitor // GM Monitor
html.find(`.gm_monitor`).on("click", (event) => { html.find(`.gm_monitor`).on("click", (event) => {
@@ -186,15 +182,23 @@ export class GmToolbox extends FormApplication {
/** /**
* Update all actors * Update all actors
* @param {string} type * @param {Event} event
* @private * @private
*/ */
async _updatesActors(type) { async _updatesActors(event) {
if (!game.user.isGM) { if (!game.user.isGM) {
return; return;
} }
const isAll = event.which !== 1;
const type = $(event.currentTarget).data("type");
for await (const actor of game.actors.contents) { for await (const actor of game.actors.contents) {
// only controlled pc
if (!isAll && (actor.data.type !== "character" || !actor.hasPlayerOwner)) {
continue;
}
switch (type) { switch (type) {
case "sleep": case "sleep":
// Remove 'water x2' fatigue points // Remove 'water x2' fatigue points
@@ -217,10 +221,6 @@ export class GmToolbox extends FormApplication {
break; break;
case "reset_void": case "reset_void":
// only pc
if (actor.data.type !== "character" || !actor.hasPlayerOwner) {
return;
}
actor.data.data.void_points.value = Math.ceil(actor.data.data.void_points.max / 2); actor.data.data.void_points.value = Math.ceil(actor.data.data.void_points.max / 2);
break; break;
} }

File diff suppressed because one or more lines are too long

View File

@@ -399,121 +399,6 @@
} }
} }
#l5r5e-gm-monitor {
min-height: 170px;
min-width: 500px;
.window-content {
form {
padding: 0 0.5rem;
}
th,
td {
border: 1px solid #5a6e5a;
padding: 0.25em;
}
img {
border: none;
max-width: 28px;
max-height: 28px;
}
.goodvalue {
color: rgba(0, 128, 0, 0.75);
}
.badvalue {
color: $red-dice;
}
}
}
#l5r5e-gm-toolbox {
//bottom: 0;
//right: 0.5rem;
display: flex;
background-position: center;
background-size: 100%;
background: linear-gradient(
$l5r5e-linear-gradient-second,
$l5r5e-linear-gradient-second-dark,
$l5r5e-linear-gradient-second
);
background-origin: padding-box;
border: 1px solid rgb(195, 165, 130);
background-origin: padding-box;
border-image: url("../assets/ui/macro-button.webp") 10 repeat;
border-image-width: 0.5rem;
border-image-outset: 0px;
padding: 0;
margin: 0.5rem;
.window-header {
text-align: center;
border-bottom: 1px solid rgb(195, 165, 130);
h4 {
letter-spacing: 0.25rem;
line-height: 2.25rem;
color: $white-light;
}
}
.window-content {
text-align: center;
vertical-align: middle;
background: transparent;
color: $white-light;
form {
padding: 0;
}
.gm-tools-container {
display: flex;
font-size: 2rem;
line-height: 2rem;
min-height: 2rem;
margin: 0;
li {
flex: 1;
display: flex;
margin: 0;
padding: 0;
border-right: 1px solid #c3a582;
cursor: url("../assets/cursors/pointer.webp"), pointer;
&:last-child {
margin: 0;
border: 0 none;
}
:hover {
text-shadow: 0 0 $red;
}
}
.difficulty_hidden {
.fa {
width: 3rem;
}
.difficulty {
flex: 1rem;
width: 2rem;
font-size: 2rem;
text-align: center;
margin: 0;
padding: 0.5rem;
}
}
.fa {
padding: 0.5rem;
}
.fa-bed,
.fa-star-half-alt,
.fa-table,
.fa-podcast {
width: 100%;
padding: 0.5rem;
}
}
}
// hide "search anywhere" draggable icon
.window-draggable-handle {
display: none;
}
}
.dice-picker-dialog, .dice-picker-dialog,
.roll-n-keep-dialog { .roll-n-keep-dialog {
button { button {

View File

@@ -762,3 +762,122 @@ button {
padding: 0; padding: 0;
} }
} }
#l5r5e-gm-monitor {
min-height: 170px;
min-width: 500px;
.window-content {
form {
padding: 0 0.5rem;
}
th,
td {
border: 1px solid #5a6e5a50;
padding: 0.25em;
}
img {
border: none;
max-width: 28px;
max-height: 28px;
}
.goodvalue {
color: rgba(0, 128, 0, 0.75);
}
.badvalue {
color: $red-dice;
}
}
// hide "search anywhere" draggable icon
.window-draggable-handle {
display: none;
}
}
#l5r5e-gm-toolbox {
//bottom: 0;
//right: 0.5rem;
display: flex;
background-position: center;
background-size: 100%;
background: linear-gradient(
$l5r5e-linear-gradient-second,
$l5r5e-linear-gradient-second-dark,
$l5r5e-linear-gradient-second
);
background-origin: padding-box;
border: 1px solid rgb(195, 165, 130);
background-origin: padding-box;
border-image: url("../assets/ui/macro-button.webp") 10 repeat;
border-image-width: 0.5rem;
border-image-outset: 0px;
padding: 0;
margin: 0.5rem;
.window-header {
text-align: center;
border-bottom: 1px solid rgb(195, 165, 130);
h4 {
letter-spacing: 0.25rem;
line-height: 2.25rem;
color: $white-light;
}
}
.window-content {
text-align: center;
vertical-align: middle;
background: transparent;
color: $white-light;
form {
padding: 0;
}
.gm-tools-container {
display: flex;
font-size: 2rem;
line-height: 2rem;
min-height: 2rem;
margin: 0;
li {
flex: 1;
display: flex;
margin: 0;
padding: 0;
border-right: 1px solid #c3a582;
cursor: url("../assets/cursors/pointer.webp"), pointer;
&:last-child {
margin: 0;
border: 0 none;
}
:hover {
text-shadow: 0 0 $red;
}
}
.difficulty_hidden {
.fa {
width: 3rem;
}
.difficulty {
flex: 1rem;
width: 2rem;
font-size: 2rem;
text-align: center;
margin: 0;
padding: 0.5rem;
}
}
.fa {
padding: 0.5rem;
}
.fa-bed,
.fa-star-half-alt,
.fa-table,
.fa-podcast {
width: 100%;
padding: 0.5rem;
}
}
}
// hide "search anywhere" draggable icon
.window-draggable-handle {
display: none;
}
}

View File

@@ -3,7 +3,7 @@
<thead> <thead>
<th class="img"></th> <th class="img"></th>
<th class="name">{{localize 'l5r5e.name'}}</th> <th class="name">{{localize 'l5r5e.name'}}</th>
<th class="stance"><i class="i_fire"></i></th> <th class="stance"><i class="i_earth"></i></th>
<th class="weapon"><i class="fas fa-fan"></i></th> <th class="weapon"><i class="fas fa-fan"></i></th>
<th class="armor"><i class="fas fa-user-shield"></i></th> <th class="armor"><i class="fas fa-user-shield"></i></th>
<th class="rank"><i class="i_bushi"></i> / <i class="i_courtier"></i></th> <th class="rank"><i class="i_bushi"></i> / <i class="i_courtier"></i></th>