Пример #1
0
 private void AddChildEvent()
 {
     if (this.layer >= MAX_LAYER)
     {
         return;
     }
     SkillUtils.InstanceEvent(SKILL_EVENT_TYPE.动作, skillInfo, this, layer + 1, 0);
 }
Пример #2
0
        private void LayerDownEvent()
        {
            if (this.GetMaxLayer() >= MAX_LAYER)
            {
                return;
            }
            List <BaseSkillEvent> parentChildrenEventList = GetParentChildrenEventList();
            int            index = parentChildrenEventList.IndexOf(parent);
            BaseSkillEvent be    = SkillUtils.InstanceEvent(SKILL_EVENT_TYPE.动作, skillInfo, parent, layer, index);

            parentChildrenEventList.Remove(this);
            be.childrenEvents.Add(this);
            this.parent = be;
            ChangeLayer(1);
        }
Пример #3
0
 private void RefreshType()
 {
     if (lastType != eventType)
     {
         lastType = eventType;
         int            index = GetParentChildrenEventList().IndexOf(this);
         BaseSkillEvent nbe   = SkillUtils.InstanceEvent(eventType, skillInfo, parent, layer, index);
         for (int i = 0; i < this.childrenEvents.Count; ++i)
         {
             this.childrenEvents[i].parent = nbe;
             nbe.childrenEvents.Add(this.childrenEvents[i]);
         }
         DeleteEvent();
     }
 }
Пример #4
0
        public static BaseSkillEvent InstSkillEvent(BinaryReader br, SkillInfo info, BaseSkillEvent parent, int layer, int index)
        {
            SKILL_EVENT_TYPE eventType = (SKILL_EVENT_TYPE)br.ReadInt32();
            BaseSkillEvent   bse       = SkillUtils.InstanceEvent(eventType, info, parent, layer, index);

            bse.time       = br.ReadSingle();
            bse.times      = br.ReadInt32();
            bse.interval   = br.ReadSingle();
            bse.actionTime = br.ReadSingle();
            bse.key        = bse.GetKey();
#if UNITY_EDITOR
            bse.lastType = eventType;
#endif
            return(bse);
        }