removes worse options when an SF could be applied

pull/61/head
macniel 2025-10-22 23:06:45 +02:00
parent 2b22a8fa6f
commit 47a1881442
1 changed files with 41 additions and 4 deletions

View File

@ -85,11 +85,20 @@ export class ActionManager {
eval: (options) => this.#hatFernkampfWaffeinHand(),
},
{
name: "Angesagter Fernkampfangriff",
name: "Angesagter Fernkampfangriff", // wird durch Scharfer Schuss aus SF ersetzt
type: ActionManager.ATTACK,
cost: ActionManager.CONTINUING,
source: ActionManager.DEFAULT,
eval: (options) => this.#hatFernkampfWaffeinHand(),
eval: (options) => {
const step1 = this.#hatFernkampfWaffeinHand()
const step2 = !this.#hatSonderfertigkeit("Scharfschütze", options)
const step3 = this.#hatSonderfertigkeit("Scharfschütze", options) && !this.#evalSonderfertigkeitRequirements("Scharfschütze", options)
if (step1 && (step2 || step3)) {
return true
} else
return false
},
modDescription: "erhöht TP vom Angriff um {}",
mod: (value) => -value * 2
},
{
@ -105,6 +114,7 @@ export class ActionManager {
} else
return false
},
modDescription: "erhöht TP vom Angriff um {}",
mod: (value) => -value
},
{
@ -135,6 +145,22 @@ export class ActionManager {
source: ActionManager.DEFAULT,
eval: (options) => true
},
{
name: "Meisterparade",
type: ActionManager.DEFENSE,
cost: ActionManager.REGULAR,
source: ActionManager.SF,
modDescription: "erschwert nächste AT vom Ziel um {}",
mod: (value) => value,
eval: (options) => {
const step1 = this.#hatWaffeinHand() && this.#hatSonderfertigkeit("Meisterparade", options)
const step2WithBenefits = this.#evalSonderfertigkeitRequirements("Meisterparade", options)
if (step1 && step2WithBenefits ? step2WithBenefits.passes : false) {
return step2WithBenefits
} else
return false
}
},
{
name: "Bewegen",
type: ActionManager.MOVEMENT,
@ -154,6 +180,7 @@ export class ActionManager {
type: ActionManager.ATTACK,
cost: ActionManager.REGULAR,
source: ActionManager.SF,
modDescription: "verringert PA des Ziels um {}",
mod: (value) => value,
eval: (options) => {
const step1 = this.#hatWaffeinHand() && this.#hatSonderfertigkeit("Finte", options)
@ -165,18 +192,28 @@ export class ActionManager {
}
},
{
name: "Wuchtschlag",
name: "Wuchtschlag", // wird durch Wuchtschlag aus SF ersetzt
type: ActionManager.ATTACK,
cost: ActionManager.REGULAR,
source: ActionManager.DEFAULT,
modDescription: "erhöht TP vom Angriff um {}",
mod: (value) => -(value),
eval: (options) => !this.#hatFernkampfWaffeinHand()
eval: (options) => {
const step1 = !this.#hatFernkampfWaffeinHand()
const step2 = !this.#hatSonderfertigkeit("Wuchtschlag", options)
const step3 = this.#hatSonderfertigkeit("Wuchtschlag", options) && !this.#evalSonderfertigkeitRequirements("Wuchtschlag", options)
if (step1 && (step2 || step3)) {
return true
} else
return false
}
},
{
name: "Wuchtschlag",
type: ActionManager.ATTACK,
cost: ActionManager.REGULAR,
source: ActionManager.SF,
modDescription: "erhöht TP vom Angriff um {}",
mod: (value) => -(value),
eval: (options) => {
const step1 = !this.#hatFernkampfWaffeinHand() && this.#hatSonderfertigkeit("Wuchtschlag", options)