Bugfixes #565
| @@ -2293,12 +2293,7 @@ export class RdDActor extends Actor { | ||||
|  | ||||
|   /* -------------------------------------------- */ | ||||
|   computeDraconicAndSortIndex(sortList) { | ||||
|     let draconicList = this.getDraconicList() | ||||
|       .map(it => { | ||||
|         it = duplicate(it) | ||||
|         it.system.defaut_carac = "reve"; | ||||
|         return it; | ||||
|       }); | ||||
|     let draconicList = this.getDraconicList(); | ||||
|     for (let sort of sortList) { | ||||
|       let draconicsSort = this.getDraconicsSort(draconicList, sort).map(it => it.name); | ||||
|       for (let index = 0; index < draconicList.length && sort.system.listIndex == undefined; index++) { | ||||
|   | ||||
| @@ -84,7 +84,10 @@ export class RdDItemCompetence extends Item { | ||||
|  | ||||
|   /* -------------------------------------------- */ | ||||
|   static getVoieDraconic(competences, voie) { | ||||
|     return RdDItemCompetence.findCompetence(competences.filter(it => RdDItemCompetence.isDraconic(it)), voie); | ||||
|     return RdDItemCompetence.findFirstItem(competences, voie, { | ||||
|        preFilter: it => it.isCompetence() && RdDItemCompetence.isDraconic(it), | ||||
|        description: 'Draconic', | ||||
|       }); | ||||
|   } | ||||
|  | ||||
|   /* -------------------------------------------- */ | ||||
| @@ -219,9 +222,8 @@ export class RdDItemCompetence extends Item { | ||||
|     if (idOrName == undefined) { | ||||
|       return undefined; | ||||
|     } | ||||
|     options = mergeObject(options, { preFilter: it => it.isCompetence(), description: 'compétence', }); | ||||
|     return list.find(it => it.id == idOrName && it.isCompetence()) | ||||
|       ?? Misc.findFirstLike(idOrName, list, options); | ||||
|     options = mergeObject(options, { preFilter: it => it.isCompetence(), description: 'compétence' }, {overwrite: false}); | ||||
|     return RdDItemCompetence.findFirstItem(list, idOrName, options); | ||||
|   } | ||||
|  | ||||
|   /* -------------------------------------------- */ | ||||
| @@ -229,6 +231,11 @@ export class RdDItemCompetence extends Item { | ||||
|     return Misc.findAllLike(name, list, { filter: it => it.isCompetence(), description: 'compétence' }); | ||||
|   } | ||||
|  | ||||
|   static findFirstItem(list, idOrName, options) { | ||||
|     return list.find(it => it.id == idOrName && options.preFilter(it)) | ||||
|       ?? Misc.findFirstLike(idOrName, list, options); | ||||
|   } | ||||
|  | ||||
|   /* -------------------------------------------- */ | ||||
|   static getCompetenceNextXp(niveau) { | ||||
|     return RdDItemCompetence.getCompetenceXp(niveau + 1); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user