IEnumerator beatens() { /*GameObject NEWatkpreft = Instantiate(healthObj) as GameObject; * NEWatkpreft.transform.SetParent(canvas.transform, false); * NEWatkpreft.GetComponent<RectTransform>().anchoredPosition = new Vector3(Random.Range(-20f, 20f), Random.Range(-20f, 20f), 0); * healthText = NEWatkpreft.GetComponentInChildren<Text>(); * healthText.text = "-" + damageInt;*/ bulletsPool.addDamageInt = damageInt; bulletsPool.Fire(); flash.SetTrigger("flash"); playerController.SpineSister.GetComponent <Renderer>().material.SetFloat("_FillPhase", 0.5f); if (playerController.ChapterName == "0") { playerController.SpineBother.GetComponent <Renderer>().material.SetFloat("_FillPhase", 0.5f); } yield return(new WaitForSeconds(.5f)); playerController.SpineSister.GetComponent <Renderer>().material.SetFloat("_FillPhase", 0f); if (playerController.ChapterName == "0") { playerController.SpineBother.GetComponent <Renderer>().material.SetFloat("_FillPhase", 0f); } //Destroy(NEWatkpreft,.5f); }
IEnumerator damageActive() { damageBulletsPool.Fire(); if (enemyName != "0") { enemy1.state.SetAnimation(0, "death", false); enemy1.state.AddAnimation(0, "idle", true, 0f); if (enemyInt == 2) { enemy2.state.SetAnimation(0, "death", false); enemy2.state.AddAnimation(0, "idle", true, 0f); } } else { enemy1.state.SetAnimation(0, "death", false); enemy1.state.AddAnimation(0, "stun", true, 0f); if (enemyInt == 2) { enemy2.state.SetAnimation(0, "death", false); enemy2.state.AddAnimation(0, "stun", true, 0f); } } yield return(null); }
IEnumerator missActive() { missBulletsPool.Fire(); enemy1.state.SetAnimation(0, "death", false); enemy1.state.AddAnimation(0, "idle", true, 0f); yield return(null); }
//---------------------碰撞----------------------- void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.name == "BossEnemy") //觸碰到敵人 { TakeDamage(10); damageBulletsPool.addDamageInt = 10; W1_beaten.SetActive(true); damageBulletsPool.Fire(); StartCoroutine("Bossbeaten"); } if (col.gameObject.name == "AtkParticle") //序章-玩家受到小BOSS攻擊 { //TakeDamage(BossAtk); TakeDamage(10); damageBulletsPool.addDamageInt = 10; damageBulletsPool.Fire(); W1_beaten.SetActive(true); StartCoroutine("Bossbeaten"); } if (col.gameObject.name == "F1(Clone)") //框框球攻擊 { TakeDamage(5); damageBulletsPool.addDamageInt = 5; damageBulletsPool.Fire(); StartCoroutine("Bossbeaten"); } if (col.gameObject.name == "F2") //框框範圍攻擊 { TakeDamage(25); damageBulletsPool.addDamageInt = 25; damageBulletsPool.Fire(); F2_beaten.SetActive(true); StartCoroutine("Bossbeaten"); } if (col.tag == "EndPoint") //序章-結束點 { if (ChapterName == "0") { dg_GameManager.win(); } else if (ChapterName == "1") { if (StaticObject.sBE1 == 1) //BE1迷失森林 { gameManager.lose(); } else //HE1離開森林 { gameManager.win(); } } else if (ChapterName == "2") { if (StaticObject.sBE2 == 1) { gameManager.lose(); } else //BE2被遺忘的事 { gameManager.win(); } } else if (ChapterName == "4") { if (StaticObject.sBE2 == 1) //BE3萬籟俱寂的等待 { gameManager.lose(); } else //HE2真實的世界 +彩蛋 { gameManager.win(); } } } if (HealthSlider.value < 100) { if (col.gameObject.name == "BloodStation") //補血站 { addBlood = true; lineParticle.SetActive(true); } if (col.tag == "heart") //補血愛心 { addBulletsPool.addDamageInt = 10; addBulletsPool.Fire(); curHealth += 10; Destroy(col.gameObject); } } if (col.tag == "vine") //進入藤蔓 { activeClimb = col.gameObject.GetComponent <ActiveClimb>(); } if (col.tag == "NPC") //觸碰到NPC { npcTalk = col.gameObject.GetComponent <NpcTalk>(); } if (col.tag == "pickUpObj") //拾取物件 { activePickUp = col.gameObject.GetComponent <ActivePickUp>(); if (col.gameObject.name == activePickUp.PickUpObjName) //形石 { activePickUp.PickUpObjBool = true; } } if (col.gameObject.name == "redFairy" || col.gameObject.name == "blueFairy") //觸碰到紅藍精靈 { npcTalk = GameObject.Find("NPC_Statue").GetComponent <NpcTalk>(); } if (col.gameObject.name == "redFlower" || col.gameObject.name == "blueFlower") //觸碰到紅藍花 { npcTalk = GameObject.Find("NPC_Bobby").GetComponent <NpcTalk>(); } if (col.gameObject.name == "rightClock" || col.gameObject.name == "falseClock") //觸碰到時鐘 { npcTalk = GameObject.Find("NPC_Dida").GetComponent <NpcTalk>(); } if (col.gameObject.name == "rightKey" || col.gameObject.name == "falseKey") //觸碰到鑰匙 { npcTalk = GameObject.Find("Door").GetComponent <NpcTalk>(); } if (col.gameObject.name == "Teleportation") //傳送陣 { StartCoroutine("Teleportation"); } }