// Here we handle the collision events with another particles, in this example water+lava= water-> gas void OnTriggerEnter2D(Collider2D other) { //if (currentState == STATES.WATER && other.gameObject.tag == "DynamicParticle") //{ // if (other.collider.GetComponent<DynamicParticle>().currentState == STATES.LAVA) // { // SetState(STATES.GAS); // } //} //ps.Play(); /* * if (other.gameObject.CompareTag("bullet2") && !isSteaming) * { * GameObject psChild = Instantiate(ps); * psChild.transform.position = gameObject.transform.position; * psChild.transform.SetParent(gameObject.transform); * Destroy(gameObject, 7f); * * isSteaming = true; * }*/ if (other.tag == "WaterPool") { managerScript.SetWaterInPool(managerScript.GetWaterInPool() + 1); inPool = true; } if (other.tag != "WaterPool" && other.tag != "WaterDisappear" && other.tag != "WaterPoolCollisionArea" && other.tag != "bullet2") { destroyObject = true; } }
private void OnTriggerEnter2D(Collider2D collision) { if (seepingEnabled) { if (collision.gameObject.name == "SeepingCollider") { cc.enabled = false; bc.enabled = false; } else if (collision.gameObject.name == "RightPoolBoundary") { stopMoving = true; rb.velocity = new Vector2(0, 0); manager.setWaterInPool1(manager.getWaterInPool1() + 1); Destroy(gameObject); } else if (collision.gameObject.name == "WaterPoolColliderRight") { manager.setWaterInPool1(manager.getWaterInPool1() + 1); } } else { if (collision.transform.tag == "bullet2") { heatEnergyThreshold -= heatEnergyIncrement; if (frozen) { Destroy(collision.gameObject); } } else if (collision.gameObject.name == "WaterPoolColliderLeft" && !frozen) { manager.setWaterInPool2(manager.getWaterInPool2() + 1); AudioManager.playSplash(); Destroy(gameObject); } else if (collision.transform.tag == "FreezeCollider") { this.transform.GetChild(0).gameObject.SetActive(false); sr.enabled = true; bc.enabled = true; cc.enabled = false; this.transform.localScale = new Vector3(1, 1, 1); frozen = true; } } if (SceneManager.GetActiveScene().name == "Level 5") { if (collision.tag == "WaterPool" && !frozen) { ILevelManagerWater manager5 = GameObject.Find("GameManager").GetComponent <ILevelManagerWater>(); manager5.SetWaterInPool(manager5.GetWaterInPool() + 1); isInPool = true; AudioManager.playSplash(); Destroy(gameObject); } } }