예제 #1
0
 private void OnEntityDestroyed(object sender, EntityArgs args)
 {
     if (entitySpriteDict.ContainsKey(args.entity))
     {
         MFSprite        sp    = entitySpriteDict[args.entity];
         MFMainGameLayer layer = MFLayer.GetLayer <MFMainGameLayer>();
         if (layer != null)
         {
             layer.RemoveSprite(sp);
         }
     }
 }
예제 #2
0
        private void OnGameState(object sender, GameStateEventArgs args)
        {
            MFGUILayer guiLayer = MFLayer.GetLayer <MFGUILayer>();

            if (guiLayer != null)
            {
                if (args.state == MainGameState.GameOver)
                {
                    guiLayer.Show();
                }
                else if (args.state == MainGameState.Running)
                {
                    guiLayer.Hide();
                }
            }
        }
예제 #3
0
        private void OnEntitySpawned(object sender, EntityArgs args)
        {
            MFQuadSprite    sp    = new MFQuadSprite();
            MFMainGameLayer layer = MFLayer.GetLayer <MFMainGameLayer>();

            if (args.entity is MFBullet)
            {
                sp.texName = "bullet";
            }
            else
            {
                sp.texName = "ship";
            }
            if (layer != null)
            {
                layer.AddSprite(sp);
            }
            this.entitySpriteDict[args.entity] = sp;
        }