Commit c028135a authored by Chunchi Che's avatar Chunchi Che

add interactivies in ModalState

parent d75636f9
...@@ -20,6 +20,7 @@ import { ...@@ -20,6 +20,7 @@ import {
setCardModalIsOpenImpl, setCardModalIsOpenImpl,
setCardModalTextImpl, setCardModalTextImpl,
setCardModalImgUrlImpl, setCardModalImgUrlImpl,
setCardModalInteractiviesImpl,
} from "./modal"; } from "./modal";
export interface DuelState { export interface DuelState {
...@@ -39,7 +40,7 @@ export interface DuelState { ...@@ -39,7 +40,7 @@ export interface DuelState {
const initialState: DuelState = { const initialState: DuelState = {
modalState: { modalState: {
cardModal: { isOpen: false }, cardModal: { isOpen: false, interactivies: [] },
}, },
}; };
...@@ -63,6 +64,7 @@ const duelSlice = createSlice({ ...@@ -63,6 +64,7 @@ const duelSlice = createSlice({
setCardModalIsOpen: setCardModalIsOpenImpl, setCardModalIsOpen: setCardModalIsOpenImpl,
setCardModalText: setCardModalTextImpl, setCardModalText: setCardModalTextImpl,
setCardModalImgUrl: setCardModalImgUrlImpl, setCardModalImgUrl: setCardModalImgUrlImpl,
setCardModalInteractivies: setCardModalInteractiviesImpl,
}, },
extraReducers(builder) { extraReducers(builder) {
handsCase(builder); handsCase(builder);
...@@ -80,6 +82,7 @@ export const { ...@@ -80,6 +82,7 @@ export const {
setCardModalIsOpen, setCardModalIsOpen,
setCardModalText, setCardModalText,
setCardModalImgUrl, setCardModalImgUrl,
setCardModalInteractivies,
} = duelSlice.actions; } = duelSlice.actions;
export const selectDuelHsStart = (state: RootState) => { export const selectDuelHsStart = (state: RootState) => {
return state.duel.meInitInfo != null; return state.duel.meInitInfo != null;
......
...@@ -9,6 +9,7 @@ export interface ModalState { ...@@ -9,6 +9,7 @@ export interface ModalState {
name?: string; name?: string;
desc?: string; desc?: string;
imgUrl?: string; imgUrl?: string;
interactivies: { desc: string; response: number }[];
}; };
} }
...@@ -40,6 +41,14 @@ export const setCardModalImgUrlImpl: CaseReducer< ...@@ -40,6 +41,14 @@ export const setCardModalImgUrlImpl: CaseReducer<
state.modalState.cardModal.imgUrl = action.payload; state.modalState.cardModal.imgUrl = action.payload;
}; };
// 更新卡牌弹窗互动选项
export const setCardModalInteractiviesImpl: CaseReducer<
DuelState,
PayloadAction<{ desc: string; response: number }[]>
> = (state, action) => {
state.modalState.cardModal.interactivies = action.payload;
};
export const selectCardModalIsOpen = (state: RootState) => export const selectCardModalIsOpen = (state: RootState) =>
state.duel.modalState.cardModal.isOpen; state.duel.modalState.cardModal.isOpen;
export const selectCardModalName = (state: RootState) => export const selectCardModalName = (state: RootState) =>
...@@ -48,3 +57,5 @@ export const selectCardModalDesc = (state: RootState) => ...@@ -48,3 +57,5 @@ export const selectCardModalDesc = (state: RootState) =>
state.duel.modalState.cardModal.desc; state.duel.modalState.cardModal.desc;
export const selectCardModalImgUrl = (state: RootState) => export const selectCardModalImgUrl = (state: RootState) =>
state.duel.modalState.cardModal.imgUrl; state.duel.modalState.cardModal.imgUrl;
export const selectCardModalInteractivies = (state: RootState) =>
state.duel.modalState.cardModal.interactivies;
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