示例#1
0
        public static Projectile Create(
            GameObject prefab,
            Vector3 position,
            Quaternion rotation,
            Ped shooterPed)
        {
            NetStatus.ThrowIfNotOnServer();

            var go = Instantiate(prefab, position, rotation);

            var projectile = go.GetComponentOrThrow <Projectile>();

            if (shooterPed != null)
            {
                var projectileCollider = projectile.GetComponentOrThrow <Collider>();
                var pedColliders       = shooterPed.GetComponentsInChildren <Collider>();
                foreach (var pedCollider in pedColliders)
                {
                    Physics.IgnoreCollision(pedCollider, projectileCollider);
                }
            }

            NetManager.Spawn(go);

            return(projectile);
        }