mirror of
https://github.com/morbalint/kemkas.git
synced 2026-07-18 03:13:46 +00:00
[2e] add fegyverek & pancel
This commit is contained in:
@@ -0,0 +1,144 @@
|
||||
import React from "react";
|
||||
import {Fegyver, KarakterFelszereles, PancelTypeLabel} from "../domain-models/felszereles";
|
||||
import {Osztaly2E} from '../domain-models/osztaly2E'
|
||||
import {AllowedPajzsTypes, AllowedPancelTypes} from '../domain-models/allowed-pancel-types'
|
||||
import fegyverek from '../domain-models/fegyver.json'
|
||||
import {arraySetN} from "../../util";
|
||||
import {AllowedFegyver} from "../domain-models/allowed-fegyver";
|
||||
|
||||
export function FegyverLabel(fegyver: Fegyver): string {
|
||||
const flags = [] as string[]
|
||||
if (fegyver.Harcos) {
|
||||
flags.push("H")
|
||||
}
|
||||
if (fegyver.Masfelkezes) {
|
||||
flags.push("1½K")
|
||||
}
|
||||
if (fegyver.Ketkezes) {
|
||||
if (fegyver.Type === "kozelharci") {
|
||||
flags.push("2K")
|
||||
} else {
|
||||
if (fegyver.KetkezesBonusz) {
|
||||
flags.push("2KB")
|
||||
} else {
|
||||
flags.push("2KN")
|
||||
}
|
||||
}
|
||||
}
|
||||
if (fegyver.HarciManover) {
|
||||
flags.push("+2 HM")
|
||||
}
|
||||
if (fegyver.Alakzat){
|
||||
flags.push("AL")
|
||||
}
|
||||
if (fegyver.Hosszu) {
|
||||
flags.push("HO")
|
||||
}
|
||||
if (fegyver.Kabito) {
|
||||
flags.push("KO")
|
||||
}
|
||||
if (fegyver.LovasRoham) {
|
||||
flags.push("LR")
|
||||
}
|
||||
if (fegyver.PancelToro) {
|
||||
flags.push("PT")
|
||||
}
|
||||
if (fegyver.PajzsZuzo) {
|
||||
flags.push("PZ")
|
||||
}
|
||||
if (fegyver.Rohamtoro) {
|
||||
flags.push("RT")
|
||||
}
|
||||
// if (fegyver.EroBonusz) {
|
||||
// flags.push("ER")
|
||||
// }
|
||||
if (fegyver.Megjegyzes != null && fegyver.Megjegyzes.length > 0) {
|
||||
flags.push(fegyver.Megjegyzes)
|
||||
}
|
||||
const serializedFlags = flags.reduce((p,c) => `${p}${c} `, '');
|
||||
const sizeLabel = fegyver.Size < 1 && fegyver.Size > 0 ? ` [1/${Math.round(1 / fegyver.Size)}]` : (fegyver.Size > 1 ? ` [${fegyver.Size}]` : '');
|
||||
return `${fegyver.Name}${sizeLabel} ${serializedFlags.length > 0 ? "| " + serializedFlags : ''}| ${
|
||||
fegyver.DamageMultiplier > 1 ? `${fegyver.DamageMultiplier}*` : ''}${fegyver.NumberOfDamageDice}d${fegyver.DamageDice}${fegyver.DamageBonus > 0 ? ` +${fegyver.DamageBonus}` : ''} ${
|
||||
fegyver.CritRangeStart < 20 ? `${fegyver.CritRangeStart}-20` : ''}x${fegyver.CritMultiplier}${
|
||||
fegyver.Price > 0 ? ` | ár: ${fegyver.Price} at ` : ''}${
|
||||
fegyver.Range > 10 ? ` | táv: ${fegyver.Range}` : ''}`
|
||||
}
|
||||
|
||||
function Felszereles(props: {felszereles: KarakterFelszereles, changeFelszereles: (felszereles: KarakterFelszereles) => void, osztaly: Osztaly2E}) {
|
||||
const { felszereles, changeFelszereles, osztaly } = props;
|
||||
const allowedPancel = AllowedPancelTypes([osztaly])
|
||||
const allowedPajzs = AllowedPajzsTypes([osztaly])
|
||||
const valasztottFegyverek = felszereles.fegyverIDk
|
||||
.map((id, idx) => ({idx, fegyver: fegyverek.data.find(f => f.Id === id)})).filter((x) => x.fegyver != null).map(({idx, fegyver}) => ({idx, fegyver: fegyver as Fegyver}))
|
||||
|
||||
const osztalyAllowedFegyverek = AllowedFegyver(osztaly)
|
||||
const allowedFegyverek = [...osztalyAllowedFegyverek, ...valasztottFegyverek.filter(({idx, fegyver}) => !osztalyAllowedFegyverek.map(f => f.Id).includes(fegyver.Id)).map(({fegyver}) => fegyver)]
|
||||
const changeFegyver = (idx: number, newID: string) => {
|
||||
const found = fegyverek.data.find(x => x.Id === newID)
|
||||
if (!found) {
|
||||
console.log('Nem létező fegyver ID: ', newID)
|
||||
return
|
||||
}
|
||||
changeFelszereles({...felszereles, fegyverIDk: arraySetN(felszereles.fegyverIDk, idx, newID)})
|
||||
}
|
||||
|
||||
return <>
|
||||
<div className='row'>
|
||||
<h5 className='col align-self-center'>Felszerelés</h5>
|
||||
</div>
|
||||
<div className='row m-2'>
|
||||
<label className='col-md-2 col-sm-3 col-form-label'>Viselt páncél</label>
|
||||
<select className='col form-select' value={felszereles.pancelID} onChange={e => changeFelszereles({...felszereles, pancelID: e.target.value === 'nincs' ? undefined : e.target.value})}>
|
||||
<option key={'nincs'} value={'nincs'}>Nincs</option>
|
||||
{
|
||||
<optgroup label={PancelTypeLabel("konnyu")}>
|
||||
{allowedPancel.filter(p => p.Type === "konnyu").map(p =>
|
||||
<option key={p.Id} value={p.Id}>{`${p.Name}${p.Size > 1 ? ` [${p.Size}]` : ''} (+${p.VO} VO) - ${p.Price} at`}</option>)}
|
||||
</optgroup>
|
||||
}
|
||||
{
|
||||
allowedPancel.some(p => p.Type === "nehez") &&
|
||||
<optgroup label={PancelTypeLabel("nehez")}>
|
||||
{allowedPancel.filter(p => p.Type === "nehez").map(p =>
|
||||
<option key={p.Id} value={p.Id}>{`${p.Name} (+${p.VO} VO) - ${p.Price} at`}</option>)}
|
||||
</optgroup>
|
||||
}
|
||||
</select>
|
||||
</div>
|
||||
<div className='row m-2'>
|
||||
<label className='col-md-2 col-sm-3 col-form-label'>Hordott pajzs</label>
|
||||
<select className='col form-select' value={felszereles.pajzsID}
|
||||
onChange={e => changeFelszereles({...felszereles, pajzsID: e.target.value === 'nincs' ? undefined : e.target.value})}>
|
||||
<option key={'nincs'} value={'nincs'}>Nincs</option>
|
||||
{allowedPajzs.map(p => <option key={p.Id} value={p.Id}>{`${p.Name} (+${p.VO} VO) - ${p.Price} at`}</option>)}
|
||||
</select>
|
||||
</div>
|
||||
{valasztottFegyverek.map(({idx, fegyver}) => (
|
||||
<div key={`fegyver-${idx}`} className='row m-2'>
|
||||
<label className='col-md-2 col-sm-3 col-form-label'>Fegyver</label>
|
||||
<select className='col form-select' value={fegyver.Id}
|
||||
onChange={e => changeFegyver(idx, e.target.value)}>
|
||||
<optgroup label="Közelharci">
|
||||
{allowedFegyverek.filter(f => f.Type === 'kozelharci').map(f => <option
|
||||
key={f.Id} value={f.Id}>{FegyverLabel(f)}</option>)}
|
||||
</optgroup>
|
||||
<optgroup label="Közelharci, dobható">
|
||||
{allowedFegyverek.filter(f => f.Type === 'dobhato').map(f => <option
|
||||
key={f.Id} value={f.Id}>{FegyverLabel(f)}</option>)}
|
||||
</optgroup>
|
||||
<optgroup label="Távolsági">
|
||||
{allowedFegyverek.filter(f => f.Type === 'lofegyver').map(f => <option
|
||||
key={f.Id} value={f.Id}>{FegyverLabel(f)}</option>)}
|
||||
</optgroup>
|
||||
</select>
|
||||
<button className='col-md-2 col-sm-3 btn btn-outline-dark btn-lg ms-2' type='button'
|
||||
onClick={() => changeFelszereles({
|
||||
...felszereles,
|
||||
fegyverIDk: [...felszereles.fegyverIDk.slice(0, idx), ...felszereles.fegyverIDk.slice(idx+1)]})}>Elvesz</button>
|
||||
</div>
|
||||
))}
|
||||
<button className='btn btn-outline-dark btn btn-lg ms-2' type='button' onClick={() => changeFelszereles({...felszereles, fegyverIDk: [...felszereles.fegyverIDk, 'bot']})}>Fegyver hozzáadása</button>
|
||||
</>
|
||||
}
|
||||
|
||||
export default Felszereles
|
||||
@@ -0,0 +1,29 @@
|
||||
import {Fegyver} from "./felszereles";
|
||||
import fegyverDB from "./fegyver.json";
|
||||
import {Osztaly2E} from "./osztaly2E";
|
||||
|
||||
export function AllowedFegyver(o: Osztaly2E): Fegyver[] {
|
||||
const fegyverek = fegyverDB.data.map(x => x as Fegyver)
|
||||
const varazslo = fegyverek.filter(f => ['okol', 'bot', 'bot_vasalt' , 'bunko', 'tor', 'parittya', 'dobotu'].includes(f.Id))
|
||||
const tolvaj = fegyverek.filter(f => !f.Ketkezes || !f.Masfelkezes || ['ij_rovid', 'szamszerij_konnyu', 'szamszerij_nehez' ].includes(f.Id))
|
||||
const dalnok = fegyverek.filter(f => !f.Ketkezes || !f.Masfelkezes || ['okol', 'ij_rovid', 'szamszerij_konnyu' ].includes(f.Id))
|
||||
const druida = fegyverek.filter(f => ['okol', 'bot', 'bunko', 'tor', 'dobotu', 'kard_szablya', 'sarlo', 'landzsa', 'parittya'].includes(f.Id))
|
||||
const nemHarcos = fegyverek.filter(f => !f.Harcos)
|
||||
const harcos = fegyverek.filter(f => !f.CsakNemHarcos)
|
||||
switch (o) {
|
||||
case Osztaly2E.Harcos:
|
||||
case Osztaly2E.Amazon:
|
||||
case Osztaly2E.Barbar:
|
||||
case Osztaly2E.Ijasz:
|
||||
case Osztaly2E.Tengeresz:
|
||||
case Osztaly2E.Vandor:
|
||||
return harcos;
|
||||
// Note: Isteni fegyver barmi lehet istentol foggoen
|
||||
case Osztaly2E.Pap: return nemHarcos;
|
||||
case Osztaly2E.Tolvaj: return tolvaj;
|
||||
case Osztaly2E.Illuzionista:
|
||||
case Osztaly2E.Varazslo: return varazslo;
|
||||
case Osztaly2E.Dalnok: return dalnok;
|
||||
case Osztaly2E.Druida: return druida;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
import {Pajzs, Pancel} from "./felszereles";
|
||||
import {Osztaly2E} from "./osztaly2E";
|
||||
import pancelDB from "./pancel.json";
|
||||
import pajzsDB from "./pajzs.json"
|
||||
|
||||
export function AllowedPajzsTypes(osztalyok: Osztaly2E[]): Pajzs[] {
|
||||
return [...new Set(osztalyok.flatMap(osztalyAllowedPajzs))]
|
||||
}
|
||||
|
||||
function osztalyAllowedPajzs(o: Osztaly2E): Pajzs[] {
|
||||
const pajzsok = pajzsDB.pajzs.map(x => x as Pajzs)
|
||||
|
||||
switch (o) {
|
||||
case Osztaly2E.Harcos: return pajzsok;
|
||||
case Osztaly2E.Amazon: return pajzsok;
|
||||
case Osztaly2E.Barbar: return pajzsok;
|
||||
case Osztaly2E.Tengeresz: return pajzsok;
|
||||
case Osztaly2E.Ijasz: return pajzsok;
|
||||
case Osztaly2E.Tolvaj: return [];
|
||||
case Osztaly2E.Pap: return pajzsok;
|
||||
case Osztaly2E.Illuzionista: return [];
|
||||
case Osztaly2E.Varazslo: return [];
|
||||
case Osztaly2E.Dalnok: return pajzsok;
|
||||
case Osztaly2E.Druida: return pajzsok.filter(f => f.Id === "pajzs_fa");
|
||||
case Osztaly2E.Vandor: return pajzsok;
|
||||
}
|
||||
}
|
||||
|
||||
export function AllowedPancelTypes(osztalyok: Osztaly2E[]): Pancel[] {
|
||||
return [...new Set(osztalyok.flatMap(osztalyAllowedPancel))]
|
||||
}
|
||||
|
||||
function osztalyAllowedPancel(o: Osztaly2E): Pancel[] {
|
||||
const pancelok = pancelDB.pancel.map(x => x as Pancel)
|
||||
const konnyu = pancelok.filter(x => x.Type === "konnyu")
|
||||
switch (o) {
|
||||
case Osztaly2E.Harcos: return pancelok;
|
||||
case Osztaly2E.Amazon: return konnyu;
|
||||
case Osztaly2E.Barbar: return pancelok;
|
||||
case Osztaly2E.Ijasz: return konnyu;
|
||||
case Osztaly2E.Tengeresz: return konnyu;
|
||||
case Osztaly2E.Pap: return pancelok;
|
||||
case Osztaly2E.Illuzionista: return [];
|
||||
case Osztaly2E.Varazslo: return [];
|
||||
case Osztaly2E.Tolvaj: return konnyu;
|
||||
case Osztaly2E.Dalnok: return konnyu;
|
||||
case Osztaly2E.Druida: return pancelok.filter(f => ['csuha', 'bor', 'kivert_bor', 'prem'].includes(f.Id));
|
||||
case Osztaly2E.Vandor: return konnyu;
|
||||
}
|
||||
}
|
||||
@@ -272,7 +272,7 @@
|
||||
{
|
||||
"Id": "fejsze",
|
||||
"Name": "Fejsze",
|
||||
"Type": "kozelharci",
|
||||
"Type": "dobhato",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
@@ -286,9 +286,9 @@
|
||||
"PancelToro": false,
|
||||
"PajzsZuzo": false,
|
||||
"Rohamtoro": false,
|
||||
"EroBonusz": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "dobható, hatótávolsága rövid (30’)",
|
||||
"Megjegyzes": "",
|
||||
"Price": 6,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 6,
|
||||
@@ -723,7 +723,7 @@
|
||||
{
|
||||
"Id": "landzsa",
|
||||
"Name": "Lándzsa",
|
||||
"Type": "kozelharci",
|
||||
"Type": "dobhato",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": true,
|
||||
@@ -739,7 +739,7 @@
|
||||
"Rohamtoro": true,
|
||||
"EroBonusz": false,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "dobható [R]",
|
||||
"Megjegyzes": "",
|
||||
"Price": 5,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 8,
|
||||
@@ -783,7 +783,7 @@
|
||||
{
|
||||
"Id": "szigony",
|
||||
"Name": "Szigony, háromágú",
|
||||
"Type": "kozelharci",
|
||||
"Type": "dobhato",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": true,
|
||||
@@ -797,9 +797,9 @@
|
||||
"PancelToro": false,
|
||||
"PajzsZuzo": false,
|
||||
"Rohamtoro": true,
|
||||
"EroBonusz": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "dobható [R]",
|
||||
"Megjegyzes": "",
|
||||
"Price": 10,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 8,
|
||||
@@ -807,13 +807,13 @@
|
||||
"DamageBonus": 0,
|
||||
"CritRangeStart": 20,
|
||||
"CritMultiplier": 2,
|
||||
"Range": 10,
|
||||
"Range": 30,
|
||||
"Size": 1
|
||||
},
|
||||
{
|
||||
"Id": "tor",
|
||||
"Name": "Tőr",
|
||||
"Type": "kozelharci",
|
||||
"Type": "dobhato",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
@@ -827,7 +827,7 @@
|
||||
"PancelToro": false,
|
||||
"PajzsZuzo": false,
|
||||
"Rohamtoro": false,
|
||||
"EroBonusz": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "",
|
||||
"Price": 4,
|
||||
@@ -960,36 +960,6 @@
|
||||
"Range": 50,
|
||||
"Size": 0.25
|
||||
},
|
||||
{
|
||||
"Id": "fejsze_dobo",
|
||||
"Name": "Fejsze",
|
||||
"Type": "lofegyver",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
"Ketkezes": false,
|
||||
"KetkezesBonusz": false,
|
||||
"HarciManover": false,
|
||||
"Alakzat": false,
|
||||
"Hosszu": false,
|
||||
"Kabito": false,
|
||||
"LovasRoham": false,
|
||||
"PancelToro": false,
|
||||
"PajzsZuzo": true,
|
||||
"Rohamtoro": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "",
|
||||
"Price": 6,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 6,
|
||||
"NumberOfDamageDice": 1,
|
||||
"DamageBonus": 0,
|
||||
"CritRangeStart": 20,
|
||||
"CritMultiplier": 3,
|
||||
"Range": 30,
|
||||
"Size": 1
|
||||
},
|
||||
{
|
||||
"Id": "dobotu",
|
||||
"Name": "Dobótű",
|
||||
@@ -1110,36 +1080,6 @@
|
||||
"Range": 100,
|
||||
"Size": 1
|
||||
},
|
||||
{
|
||||
"Id": "landzsa_dobo",
|
||||
"Name": "Lándzsa",
|
||||
"Type": "lofegyver",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
"Ketkezes": true,
|
||||
"KetkezesBonusz": true,
|
||||
"HarciManover": false,
|
||||
"Alakzat": false,
|
||||
"Hosszu": false,
|
||||
"Kabito": false,
|
||||
"LovasRoham": false,
|
||||
"PancelToro": false,
|
||||
"PajzsZuzo": false,
|
||||
"Rohamtoro": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "",
|
||||
"Price": 5,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 8,
|
||||
"NumberOfDamageDice": 1,
|
||||
"DamageBonus": 0,
|
||||
"CritRangeStart": 20,
|
||||
"CritMultiplier": 3,
|
||||
"Range": 30,
|
||||
"Size": 2
|
||||
},
|
||||
{
|
||||
"Id": "olaj",
|
||||
"Name": "Olaj",
|
||||
@@ -1235,7 +1175,7 @@
|
||||
"Name": "Parittya",
|
||||
"Type": "lofegyver",
|
||||
"Harcos": true,
|
||||
"CsakNemHarcos": true,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
"Ketkezes": false,
|
||||
"KetkezesBonusz": false,
|
||||
@@ -1349,66 +1289,6 @@
|
||||
"CritMultiplier": 2,
|
||||
"Range": 30,
|
||||
"Size": 1
|
||||
},
|
||||
{
|
||||
"Id": "szigony_haromagu",
|
||||
"Name": "Szigony, háromágú",
|
||||
"Type": "lofegyver",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
"Ketkezes": true,
|
||||
"KetkezesBonusz": true,
|
||||
"HarciManover": false,
|
||||
"Alakzat": false,
|
||||
"Hosszu": false,
|
||||
"Kabito": false,
|
||||
"LovasRoham": false,
|
||||
"PancelToro": true,
|
||||
"PajzsZuzo": false,
|
||||
"Rohamtoro": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "",
|
||||
"Price": 10,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 8,
|
||||
"NumberOfDamageDice": 1,
|
||||
"DamageBonus": 0,
|
||||
"CritRangeStart": 20,
|
||||
"CritMultiplier": 2,
|
||||
"Range": 30,
|
||||
"Size": 1
|
||||
},
|
||||
{
|
||||
"Id": "tor_dobo",
|
||||
"Name": "Tőr",
|
||||
"Type": "lofegyver",
|
||||
"Harcos": false,
|
||||
"CsakNemHarcos": false,
|
||||
"Masfelkezes": false,
|
||||
"Ketkezes": false,
|
||||
"KetkezesBonusz": false,
|
||||
"HarciManover": false,
|
||||
"Alakzat": false,
|
||||
"Hosszu": false,
|
||||
"Kabito": false,
|
||||
"LovasRoham": false,
|
||||
"PancelToro": true,
|
||||
"PajzsZuzo": false,
|
||||
"Rohamtoro": false,
|
||||
"EroBonusz": true,
|
||||
"Megterheltseg": false,
|
||||
"Megjegyzes": "",
|
||||
"Price": 4,
|
||||
"DamageMultiplier": 1,
|
||||
"DamageDice": 4,
|
||||
"NumberOfDamageDice": 1,
|
||||
"DamageBonus": 0,
|
||||
"CritRangeStart": 18,
|
||||
"CritMultiplier": 3,
|
||||
"Range": 30,
|
||||
"Size": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -27,7 +27,7 @@ export interface Pajzs {
|
||||
export interface Fegyver {
|
||||
Id: string,
|
||||
Name: string,
|
||||
Type: 'kozelharci' | 'lofegyver',
|
||||
Type: 'kozelharci' | 'dobhato' | 'lofegyver',
|
||||
Harcos: boolean,
|
||||
CsakNemHarcos: boolean,
|
||||
Masfelkezes: boolean,
|
||||
@@ -48,7 +48,7 @@ export interface Fegyver {
|
||||
DamageMultiplier: number,
|
||||
DamageDice: number,
|
||||
NumberOfDamageDice: number,
|
||||
DamageBonusz: number,
|
||||
DamageBonus: number,
|
||||
CritRangeStart: number,
|
||||
CritMultiplier: number,
|
||||
Range: number,
|
||||
|
||||
@@ -18,6 +18,8 @@ import {TulajdonsagokFajjal} from "../domain-models/faj2E";
|
||||
import JellemSelector from "../components/JellemSelector";
|
||||
import MasodlagosErtekek from "../components/MasodlagosErtekek";
|
||||
import {CalculateMasodlagosErtekek} from "../domain-models/masodlagos_ertekek";
|
||||
import Felszereles from "../components/Felszereles";
|
||||
import {KarakterFelszereles} from "../domain-models/felszereles";
|
||||
|
||||
function CreateCharacter2E(props: {}) {
|
||||
|
||||
@@ -30,6 +32,8 @@ function CreateCharacter2E(props: {}) {
|
||||
SetDefaultTolvajKepzettsegek(karakter, changeTolvajKepzettseg)
|
||||
SetDefaultKepzettsegek({...karakter, tulajdonsagok: tulajdonsagokFajjal}, changeKepzettseg)
|
||||
|
||||
const changeFelszereles = (f: KarakterFelszereles) => setKarakter({...karakter, felszereles: f})
|
||||
|
||||
let [showSaved, setShowSaved] = useState(false);
|
||||
const hideSaved = () => setShowSaved(false);
|
||||
|
||||
@@ -119,6 +123,10 @@ function CreateCharacter2E(props: {}) {
|
||||
hpRolls: []
|
||||
})} />
|
||||
<hr />
|
||||
<Felszereles osztaly={karakter.osztaly} felszereles={karakter.felszereles}
|
||||
changeFelszereles={changeFelszereles}/>
|
||||
|
||||
<hr/>
|
||||
</form>
|
||||
</div>
|
||||
<hr/>
|
||||
|
||||
Reference in New Issue
Block a user