import React from "react"; import {Karakter2E} from "../domain-models/karakter2E"; import {SignedNumberToText} from "../../shared/components/Helpers"; import {Mentok, MentoTipus, MentoTipusLabel, MentokTotal} from "../domain-models/mentok"; import {BaseHP, HP} from "../domain-models/masodlagos_ertekek"; import {MultiClassTamadasBonusz} from "../domain-models/tamadas_bonusz"; import {Osztaly2E} from "../domain-models/osztaly2E"; function MentoNovekedes(props : {tipus: MentoTipus, ujMentok: Mentok, regiMentok: Mentok}) { const {tipus, ujMentok, regiMentok} = props if (ujMentok[tipus] === regiMentok[tipus]) { return null } return
{SignedNumberToText(ujMentok[tipus] - regiMentok[tipus])}
; } function UjMento(props : {tipus: MentoTipus, ujMentok: Mentok, regiMentok: Mentok}) { const {tipus, ujMentok, regiMentok} = props if (ujMentok[tipus] === regiMentok[tipus]) { return null } return
{SignedNumberToText(ujMentok[tipus])}
; } function BasicNewLevel(props: { karakter: Pick szint: number osztaly: Osztaly2E changeRolledHP: (hp: number) => void, }) { const {karakter, szint, osztaly, changeRolledHP} = props const regiMentok = MentokTotal({...karakter, szintlepesek: karakter.szintlepesek.slice(0, szint - 1)}) const ujMentok = MentokTotal({...karakter, szintlepesek: karakter.szintlepesek.slice(0, szint)}) const regiTB = MultiClassTamadasBonusz(karakter.szintlepesek.slice(0, szint-1)) const ujTB = MultiClassTamadasBonusz(karakter.szintlepesek.slice(0, szint)) if (regiTB.length < ujTB.length) { regiTB.push(0) } const TBdiff = ujTB.map((x, i) => x - regiTB[i]) const isTBincreased = TBdiff.length > 0 && TBdiff.some(x => x > 0) return <>
changeRolledHP(Number(e.target.value))} data-testid={`HP-${szint}`} />
{ isTBincreased &&
{TBdiff.map(SignedNumberToText).join(" / ")}
}
{HP({...karakter, szintlepesek: karakter.szintlepesek.slice(0, szint)})}
{isTBincreased &&
{ujTB.map(SignedNumberToText).join(" / ")}
}
} export default BasicNewLevel