void State_Moving_Update() { timer += FrameController.DT(); if (moveTime == 0) { Logger.Log("Elevator moveTime is 0, cannot use script."); return; } if (timer / moveTime > 0.5f) { if (TeleportToHub) { GameObject marker = GameObject.GetGameObjectByName("hubelevatorteleportmarker"); float distx = marker.transform.position.x - gameObject.transform.position.x; float distz = marker.transform.position.z - gameObject.transform.position.z; player.transform.SetPositionX(player.transform.position.x + distx); player.transform.SetPositionZ(player.transform.position.z + distz); gameObject.transform.SetPosition(marker.transform.position); TeleportToHub = false; } } float y = MMath.Cerp(startY, endY, MMath.Clamp01(timer / moveTime)); gameObject.transform.SetPositionY(y); player.transform.SetPositionY(y + 0.2f); }
public void OnUpdate() { zone.ClampObjectToBounds(gameObject); //paper shuffle if (isBeingHeld && Input.GetHeld(0, "MouseRClick") == 1.0f) { //reset acquired acquiredVelocity = new Vector3(0.0f); acquiredVelocity.X += Input.GetMouseDeltaX() * FrameController.DT() * 0.02f; acquiredVelocity.Z += -Input.GetMouseDeltaY() * FrameController.DT() * 0.02f; velocityAccumulator = 0; velocity = acquiredVelocity; } else { velocityAccumulator += FrameController.DT(); velocityAccumulator = MMath.Clamp01(velocityAccumulator); velocity.X = MMath.Lerp(acquiredVelocity.X, 0, velocityAccumulator); velocity.Z = MMath.Lerp(acquiredVelocity.Z, 0, velocityAccumulator); } gameObject.transform.Translate(velocity); gameObject.transform.SetPositionY(changeY * (gameObject.transform.position.z - initialZ) + initialY); //reset held if (isBeingHeld) { if (Input.GetReleased(0, "MouseRClick") == 1.0f) { isBeingHeld = false; } } }
public void State_Moving_Update() { //Logger.Log(moving.GetPercentageTime().ToString()); timer += FrameController.DT(); gameObject.transform.SetPositionY(MMath.Cerp(startY, endY, MMath.Clamp01(timer / 1.2f))); }
public void OnUpdate() { timer += FrameController.DT(); float rgb = MMath.Cerp(0.0f, 1.0f, MMath.Clamp01(timer / 3.0f)); cr.GetMaterial().SetColor(new Color(rgb, rgb, rgb, 1.0f)); }
void State_returning_Update() { timer += FrameController.DT(); if (moveTime == 0) { Logger.Log("Elevator moveTime is 0, cannot use script."); return; } float y = MMath.Cerp(endY, startY, MMath.Clamp01(timer / moveTime)); gameObject.transform.SetPositionY(y); }