Если ваше ружье стреляет только в одном направлении, вы можете сделать что-то вроде этого:
Создайте новую логическую переменную, назовите ее как isLookingRight
в вашем скрипте контроллера игрока и установите для нее значение true, если вашигрок изначально смотрит на право. Всякий раз, когда игрок двигается влево, измените эту переменную на false и измените свой Update
в коде, который вы предоставили этому:
void Update()
{
if (Input.GetButtonDown("Spawn"))
{
transform.position = player.position;
if(playerScript.isLookingRight){
rb2d.velocity = new Vector2(10.0f, 0.0f);
}
else{
rb2d.velocity = new Vector2(-10.0f, 0.0f);
}
}
То, что делает этот код, довольно просто, если ваш игрок смотрит влево, онпросто меняет скорость на противоположную скорости. Но вам нужно правильно изменить isLookingRight
в вашем скрипте движения игрока.