diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2022-12-29 15:02:17 +0100 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2022-12-29 15:02:17 +0100 |
| commit | 834387d7b23d264f44871bcd6a62fe2a68250e1e (patch) | |
| tree | e24db50d4f5e9c865ba6803b172986df4e90592b /src/game_tab | |
| parent | 796ba531eac19a6032000ef9b2faa79c89c84188 (diff) | |
Improve code
Diffstat (limited to 'src/game_tab')
| -rw-r--r-- | src/game_tab/left_panel/board/BoardCanvas.cpp | 9 | ||||
| -rw-r--r-- | src/game_tab/left_panel/board/BoardCanvas.hpp | 2 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/game_tab/left_panel/board/BoardCanvas.cpp b/src/game_tab/left_panel/board/BoardCanvas.cpp index de9fac7..bf3e909 100644 --- a/src/game_tab/left_panel/board/BoardCanvas.cpp +++ b/src/game_tab/left_panel/board/BoardCanvas.cpp @@ -110,7 +110,7 @@ void BoardCanvas::SetupBoard(std::string board, bool is_black_turn, Refresh(); } -void BoardCanvas::Animate(std::string board, bool is_black_turn, std::map<char, std::uint8_t> captures, std::string src, std::string dst,bool faster){ +void BoardCanvas::Animate(const std::string &board, bool is_black_turn, std::map<char, std::uint8_t> captures, std::string src, std::string dst,bool faster){ adata.final_board=board; adata.final_is_black_turn=is_black_turn; adata.final_captures=captures; @@ -151,15 +151,16 @@ void BoardCanvas::Animate(std::string board, bool is_black_turn, std::map<char, adata.reuseBuffer=true; int duration_backup=adata.duration; adata.duration=faster ? adata.duration_fast : adata.duration; + int frame_duration=(1000/adata.fps); adata.frame=0; - adata.frames=adata.duration/(1000/adata.fps); // total number of frames + adata.frames=adata.duration/frame_duration; // total number of frames int time_per_frame=adata.duration/adata.frames; wxStopWatch sw; for(int i=adata.frames;i>0;i--){ Refresh(); Update(); - int delay=sw.Time()-time_per_frame; - if(delay>10){ + int delay=sw.Time()-frame_duration; + if(delay>5){ // 5ms tolerance wxMilliSleep(delay); } sw.Start(0); diff --git a/src/game_tab/left_panel/board/BoardCanvas.hpp b/src/game_tab/left_panel/board/BoardCanvas.hpp index 2f459c5..64e99b0 100644 --- a/src/game_tab/left_panel/board/BoardCanvas.hpp +++ b/src/game_tab/left_panel/board/BoardCanvas.hpp @@ -100,7 +100,7 @@ public: void Swap(); void SetupBoard(std::string board, bool is_black_turn, std::map<char, std::uint8_t> captures); - void Animate(std::string board, bool is_black_turn, std::map<char, std::uint8_t> captures, std::string src, std::string dst,bool faster); + void Animate(const std::string &board, bool is_black_turn, std::map<char, std::uint8_t> captures, std::string src, std::string dst,bool faster); void SetClockTime(short hours, short min, short sec, bool IsBlack); DECLARE_EVENT_TABLE() }; |
