12.0.36 - L'alchimie d'Astrobazzarh #740
@ -1,4 +1,10 @@
|
||||
# 12.0
|
||||
## 12.0.36 - La cartte d'Astrobazzarh
|
||||
- Fix: la commande /tmra fonctionne correctement sans paramètres
|
||||
|
||||
## 12.0.35 - La Solution d'Astrobazzarh
|
||||
- Fix problème d'initialisation des feuilles d'items
|
||||
|
||||
## 12.0.34 - la tête d'Astrobazzarh
|
||||
- support de liens "jets de dés"
|
||||
- on peut ajouter des liens "jet de dés" dans les journaux, descriptions, notes, maladresses, ...
|
||||
|
@ -361,13 +361,14 @@ export class RdDCommands {
|
||||
async getTMRAleatoire(msg, params) {
|
||||
if (params.length < 2) {
|
||||
let type = params[0]
|
||||
const solvedTerrain = TMRUtility.findTMRLike(type)?.type
|
||||
if (solvedTerrain){
|
||||
const tmr = await TMRUtility.getTMRAleatoire(type ? (it => it.type == solvedTerrain) : (it => true))
|
||||
const solvedTerrain = type ? TMRUtility.findTMRLike(type)?.type : undefined
|
||||
const filter = solvedTerrain ? (it => it.type == solvedTerrain) : (it => true)
|
||||
if (type == undefined || solvedTerrain != undefined) {
|
||||
const tmr = await TMRUtility.getTMRAleatoire(filter)
|
||||
return RdDCommands._chatAnswer(msg, `Case aléatoire: ${tmr.coord} - ${tmr.label}`)
|
||||
}
|
||||
}
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
|
||||
async findTMR(msg, params) {
|
||||
|
@ -26,7 +26,7 @@ export class TMRRencontres {
|
||||
* @param {*} forcedRoll
|
||||
*/
|
||||
async rollRencontre(terrain, forcedRoll) {
|
||||
const tmrType = TMRUtility.findTMRLike(terrain)?.type
|
||||
const tmrType = TMRUtility.findTMRLike(terrain, { inclusMauvaise: true })?.type
|
||||
if (tmrType == undefined) {
|
||||
return undefined;
|
||||
}
|
||||
@ -38,7 +38,7 @@ export class TMRRencontres {
|
||||
const frequence = it => it.system.frequence[tmrType];
|
||||
const row = await this.table.getRandom(frequence, filtreMauvaise, forcedRoll);
|
||||
if (row) {
|
||||
await CompendiumTableHelpers.tableRowToChatMessage(row, 'Item', {showSource: false});
|
||||
await CompendiumTableHelpers.tableRowToChatMessage(row, 'Item', { showSource: false });
|
||||
}
|
||||
|
||||
return row?.document;
|
||||
|
@ -22,7 +22,7 @@ export const TMRType = {
|
||||
export const FLEUVE_COORD = 'Fleuve'
|
||||
|
||||
const TMRMapping = {
|
||||
Fleuve: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli" },
|
||||
Fleuve: { type: TMRType.fleuve.type, label: "Fleuve de l'Oubli", generique: 'fleuve' },
|
||||
A1: { type: TMRType.cite.type, label: "Cité Vide" },
|
||||
B1: { type: TMRType.plaines.type, label: "Plaines d’Assorh" },
|
||||
C1: { type: TMRType.necropole.type, label: "Nécropole de Kroak" },
|
||||
@ -281,18 +281,18 @@ export class TMRUtility {
|
||||
return Grammar.articleDetermine(tmr.type) + ' ' + tmr.label;
|
||||
}
|
||||
|
||||
static findTMRLike(type, options = { inclusMauvaise: true }) {
|
||||
static findTMRLike(type, options = { inclusMauvaise: false }) {
|
||||
const choix = [...Object.values(TMRType)]
|
||||
if (options.inclusMauvaise) {
|
||||
choix.push({ name: 'Mauvaise', type: 'mauvaise'});
|
||||
}
|
||||
const selection = Misc.findAllLike(type, choix)
|
||||
if (selection.length == 0) {
|
||||
ui.notifications.warn(`Un type de TMR doit être indiqué, '${type}' n'est pas trouvé dans ${choix}`);
|
||||
ui.notifications.warn(`Un type de TMR doit être indiqué, '${type}' n'est pas trouvé dans ${choix.map(it => it.name).reduce(Misc.joining(', '))}`);
|
||||
return undefined
|
||||
}
|
||||
if (selection.length > 1) {
|
||||
ui.notifications.warn(`Plusieurs types de TMR pourraient correspondre à '${type}': ${selection.map(it => it.name)}`);
|
||||
ui.notifications.warn(`Plusieurs types de TMR pourraient correspondre à '${type}': ${selection.map(it => it.name).reduce(Misc.joining(', '))}`);
|
||||
return undefined;
|
||||
}
|
||||
return selection[0]
|
||||
@ -357,7 +357,7 @@ export class TMRUtility {
|
||||
}
|
||||
|
||||
static filterTMR(filter) {
|
||||
return Object.values(TMRMapping).filter(filter);
|
||||
return Object.values(TMRMapping).filter(it => !it.generique && filter(it))
|
||||
}
|
||||
|
||||
static getCasesType(type) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user