Ejemplo n.º 1
0
    public void AddNewRune(int instanceId, int id)
    {
        int newPos = GetNewPos(EBagType.RUNE);

        if (newPos == 0)
        {
            return;
        }
        XItem item = new XItem();

        item.Pos      = newPos;
        item.Instance = instanceId;
        item.Pos      = newPos;
        item.Id       = id;
        item.Num      = 1;
        item.PosType  = (int)EPosType.BagRune;
        DataBagRune.Insert(newPos, item);

        XRune rune = new XRune();

        rune.Instance = instanceId;
        rune.Id       = id;
        rune.Level    = 0;
        DataRune.Insert(instanceId, rune);
    }
Ejemplo n.º 2
0
    public int CompareBagRune(XItem x1, XItem x2)
    {
        DItem itemDB1 = ReadCfgItem.GetDataById(x1.Id);
        DItem itemDB2 = ReadCfgItem.GetDataById(x2.Id);

        if (itemDB1.Quality != itemDB2.Quality)
        {
            return(itemDB2.Quality - itemDB1.Quality);
        }

        if (itemDB1.Id != itemDB2.Id)
        {
            return(itemDB2.Id - itemDB1.Id);
        }
        XRune r1 = DataDBSRune.GetDataById(x1.Instance);
        XRune r2 = DataDBSRune.GetDataById(x2.Instance);

        if (r1.Level != r2.Level)
        {
            return(r2.Level - r1.Level);
        }
        return(x1.Instance - x2.Instance);
    }