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"; import FegyverSelector from "./FegyverSelector"; 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 <>