import * as React from "react"; import { useState } from 'react'; import { AppState } from "../store"; import { connect } from "react-redux"; import { levels } from "../game/levels"; import { Route, Link } from "react-router-dom"; import LevelPreview from "./LevelPreview" const LevelItem = ({ level, idx, cb, active, unlocked }) => { return (
{} } style={{background: active ? '#9bf': '#79d', filter: !unlocked ? 'grayscale(70%)': 'none'}}>

{idx + 1+": "+level.name}

)} const LevelSelectScreen = ({saveState}) =>{ const [activeIdx, setActiveIdx] = useState(0); const unlockedState: Array = [true, true]; // const levelSaveState = store.get for(let i = 2; i < saveState.levels.length; ++i){ let {done} = saveState.levels[i]; unlockedState.push((!done && saveState.levels[i-1].done) || done) } return (

select level:

{levels.map((level, idx) => { let active = (idx === activeIdx); // let locked = return setActiveIdx(idx)} active={active} key={idx} unlocked={unlockedState[idx]} /> })} start
) } const mapStateToProps = (state: AppState, ownprops?) => { return { ...ownprops, saveState: state.saveState } } const mapDispatchToProps = dispatch => { return { // openModal: () => dispatch({ type: OPEN_MODAL }) } } export default connect(mapStateToProps, mapDispatchToProps)(LevelSelectScreen);