/// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="itm">target</param>
    /// <param name="repItm">source</param>
    /// <returns> parsed item </returns>
    public static new AbstractObject Parse(AbstractObject itm, ExcelLoading.AbstractObject repItm)
    {
        ExcelLoading.MineralResource repRes = repItm as ExcelLoading.MineralResource;
        MineralResource res = itm as MineralResource;

        res.m_maxCount = decimal.ToInt32(repRes.maximum_in_territory);
        res.m_count    = res.m_maxCount;

        return(AbstractObject.Parse(itm, repItm));
    }
Exemple #2
0
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="itm">target</param>
    /// <param name="repItm">source</param>
    /// <returns> parsed item </returns>
    public static new AbstractObject Parse(AbstractObject itm, ExcelLoading.AbstractObject repItm)
    {
        ExcelLoading.Resource repRes = repItm as ExcelLoading.Resource;
        Resource res = itm as Resource;

        res.m_growingPercent = repRes.growing_percent;
        res.m_currentMax     = (int)res.m_maxCount;

        return(MineralResource.Parse(itm, repItm));
    }
Exemple #3
0
 public void ParseDependency(ExcelLoading.AbstractObject rep)
 {
     try
     {
         ExcelLoading.WildAnimalItem aniRep = rep as ExcelLoading.WildAnimalItem;
         if (aniRep.tamed_to.Length > 0 && aniRep.tamed_to[0] != '-')
         {
             m_tamedTo = DomesticAnimal.GetAnimal(aniRep.tamed_to);
         }
     }catch (Exception e)
     {
         Debug.LogException(e);
     }
 }
Exemple #4
0
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="itm">target</param>
    /// <param name="repItm">source</param>
    /// <returns> parsed item </returns>
    public static new AbstractObject Parse(AbstractObject itm, ExcelLoading.AbstractObject repItm)
    {
        Localization loc = Localization.GetLocalization();

        ExcelLoading.ScienceItem rep = (ExcelLoading.ScienceItem)repItm;
        Science scs = (Science)itm;

        scs.m_repItem             = rep;
        scs.m_tooltipCount        = loc.m_ui.m_scienceCount;
        scs.m_tooltipProductivity = loc.m_ui.m_scienceProductivity;
        Productions.AddProduction(scs, "science");

        return(GameAbstractItem.Parse(itm, repItm));
    }
Exemple #5
0
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="itm">target</param>
    /// <param name="repItm">source</param>
    /// <returns> parsed item </returns>
    public static new AbstractObject Parse(AbstractObject itm, ExcelLoading.AbstractObject repItm)
    {
        ExcelLoading.Process rep = (ExcelLoading.Process)repItm;
        Process proc             = (Process)itm;

        proc.m_onWork = proc.WorkComplite;

        proc._duration      = rep.duration;
        proc.m_itemsStarted = new ProcessItems[proc._duration + 1];
        for (int i = 0; i <= proc._duration; i++)
        {
            proc.m_itemsStarted[i] = new ProcessItems();
        }

        return(GameMaterial.Parse(itm, repItm));
    }
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="mat">target</param>
    /// <param name="rep">source</param>
    /// <returns> parsed item </returns>
    /// <returns></returns>
    public static new AbstractObject Parse(AbstractObject mat, ExcelLoading.AbstractObject rep)
    {
        AbstractAnimal ani = mat as AbstractAnimal;

        ExcelLoading.AbstractAnimal aniRep = rep as ExcelLoading.AbstractAnimal;
        if (ani != null && aniRep != null)
        {
            ani.m_butcheringPerPerson = GameAbstractItem.ParseDependencyCounts(aniRep.butchering_per_person);
        }
        else
        {
            Debug.Log("AbstractAnimal.Parse: critical parse error");
        }

        return(Resource.Parse(mat, rep));
    }
Exemple #7
0
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="itm">target</param>
    /// <param name="repItm">source</param>
    /// <returns> parsed item </returns>
    public new static AbstractObject Parse(AbstractObject itm, ExcelLoading.AbstractObject repItm)
    {
        ExcelLoading.ItemItem rep = (ExcelLoading.ItemItem)repItm;
        Items itms = (Items)itm;

        itms.m_bug = rep.bug;
        itms.m_bugFixingPerPerson = rep.bug_fixing_per_second;
        itms.m_isItDestroyable    = true;
        itms.m_tooltipDamaged     = Localization.GetLocalization().m_ui.m_itemsDamaged;

        string[] crtc = rep.critical.Split(' ');
        itms.m_critical = uint.Parse(crtc[2]);
        string[] effTps = rep.effect_type.Split(';');
        foreach (string effect in effTps)
        {
            try
            {
                string[]    parts       = effect.Split('*');
                string      effName     = parts[0].Trim();
                float       effValue    = FloatParse(parts[1].Trim());
                ItemsEffect itemsEffect = effName.CheckType() ?
                                          new ContainerEffect(effName, effValue, itms)
                    : new ItemsEffect(effName, effValue, itms);

                itms.m_effects.Add(effName, itemsEffect);
                Productions.AddTools(itemsEffect, effName);

                if (itemsEffect.GetType() == typeof(ContainerEffect))
                {
                    itms.m_containerEffect = itemsEffect as ContainerEffect;
                    Camera.main.GetComponent <Storage>().AddStorageItem(itms);
                }
                if (itemsEffect.m_name == "happy" || itemsEffect.m_name == "maxHappy")
                {
                    itms.m_happyEffect = itemsEffect;
                }
            }
            catch (Exception ex)
            {
                Debug.Log(ex.Message);
            }
        }

        return(GameMaterial.Parse(itm, repItm));
    }
