diff --git a/src/assets/images/mysterytrophy/frank_mystery_trophy.png b/src/assets/images/mysterytrophy/frank_mystery_trophy.png new file mode 100644 index 000000000..67bfeba77 Binary files /dev/null and b/src/assets/images/mysterytrophy/frank_mystery_trophy.png differ diff --git a/src/components/room/widgets/furniture/FurnitureMysteryTrophyOpenDialogView.tsx b/src/components/room/widgets/furniture/FurnitureMysteryTrophyOpenDialogView.tsx new file mode 100644 index 000000000..ab187f129 --- /dev/null +++ b/src/components/room/widgets/furniture/FurnitureMysteryTrophyOpenDialogView.tsx @@ -0,0 +1,50 @@ +import { OpenMysteryTrophyMessageComposer } from '@nitrots/nitro-renderer'; +import { FC, useState } from 'react'; +import { LocalizeText, SendMessageComposer } from '../../../../api'; +import { Button, Column, Flex, NitroCardContentView, NitroCardHeaderView, NitroCardView, Text } from '../../../../common'; + +interface FurnitureMysteryTrophyOpenDialogViewProps +{ + objectId: number; + onClose: () => void; +} + +export const FurnitureMysteryTrophyOpenDialogView: FC = props => +{ + const { objectId = -1, onClose = null } = props; + const [ description, setDescription ] = useState(''); + + const onConfirm = () => + { + SendMessageComposer(new OpenMysteryTrophyMessageComposer(objectId, description)); + onClose(); + } + + if(objectId === -1) return null; + + return ( + + + + +
+
+ { LocalizeText('mysterytrophy.header.description') } +
+
+ + + +