import { IFurnitureData, RoomObjectCategory } from '@nitrots/nitro-renderer'; import { FC, useEffect, useState } from 'react'; import { FurniCategory, GetFurnitureDataForRoomObject, LocalizeText } from '../../../../../api'; import { Button, Column, NitroCardContentView, NitroCardHeaderView, NitroCardView, Text } from '../../../../../common'; import { useRoom } from '../../../../../hooks'; interface MonsterPlantSeedConfirmViewProps { objectId: number; onClose: () => void; } const MODE_DEFAULT: number = -1; const MODE_MONSTERPLANT_SEED: number = 0; export const MonsterPlantSeedConfirmView: FC = props => { const { objectId = -1, onClose = null } = props; const [ furniData, setFurniData ] = useState(null); const [ mode, setMode ] = useState(MODE_DEFAULT); const { roomSession = null } = useRoom(); const useProduct = () => { roomSession.useMultistateItem(objectId); onClose(); }; useEffect(() => { if(!roomSession || (objectId === -1)) return; const furniData = GetFurnitureDataForRoomObject(roomSession.roomId, objectId, RoomObjectCategory.FLOOR); if(!furniData) return; setFurniData(furniData); let mode = MODE_DEFAULT; switch(furniData.specialType) { case FurniCategory.MONSTERPLANT_SEED: mode = MODE_MONSTERPLANT_SEED; break; } if(mode === MODE_DEFAULT) { onClose(); return; } setMode(mode); }, [ roomSession, objectId, onClose ]); if(mode === MODE_DEFAULT) return null; return (
{ LocalizeText('useproduct.widget.text.plant_seed', [ 'productName' ], [ furniData.name ]) } { LocalizeText('useproduct.widget.info.plant_seed') }
); };