mirror of
https://github.com/morbalint/kemkas.git
synced 2026-07-17 19:03:46 +00:00
[2e] add felszereles penz !!!
!!! breaking api change in sync with backend
This commit is contained in:
@@ -76,7 +76,7 @@ export function FelszerelesView(props: {felszereles: KarakterFelszereles, change
|
||||
|
||||
const osztalyAllowedFegyverek = AllowedFegyverek(osztalyok)
|
||||
const allowedFegyverek = (selected?: Fegyver) => ([
|
||||
...osztalyAllowedFegyverek.filter(x => x.Size + viseltSize - (selected?.Size ?? 1 > 1 ? selected!.Size : 1) <= 8),
|
||||
...osztalyAllowedFegyverek.filter(x => x.Size + viseltSize - ((selected?.Size ?? 1) > 1 ? selected!.Size : 1) <= 8),
|
||||
...valasztottFegyverek.filter(({idx,fegyver}) => !osztalyAllowedFegyverek.map(f => f.Id).includes(fegyver.Id))
|
||||
.map(({fegyver}) => fegyver)])
|
||||
|
||||
@@ -549,8 +549,59 @@ export function FelszerelesView(props: {felszereles: KarakterFelszereles, change
|
||||
<div className='row mt-4'>
|
||||
<h6 className='col align-self-center'>Pénz</h6>
|
||||
</div>
|
||||
<div className='row m-2'>
|
||||
Felszerelés értéke: {FormatCoins(FelszerelesErtekeAranyban(felszereles))}
|
||||
<div className='row m-2 gx-lg-5 gx-1'>
|
||||
<div className='col-md-4 col-sm-12'>
|
||||
<div className="row">
|
||||
<label className='col col-form-label'>Arany</label>
|
||||
<div className='col m-2'>
|
||||
<input
|
||||
className='form-control'
|
||||
type='number'
|
||||
value={felszereles.at}
|
||||
onChange={e => changeFelszereles({...felszereles, at: Number(e.target.value)})}
|
||||
data-testid='felszereles-at'
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className='col-md-4 col-sm-12'>
|
||||
<div className="row">
|
||||
<label className='col col-form-label'>Elektrum</label>
|
||||
<div className='col m-2'>
|
||||
<input
|
||||
className='form-control'
|
||||
type='number'
|
||||
value={felszereles.el}
|
||||
onChange={e => changeFelszereles({...felszereles, el: Number(e.target.value)})}
|
||||
data-testid='felszereles-el'
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className='col-md-4 col-sm-12'>
|
||||
<div className="row">
|
||||
<label className='col col-form-label'>Ezüst</label>
|
||||
<div className='col m-2'>
|
||||
<input
|
||||
className='form-control'
|
||||
type='number'
|
||||
value={felszereles.et}
|
||||
onChange={e => changeFelszereles({...felszereles, et: Number(e.target.value)})}
|
||||
data-testid='felszereles-et'
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className='row m-2 gx-lg-5 gx-1'>
|
||||
<div className='col'>
|
||||
<p className='col-form-label'>Felszerelés
|
||||
értéke: {FormatCoins(FelszerelesErtekeAranyban(felszereles))}</p>
|
||||
</div>
|
||||
<div className='col'>
|
||||
<p className='col-form-label'>Teljes vagyon
|
||||
értéke: {FormatCoins(FelszerelesErtekeAranyban(felszereles) + felszereles.at + (felszereles.el * 0.5) + (felszereles.et * 0.1))}</p>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
}
|
||||
|
||||
@@ -101,6 +101,9 @@ export interface KarakterFelszereles {
|
||||
viselt: IdAndCount[]
|
||||
cipelt: IdAndCount[]
|
||||
aprosagok: IdAndCount[]
|
||||
et: number
|
||||
el: number
|
||||
at: number
|
||||
}
|
||||
|
||||
export const DefaultFelszereles: KarakterFelszereles = {
|
||||
@@ -108,6 +111,9 @@ export const DefaultFelszereles: KarakterFelszereles = {
|
||||
viselt: [],
|
||||
cipelt: [],
|
||||
aprosagok: [],
|
||||
et: 0,
|
||||
el: 0,
|
||||
at: 0,
|
||||
}
|
||||
|
||||
export function ViseltSize(felszereles: KarakterFelszereles): number {
|
||||
|
||||
@@ -82,7 +82,11 @@ export async function CreatePDF(karakter: KarakterPdfView) {
|
||||
for (let i = 0; i < karakter.FelszerelesAprosagok.length && i < 8; i++) {
|
||||
form.getTextField(`aprosagok_${i}`).setText(karakter.FelszerelesAprosagok[i])
|
||||
}
|
||||
|
||||
|
||||
form.getTextField('arany').setText(karakter.at.toString())
|
||||
form.getTextField('elektrum').setText(karakter.el.toString())
|
||||
form.getTextField('ezust').setText(karakter.et.toString())
|
||||
|
||||
form.updateFieldAppearances(pdfFont)
|
||||
|
||||
const pdfBytes = await pdfDoc.save();
|
||||
|
||||
@@ -50,6 +50,9 @@ export interface KarakterPdfView {
|
||||
FelszerelesViselt: string[],
|
||||
FelszerelesCipelt: string[],
|
||||
FelszerelesAprosagok: string[],
|
||||
et: number
|
||||
el: number
|
||||
at: number
|
||||
}
|
||||
|
||||
export function KarakterInputToPdfView(karakter: Karakter2E): KarakterPdfView {
|
||||
@@ -178,6 +181,9 @@ export function KarakterInputToPdfView(karakter: Karakter2E): KarakterPdfView {
|
||||
FelszerelesViselt: viseltFelszereles,
|
||||
FelszerelesCipelt: cipeltFelszereles,
|
||||
FelszerelesAprosagok: aprosagFelszereles,
|
||||
et: karakter.felszereles.et,
|
||||
el: karakter.felszereles.el,
|
||||
at: karakter.felszereles.at,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,4 +215,4 @@ function mapKepzettsegToPdfView(kepzettseg: Kepzettseg, tulajdonsagok: KarakterT
|
||||
bonusz: SignedNumberToText(Modifier(tulajdonsagErtek)),
|
||||
osszes: (szint + Modifier(tulajdonsagErtek)).toString(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user