Correction: qualité des improvisations de cuisine
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
# 13.0
|
||||
|
||||
## 13.0.34 - La saumuche d'Illysis
|
||||
|
||||
- la qualité des "improvisations du moment" se base sur le niveau du cuisinier
|
||||
|
||||
## 13.0.33 - L'ébriété d'Illysis
|
||||
|
||||
- le stade éméché ne cause plus de perte d'endurance
|
||||
|
||||
@@ -39,18 +39,17 @@ export class RollPartCuisine extends RollPartSelect {
|
||||
loadRefs(rollData) {
|
||||
const refs = this.getRefs(rollData)
|
||||
const actor = rollData.active.actor
|
||||
refs.cuisine = actor.getCompetence('Cuisine')
|
||||
const cuisine = actor.getCompetence('Cuisine')
|
||||
|
||||
const recettes = actor.items
|
||||
.filter(it => it.type == ITEM_TYPES.recettecuisine)
|
||||
.map(RollPartCuisine.$extractPreparationRecette)
|
||||
.map(it => RollPartCuisine.$extractPreparationRecette(cuisine, it))
|
||||
|
||||
const ingredientsBruts = actor.items
|
||||
.filter(it => it.getUtilisationCuisine() == 'brut')
|
||||
.map(RollPartCuisine.$extractPreparationBrut)
|
||||
.map(it => RollPartCuisine.$extractPreparationBrut(cuisine, it))
|
||||
|
||||
refs.preparations = [RollPartCuisine.$preparationBasique(), ...recettes, ...ingredientsBruts]
|
||||
refs.preparations.forEach(p => p.comp = refs.cuisine)
|
||||
refs.preparations = [RollPartCuisine.$preparationBasique(cuisine), ...recettes, ...ingredientsBruts]
|
||||
if (refs.preparations.length > 0) {
|
||||
this.$selectPreparation(rollData)
|
||||
this.$restoreSavedOptions(rollData)
|
||||
@@ -73,7 +72,7 @@ export class RollPartCuisine extends RollPartSelect {
|
||||
|
||||
choices(refs) { return refs.preparations }
|
||||
|
||||
static $preparationBasique() {
|
||||
static $preparationBasique(cuisine) {
|
||||
return {
|
||||
key: '',
|
||||
label: "Improvisation du moment",
|
||||
@@ -85,10 +84,12 @@ export class RollPartCuisine extends RollPartSelect {
|
||||
proportionsMax: 50,
|
||||
value: 0,
|
||||
fabriquer: false,
|
||||
qualite: cuisine.system.niveau,
|
||||
comp: cuisine,
|
||||
}
|
||||
}
|
||||
|
||||
static $extractPreparationRecette(recette) {
|
||||
static $extractPreparationRecette(cuisine, recette) {
|
||||
const proportions = recette.system.sust ?? 1
|
||||
return {
|
||||
key: recette.id,
|
||||
@@ -102,10 +103,12 @@ export class RollPartCuisine extends RollPartSelect {
|
||||
value: -recette.system.niveau,
|
||||
recette: recette,
|
||||
fabriquer: true,
|
||||
qualite: recette.system.niveau,
|
||||
comp: cuisine,
|
||||
}
|
||||
}
|
||||
|
||||
static $extractPreparationBrut(ingredient) {
|
||||
static $extractPreparationBrut(cuisine, ingredient) {
|
||||
return {
|
||||
key: ingredient.id,
|
||||
label: ingredient.name + ' cuisiné',
|
||||
@@ -118,6 +121,8 @@ export class RollPartCuisine extends RollPartSelect {
|
||||
value: 0,
|
||||
ingredient: ingredient,
|
||||
fabriquer: true,
|
||||
qualite: cuisine.system.niveau,
|
||||
comp: cuisine,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -150,7 +155,7 @@ export class RollPartCuisine extends RollPartSelect {
|
||||
this.$selectPreparation(rollDialog.rollData, selectOptions[index]?.value)
|
||||
rollDialog.render()
|
||||
})
|
||||
|
||||
|
||||
checkboxFabriquer?.addEventListener("change", e => {
|
||||
current.fabriquer = e.currentTarget.checked
|
||||
})
|
||||
|
||||
@@ -21,9 +21,7 @@ export class RollTypeCuisine extends RollType {
|
||||
|
||||
getResult(rollData, impacts) {
|
||||
const current = rollData.current[PART_CUISINE]
|
||||
const diff = -current.value
|
||||
const cuisine = rollData.refs[PART_CUISINE].cuisine
|
||||
const qualite = rollData.rolled.ptQualite + (rollData.rolled.isSuccess ? diff : Math.min(diff, cuisine.system.niveau))
|
||||
const qualite = rollData.rolled.ptQualite + current.qualite
|
||||
|
||||
const result = {
|
||||
qualite: qualite,
|
||||
@@ -49,6 +47,7 @@ export class RollTypeCuisine extends RollType {
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
onApplyImpacts(roll, impacts) {
|
||||
if (roll.result.plat) {
|
||||
// le plat n'est pas créé immédiatement, il faut donc retrouver l'id
|
||||
|
||||
Reference in New Issue
Block a user