//Every frame update asteroid position, float in space void Update() { float posX = transform.position.x; float posY = transform.position.y; float posZ = transform.position.z; transform.position += transform.up * asteroidSpeed * Time.deltaTime; asteroidOOB.checkIfOOB(posX, posY, posZ); }
//Every time frame, without delays update player the player position void FixedUpdate() { float posX = transform.position.x; float posY = transform.position.y; float posZ = transform.position.z; //Controls if (Input.GetKey(KeyCode.UpArrow)) { rb2D.velocity = Vector3.zero; rb2D.angularVelocity = 0.0f; transform.position += transform.up * speedMove * Time.deltaTime; } if (Input.GetKey(KeyCode.LeftArrow)) { transform.Rotate(transform.forward * speedRotate); } if (Input.GetKey(KeyCode.RightArrow)) { transform.Rotate(transform.forward * (-1 * speedRotate)); } if (Input.GetKey(KeyCode.DownArrow)) { rb2D.velocity = Vector3.zero; rb2D.angularVelocity = 0.0f; transform.position -= transform.up * speedMove / 4 * Time.deltaTime; } if (Input.GetKey(KeyCode.S) && Time.time > timeSinceShot) { this.GetComponent <BoxCollider2D>().enabled = true; this.GetComponent <SpriteRenderer>().color = Color.white; timeSinceShot = Time.time + fireRate; Fire(); } if (hoverSpeed >= 0.1f) { hoverSpeed = 0.1f; } if (Input.GetKeyUp(KeyCode.UpArrow)) { rb2D.AddForce(transform.up, ForceMode2D.Impulse); } //We always float back because space transform.position -= transform.up * hoverSpeed * Time.deltaTime; //Preverim ali je igralec zapustil območje kamere PlayerOOB.checkIfOOB(posX, posY, posZ); }