コード例 #1
0
 public void Update()
 {
     foreach (var obstacle in m_obstacles)
     {
         obstacle.Update();
     }
     m_obstacles.ApplyChanges();
 }
コード例 #2
0
        /// <summary>
        /// Update the state machine. Transition to new states.
        /// </summary>
        public virtual void Update()
        {
            m_activeCursors.ApplyChanges();
            if (m_activeCursorsById.Count == 0)
            {
                m_enqueuedActions.Clear();
                return;
            }

            foreach (var cursor in m_activeCursors)
            {
                cursor.Node.Expand(cursor, m_enqueuedActions);
                cursor.Node.OnUpdate(this);
            }
            m_enqueuedActions.Clear();
        }
コード例 #3
0
 public void Update()
 {
     m_runningMachines.ApplyChanges();
     foreach (var machine in m_runningMachines)
     {
         machine.Update();
         if (machine.ActiveCursorCount == 0)
         {
             m_runningMachines.Remove(machine);
             if (MyVisualScriptLogicProvider.MissionFinished != null)
             {
                 MyVisualScriptLogicProvider.MissionFinished(machine.Name);
             }
         }
     }
 }