Beispiel #1
0
 public void RealInflict()
 {
     m_remain_attack_cnt = m_combo_attack_cnt;
     Impact();
     if (m_combo_attack_cnt > 1)
     {
         if (m_combo_task == null)
         {
             m_combo_task = LogicTask.Create <ComboAttackTask>();
             m_combo_task.Construct(this);
         }
         var schedeler = GetLogicWorld().GetTaskScheduler();
         schedeler.Schedule(m_combo_task, GetCurrentTime(), m_combo_interval, m_combo_interval);
     }
 }
Beispiel #2
0
        protected override void OnDestruct()
        {
            RecyclableObject.Recycle(m_damage_amount);
            m_damage_amount = null;

            if (m_delay_task != null)
            {
                m_delay_task.Cancel();
                LogicTask.Recycle(m_delay_task);
                m_delay_task = null;
            }

            if (m_combo_task != null)
            {
                m_combo_task.Cancel();
                LogicTask.Recycle(m_combo_task);
                m_combo_task = null;
            }
        }