]> git.seodisparate.com - RockPaperScissorsDuel/commitdiff
Fix js action being called too many times
authorStephen Seo <seo.disparate@gmail.com>
Thu, 16 Mar 2023 02:28:52 +0000 (11:28 +0900)
committerStephen Seo <seo.disparate@gmail.com>
Thu, 16 Mar 2023 02:28:52 +0000 (11:28 +0900)
src/3d_renderer.cc
src/3d_renderer.h

index 96a6a899bffad84289566e027e5f6a2d22244c0e..b100e3468436efb697b6c58c9bd67fa82f63bbd1 100644 (file)
@@ -181,6 +181,7 @@ void Renderer3D::update_state(
     flags.reset(2);
     flags.set(3);
   }
+  flags.reset(26);
 
   // DEBUG
   // if (flags.test(2)) {
@@ -483,8 +484,9 @@ void Renderer3D::update_impl() {
   flags.reset(12);
 
   if (flags.test(8) && flags.test(11) && flags.test(7) && anims.is_done() &&
-      !flags.test(14)) {
+      !flags.test(14) && !flags.test(26)) {
     call_js_set_matchup_done();
+    flags.set(26);
   }
 
   {
index ce957f3f58d02496f5a7ded4fe0835aa612fb400..e5623a718dd59ee07546b23a1c9f12a287a45d6f 100644 (file)
@@ -138,6 +138,7 @@ class Renderer3D : public GameRenderer {
    * 23 - try to load p2 avatar
    * 24 - tried to load p1 avatar
    * 25 - tried to load p2 avatar
+   * 26 - call_js_set_matchup_done called
    */
   std::bitset<64> flags;