GameObject Player;
SpriteRenderer Renderer;
public float x;
public bool left;

void Start()
{

left = Renderer.flipX;
Player = GameObject.Find("Player");
Renderer = Player.GetComponent<SpriteRenderer>();

if (left == true)
{
x = -0.5f;
}
else
{
x = 0.5f;
}


void Update()
{
transform.Translate(x, 0, 0);
}

とにかく手探りで書いてみました。
実行したところ、やはり弾が生成された地点で止まってしまいます。
どこを直せばいいのでしょうか…