Fix saving awakening types and levels
This commit is contained in:
parent
e6c52c43b2
commit
39940abf9f
2 changed files with 12 additions and 9 deletions
|
|
@ -30,7 +30,9 @@ const AwakeningSelect = (props: Props) => {
|
||||||
const [open, setOpen] = useState(false)
|
const [open, setOpen] = useState(false)
|
||||||
|
|
||||||
// States
|
// States
|
||||||
const [awakeningType, setAwakeningType] = useState(-1)
|
const [awakeningType, setAwakeningType] = useState(
|
||||||
|
props.object === 'weapon' ? -1 : 1
|
||||||
|
)
|
||||||
const [awakeningLevel, setAwakeningLevel] = useState(1)
|
const [awakeningLevel, setAwakeningLevel] = useState(1)
|
||||||
|
|
||||||
const [maxValue, setMaxValue] = useState(1)
|
const [maxValue, setMaxValue] = useState(1)
|
||||||
|
|
@ -87,11 +89,6 @@ const AwakeningSelect = (props: Props) => {
|
||||||
setAwakeningLevel(props.awakeningLevel ? props.awakeningLevel : 1)
|
setAwakeningLevel(props.awakeningLevel ? props.awakeningLevel : 1)
|
||||||
}, [props.object, props.awakeningType, props.awakeningLevel])
|
}, [props.object, props.awakeningType, props.awakeningLevel])
|
||||||
|
|
||||||
// Send awakening type and level when changed
|
|
||||||
useEffect(() => {
|
|
||||||
props.sendValues(awakeningType, awakeningLevel)
|
|
||||||
}, [props.sendValues, awakeningType, awakeningLevel])
|
|
||||||
|
|
||||||
// Send validity of form when awakening level changes
|
// Send validity of form when awakening level changes
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
props.sendValidity(awakeningLevel > 0 && error === '')
|
props.sendValidity(awakeningLevel > 0 && error === '')
|
||||||
|
|
@ -103,6 +100,12 @@ const AwakeningSelect = (props: Props) => {
|
||||||
if (props.onOpenChange) props.onOpenChange(!open)
|
if (props.onOpenChange) props.onOpenChange(!open)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleValueChange(type: number, level: number) {
|
||||||
|
setAwakeningType(type)
|
||||||
|
setAwakeningLevel(level)
|
||||||
|
props.sendValues(type, level)
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="Awakening">
|
<div className="Awakening">
|
||||||
<SelectWithInput
|
<SelectWithInput
|
||||||
|
|
@ -112,7 +115,7 @@ const AwakeningSelect = (props: Props) => {
|
||||||
inputValue={awakeningLevel}
|
inputValue={awakeningLevel}
|
||||||
onOpenChange={changeOpen}
|
onOpenChange={changeOpen}
|
||||||
sendValidity={props.sendValidity}
|
sendValidity={props.sendValidity}
|
||||||
sendValues={props.sendValues}
|
sendValues={handleValueChange}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -254,8 +254,8 @@ const CharacterModal = ({
|
||||||
<h3>{t('modals.characters.subtitles.awakening')}</h3>
|
<h3>{t('modals.characters.subtitles.awakening')}</h3>
|
||||||
<AwakeningSelect
|
<AwakeningSelect
|
||||||
object="character"
|
object="character"
|
||||||
awakeningType={gridCharacter.awakening?.type}
|
awakeningType={awakeningType}
|
||||||
awakeningLevel={gridCharacter.awakening?.level}
|
awakeningLevel={awakeningLevel}
|
||||||
sendValidity={receiveValidity}
|
sendValidity={receiveValidity}
|
||||||
sendValues={receiveAwakeningValues}
|
sendValues={receiveAwakeningValues}
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue