示例#1
0
 public override void Attack(AttackData attackData, ActorBase target)
 {
     //bulletGroup.Attack(m_actor.actorGameObject.weaponPoint.position, m_actor.actorGameObject.transform.rotation, attackData, null);
 }
示例#2
0
 public virtual void Attack(AttackData attackData, ActorBase target)
 {
 }
示例#3
0
 /// <summary>
 /// 创建伤害
 /// </summary>
 protected virtual void CreateDamage(ActorBase actor)
 {
     m_isDamage = true;
     // actor.BeAttack(m_attackData);
 }
示例#4
0
 public virtual void Initialize(ActorBase actor)
 {
     m_actor = actor;
 }
示例#5
0
        public void CreateBullet(int index, Vector3 position, Quaternion rotation, AttackData attackData, ActorBase target)
        {
            var bullet = Game.gamePool.Spawn <GeneralBullet>(bulletAssetPath);

            bullet.Initialize();
            bullet.speed        = speed;
            bullet.lifeTime     = lifeTime;
            bullet.firePosition = position;
            bullet.fireRotation = Quaternion.Euler(rotation.eulerAngles + angles[index]);
            bullet.Spawn(attackData, target);
        }
示例#6
0
        IEnumerator Fire(Vector3 position, Quaternion rotation, AttackData attackData, ActorBase target)
        {
            for (int i = 0; i < count; i++)
            {
                CreateBullet(i, position, rotation, attackData, target);

                if (delay > 0)
                {
                    yield return(new WaitForSeconds(delay));
                }
            }
            yield return(null);
        }
示例#7
0
 public void Attack(Vector3 position, Quaternion rotation, AttackData attackData, ActorBase target)
 {
     Game.mainGame.StartCoroutine(Fire(position, rotation, attackData, target));
 }
示例#8
0
 void Start()
 {
     m_actor = gameObject.GetComponentInParent <ActorBase>();
 }