Ejemplo n.º 1
0
    public EquipData RandEquipProperty(InGameBaseEquip equip)
    {
        EquipConf     equipConf    = ConfigManager.equipConfManager.dic[equip.confid];
        EquipConfData propertyData = ConfigManager.equipConfManager.datadic[equip.confid];

        List <PropertyConf>  propertys    = ConfigManager.propertyConfManager.datas;
        List <EquipProperty> propertyList = new List <EquipProperty>();

        EquipQuality quality = equip.quality;

        for (int i = 0; i < propertyData.propertyList.Count; i++)
        {
            PropertyConf propertyConf = ConfigManager.propertyConfManager.dataMap[propertyData.propertyList[i].id];

            EquipProperty e = new EquipProperty();
            e.id = propertyConf.id;
            float val = propertyConf.baseval + propertyConf.GetLevelupVal(equip.level);
            e.val = Mathf.Ceil(val + Random.Range(-val * propertyConf.randomrange, val * propertyConf.randomrange));
            e.val = e.val * (propertyData.propertyList[i].rate / 100f);
            propertyList.Add(e);
        }

        for (int i = propertyData.propertyList.Count; i < quality.propertycount; i++)
        {
            PropertyConf  propertyConf = propertys[Random.Range(0, propertys.Count)];
            EquipProperty e            = new EquipProperty();
            e.id = propertyConf.id;
            float val = propertyConf.baseval + propertyConf.GetLevelupVal(equip.level);
            e.val = Mathf.Ceil(val + Random.Range(-val * propertyConf.randomrange, val * propertyConf.randomrange));
            propertyList.Add(e);
        }

        EquipData equipData = new EquipData(
            UserDataManager.instance.GetInstanceID(),
            ConfigManager.equipQualityManager.GetByPropertyCount(propertyList.Count).id,
            equipConf.id,
            -1,
            propertyList);

        return(equipData);
        //UserDataManager.instance.AddEquip(equipData);
    }
Ejemplo n.º 2
0
    public void Load()
    {
        if (datas != null)
        {
            datas.Clear();
        }

        datas = ConfigManager.Load <EquipConf>();
        dic.Clear();

        for (int i = 0; i < datas.Count; i++)
        {
            EquipConf obj = datas[i];
            dic.Add(obj.id, obj);

            EquipConfData equipConfData = new EquipConfData();
            equipConfData.Init(obj.skill, obj.property);
            datadic.Add(obj.id, equipConfData);

            allOdds += obj.rate;
        }
    }