public static LevelUpInfo GetLevelUpInfo(WUnitData unitData)
 {
     return(new LevelUpInfo(unitData.attack,
                            unitData.max_health,
                            unitData.max_shield,
                            unitData.miss_chance,
                            unitData.dodge_chance,
                            unitData.critical_ratio,
                            unitData.critical_chance,
                            unitData.next_upgrade_stats,
                            null));
 }
    public static CharInfo GetCharInfo(WUnitData troopData)
    {
        var stats = new BattleObjStats(
            troopData.health, troopData.max_health, troopData.attack, troopData.shield, troopData.max_shield);

        CharInfo chInf = new CharInfo(
            troopData.moniker, stats, CharInfoHelper.GetCharacterSpells(troopData.moniker),
            troopData.dexterity, 0, troopData.level,
            troopData.id, troopData.cool_down_remaining_seconds, troopData.quantity,
            GetNextUpgradeStats(troopData.next_upgrade_stats), troopData.ownerMoniker);

        chInf.SetOtherStats(troopData.critical_ratio,
                            troopData.critical_chance,
                            troopData.miss_chance);

        //chInf.SetUnlockData(troopData.used_status, troopData.unlock_league, troopData.unlock_league_step_number);
        chInf.SetUnlockData(WCharExistenceType.unlock, troopData.unlock_league, troopData.unlock_league_step_number);

        return(chInf);
    }