//by cg 2013-10-26
        public void SetRoles(List <string> roles)
        {
            HideHeads();
            int index = 0;

            foreach (var role in roles)
            {
                if (index >= 5) //最多显示5个
                {
                    break;
                }
                SceneHead sceneHead = new SceneHead(role, "", "original_nothing", "story", "这是" + "【" + role + "】", 0);
                sceneHead.head.Width  = CommonSettings.MAPUI_ROLEHEAD_WIDTH;
                sceneHead.head.Height = CommonSettings.MAPUI_ROLEHEAD_HEIGHT;
                sceneHead.Margin      = new Thickness(CommonSettings.MAPUI_ROLEHEAD_X, CommonSettings.MAPUI_ROLEHEAD_Y + index * (CommonSettings.MAPUI_ROLEHEAD_HEIGHT + CommonSettings.MAPUI_ROLEHEAD_GAP), 0, 0);
                Canvas.SetZIndex(sceneHead, CommonSettings.Z_MAPUI_ROLEHEAD);
                ImageBrush brush = new ImageBrush();
                brush.ImageSource = ResourceManager.GetImage("ui.头像框.普通");
                brush.Stretch     = Stretch.Uniform;
                sceneHead.LayoutRoot.Background = brush;

                uiHost.LayoutRoot.Children.Add(sceneHead);
                heads.Add(sceneHead);
                index++;
            }
        }
        private void LoadMap(string key, Battle battle)
        {
            MapTemplate mapTemplate = BattleManager.GetMapTemplate(key);

            /*if (Spirits.Count > 0)
             * {
             *  foreach (var sp in Spirits)
             *  {
             *      this.backgroundCanvas.Children.Remove(sp);
             *  }
             *  Spirits.Clear();
             * }*/
            if (heads.Count > 0)
            {
                foreach (var head in heads)
                {
                    this.backgroundCanvas.Children.Remove(head);
                }
                heads.Clear();
            }

            //纯图,没人物
            if (battle.battleRoles.Count == 0)
            {
                this.backgroundCanvas.Background = new ImageBrush()
                {
                    ImageSource = mapTemplate.Background, Stretch = Stretch.Uniform, AlignmentX = AlignmentX.Center, AlignmentY = AlignmentY.Center, Opacity = CommonSettings.timeOpacity[RuntimeData.Instance.Date.Hour / 2]
                };
            }
            //图+人物
            else
            {
                this.backgroundCanvas.Background = new ImageBrush()
                {
                    ImageSource = mapTemplate.Background, Stretch = Stretch.Uniform, AlignmentX = AlignmentX.Center, AlignmentY = AlignmentY.Center, Opacity = CommonSettings.timeOpacity[RuntimeData.Instance.Date.Hour / 2]
                };

                int index = 0;
                foreach (var role in battle.battleRoles)
                {
                    SceneHead sceneHead = new SceneHead(role.roleKey, "", "original_nothing", "story", "这是" + "【" + role.roleKey + "】", 0);
                    sceneHead.head.Width  = CommonSettings.MAPUI_ROLEHEAD_WIDTH;
                    sceneHead.head.Height = CommonSettings.MAPUI_ROLEHEAD_HEIGHT;
                    sceneHead.Margin      = new Thickness(CommonSettings.MAPUI_ROLEHEAD_X, CommonSettings.MAPUI_ROLEHEAD_Y + index * (CommonSettings.MAPUI_ROLEHEAD_HEIGHT + CommonSettings.MAPUI_ROLEHEAD_GAP), 0, 0);
                    Canvas.SetZIndex(sceneHead, CommonSettings.Z_MAPUI_ROLEHEAD);
                    ImageBrush brush = new ImageBrush();
                    brush.ImageSource = ResourceManager.GetImage("ui.头像框.普通");
                    brush.Stretch     = Stretch.Uniform;
                    sceneHead.LayoutRoot.Background = brush;

                    this.backgroundCanvas.Children.Add(sceneHead);
                    heads.Add(sceneHead);
                    index++;
                }
            }

            AudioManager.PlayMusic(mapTemplate.Music);
        }