void FixedUpdate() { if (Input.GetKey(KeyCode.Q)) { RPMLeft += aceleracion * Time.deltaTime; } if (Input.GetKey(KeyCode.A)) { RPMLeft -= aceleracion * Time.deltaTime; } if (Input.GetKey(KeyCode.E)) { RPMRight += aceleracion * Time.deltaTime; } if (Input.GetKey(KeyCode.D)) { RPMRight -= aceleracion * Time.deltaTime; } RPMLeft = Mathf.Clamp(RPMLeft, maxRPM * -1, maxRPM); RPMRight = Mathf.Clamp(RPMRight, maxRPM * -1, maxRPM); var angVelLeft = MugettiPhysics.AngularVelocity(RPMLeft); var velLeft = MugettiPhysics.AngularToLinearVelocity(angVelLeft, radioRuedas); var angVelRight = MugettiPhysics.AngularVelocity(RPMRight); var velRight = MugettiPhysics.AngularToLinearVelocity(angVelRight, radioRuedas); MugettiPhysics.MVec2 vecZero; vecZero.X = 0.0f; vecZero.Y = 0.0f; MugettiPhysics.MVec2 leftSpeeds; leftSpeeds.X = Mathf.Cos(45 * Mathf.Deg2Rad) * velLeft; leftSpeeds.Y = Mathf.Sin(45 * Mathf.Deg2Rad) * velLeft; MugettiPhysics.MVec2 leftMovementVector = MugettiPhysics.MRU(0, Time.deltaTime, vecZero, leftSpeeds); if (leftMovementVector.X > 0.0f) { leftMovementVector.X *= -1.0f; } MugettiPhysics.MVec2 rightSpeeds; rightSpeeds.X = Mathf.Cos(45 * Mathf.Deg2Rad) * velRight; rightSpeeds.Y = Mathf.Sin(45 * Mathf.Deg2Rad) * velRight; MugettiPhysics.MVec2 rightMovementVector = MugettiPhysics.MRU(0, Time.deltaTime, vecZero, rightSpeeds); if (rightMovementVector.X < 0.0f) { rightMovementVector.X *= -1.0f; } Vector3 newPos = transform.position; newPos.x += leftMovementVector.X + rightMovementVector.X; newPos.y += leftMovementVector.Y + rightMovementVector.Y; Debug.Log("X: " + leftMovementVector.X + " " + rightMovementVector.X); Debug.Log("Y: " + leftMovementVector.Y + " " + rightMovementVector.Y); transform.position = newPos; }
void FixedUpdate() { MugettiPhysics.MVec2 speeds; speeds.X = 0; speeds.Y = speed * -1; MugettiPhysics.MVec2 vecZero; vecZero.X = 0; vecZero.Y = 0; MugettiPhysics.MVec2 movement = MugettiPhysics.MRU(0, Time.deltaTime, vecZero, speeds); Vector3 newPos = transform.position; newPos.y += movement.Y; transform.position = newPos; }
void Update() { if (active) { if (transform.position.y <= 0) { Deactivate(); return; } MugettiPhysics.MVec2 initPos; initPos.X = initialPosition.x; initPos.Y = initialPosition.y; MugettiPhysics.MVec2 initSpds; initSpds.X = initialSpeeds.x; initSpds.Y = initialSpeeds.y; MugettiPhysics.MVec2 newPos = MugettiPhysics.TiroOblicuo(initialtime, Time.time, initPos, initSpds); Vector3 newPosition = transform.position; newPosition.x = newPos.X; newPosition.y = newPos.Y; transform.position = newPosition; Trail(newPosition); } }