示例#1
0
        public override void Execute(SceneLogicInfo info, long deltaTime)
        {
            if (null == info || info.IsLogicFinished || info.IsLogicPaused)
            {
                return;
            }
            info.Time += deltaTime;
            if (info.Time > 1000)
            {
                TimeoutLogicInfo data = info.LogicDatas.GetData <TimeoutLogicInfo>();
                if (null == data)
                {
                    data = new TimeoutLogicInfo();
                    info.LogicDatas.AddData <TimeoutLogicInfo>(data);

                    SceneLogicConfig sc = info.SceneLogicConfig;
                    if (null != sc)
                    {
                        data.m_Timeout = long.Parse(sc.m_Params[0]);
                    }
                }
                data.m_CurTime += info.Time;
                info.Time       = 0;
                //执行逻辑
                if (null != data && !data.m_IsTriggered && data.m_CurTime >= data.m_Timeout)
                {
                    data.m_IsTriggered = true;
                    SceneLogicSendStoryMessage(info, "timeout:" + info.ConfigId, data.m_Timeout);
                }
            }
        }
 static public int get_m_IsTriggered(IntPtr l)
 {
     try {
         GameFramework.TimeoutLogicInfo self = (GameFramework.TimeoutLogicInfo)checkSelf(l);
         pushValue(l, true);
         pushValue(l, self.m_IsTriggered);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
 static public int constructor(IntPtr l)
 {
     try {
         GameFramework.TimeoutLogicInfo o;
         o = new GameFramework.TimeoutLogicInfo();
         pushValue(l, true);
         pushValue(l, o);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
 static public int set_m_IsTriggered(IntPtr l)
 {
     try {
         GameFramework.TimeoutLogicInfo self = (GameFramework.TimeoutLogicInfo)checkSelf(l);
         System.Boolean v;
         checkType(l, 2, out v);
         self.m_IsTriggered = v;
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
        public override void Execute(SceneLogicInfo info, long deltaTime)
        {
            if (null == info || info.IsLogicFinished || info.IsLogicPaused) return;
              info.Time += deltaTime;
              if (info.Time > 1000) {
            TimeoutLogicInfo data = info.LogicDatas.GetData<TimeoutLogicInfo>();
            if (null == data) {
              data = new TimeoutLogicInfo();
              info.LogicDatas.AddData<TimeoutLogicInfo>(data);

              SceneLogicConfig sc = info.SceneLogicConfig;
              if (null != sc) {
            data.m_Timeout = long.Parse(sc.m_Params[0]);
              }
            }
            data.m_CurTime += info.Time;
            info.Time = 0;
            //执行逻辑
            if (null != data && !data.m_IsTriggered && data.m_CurTime >= data.m_Timeout) {
              data.m_IsTriggered = true;
              SceneLogicSendStoryMessage(info, "timeout:" + info.ConfigId, data.m_Timeout);
            }
              }
        }