Сначала, я думаю, вы хотели использовать вашу переменную isFirePressed
.
Затем, если это префаб, я думаю, вы скорее захотите Instantiate
новую пулю:
if (isFirePressed)
{
var newBullet = Instantiate (rb, transform);
// the cube is going to move upwards in 10 units per second
newBullet.velocity = new Vector3(0, 0, 100);
newBullet.useGravity = false;
isMoving = true;
Debug.Log("fire");
}
Вы изменили скорость на префабе, которая не работает.
Кроме того, обратите внимание, что velocity
находится в координатах мирового пространства. Поэтому в настоящее время вы снимаете в направлении мира Z независимо от того, куда направлен ваш самолет.
Я бы предпочел использовать, например,
newBullet.velocity = transform.forward * 100;
, чтобы стрелять в направлении, к которому направлен ваш BulletEmitter.