public void DespawnBullet(ServerBullet bullet) { bulletPool.Free(bullet.gameObject); serverBullets.Remove(bullet); bulletStates.Remove(bullet.Id); bulletDespawns.Add(new BulletDespawnData(bullet.Id)); // Debug.Log($"despawning bullet {bullet.Id} at {bullet.transform.position}"); }
public void SpawnBullet(ServerBullet bullet) { var spawnPosition = bullet.Owner.GunPointState.Position; var direction = bullet.Owner.GunPointState.Direction; var spawnData = new BulletSpawnData(bullet.Id, bullet.PlayerId, spawnPosition, direction); serverBullets.Add(bullet); bulletStates[bullet.Id] = bullet.Go(spawnData); }