- Home /
Button Shooting in the direction of Player
At first sorry for my bad english and my beginner skills.
My Player Bullet should shoot in the direction from the player, but only shoots straight in the y direction.
All worked great with input.GetKey.
I have simply copied the code in the Shooting function:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerShooting : MonoBehaviour {
public Vector3 bulletOffset = new Vector3 (0, 0.5f, 0);
public GameObject bulletPrefab;
public float fireDelay = 0.5f;
float cooldownTimer = 0;
void Update () {
cooldownTimer -= Time.deltaTime;
/* if (cooldownTimer <= 0 && Input.GetKey("up")) {
cooldownTimer = fireDelay;
Vector3 offset = transform.rotation * bulletOffset;
Instantiate (bulletPrefab, transform.position + offset, transform.rotation);
}
*/
}
public void Shooting(){
cooldownTimer = fireDelay;
Vector3 offset = transform.rotation * bulletOffset;
Instantiate (bulletPrefab, transform.position + offset, transform.rotation);
}
}
As @Larry-Dietz said,
you need to have a script in the bulletPrefab GameObject, that updates the transform of the bullet every frame. (i.e. using the Update()
function).
The code you provided in the question is the script for the player GameObject not the bulletPrefab that is being instantiated.
//hope this helps...
Your answer
Follow this Question
Related Questions
How can I have multiple shoot buttons? 1 Answer
Transform.translate bullets problem 0 Answers
2d bullet shot at bullet emitter 0 Answers
Shooting style like enter the dungeon 0 Answers