2016-04-04 22 views
0

Merminiz 'u ateşliyor Sürekli olarak bir mermi uyguladım, ama yukarı çıkmış gibi görünüyor, neyi yanlış yaptım?Merminiz devam ediyor

public class Player1Controls : MonoBehaviour { 

// Update is called once per frame 
public float speed; 
Rigidbody2D player; 
public float health; 
private int state; 
public Rigidbody2D Bullet; 
public GameObject Gun; 
void Start() 
{ 
    player = GetComponent<Rigidbody2D>(); 
} 
void Update() 
{ 
    if (Input.GetKeyDown(KeyCode.Space)) 
    { 
    Rigidbody2D bullet1 = (Rigidbody2D)Instantiate (Bullet, Gun.transform.position,Quaternion.identity); 
} 
if(Input.GetKey(KeyCode.W)) 
{ 
    //transform.Translate(Vector2.up * speed); 
    player.velocity =(Vector2.up*speed); 
    state = 1; 
} 

public class MoveBullet: MonoBehaviour {

public float speed; 
// Update is called once per frame 
void Update() { 
    Vector3 pos = transform.position; 
    Vector3 vel = new Vector3(0, speed * Time.deltaTime, 0); 
    pos = pos + transform.rotation * vel; 
    transform.position = pos; 
} 
+0

Hızınızı sadece y yönünde ayarlayabilirsiniz. Oyuncunun vektörü boyunca olmalı. – schultz

cevap

0

(silah gökyüzüne işaret eğer gibi) mermi yukarı fırladı mı? Ya da amacı biraz kapalı ve mermi olması gerektiği kadar yüksek biter mi? İlk durumdaysanız, Vector3 vel'inizin y ve z koordinatlarınızın kameranızınkiyle eşleştiğinden emin olun. Değerleri X ve Z için sıfır ve Y'de sıfır olmayan bir değerdir. Sahne alanınız Z ekseniyle gökyüzüne bakacak şekilde ayarlanmışsa (ve Y ekseni ekrana işaret ediyorsa) bu tamam olabilir. Ama eğer Z'niz işaret ediyorsa, ekranın dışına çıkın ve Y'niz gökyüzüne doğru işaret ediyor, bu sizin gördüğünüz davranışa sebep olur.

Yardım edin eğer bana bildirin.

+0

Plan her zaman aynı doğrultuda, Y yönünde düz bir şekilde çekim yapmaktır, ancak mermiyi sadece düzleştirmek için düz bir şekilde doğru bir düzlük olacak mı? Kodu eklediğim ve kaldırdığım şekilde düzenledim. Gerçekten bilmek istediğim şey, ateşin önündeki tuşa dayanan anahtarın 3. özelliğine ilişkin değerin nasıl hesaplanacağıdır, daha kötüsü, dönüş değişkenini nasıl oluşturacağımı bile bilmiyorum –

1

vektör3'teki x ve z harflerini kullanın. y birlikteyken, y “ileri” iken (sahne içine)

İlgili konular