Exemplo n.º 1
0
        public void UseSkill(Vector2 dirVector, Teams teamTag, Vector2 playerSpeed)
        {
            GameObject newProjectile;

            newProjectile = Instantiate(Projectile, shotSpawner.GetTransform().position, Quaternion.identity) as GameObject;

            OnCollisionProjectile onCollision = newProjectile.GetComponent <OnCollisionProjectile>();

            onCollision.SetParams(teamTag);

            DestroyByTime           destroyByTime = newProjectile.GetComponent <DestroyByTime>();
            RuyoProjectileBasicData projData      = newProjectile.GetComponent <RuyoProjectileBasicData>();

            destroyByTime.SetLifeTime(projData.SkillDuration);

            emitter?.AssignParent(newProjectile.transform);

            IProjectileMover mover = newProjectile.GetComponent <ProjectileMover>();

            mover.Initialize();
            mover.SetMoveDirection(dirVector, playerSpeed);


            StartSkillCD();
        }
Exemplo n.º 2
0
        private void CreateProjectile(Vector3 target, GameObject projectile)
        {
            IProjectileMover mover         = projectile.GetComponent <IProjectileMover>();
            float            shootDuration = Duration.GetShootDuration();
            Vector3          start         = SpawnPoint.transform.position;
            Vector3          end           = target;
            Vector3          controll      = GetControllPoint(start, end);

            mover.Move(shootDuration, start, controll, end);
        }
Exemplo n.º 3
0
 protected override void OnConstruct()
 {
     mover = this.GetComponent <ProjectileMover>();
 }