Пример #1
0
    public ArenaRankLevel GetRankLevel(uint rank)
    {
        ArenaRankLevel ranklevel = ArenaRankLevel.ArenaRankLevel_End;

        IDictionaryEnumerator itr = DataManager.ArenaTable.GetEnumerator();

        while (itr.MoveNext())
        {
            ArenaTableItem item = itr.Value as ArenaTableItem;
            if (rank >= item.mHighestRank && rank <= item.mLowestRank)
            {
                ranklevel = (ArenaRankLevel)item.mRankLevel;
                break;
            }
        }
//      foreach(ArenaTableItem item in DataManager.ArenaTable.Values)
//      {
//          if(rank >= item.mHighestRank && rank <= item.mLowestRank)
//          {
//              ranklevel = (ArenaRankLevel)item.mRankLevel;
//              break;
//          }
//      }

        return(ranklevel);
    }
Пример #2
0
    public int GetAwardByIdx(int idx)
    {
        if (mSimpleData == null || mSimpleData.Count <= idx)
        {
            return(0);
        }

        uint curRank = mDataModule.GetArenaCurRank();

        ArenaRandomTableItem  randomRes = null;
        IDictionaryEnumerator itr       = DataManager.ArenaRandomTable.GetEnumerator();

        while (itr.MoveNext())
        {
            ArenaRandomTableItem randomItem = itr.Value as ArenaRandomTableItem;
            if (curRank >= randomItem.mHighestRank)
            {
                randomRes = randomItem;
                break;
            }
        }
//      foreach(ArenaRandomTableItem randomItem in DataManager.ArenaRandomTable.Values)
//      {
//          if(curRank >= randomItem.mHighestRank)
//          {
//              randomRes = randomItem;
//              break;
//          }
//      }

        if (randomRes == null)
        {
            return(0);
        }

        ArenaTableItem arenaRes = null;

        itr = DataManager.ArenaTable.GetEnumerator();
        while (itr.MoveNext())
        {
            ArenaTableItem arenaItem = itr.Value as ArenaTableItem;
            if (curRank >= arenaItem.mHighestRank)
            {
                arenaRes = arenaItem;
                break;
            }
        }
//      foreach(ArenaTableItem arenaItem in DataManager.ArenaTable.Values)
//      {
//          if (curRank >= arenaItem.mHighestRank)
//          {
//              arenaRes = arenaItem;
//              break;
//          }
//      }

        if (arenaRes == null)
        {
            return(0);
        }

        uint againsterRank = mSimpleData[idx].rank;

        if (againsterRank <= curRank + randomRes.mHigherRight)
        {
            return(arenaRes.mMoneyWinHigher);
        }

        if (againsterRank >= curRank + randomRes.mLowerLeft)
        {
            return(arenaRes.mMoneyWinLower);
        }

        return(arenaRes.mMoneyWinSame);
    }