Example #1
0
    public EquipLevelData GetEquipLevelData(int id, int level)
    {
        int            i = (id * 1000) + level;
        EquipLevelData l = GameShared.Instance.GetEquipmentIntensifyById(i);

        return(l);
    }
Example #2
0
    public Hashtable QueryEquipmentIntensifyTable()
    {
        InitDB();
        SqliteDataReader sqReader = db.ExecuteQuery("select * FROM g_equipment_enhance INNER JOIN item_icon ON g_equipment_enhance.icon_id=item_icon.id");
        //SqliteDataReader sqReader = db.ReadFullTable("g_equipment_enhance");
        Hashtable table = new Hashtable();

        while (sqReader.Read())
        {
            EquipLevelData item = new EquipLevelData();
            item.g_csv_id = sqReader.GetInt32(sqReader.GetOrdinal("g_csv_id"));
            item.csv_id   = sqReader.GetInt32(sqReader.GetOrdinal("csv_id"));
            item.name     = sqReader.GetString(sqReader.GetOrdinal("name"));
            item.icon_id  = sqReader.GetInt32(sqReader.GetOrdinal("icon_id"));
            item.path     = sqReader.GetString(sqReader.GetOrdinal("path"));
            item.attrArr[(int)Def.AttrType.FightPower] = sqReader.GetInt32(sqReader.GetOrdinal("combat"));
            item.attrArr[(int)Def.AttrType.Defense]    = sqReader.GetInt32(sqReader.GetOrdinal("defense"));
            item.attrArr[(int)Def.AttrType.Crit]       = sqReader.GetInt32(sqReader.GetOrdinal("critical_hit"));
            item.attrArr[(int)Def.AttrType.Pray]       = sqReader.GetInt32(sqReader.GetOrdinal("king"));

            item.additionArr[(int)Def.AttrType.FightPower] = sqReader.GetInt32(sqReader.GetOrdinal("combat_probability"));
            item.additionArr[(int)Def.AttrType.Defense]    = sqReader.GetInt32(sqReader.GetOrdinal("defense_probability"));
            item.additionArr[(int)Def.AttrType.Crit]       = sqReader.GetInt32(sqReader.GetOrdinal("critical_hit_probability"));
            item.additionArr[(int)Def.AttrType.Pray]       = sqReader.GetInt32(sqReader.GetOrdinal("king_probability"));

            item.enhance_success_rate = sqReader.GetInt32(sqReader.GetOrdinal("enhance_success_rate"));
            item.currency_type        = sqReader.GetInt32(sqReader.GetOrdinal("currency_type"));
            item.currency_num         = sqReader.GetInt32(sqReader.GetOrdinal("currency_num"));
            table.Add(item.g_csv_id, item);
        }
        return(table);
    }
Example #3
0
    public void InitEquipData()
    {
        System.Collections.IDictionaryEnumerator enumerator = equipmentIntensifyTable.GetEnumerator();
        while (enumerator.MoveNext())
        {
            EquipLevelData r = equipmentIntensifyTable[enumerator.Key] as EquipLevelData;
            r.attrArr[(int)Def.AttrId.FightPower] = r.combat;
            r.attrArr[(int)Def.AttrId.Crit]       = r.critical_hit;
            r.attrArr[(int)Def.AttrId.Defense]    = r.defense;
            r.attrArr[(int)Def.AttrId.Pray]       = r.king;

            r.additionArr[(int)Def.AttrId.FightPower] = r.combat_probability;
            r.additionArr[(int)Def.AttrId.Crit]       = r.critical_hit_probability;
            r.additionArr[(int)Def.AttrId.Defense]    = r.defense_probability;
            r.additionArr[(int)Def.AttrId.Pray]       = r.king_probability;
        }
    }
