static public void SetTroopVo(GC_TroopData data, TroopVo vo)
    {
        vo.type         = data.Type;
        vo.level        = data.Level;
        vo.health       = data.Hp;
        vo.mana         = data.Mp;
        vo.arrangeIndex = data.Arrangeindex;
        vo.marchId      = data.Marchid;
        vo.queueIndex   = data.Queueindex;

        vo.skillIdList.Clear();
        for (int i = 0; i < data.skillCount; i++)
        {
            int skill = data.GetSkill(i);
            vo.skillIdList.Add(skill);
        }

        vo.cooldownList.Clear();
        for (int i = 0; i < data.cooldownCount; i++)
        {
            GC_CoolDownInfo coolDown = data.GetCooldown(i);
            CoolDownVo      cVo      = new CoolDownVo();
            cVo.cdTime  = coolDown.Cdtime;
            cVo.elapsed = coolDown.Elapsed;
            cVo.id      = coolDown.Id;
            vo.cooldownList.Add(cVo);
        }
    }
    static public void SetMarchVo(GC_MarchData data, MarchVo vo)
    {
        vo.marchId   = data.Marchid;
        vo.playerId  = data.Playerid;
        vo.cityId    = data.CityId;
        vo.fightId   = data.Fightid;
        vo.buildId   = data.Buildid;
        vo.sceneId   = data.Sceneid;
        vo.beginTime = data.Begintime;
        vo.status    = data.Status;
        vo.speed     = data.Speed;

        vo.hero = new HeroVo();
        SetHeroVo(data.Hero, vo.hero);

        vo.troopList.Clear();
        for (int i = 0; i < data.troopCount; i++)
        {
            GC_TroopData tData = data.GetTroop(i);
            TroopVo      tVo   = new TroopVo();
            SetTroopVo(tData, tVo);
            vo.troopList.Add(tVo);
        }
    }