Ejemplo n.º 1
0
        //---------------------------------------------------------------------
        public Delayer Delay1(float delay_tm, DelayEndCallBack cb, Dictionary <byte, object> map_param)
        {
            Delayer delayer = new Delayer(this, delay_tm, cb, map_param);

            ListDelayer.Add(delayer);
            return(delayer);
        }
Ejemplo n.º 2
0
        //---------------------------------------------------------------------
        public Delayer Delay(float delay_tm, Action cb)
        {
            Delayer delayer = new Delayer(this, delay_tm, cb);

            ListDelayer.Add(delayer);
            return(delayer);
        }
Ejemplo n.º 3
0
        //---------------------------------------------------------------------
        public void Update(float tm)
        {
            if (ListDelayer.Count > 0)
            {
                foreach (var i in ListDelayer)
                {
                    i.LeftTm -= tm;
                    if (i.IsDone())
                    {
                        Que2Delete.Enqueue(i);
                    }
                }

                while (Que2Delete.Count > 0)
                {
                    var delayer = Que2Delete.Dequeue();
                    ListDelayer.Remove(delayer);
                    delayer._onEnd();
                }
            }
        }
Ejemplo n.º 4
0
 //---------------------------------------------------------------------
 public void _remove(Delayer delayer)
 {
     ListDelayer.Remove(delayer);
 }
Ejemplo n.º 5
0
 //---------------------------------------------------------------------
 public void Close()
 {
     ListDelayer.Clear();
     Que2Delete.Clear();
 }