void OnFinishGame() { isVerify = false; isFinishInit = false; isGame = false; isLaunchGame = false; isPlay = false; isStartGame = false; if (JavaInterface.Java()) { if (JavaInterface.GetScorePlayer() >= 10) { JavaInterface.AddScorePlayer(-10); isResetGame = true; } else { isResetGame = false; } } else { isResetGame = true; } if (isResetGame) { SwitchScene(true); } else { SwitchScene(false); } }
void Start() { if (JavaInterface.Java()) { InputPort.onChangeScoreEvent += (int value) => { Debug.Log(value); }; InputPort.onKeyDownEventList[0] += () => { Debug.Log("0 键被按下"); }; InputPort.onKeyDownEvent += () => { Debug.Log("按键被按下"); }; //获取玩家分数 Debug.Log(JavaInterface.GetScorePlayer()); //设置玩家分数 JavaInterface.SetInt("ScorePlayer", 100); Debug.Log(JavaInterface.GetScorePlayer()); //添加玩家分数 JavaInterface.AddScorePlayer(100); Debug.Log(JavaInterface.GetScorePlayer()); //JavaInterface.PlayVideo(); Debug.Log(JavaInterface.GetInt("ScorePlayer")); } }
void OnReset() { if (mMainPanel != null) { lastScoreText.Display(0, 0.1f); } if (JavaInterface.Java() && playerText != null) { playerText.Display(JavaInterface.GetScorePlayer() / 10, 0.1f); scoreText.Display(JavaInterface.GetScorePlayer() % 10, 0.1f); } }
void Start() { onAttackLeft += GameEvent.OnAttackLeft; onAttackRight += GameEvent.OnAttackRight; onEveryKey += GameEvent.OnEveryKey; InputEvent.onPress += (GameObject obj) => { GameEvent.OnEveryKey(PlayerController.players[0]); }; if (JavaInterface.Java()) { InputPort.onKeyDownEvent += () => { GameEvent.OnEveryKey(PlayerController.players[0]); }; } }
void OnLaunchGame() { if (JavaInterface.Java()) { if (JavaInterface.CoinOutCheck()) { Debug.Log("玩家分数为零停止退币"); } JavaInterface.AddShuffleScore(10); JavaInterface.AddGameCounter(1); } profit += 1; PlayerPrefs.SetInt("Profit", profit); PlayerPrefs.Save(); mScroll.gameObject.SetActive(true); mScrollMain.gameObject.SetActive(true); gameText.gameObject.SetActive(true); gameText.Display(gameScore); mScroll.valueA = PlayerController.players[0].health / PlayerController.players[0].healthMax; mScroll.Refresh(); mScrollMain.valueA = 0; mScrollMain.Refresh(); if (mWelcome != null) { mWelcome.Hide(); mWelcome.gameObject.GetComponent <Collider>().enabled = false; } if (mChopLeft != null) { mChopLeft.Display(); } if (mChopRight != null) { mChopRight.Display(); } }
IEnumerator UpdateStatus() { //临时变量 int temp; WaitForSeconds wait = new WaitForSeconds(0.1f); //判断循环 while (true) { //Debug.Log("启动游戏周期"); //等待直到游戏初始化完成 while (!isFinishInit) { yield return(wait); } //Debug.Log("完成初始化"); //等待直到游戏进程启动 while (!isLaunchGame) { //街机模式下自动启动游戏进程 if (JavaInterface.Java()) { //退币完成才能开始游戏 while (isOutCoin) { isOutCoin = JavaInterface.GetCoinOutFlag(); //Debug.Log(isOutCoin); yield return(wait); } if (JavaInterface.GetScorePlayer() >= 10) { JavaInterface.AddScorePlayer(-10); isLaunchGame = true; } } yield return(wait); } //Debug.Log("启动游戏进程"); GameEvent.OnLaunchGame(); //等待直到倒计时完毕 temp = 4; while (temp-- > 0) { GameEvent.WaitStartGame(temp); yield return(new WaitForSeconds(0.375f)); } GameEvent.OnPlayGame(); //Debug.Log("完成倒计时"); //等待直到正式开始游戏 overtime = 100; while (!isPlay && overtime-- > 0) { yield return(wait); } if (overtime <= 0) { //Debug.Log("等待超时"); isPlay = true; } //Debug.Log("开始游戏进程"); GameEvent.OnStartGame(); //等待直到验证完成 while (!isVerify) { yield return(wait); } //Debug.Log("验证游戏结果"); //等待直到完成游戏进程 while (isGame) { yield return(wait); } //Debug.Log("完成游戏进程"); //完成后执行清理工作 GameEvent.OnFinishGame(); //检测间隔(默认0.1秒) yield return(wait); //Debug.Log("完成整个周期"); } }
void Start() { //PlayerPrefs.SetInt("Profit", 0); //PlayerPrefs.SetInt("AllScore",0); //PlayerPrefs.SetInt("GameCounter", 0); //PlayerPrefs.SetInt("BestScore", Random.Range(500,1000)); audio = gameObject.AddComponent <AudioSource>(); profit = PlayerPrefs.GetInt("Profit"); bestScore = PlayerPrefs.GetInt("BestScore"); allScore = PlayerPrefs.GetInt("AllScore"); gameCounter = PlayerPrefs.GetInt("GameCounter"); if (allScore < 1000) { allScore = 1000; } if (gameCounter < 10) { gameCounter = 10; } if (JavaInterface.Java()) { if (bestScore < 500) { bestScore = Random.Range(500, 1000); } playerText = Instantiate(texts[5]).GetComponent <CustomText>(); playerText.transform.parent = transform; playerText.transform.position = new Vector3(-1.125f, 0.5f); playerText.transform.localScale = new Vector3(0.15f, 0.15f); scoreText = Instantiate(texts[7]).GetComponent <CustomText>(); scoreText.transform.parent = transform; scoreText.transform.position = new Vector3(-1.125f, 0.40f); scoreText.transform.localScale = new Vector3(0.075f, 0.075f); //scoreText.Init(); //scoreText.Display(0); //playerText.gameObject.SetActive(false); } else { mAuidoOption = Instantiate(audioOption).GetComponent <OptionAnimation>(); mAuidoOption.transform.parent = transform; mAuidoOption.transform.localScale = new Vector3(1.5f, 1.5f, 1f); mAuidoOption.transform.position = new Vector3(1.15f, 0.575f); //Debug.Log(mAuidoOption); EventListener.Get(mAuidoOption.gameObject).onClick += (GameObject obj) => { mAuidoOption.OnClick(); }; EventListener.Get(mAuidoOption.gameObject).onPress += (GameObject obj) => { mAuidoOption.OnPress(); }; EventListener.Get(mAuidoOption.gameObject).onFree += (GameObject obj) => { mAuidoOption.OnFree(); }; } mChopLeft = Instantiate(chopLeft).GetComponent <ChopAnimation>(); mChopRight = Instantiate(chopRight).GetComponent <ChopAnimation>(); mChopLeft.transform.parent = transform; mChopRight.transform.parent = transform; mChopLeft.transform.position = new Vector3(-0.75f, -0.125f); mChopRight.transform.position = new Vector3(0.75f, -0.125f); mChopLeft.Hide(); mChopRight.Hide(); gameText = Instantiate(texts[4]).GetComponent <CustomText>(); gameText.transform.parent = transform; gameText.transform.position = new Vector3(0, 0.25f); gameText.transform.localScale = new Vector3(0.25f, 0.25f, 1); gameText.gameObject.SetActive(false); mMainPanel = Instantiate(mainPanel).GetComponent <PanelAnimation>(); lastScoreText = Instantiate(texts[6]).GetComponent <CustomText>(); lastScoreText.transform.parent = mMainPanel.transform; lastScoreText.transform.localScale = new Vector3(0.1f, 0.2f); lastScoreText.transform.position = mMainPanel.transform.position + new Vector3(0, -0.675f); bestText = Instantiate(texts[6]).GetComponent <CustomText>(); bestText.transform.parent = mMainPanel.transform; bestText.transform.position = mMainPanel.transform.position + new Vector3(0, -0.425f); bestText.Display(bestScore); mScroll = Instantiate(scroll).GetComponent <ScrollAnimation>(); mScroll.transform.position = new Vector3(0, 0.65f); mScroll.transform.parent = transform; mScroll.gameObject.SetActive(false); mScrollMain = Instantiate(scrollMain).GetComponent <ScrollAnimation>(); mScrollMain.transform.position = new Vector3(1.2f, -0.15f); mScrollMain.transform.parent = transform; mScrollMain.GetComponent <Renderer>().material.color = new Color(1, 1, 1, 0); for (int i = 0; i < mScrollMain.transform.childCount; i++) { mScrollMain.transform.GetChild(i).GetComponent <Renderer>().material.color = new Color(1, 1, 1, 0); } mAwards = mScrollMain.GetComponent <AwardsAnimation>(); mScrollMain.gameObject.SetActive(false); if (JavaInterface.Java() == true) { mWelcome = Instantiate(welcomeArcade).GetComponent <WelcomeAnimation>(); } else { mWelcome = Instantiate(welcomeMobile).GetComponent <WelcomeAnimation>(); } mWelcome.transform.position = transform.position; mWelcome.transform.parent = transform; //mWelcome.transform.localScale = new Vector3(2, 2); mWelcome.Hide(); mWelcome.gameObject.GetComponent <Collider>().enabled = false; GameEvent.onGetScore += OnGetScore; GameEvent.onDeath += OnDeath; GameEvent.onFinishGame += OnFinishGame; GameEvent.onReset += OnReset; GameEvent.startReset += StartReset; GameEvent.finishReset += FinishReset; GameEvent.onHealth += OnHealth; GameEvent.onStartGame += OnStartGame; GameEvent.onWelcome += OnWelcome; GameEvent.offWelcome += OffWelcome; GameEvent.waitStartGame += WaitStartGame; GameEvent.onLaunchGame += OnLaunchGame; EventListener.Get(mWelcome.gameObject).onClick += (GameObject obj) => { GameController.isLaunchGame = true; }; EventListener.Get(mChopLeft.gameObject).onPress += (GameObject obj) => { GameController.isLaunchGame = true; GameEvent.OnAttackLeft(PlayerController.players[0]); }; EventListener.Get(mChopRight.gameObject).onPress += (GameObject obj) => { GameController.isLaunchGame = true; GameEvent.OnAttackRight(PlayerController.players[0]); }; InputPort.onChangeScoreEvent += (int value) => { playerText.Display(value / 10, 0.1f); scoreText.Display(value % 10, 0.1f); }; }
void OnDeath(PlayerInfo player) { if (player.index == 0) { int award = 0; audio.clip = dieMarch; audio.Play(); mScroll.gameObject.SetActive(false); mScrollMain.gameObject.SetActive(false); gameText.gameObject.SetActive(false); allScore = allScore + gameScore; gameCounter = gameCounter + 1; switch (awards) { case 0: break; case 1: award = 1; //Debug.Log("铜奖"); break; case 2: award = 2; //Debug.Log("银奖"); break; case 3: award = 3; allScore = (int)(0.8f * allScore + gameScore); gameCounter = (int)(0.8f * gameCounter + 1); //Debug.Log("金奖"); break; case 4: award = 5; allScore = (int)(0.5f * allScore + gameScore); gameCounter = (int)(0.5f * gameCounter + 1); //Debug.Log("最高奖"); break; default: break; } if (gameScore > bestScore) { bestScore = gameScore; PlayerPrefs.SetInt("BestScore", bestScore); } if (JavaInterface.Java()) { if (award != 0 && JavaInterface.GetBonus() > (10 * award)) { JavaInterface.AddScorePlayer(award * 10); JavaInterface.CoinOut1Limit(award); //开始退币检查 GameController.isOutCoin = true; Debug.Log("退出" + award + "个币"); } else { Debug.Log("奖金不足无法退出"); } } if (profit >= award) { profit -= award; PlayerPrefs.SetInt("Profit", profit); //Debug.Log("退出"+ award + "个币"); } else { Debug.Log("奖金不足无法退出"); } PlayerPrefs.SetInt("AllScore", allScore); PlayerPrefs.SetInt("GameCounter", gameCounter); PlayerPrefs.Save(); lastScoreText.Display(gameScore, 0.05f); bestText.Display(bestScore); mMainPanel.Award(awards); mMainPanel.Display(); SetGameScore(0); awards = 0; Debug.Log("利润:" + profit + " 第" + gameCounter + "局" + averageScore); } }