Example #4
0
    public void GetEquipList(List <C2sSprotoType.equipment> list)
    {
        equipTable = new Hashtable();
#if Lua
        LuaFunction f   = l.GetFunction("GetEquipList");
        object[]    obj = f.Call(list, equipTable);
#else
        for (int i = 0; i < list.Count; i++)
        {
            EquipViewData e  = new EquipViewData();
            int           id = (int)list[i].csv_id;
            e.level = (int)list[i].level;
            if (id > 999)
            {
                id = id / 1000;
            }
            e.data           = GameShared.Instance.GetEquipmentById(id);
            e.data.levelData = GetEquipLevelData(e.data.csv_id, e.level);

            Debug.Log("id" + list[i].csv_id + "power" + list[i].combat + "powerp" + list[i].combat_probability);

            EquipLevelData item = e.data.levelData;
            item.attrArr[(int)Def.AttrType.FightPower] = list[i].combat;
            item.attrArr[(int)Def.AttrType.Defense]    = list[i].defense;
            item.attrArr[(int)Def.AttrType.Crit]       = list[i].critical_hit;
            item.attrArr[(int)Def.AttrType.Pray]       = list[i].king;

            item.additionArr[(int)Def.AttrType.FightPower] = list[i].combat_probability;
            item.additionArr[(int)Def.AttrType.Defense]    = list[i].defense_probability;
            item.additionArr[(int)Def.AttrType.Crit]       = list[i].critical_hit_probability;
            item.additionArr[(int)Def.AttrType.Pray]       = list[i].king_probability;
            item.enhance_success_rate = (int)list[i].enhance_success_rate;

            equipTable.Add(e.data.csv_id, e);
            if (UserManager.Instance.equipTable.Contains(e.data.csv_id))
            {
                UserManager.Instance.equipTable[e.data.csv_id] = e;
            }
            else
            {
                UserManager.Instance.equipTable.Add(e.data.csv_id, e);
            }
        }
#endif
    }
Example #5
0
    /// <summary>
    ///
    /// </summary>
    /// <param name="d1">当前</param>
    /// <param name="d2">下一</param>
    public void SetEquipInfo(ref EquipViewData d1)
    {
        #if Lua
        LuaFunction f   = l.GetFunction("SetEquipInfo");
        object[]    obj = f.Call(d1);
        curEquip = obj[0];
#else
        EquipLevelData d2  = null;
        EquipViewData  aaa = UserManager.Instance.equipTable[(int)EquipData.EquipType.Boxing] as EquipViewData;
        EquipViewData  bbb = UserManager.Instance.equipTable[(int)EquipData.EquipType.Cloth] as EquipViewData;
        EquipViewData  ccc = UserManager.Instance.equipTable[(int)EquipData.EquipType.Belt] as EquipViewData;
        EquipViewData  ddd = UserManager.Instance.equipTable[(int)EquipData.EquipType.Shoe] as EquipViewData;
        Debug.Log("a" + aaa.data.levelData.currency_num + "b" + bbb.data.levelData.currency_num + "c" + ccc.data.levelData.currency_num + "d" + ddd.data.levelData.currency_num);

        if (d1.level < Def.EquipLevelMax)
        {
            int id = d1.data.csv_id + 1 % 4;
            d2 = GetEquipLevelData(d1.data.csv_id, d1.level + 1);
        }

        pop.level.text = d1.level + "/" + Def.EquipLevelMax;
        pop.name.text  = d1.data.levelData.name;
        if (d1.data.levelData.path != null)
        {
            pop.itemView.spriteName = d1.data.levelData.path;
        }

        string str = "";
        string num = "";
        if (d2 != null)
        {
            for (int i = 0; i < d1.data.levelData.attrArr.Length; i++)
            {
                if (d1.data.levelData.attrArr[i] > 0)
                {
                    switch (i)
                    {
                    case 1:
                        str += "战力";
                        break;

                    case 2:
                        str += "防御";
                        break;

                    case 3:
                        str += "暴击";
                        break;

                    case 4:
                        str += "王者";
                        break;
                    }
                    pop.attrType.text = str + "提升";
                    num += d1.data.levelData.attrArr[i] + "-" + d2.attrArr[i];
                }
            }
        }

        if (d1 != null)
        {
            pop.intensifylevel.text = d1.level + "-" + (d1.level + 1);
            string ss = "";
            switch (d1.data.levelData.currency_type)
            {
            case 2:
                ss = "金币";
                break;

            case 3:
                ss = "钻石";
                break;
            }

            if (!UserManager.Instance.ResByType(curLevelEquip.data.levelData.currency_type, curLevelEquip.data.levelData.currency_num))
            {
                pop.use.text  = "[FF0000]" + d2.currency_num.ToString() + ss + "[-]";
                pop.use.color = new Color(255, 0, 0);
            }
            else
            {
                pop.use.text  = "[00FF00]" + d2.currency_num.ToString() + ss + "[-]";
                pop.use.color = new Color(0, 255, 0);
            }

            pop.pre.text  = (d2.enhance_success_rate + UserManager.Instance.curVipdata.equipment_enhance_success_rate_up_p).ToString() + "%";
            pop.attr.text = num;
        }
        else
        {
            pop.intensifylevel.text = d1.level.ToString();
            pop.use.text            = "";
            pop.pre.text            = "";
            pop.attr.text           = num;
        }
        int temp = 0;
        temp = BagMgr.Instance.GetItemNumById(d1.data.levelData.currency_type);
#endif
    }