IEnumerator AddRndForce() { while ( true ) { var dx = Random.Range(-2.0f, 2.0f); var dy = Random.Range(-2.0f, 2.0f); _isoRigidbody.AddForce(new Vector3(dx, dy, 0.0f), ForceMode.Impulse); yield return new WaitForSeconds(1); } }
void Update() { //translate on isotransform _isoRigidbody.Velocity = new Vector3(Input.GetAxis("Vertical") * Speed, _isoRigidbody.Velocity.y, -Input.GetAxis("Horizontal") * Speed); if (Input.GetKeyDown("space")) { //check vertical distance IsoRaycastHit hit; var maxDistanceToGround = 1f; if (IsoPhysics.Raycast(_isoTransform.Position, Vector3.down, out hit, maxDistanceToGround)) { //add upp force _isoRigidbody.AddForce(Vector3.up * JumpForce); } } }