UpdatePlugin() private méthode

Called every frame to update the plugin.
private UpdatePlugin ( ) : void
Résultat void
Exemple #1
0
 /// <summary>Updates the safety system plugin for this train</summary>
 internal void UpdateSafetySystem()
 {
     if (Plugin != null)
     {
         SignalData[] data  = new SignalData[16];
         int          count = 0;
         int          start = CurrentSectionIndex >= 0 ? CurrentSectionIndex : 0;
         for (int i = start; i < Program.CurrentRoute.Sections.Length; i++)
         {
             SignalData signal = Program.CurrentRoute.Sections[i].GetPluginSignal(this);
             if (data.Length == count)
             {
                 Array.Resize <SignalData>(ref data, data.Length << 1);
             }
             data[count] = signal;
             count++;
             if (signal.Aspect == 0 | count == 16)
             {
                 break;
             }
         }
         Array.Resize <SignalData>(ref data, count);
         Plugin.UpdateSignals(data);
         Plugin.LastSection = CurrentSectionIndex;
         Plugin.UpdatePlugin();
     }
 }