import React, { useState } from 'react'; const avatars = { male: [ { name: 'Мужчина 1', url: 'https://models.readyplayer.me/68013c216026f5144dce1613.glb' }, { name: 'Мужчина 2', url: 'https://models.readyplayer.me/68013cf0647a08a2e39f842d.glb' }, ], female: [ { name: 'Женщина 1', url: '/avatars/female1.glb' }, { name: 'Женщина 2', url: '/avatars/female2.glb' }, ], }; export default function CharacterSelect({ onSelect }) { const [gender, setGender] = useState(null); const handleGenderSelect = (selected) => setGender(selected); return (
{!gender ? (

Выберите пол

) : (

Выберите персонажа

{avatars[gender].map((a) => (
onSelect(a.url, gender)}>

{a.name}

))}
)}
); } const styles = { wrapper: { width: '100vw', height: '100vh', background: '#111', color: '#fff', display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', }, genderBlock: { display: 'flex', flexDirection: 'column', gap: '20px', }, avatarBlock: { display: 'flex', flexDirection: 'column', alignItems: 'center', }, grid: { display: 'flex', gap: '30px', marginTop: '20px', }, avatarCard: { cursor: 'pointer', textAlign: 'center', }, button: { fontSize: '18px', padding: '10px 20px', background: '#222', color: '#fff', border: '1px solid #555', borderRadius: '8px', }, back: { marginTop: '20px', fontSize: '16px', background: 'transparent', border: 'none', color: '#aaa', cursor: 'pointer', }, };