private void OnPanHit( ) { // check that we have reached the pan. // the length of the raycast can be longer than the travel distance. if (NextPosition.y > rayHit.point.y) { return; } // correct it position, turn off gravity and the raycast since we have now reached the pan, and we wont be colliding with anythink else. updating = false; GetComponent <Rigidbody>().useGravity = false; GetComponent <Rigidbody>().velocity = Vector3.zero; transform.position = rayHit.point; //Attamp to find the fryingPan Pancake class, it has to search its parents since the collider is nested into the object. FryingPan_pancake panPancake = rayHit.transform.GetComponentInParent <FryingPan_pancake>(); if (panPancake == null) { return; } // Get batter qt of the batterBall and apply it to a mixture pancake. Batter_quantity quantity = GetComponent <Batter_quantity>(); panPancake.AddBatter(quantity.GetBatterQuantity(), rayHit.point); transform.position = rayHit.point; }
void Awake() { GetComponent <Pancake_state>().OnStateChanged += OnPancakeStateChanged; batterQuantity = GetComponent <Batter_quantity>(); batterQuantity.OnBatterChanged += OnBatterChanged; lerpTimer.SetTimer(lerpIntervals, true); //NOTE: just for now. // I WILL NOT be using scale but just to get it working. // insted i should move the bones/joints of the pnacake. // (cuz pancakes have bones now :D) transform.localScale = startLerpScale = targetScale = Vector3.zero; volume = batterQuantity.GetBatterQuantity() / quantityToVolumRatio; }
public void OnBatterChanged(float batterPercent) { startLerpScale = transform.localScale; lerpTimer.SetTimer(lerpIntervals, true); volume = batterQuantity.GetBatterQuantity() / quantityToVolumRatio; }