Difficultés attaque/défense sur appel à la chance
This commit is contained in:
@@ -5,6 +5,7 @@
|
|||||||
- mise à jour de version foundry-cli
|
- mise à jour de version foundry-cli
|
||||||
- correction des catégories de parades des compendiums
|
- correction des catégories de parades des compendiums
|
||||||
- des ne pouvaient pas parer (exemple: le bouclier du guerrier sorde)
|
- des ne pouvaient pas parer (exemple: le bouclier du guerrier sorde)
|
||||||
|
- les difficultés des jets d'attaque/défense après appel à la chance sont conservées
|
||||||
- L'absence des compétences cuisine/jeu ne bloque plus l'accès à la fenêtre de jets (cas des invocations)
|
- L'absence des compétences cuisine/jeu ne bloque plus l'accès à la fenêtre de jets (cas des invocations)
|
||||||
|
|
||||||
## 13.0.38 - L'urgence d'Illisys
|
## 13.0.38 - L'urgence d'Illisys
|
||||||
|
|||||||
@@ -2134,13 +2134,13 @@ export class RdDActor extends RdDBaseActorSang {
|
|||||||
{
|
{
|
||||||
onRollDone: (dialog, roll) => RollDialog.onRollDoneClose(dialog, roll),
|
onRollDone: (dialog, roll) => RollDialog.onRollDoneClose(dialog, roll),
|
||||||
callbacks: [
|
callbacks: [
|
||||||
async roll => await this.$appelChanceResult(roll, onSuccess, onEchec)
|
async roll => await this.$onAppelChance(roll, onSuccess, onEchec)
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async $appelChanceResult(rollData, onSuccess, onEchec) {
|
async $onAppelChance(rollData, onSuccess, onEchec) {
|
||||||
if (rollData.rolled.isSuccess) {
|
if (rollData.rolled.isSuccess) {
|
||||||
await this.setFlag(SYSTEM_RDD, 'utilisationChance', true);
|
await this.setFlag(SYSTEM_RDD, 'utilisationChance', true);
|
||||||
await this.chanceActuelleIncDec(-1);
|
await this.chanceActuelleIncDec(-1);
|
||||||
|
|||||||
@@ -209,6 +209,7 @@ export default class ChatRollResult {
|
|||||||
|
|
||||||
async onAppelChanceSuccess(roll, chatMessage) {
|
async onAppelChanceSuccess(roll, chatMessage) {
|
||||||
roll.type.retry = true
|
roll.type.retry = true
|
||||||
|
roll.type.appelChance = true
|
||||||
await this.updateChatMessage(chatMessage, roll)
|
await this.updateChatMessage(chatMessage, roll)
|
||||||
|
|
||||||
const callbacks = [ChatUtility.remover(chatMessage)]
|
const callbacks = [ChatUtility.remover(chatMessage)]
|
||||||
|
|||||||
@@ -187,7 +187,9 @@ export class RollPartAttaque extends RollPartSelect {
|
|||||||
part.setDiff(rollData, { type: DIFF.DEFAUT })
|
part.setDiff(rollData, { type: DIFF.DEFAUT })
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
if (!rollData.type.appelChance){
|
||||||
part.setDiff(rollData, { type: DIFF.ATTAQUE, diff: current.initialDiff })
|
part.setDiff(rollData, { type: DIFF.ATTAQUE, diff: current.initialDiff })
|
||||||
|
}
|
||||||
current.initialDiff = undefined
|
current.initialDiff = undefined
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
|
|||||||
@@ -47,9 +47,12 @@ export class RollPartComp extends RollPartSelect {
|
|||||||
const current = this.getCurrent(rollData)
|
const current = this.getCurrent(rollData)
|
||||||
const selectedCarac = RollPart.getSelectedPart(rollData, PART_CARAC)
|
const selectedCarac = RollPart.getSelectedPart(rollData, PART_CARAC)
|
||||||
const selectedDiff = RollPart.getSelectedPart(rollData, PART_DIFF)
|
const selectedDiff = RollPart.getSelectedPart(rollData, PART_DIFF)
|
||||||
|
if (!rollData.type.appelChance){
|
||||||
this.rollPartCarac.selectByKey(rollData, selectedCarac?.key ?? current.comp.system.defaut_carac)
|
this.rollPartCarac.selectByKey(rollData, selectedCarac?.key ?? current.comp.system.defaut_carac)
|
||||||
this.rollPartDiff.setDiff(rollData, selectedDiff?.value ?? current.comp.system.default_diffLibre)
|
this.rollPartDiff.setDiff(rollData, selectedDiff?.value ?? current.comp.system.default_diffLibre)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
choices(refs) { return refs.comps }
|
choices(refs) { return refs.comps }
|
||||||
|
|||||||
@@ -131,7 +131,11 @@ export class RollPartDefense extends RollPartSelect {
|
|||||||
switch (part.code) {
|
switch (part.code) {
|
||||||
case PART_CARAC: return part.filterCaracs(rollData, refs.defenses.length > 0 ? [current.carac] : ['impossible'])
|
case PART_CARAC: return part.filterCaracs(rollData, refs.defenses.length > 0 ? [current.carac] : ['impossible'])
|
||||||
case PART_COMP: return part.filterComps(rollData, refs.defenses.length > 0 ? [current.comp?.name] : ['impossible'])
|
case PART_COMP: return part.filterComps(rollData, refs.defenses.length > 0 ? [current.comp?.name] : ['impossible'])
|
||||||
case PART_DIFF: return part.setDiff(rollData, this.getDiffDefense(rollData))
|
case PART_DIFF:
|
||||||
|
if (!rollData.type.appelChance) {
|
||||||
|
return part.setDiff(rollData, this.getDiffDefense(rollData))
|
||||||
|
}
|
||||||
|
return
|
||||||
case PART_SIGN: return part.setArme(rollData, this.getArmeDisparate(rollData), current.forceRequise)
|
case PART_SIGN: return part.setArme(rollData, this.getArmeDisparate(rollData), current.forceRequise)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user