예제 #1
0
 /// <summary>
 /// Load sprites for all animations that are supposed to be cached
 /// </summary>
 public void Cache(BomberStuff.Core.UserInterface.IDevice device, int nPlayers)
 {
     foreach (Animation ani in TilesetAnimations)
     {
         if (ani.Cached)
         {
             //System.Console.WriteLine("Caching " + ani.Name);
             foreach (AnimationFrame frame in ani.Frames)
             {
                 if (frame.RemappedCopies == null)
                 {
                     frame.GetSprite(device, ani.VideoMemory);
                 }
                 else
                 {
                     for (int iPlayer = 0; iPlayer < nPlayers; ++iPlayer)
                     {
                         frame.GetSprite(device, ani.VideoMemory, iPlayer);
                     }
                 }
             }
         }
     }
     foreach (Animation ani in Animations)
     {
         if (ani.Cached)
         {
             //System.Console.WriteLine("Caching " + ani.Name);
             foreach (AnimationFrame frame in ani.Frames)
             {
                 if (frame.RemappedCopies == null)
                 {
                     frame.GetSprite(device, ani.VideoMemory);
                 }
                 else
                 {
                     for (int iPlayer = 0; iPlayer < nPlayers; ++iPlayer)
                     {
                         frame.GetSprite(device, ani.VideoMemory, iPlayer);
                     }
                 }
             }
         }
     }
     foreach (Animation ani in DeathAnimations)
     {
         if (ani.Cached)
         {
             //System.Console.WriteLine("Caching " + ani.Name);
             foreach (AnimationFrame frame in ani.Frames)
             {
                 if (frame.RemappedCopies == null)
                 {
                     frame.GetSprite(device, ani.VideoMemory);
                 }
                 else
                 {
                     for (int iPlayer = 0; iPlayer < nPlayers; ++iPlayer)
                     {
                         frame.GetSprite(device, ani.VideoMemory, iPlayer);
                     }
                 }
             }
         }
     }
 }
예제 #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="aniList"></param>
 /// <param name="device"></param>
 /// <returns></returns>
 public override BomberStuff.Core.UserInterface.ISprite GetSprite(AnimationList aniList, BomberStuff.Core.UserInterface.IDevice device)
 {
     //if (PlayerIndex == -1)
     //return aniList[Animation].GetSprite(device, AnimationState);
     //else
     return(aniList[Animation].GetSprite(device, AnimationState, PlayerIndex));
 }