| 
					
				 | 
			
			
				@@ -30,11 +30,11 @@ import com.yingyangfly.game.databinding.ActivityPlayGameBinding 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.game.dialog.CountdownDialog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.game.dialog.GameResultDialog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.game.entity.GameDataBean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.yingyangfly.game.net.GAME_API 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yingyangfly.game.utils.AndroidToJs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import gorden.rxbus2.RxBus 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import gorden.rxbus2.Subscribe 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import gorden.rxbus2.ThreadMode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.concurrent.ThreadFactory 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * 玩游戏页面 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -55,6 +55,7 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private lateinit var webSettings: WebSettings 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private var voicePlayer: VoicePlayer? = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private var gameResultDialog: GameResultDialog? = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private var gameOvertime = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     override fun onCreate(savedInstanceState: Bundle?) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         gameCode = intent.getStringExtra("gameCode") ?: "" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -112,15 +113,15 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 保存游戏进度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private fun saveData(gameDataBean: GameDataBean) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private fun saveData(gameDataBean: GameDataBean, isPass: String) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         viewModel.saveGameRecord(gameCode, playClass, gameDataBean, fail = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             it.toast() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, success = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             runOnUiThread { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (TextUtils.equals("2", gameDataBean.isPass)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (TextUtils.equals("2", isPass)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     RxBus.get().send(RxBusCodes.QUITGAME) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     finish() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } else if (TextUtils.equals("3", gameDataBean.isPass)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (TextUtils.equals("3", isPass)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //游戏通关 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     ARouter.getInstance().build(RouterUrlCommon.gameSettlement) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         .withString("gameCode", gameCode) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -140,7 +141,13 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             gameDataBean.isPass 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         gameResultDialog?.onBackHomeDialogClickListener = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            RxBus.get().send(RxBusCodes.CALLQUITGAME) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (gameOvertime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                Log.e("wpp", "--------------------------999") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                finish() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                LiveEventBusUtil.send(RxBusCodes.GAMEOVERTIME, "") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                RxBus.get().send(RxBusCodes.CALLQUITGAME) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         gameResultDialog?.onGameDialogClickListener = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             loadJs(it) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -329,6 +336,7 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 游戏进度监听 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @SuppressLint("SetTextI18n") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private fun initLiveData() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //游戏时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LiveEventBusUtil.observer<String>(this, RxBusCodes.SETTIME) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -358,10 +366,19 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LiveEventBusUtil.observer<String>(this, RxBusCodes.SAVEDATA) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             binding.tvScore.post { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (TextUtils.isEmpty(it).not()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Log.e("wpp", it) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     val gameDataBean = GsonUtil.GsonToBean(it, GameDataBean::class.java) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (gameDataBean != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        saveData(gameDataBean) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        gameOvertime = TextUtils.equals("4", gameDataBean.isPass) || TextUtils.equals( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            "1", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            gameDataBean.isPass 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        val isPass = gameDataBean.isPass 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (TextUtils.equals("4", gameDataBean.isPass)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            gameDataBean.isPass = "1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } else if (TextUtils.equals("3", gameDataBean.isPass)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            gameDataBean.isPass = "0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        saveData(gameDataBean, isPass) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -370,7 +387,6 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LiveEventBusUtil.observer<String>(this, RxBusCodes.LOADINGOVER) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             loadingOver = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //播放语音 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LiveEventBusUtil.observer<String>(this, RxBusCodes.PLAYVOICE) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (it.isNullOrEmpty().not()) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -380,7 +396,10 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     speak(msg[1]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //游戏超时退出 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LiveEventBusUtil.observer<String>(this, RxBusCodes.GAMEOVERTIME) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            finish() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |