Commit a9c5649f authored by Chunchi Che's avatar Chunchi Che

update

parent 0d6af302
Pipeline #23191 passed with stages
in 11 minutes and 44 seconds
import { ygopro } from "@/api";
import { eventbus, Task } from "@/infra";
import { RoomStage, roomStore } from "@/stores";
import { RoomStage, roomStore, SideStage, sideStore } from "@/stores";
export default function handleSelectTp(_: ygopro.YgoStocMsg) {
if (sideStore.stage !== SideStage.NONE) {
sideStore.stage = SideStage.TP_SELECTING;
} else {
roomStore.stage = RoomStage.TP_SELECTING;
}
eventbus.emit(Task.Tp);
}
......@@ -4,7 +4,7 @@ import { useSnapshot } from "valtio";
import { sendTpResult } from "@/api";
import { SideStage, sideStore } from "@/stores";
import { IconFont } from "@/ui/Shared";
import { IconFont, SpecialButton } from "@/ui/Shared";
import { Tp, TpPopover } from "@/ui/WaitRoom/Popover";
import styles from "./index.module.scss";
......@@ -13,18 +13,24 @@ export const TpModal: React.FC = () => {
const { stage } = useSnapshot(sideStore);
return (
<Modal centered open={stage === SideStage.TP_SELECTING}>
<Modal
centered
open={stage === SideStage.TP_SELECTING}
footer={<></>}
closable={false}
>
<div className={styles.container}>
<TpPopover
onSelect={(tp) => {
sendTpResult(tp === Tp.First);
sideStore.stage = SideStage.TP_SELECTED;
}}
forceOpen={stage === SideStage.TP_SELECTING}
>
<>
<SpecialButton>
<IconFont type="icon-one" size={18} />
<span>请选择先后手</span>
</>
</SpecialButton>
</TpPopover>
</div>
</Modal>
......
......@@ -68,8 +68,11 @@ export const MoraPopover: React.FC<
};
export const TpPopover: React.FC<
React.PropsWithChildren<{ onSelect?: (result: Tp) => void }>
> = ({ children, onSelect }) => {
React.PropsWithChildren<{
onSelect?: (result: Tp) => void;
forceOpen?: boolean;
}>
> = ({ children, onSelect, forceOpen }) => {
const [open, setOpen] = useState(false);
// 需要在mora的service之中,emit一个事件,让这个组件监听到,然后打开popover
......@@ -113,7 +116,7 @@ export const TpPopover: React.FC<
))}
</Space>
}
open={open}
open={open || forceOpen}
placement="bottom"
>
{children}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment