/// SetState /// Change an existing particle to a new type (eg water to lava) /// a_newState: The new particle type to be passed in eg. LiquidStates.Lava public void SetState(LiquidStates newState) { MeshRenderer renderer = gameObject.GetComponent <MeshRenderer>(); switch (newState) { case LiquidStates.Lava: renderer.material = lavaMaterial; _rigidbody.gravityScale = LAVA_GRAVITYSCALE; break; case LiquidStates.Water: renderer.material = waterMaterial; _rigidbody.gravityScale = WATER_GRAVITYSCALE; break; case LiquidStates.Gas: renderer.material = gasMaterial; _rigidbody.gravityScale = GAS_GRAVITYSCALE; break; default: break; } currentState = newState; _rigidbody.velocity = Vector3.zero; startTime = Time.time; }
/// SetState /// Change an existing particle to a new type (eg water to lava) /// a_newState: The new particle type to be passed in eg. LiquidStates.Lava public void SetState(LiquidStates newState) { MeshRenderer renderer = gameObject.GetComponent <MeshRenderer>(); switch (newState) { case LiquidStates.Lava: renderer.material = lavaMaterial; _rigidbody.gravityScale = LAVA_GRAVITYSCALE; break; case LiquidStates.Water: renderer.material = waterMaterial; _rigidbody.gravityScale = WATER_GRAVITYSCALE; break; case LiquidStates.Steam: particleLifeTime = particleLifeTime / 2.0f; GetComponent <Rigidbody2D>().gravityScale = 0.0f; renderer.material = steamMaterial; break; default: break; } currentState = newState; // reset particle velocity _rigidbody.velocity = Vector3.zero; // if state changes rest particle life startTime = Time.time; }
//------------------------------------------------------------------------------------- // SetState: Change an existing particle to a new type (eg water to lava) // params: // newState: The new particle type to be passed in eg. LiquidStates.Lava //------------------------------------------------------------------------------------- public void SetState(LiquidStates newState) { // Getting the mesh renderer. MeshRenderer renderer = gameObject.GetComponent <MeshRenderer>(); // Assign the correct material for each state. switch (newState) { case LiquidStates.Lava: renderer.material = lavaMaterial; break; case LiquidStates.Water: renderer.material = waterMaterial; break; default: break; } // Assign the new state as the current state. currentState = newState; // Reset the particle velocity _rigidbody.velocity = Vector3.zero; // If the state changes (eg. water turns to lava) reset the // life of the particle. startTime = Time.time; }
/// SetState /// Change an existing particle to a new type (eg water to lava) /// a_newState: The new particle type to be passed in eg. LiquidStates.Lava public void SetState(LiquidStates newState) { MeshRenderer renderer = gameObject.GetComponent <MeshRenderer>(); switch (newState) { case LiquidStates.Lava: renderer.material = lavaMaterial; break; case LiquidStates.Water: renderer.material = waterMaterial; break; default: break; } currentState = newState; _rigidbody.velocity = Vector3.zero; startTime = Time.time; }
/// SetState /// Change an existing particle to a new type (eg water to lava) /// a_newState: The new particle type to be passed in eg. LiquidStates.Lava public void SetState(LiquidStates newState) { }