예제 #1
0
        /// <summary>
        /// Creates the projectile from specified prefab.
        /// Initilazes control script and adds it to projectile.
        /// </summary>
        /// <param name="projectilePrefab">Projectile prefab</param>
        /// <param name="damage">Damage</param>
        /// <param name="velocity">Velocity</param>
        /// <param name="timeToLive">Time to live</param>
        /// <param name="projectileTarget">Projectile target</param>
        public void CreateProjectile(GameObject projectilePrefab, int damage, float velocity, int timeToLive, Vector3 projectileTarget)
        {
            GameObject projectile = (GameObject)Instantiate(projectilePrefab, transform.position + (Vector3)direction * 20, transform.rotation);
            //unity does not like NEW, so I have to initialize controler script like this :(

            ProjectileScript projectilController = projectile.AddComponent <ProjectileScript>();

            projectilController.velocity   = velocity;
            projectilController.damage     = damage;
            projectilController.timeToLive = timeToLive;
            projectilController.setOwner(this);

            projectile.GetComponent <Rigidbody2D>().velocity = projectileTarget * velocity;
        }