import React, { useState } from 'react'
import { View, Text, Image, Button } from '@tarojs/components'
import { Range, Radio } from '@nutui/nutui-react-taro';
import { useSelector } from 'react-redux'
import Taro from '@tarojs/taro';
import { redirectTo } from '@/utils/application'
import './new_table.scss'
import Title from '@/components/title'
import { reqCreateTable } from '@/api/wsapi'
import { showToast } from '@/utils/application'
import userIcon from '@/assets/icon/user-2.svg'
import robotIcon from '@/assets/icon/robot-1.svg'
import closeIcon from '@/assets/icon/close-1.svg'
import addIcon from '@/assets/icon/add-2.svg'
function NewTable() {
const {username, nickname, avatar} = useSelector(state => state.user);
const [submitLoading, setSubmitLoading] = useState(false);
const [choosingPlace, setChoosingPlace] = useState(-1);
const [texasType, setTexasType] = useState(1);
const [bigBlind, setBigBlind] = useState(2);
const [players, setPlayers] = useState([0,0,0,0,0,0]); // 0空位,1玩家,2机器人
const playerRows = players.reduce((arr, item, idx) => {
const row = parseInt(idx / 2);
let rowArr = arr[row] || [];
rowArr[idx % 2] = {index: idx, item};
arr[row] = rowArr;
return arr;
}, []);
const choosePlayer = (playerPos) => {
players[playerPos] = 1;
setPlayers([...players])
// setPlayers
}
const createTable = async () => {
if (submitLoading) { return }
setSubmitLoading(true)
try {
const _ = await reqCreateTable({
texasType, bigBlind,
players: players.filter(type => type === 1).length,
robots: players.filter(type => type === 2).length,
});
redirectTo({url: '/pages/table/table'})
}catch(err) {
showToast({title: err})
} finally {
setSubmitLoading(false)
}
}
return (
牌局类型:
限注德州扑克
底池限制德州扑克
无限制德州扑克
大盲注额:
{bigBlind}}
onChange={v => setBigBlind(v)}/>
入场金额:
{bigBlind * 100}
{
playerRows.map((row, i) => (
{
row.map((player, j) => (
player.item === 0
? choosePlayer(player.index)} className='player empty-player'>
:
{
e.stopPropagation();
players[player.index] = 0;
setPlayers([...players]);
}}>
{player.item === 1 ? 'Player' : 'Robot'}#{player.index + 1}
))
}
))
}
{nickname}
{/* -1}
listData={[{value: 1, text: 'Player'}, {value: 2, text: 'Robot'}]}
onConfirm={(values) => {
players[choosingPlace] = values[0];
setPlayers([...players]);
}}
onClose={() => setChoosingPlace(-1)}
/> */}
)
}
export default NewTable