Jump to content
Unity Insider Forum

Pongk

Members
  • Gesamte Inhalte

    3
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von Pongk

  1. Hallo ich hab ein Problem bei meinem Script. Ich habe eine isometrische Kamera und kann mit der Figur schon zum Mausklick laufen. Wenn ich die zweite Maustaste drücke schießt die Figur auch schon in die richtige Richtung. Leider ist da irgendwie ein Offset in der Höhe drin. Die Figur hält die Waffe in der Hand und dieser Höhenunterschied zum Boden wird vorbei geschossen. Wo muss ich diesen Offset in der y-Achse angeben? void Update() { Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition); RaycastHit hit; if (Input.GetMouseButtonDown (1)) { if (Physics.Raycast (ray, out hit, 100)) { agent.transform.LookAt (hit.point); shooting = true; Fire (); } } } private void Fire() { GameObject bullet = Instantiate (bulletPrefab); Physics.IgnoreCollision (bullet.GetComponent<Collider> (), bulletSpawnPoint.parent.GetComponent<Collider> ()); bullet.transform.position = bulletSpawnPoint.position; Vector3 rotation = bullet.transform.rotation.eulerAngles; bullet.transform.rotation = Quaternion.Euler (rotation.x, transform.eulerAngles.y, rotation.z); bullet.GetComponent<Rigidbody> ().AddForce (bulletSpawnPoint.forward * bulletSpeed, ForceMode.Impulse); StartCoroutine (DestroyBulletAfterTime (bullet, bulletLifeTime)); } private IEnumerator DestroyBulletAfterTime(GameObject bullet, float delay) { yield return new WaitForSeconds (delay); Destroy (bullet); }
×
×
  • Neu erstellen...