@@ -6,6 +6,7 @@ import { apiConfig, ApiError } from '../../../api/ApiConfig';
66import {
77 CodeApi ,
88 CodeRevision ,
9+ CodeType ,
910 CurrentUserApi ,
1011 GameMapRevision ,
1112 MapApi ,
@@ -21,7 +22,12 @@ import styles from './History.module.css';
2122import CodeView from '../CodeMapViewbox/CodeView' ;
2223import { Col , Container , Row } from 'react-bootstrap' ;
2324import Toast , { toast } from 'react-hot-toast' ;
24- import { updateUserCode , changeLanguage } from '../../../store/editor/code' ;
25+ import {
26+ updateUserCode ,
27+ changeLanguage ,
28+ updateEditorCodeState ,
29+ GameType ,
30+ } from '../../../store/editor/code' ;
2531import { useNavigate } from 'react-router-dom' ;
2632import { useTour } from '@reactour/tour' ;
2733
@@ -33,6 +39,9 @@ export default function History(): JSX.Element {
3339 const [ codeFetched , setCodeFetched ] = useState < boolean > ( false ) ;
3440 const [ currentCode , setCurrentCode ] = useState ( '' ) ;
3541 const [ codeLanguage , setCodeLanguage ] = useState ( '' ) ;
42+ const [ currentcodeType , setCurrentCodeType ] = useState < CodeType > (
43+ CodeType . Normal ,
44+ ) ;
3645 const [ currentMap , setCurrentMap ] = useState < MapObj > ( {
3746 map : [ ] ,
3847 mapImg : '' ,
@@ -64,8 +73,17 @@ export default function History(): JSX.Element {
6473 codeApi
6574 . getCodeRevisions ( )
6675 . then ( codeResp => {
67- setCodeFetched ( true ) ;
68- setCodeHistory ( codeResp ) ;
76+ codeApi
77+ . getCodeRevisions ( CodeType . Pvp )
78+ . then ( pvpCodeResp => {
79+ setCodeHistory ( [ ...codeResp , ...pvpCodeResp ] ) ;
80+ setCodeFetched ( true ) ;
81+ } )
82+ . catch ( pvpCodeError => {
83+ if ( pvpCodeError instanceof ApiError ) {
84+ Toast . error ( pvpCodeError . message ) ;
85+ }
86+ } ) ;
6987 } )
7088 . catch ( codeError => {
7189 if ( codeError instanceof ApiError ) {
@@ -96,6 +114,7 @@ export default function History(): JSX.Element {
96114 setCurrentCode ( codeData . code ) ;
97115 setCodeLanguage ( codeData . language . toLowerCase ( ) ) ;
98116 setCurrentCommitMessage ( codeData . message ) ;
117+ setCurrentCodeType ( codeData . codeType ) ;
99118 }
100119 } ) ;
101120 completeMapHistory . forEach ( mapData => {
@@ -138,6 +157,19 @@ export default function History(): JSX.Element {
138157 updateUserCode ( {
139158 currentUserLanguage : codeLanguage === 'cpp' ? 'c_cpp' : codeLanguage ,
140159 currentUserCode : currentCode ,
160+ gameType :
161+ currentcodeType === CodeType . Normal
162+ ? GameType . NORMAL
163+ : GameType . PVP ,
164+ } ) ,
165+ ) ;
166+ dispatch (
167+ updateEditorCodeState ( {
168+ gameType :
169+ currentcodeType === CodeType . Normal
170+ ? GameType . NORMAL
171+ : GameType . PVP ,
172+ language : codeLanguage === 'cpp' ? 'c_cpp' : codeLanguage ,
141173 } ) ,
142174 ) ;
143175 dispatch ( changeLanguage ( codeLanguage === 'cpp' ? 'c_cpp' : codeLanguage ) ) ;
0 commit comments