Exemple #8
0
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="itm">target</param>
    /// <param name="repItm">source</param>
    /// <returns> parsed item </returns>
    public static new AbstractObject Parse(AbstractObject itm, ExcelLoading.AbstractObject repItm)
    {
        ExcelLoading.MaterialItem rep = (ExcelLoading.MaterialItem)repItm;
        GameMaterial mat = (GameMaterial)itm;

        mat.m_size      = rep.container;
        mat.m_container = rep.container_type.ParseCont();
        string[] prods = rep.production_type.Split('&');
        foreach (string prod in prods)
        {
            string prodTmp = prod.Trim();
            mat.m_productionType.Add(prodTmp);
            Productions.AddProduction(mat, prodTmp);
        }
        mat.m_onWork = mat.WorkComplite;

        return(GameAbstractItem.Parse(mat, rep));
    }
    /// <summary>
    /// Parsing excel data into current class
    /// execution chain for building looks:
    /// Buildings -> Items -> GameMaterial -> GameAbstractItem -> AbstractObject
    /// </summary>
    /// <param name="rep"> source </param>
    /// <param name="mat"> target </param>
    public static AbstractObject Parse(AbstractObject mat, ExcelLoading.AbstractObject rep)
    {
        mat.m_name     = rep.name;
        mat.m_text     = rep.description;
        mat.m_defaultX = rep.defaultX;
        mat.m_defaultY = rep.defaultY;

        if (mat.m_name[0] == '-')
        {
            mat.m_isItOpen--;
        }

        m_sEverything.Add(mat);
        m_sUnparsed.Add(rep);

        Localization.m_onLanguageChanged += mat.ChangeLanguage;
        return(mat);
    }
Exemple #10
0
    /// <summary>
    /// Parse building from excel data to current format
    /// </summary>
    /// <param name="abs"> target </param>
    /// <param name="repItm"> source </param>
    /// <returns> parsed item </returns>
    public new static AbstractObject Parse(AbstractObject abs, ExcelLoading.AbstractObject repItm)
    {
        Items itm = abs as Items;

        Items.Parse(itm, repItm);
        Storage st = Camera.main.GetComponent <Storage>();

        st.AddStorageItem(itm as Items);
        Buildings bld = itm as Buildings;

        try
        {
            bld.m_living = bld.m_effects["living"];
        }
        catch (KeyNotFoundException kex)
        {
            Debug.Log("Building " + bld.m_name + " does not contain living effects " + kex.Message);
        }
        return(itm);
    }
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="mat">target</param>
    /// <param name="rep">source</param>
    /// <returns> parsed item </returns>
    /// <returns></returns>
    public static new AbstractObject Parse(AbstractObject mat, ExcelLoading.AbstractObject rep)
    {
        DomesticAnimal ani = mat as DomesticAnimal;

        ExcelLoading.DomesticAnimalItem aniRep = rep as ExcelLoading.DomesticAnimalItem;
        if (ani != null && aniRep != null)
        {
            ani.m_container            = aniRep.storageType.ParseCont();
            ani.m_producePerPerson     = aniRep.produce_per_person;
            ani.m_foodType             = GameAbstractItem.ParseDependencyCounts(aniRep.foodType);
            ani.m_additionalProduction = GameAbstractItem.ParseDependencyCounts(aniRep.additionalProducts);
            //link to domesticAnimal!!!
            _sAllDomesticAnimal.Add(ani);
        }
        else
        {
            Debug.Log("WildAnimal.Parse: critical parse error");
        }

        return(AbstractAnimal.Parse(mat, rep));
    }
Exemple #12
0
    /// <summary>
    /// parsing excel data into current format
    /// </summary>
    /// <param name="mat">target</param>
    /// <param name="rep">source</param>
    /// <returns> parsed item </returns>
    /// <returns></returns>
    public static new AbstractObject Parse(AbstractObject mat, ExcelLoading.AbstractObject rep)
    {
        WildAnimal ani = mat as WildAnimal;

        ExcelLoading.WildAnimalItem aniRep = rep as ExcelLoading.WildAnimalItem;
        if (ani != null && aniRep != null)
        {
            ani.m_attack       = aniRep.attack;
            ani.m_protection   = aniRep.protection;
            ani.m_speed        = aniRep.speed;
            ani.m_scary        = aniRep.scary;
            ani.m_minInSquadre = decimal.ToInt32(aniRep.minimal_in_squadre);
            ani.m_maxInSquadre = decimal.ToInt32(aniRep.maximum_in_squadre);
            ani.m_chanceToTame = aniRep.chance_to_tame;

            _sAllWildAnimal.Add(ani);
        }
        else
        {
            Debug.Log("WildAnimal.Parse: critical parse error");
        }

        return(AbstractAnimal.Parse(mat, rep));
    }
Exemple #13
0
 /// <summary>
 /// parsing excel data into current format
 /// </summary>
 /// <param name="itm">target</param>
 /// <param name="repItm">source</param>
 /// <returns> parsed item </returns>
 public static new AbstractObject Parse(AbstractObject mat, ExcelLoading.AbstractObject rep)
 {
     return(AbstractObject.Parse(mat, rep));
 }