5180 fichiers 38.5 Mo 0 téléchargements 466 vues mis à jour il y a 7 heures ui
nitro-v36-with-renderer-v36 / src / components / wired / views / triggers / WiredTriggerAvatarEnterRoomView.tsx
WiredTriggerAvatarEnterRoomView.tsx 2 Ko Télécharger le fichier
import { FC, useEffect, useState } from 'react';
import { LocalizeText, WiredFurniType } from '../../../../api';
import { Text } from '../../../../common';
import { useWired } from '../../../../hooks';
import { OctaneInput } from '../../../../layout';
import { WiredTriggerBaseView } from './WiredTriggerBaseView';
import { Radio } from '../../../../common/Radio';
import { NativeTextTree } from '../../../../common/native-text/NativeTextTree';

export const WiredTriggerAvatarEnterRoomView: FC<{}> = (props) => {
    const [username, setUsername] = useState('');
    const [avatarMode, setAvatarMode] = useState(0);
    const { trigger = null, setStringParam = null } = useWired();

    const save = () => setStringParam(avatarMode === 1 ? username : '');

    useEffect(() => {
        setUsername(trigger.stringData);
        setAvatarMode(trigger.stringData ? 1 : 0);
    }, [trigger]);

    return (
        <NativeTextTree>
            <WiredTriggerBaseView hasSpecialInput={true} requiresFurni={WiredFurniType.STUFF_SELECTION_OPTION_NONE} save={save}>
                <div className="flex flex-col gap-1">
                    <Text bold>{LocalizeText('wiredfurni.params.picktriggerer')}</Text>
                    <div className="flex items-center gap-1">
                        <Radio checked={avatarMode === 0} id="avatarMode0" name="avatarMode" onCheckedChange={() => setAvatarMode(0)} />
                        <Text>{LocalizeText('wiredfurni.params.anyavatar')}</Text>
                    </div>
                    <div className="flex items-center gap-1">
                        <Radio checked={avatarMode === 1} id="avatarMode1" name="avatarMode" onCheckedChange={() => setAvatarMode(1)} />
                        <Text>{LocalizeText('wiredfurni.params.certainavatar')}</Text>
                    </div>
                    {avatarMode === 1 && <OctaneInput type="text" value={username} onChange={(event) => setUsername(event.target.value)} />}
                </div>
            </WiredTriggerBaseView>
        </NativeTextTree>
    );
};
15Sujets
1Dépôts
20Membres
3En ligne
Profile
Inscrit
Dernière visite
Messages
0
Votes positifs
0
Votes négatifs
0

Nous utilisons des cookies pour assurer le bon fonctionnement du site et améliorer votre expérience. en savoir plus

Autoriser