Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (IceAgeManager.M_AwardPacket.m_bEnd)
        {
            MSorting = M_SortingStatus.Idle;
            M_TimeFirst();

            IceAgeManager.M_AwardPacket.m_bEnd = false;
        }
        if (IceAgeManager.O_AwardPacket.m_bEnd)
        {
            OSorting = O_SortingStatus.Idle;
            O_TimeFirst();
            //OSorting = O_SortingStatus.TimeFirst;
            IceAgeManager.O_AwardPacket.m_bEnd = false;
        }
    }
Ejemplo n.º 2
0
    //----------------------------------------------------------------------------------------------------------------------------------
    //本廳大獎排序
    public void O_TimeFirst()
    {
        O_AwardShow.Clear();
        List <CPACK_PMachineAwardRecord> Loca_Data = new List <CPACK_PMachineAwardRecord>(IceAgeManager.O_AwardRecord);


        CPACK_PMachineAwardRecord Temp = new CPACK_PMachineAwardRecord();

        for (int i = 0; i <= (Loca_Data.Count) - 1; i++)
        {
            for (int j = i + 1; j < Loca_Data.Count; j++)
            {
                if (Loca_Data[j].m_ui64Time > Loca_Data[i].m_ui64Time)
                {
                    Temp         = Loca_Data[i];
                    Loca_Data[i] = Loca_Data[j];
                    Loca_Data[j] = Temp;
                }
            }
        }
        if (OSorting == O_SortingStatus.TimeFirst)
        {
            Loca_Data.Reverse();
            for (int i = 0; i < Loca_Data.Count; i++)
            {
                O_AwardShow.Add(i, Loca_Data[i]);
            }
            OSorting = O_SortingStatus.ReTimeFirst;
        }
        else
        {
            for (int i = 0; i < Loca_Data.Count; i++)
            {
                O_AwardShow.Add(i, Loca_Data[i]);
            }
            OSorting = O_SortingStatus.TimeFirst;
        }
    }
Ejemplo n.º 3
0
    public void O_AwardFirst()
    {
        O_AwardShow.Clear();
        List <CPACK_PMachineAwardRecord> Loca_Data  = new List <CPACK_PMachineAwardRecord>(IceAgeManager.O_AwardRecord);
        List <CPACK_PMachineAwardRecord> Loca_Data2 = new List <CPACK_PMachineAwardRecord>();
        int Index    = 0;
        int Long_all = Loca_Data.Count;

        Loca_Data.Sort(delegate(CPACK_PMachineAwardRecord x, CPACK_PMachineAwardRecord y) {
            if (x.m_byAllWinAwardID == null && y.m_byAllWinAwardID == null)
            {
                return(0);
            }
            else if (x.m_byAllWinAwardID == null)
            {
                return(-1);
            }
            else if (y.m_byAllWinAwardID == null)
            {
                return(1);
            }
            else
            {
                return(x.m_byAllWinAwardID.CompareTo(y.m_byAllWinAwardID));
            }
        });
        Loca_Data.Reverse();
        foreach (CPACK_PMachineAwardRecord item in Loca_Data)
        {
            if (item.m_byAllWinAwardID == 37)
            {
                Loca_Data2.Add(item);
            }
        }
        foreach (CPACK_PMachineAwardRecord item in Loca_Data)
        {
            if (item.m_byAllWinAwardID == 37)
            {
                continue;
            }
            else
            {
                Loca_Data2.Add(item);
            }
        }

        O_AwardShow.Clear();
        if (OSorting == O_SortingStatus.AwardFirst)
        {
            Loca_Data2.Reverse();
            for (int i = 0; i < Loca_Data2.Count; i++)
            {
                O_AwardShow.Add(i, Loca_Data2[i]);
            }
            OSorting = O_SortingStatus.ReAwardFirst;
        }
        else
        {
            for (int i = 0; i < Loca_Data2.Count; i++)
            {
                O_AwardShow.Add(i, Loca_Data2[i]);
            }
            OSorting = O_SortingStatus.AwardFirst;
        }
    }
Ejemplo n.º 4
0
    public void O_NameFirst()
    {
        O_AwardShow.Clear();
        List <CPACK_PMachineAwardRecord> Loca_Data  = new List <CPACK_PMachineAwardRecord>(IceAgeManager.O_AwardRecord);
        List <CPACK_PMachineAwardRecord> Final_Data = new List <CPACK_PMachineAwardRecord>();
        //	string Temp = new string;
        Dictionary <string, uint>      NameDictionary = new Dictionary <string, uint>();
        Dictionary <uint, List <int> > DataIndex      = new Dictionary <uint, List <int> >();

        for (int i = 0; i < Loca_Data.Count; i++)
        {
            if (!NameDictionary.ContainsKey(Loca_Data[i].m_strPlayerNickName))
            {
                NameDictionary.Add(Loca_Data[i].m_strPlayerNickName, Loca_Data[i].m_uiPlayerDBID);
                List <int> Data = new List <int>();
                Data.Add(i);
                DataIndex.Add(Loca_Data[i].m_uiPlayerDBID, Data);
            }
            else
            {
                if (DataIndex.ContainsKey(Loca_Data[i].m_uiPlayerDBID))
                {
                    DataIndex[Loca_Data[i].m_uiPlayerDBID].Add(i);
                }
            }
        }

        /*
         *      List<string> NameList = new List<string> ();
         *      foreach (string DataInfo in NameDictionary.Keys) {
         *          NameList.Add(DataInfo);
         *              }
         *      for (int i = 0; i <=(NameList.Count)-1; i++) {
         *          for (int j = i+1; j < NameList.Count; j++) {
         *
         *              if ((string.Compare (NameList[j], NameList[i])) > 0) {
         *                  string Temp = NameList [i];
         *                  NameList [i] = NameList [j];
         *                  NameList [j] = Temp;
         *
         *              }
         *
         *          }
         *      }
         */
        List <string> NameList = new List <string>(NameDictionary.Keys);

        if (OSorting == O_SortingStatus.NameFirst)
        {
            NameList.Sort();
        }
        else
        {
            NameList.Sort();
            //NameList.Reverse ();
        }

        for (int i = 0; i < NameList.Count; i++)
        {
            for (int j = 0; j < DataIndex[NameDictionary[NameList[i]]].Count; j++)
            {
                Final_Data.Add(Loca_Data[DataIndex[NameDictionary[NameList[i]]][j]]);
            }
        }



        if (OSorting == O_SortingStatus.NameFirst)
        {
            for (int i = 0; i < Final_Data.Count; i++)
            {
                O_AwardShow.Add(i, Final_Data[i]);
            }
            OSorting = O_SortingStatus.ReNameFirst;
        }
        else
        {
            Final_Data.Reverse();
            for (int i = 0; i < Final_Data.Count; i++)
            {
                O_AwardShow.Add(i, Final_Data[i]);
            }
            OSorting = O_SortingStatus.NameFirst;
        }
    }
Ejemplo n.º 5
0
    public void O_AwardFirst()
    {
        O_AwardShow.Clear();
        List <CPACK_PMachineAwardRecord> Loca_Data = new List <CPACK_PMachineAwardRecord>(JurassicManager.O_AwardRecord);
        int Index    = 0;
        int Long_all = Loca_Data.Count;

        foreach (CPACK_PMachineAwardRecord Data in Loca_Data)
        {
            if (Data.m_byAllWinAwardID == 33)
            {
                O_AwardShow.Add(Index, Data);
                Index++;
            }
        }


        List <CPACK_PMachineAwardRecord> Loca_Data_ComboOnly = new List <CPACK_PMachineAwardRecord> ();

        for (int i = 0; i < Long_all; i++)
        {
            if (Loca_Data [i].m_byComboCnt != 0)
            {
                Loca_Data_ComboOnly.Add(Loca_Data [i]);
            }
        }
        if (Loca_Data_ComboOnly.Count > 0)
        {
            CPACK_PMachineAwardRecord Temp = new CPACK_PMachineAwardRecord();

            for (int i = 0; i <= (Loca_Data_ComboOnly.Count) - 1; i++)
            {
                for (int j = i + 1; j < Loca_Data_ComboOnly.Count; j++)
                {
                    if (Loca_Data_ComboOnly [j].m_byComboCnt > Loca_Data_ComboOnly [i].m_byComboCnt)
                    {
                        Temp = Loca_Data_ComboOnly [i];
                        Loca_Data_ComboOnly [i] = Loca_Data_ComboOnly [j];
                        Loca_Data_ComboOnly [j] = Temp;
                    }
                }
            }
            for (int i = 0; i < Loca_Data_ComboOnly.Count; i++)
            {
                O_AwardShow.Add(Index, Loca_Data_ComboOnly [i]);
                Index++;
            }
        }

        //	int Long_NoDiamondNoCombo = Loca_Data.Count;
        List <CPACK_PMachineAwardRecord> Loca_Data_FINAL = new List <CPACK_PMachineAwardRecord> ();

        for (int i = 0; i < Loca_Data.Count; i++)
        {
            if (Loca_Data [i].m_byComboCnt == 0 && Loca_Data [i].m_byAllWinAwardID < 33)
            {
                Loca_Data_FINAL.Add(Loca_Data [i]);
            }
        }

        if (Loca_Data_FINAL.Count > 0)
        {
            for (int i = 0; i <= (Loca_Data_FINAL.Count) - 1; i++)
            {
                for (int j = i + 1; j < Loca_Data_FINAL.Count; j++)
                {
                    if (Loca_Data_FINAL [j].m_byAllWinAwardID > Loca_Data_FINAL [i].m_byAllWinAwardID)
                    {
                        CPACK_PMachineAwardRecord Temp = Loca_Data_FINAL [i];
                        Loca_Data_FINAL [i] = Loca_Data_FINAL [j];
                        Loca_Data_FINAL [j] = Temp;
                    }
                }
            }
            for (int i = 0; i < Loca_Data_FINAL.Count; i++)
            {
                O_AwardShow.Add(Index, Loca_Data_FINAL [i]);
                Index++;
            }
        }

        Loca_Data.Clear();
        for (int i = 0; i < O_AwardShow.Count; i++)
        {
            Loca_Data.Add(O_AwardShow[i]);
        }
        O_AwardShow.Clear();
        if (OSorting == O_SortingStatus.AwardFirst)
        {
            Loca_Data.Reverse();
            for (int i = 0; i < Loca_Data.Count; i++)
            {
                O_AwardShow.Add(i, Loca_Data [i]);
            }
            OSorting = O_SortingStatus.ReAwardFirst;
        }
        else
        {
            for (int i = 0; i < Loca_Data.Count; i++)
            {
                O_AwardShow.Add(i, Loca_Data [i]);
            }
            OSorting = O_SortingStatus.AwardFirst;
        }
    }
Ejemplo n.º 6
0
    public void O_NameFirst()
    {
        O_AwardShow.Clear();
        List <CPACK_PMachineAwardRecord> Loca_Data  = new List <CPACK_PMachineAwardRecord> (JurassicManager.O_AwardRecord);
        List <CPACK_PMachineAwardRecord> Final_Data = new List <CPACK_PMachineAwardRecord> ();
        //	string Temp = new string;
        Dictionary <string, uint>      NameDictionary = new Dictionary <string, uint> ();
        Dictionary <uint, List <int> > DataIndex      = new Dictionary <uint, List <int> > ();

        for (int i = 0; i < Loca_Data.Count; i++)
        {
            if (!NameDictionary.ContainsKey(Loca_Data [i].m_strPlayerNickName))
            {
                NameDictionary.Add(Loca_Data [i].m_strPlayerNickName, Loca_Data [i].m_uiPlayerDBID);
                List <int> Data = new List <int> ();
                Data.Add(i);
                DataIndex.Add(Loca_Data [i].m_uiPlayerDBID, Data);
            }
            else
            {
                if (DataIndex.ContainsKey(Loca_Data [i].m_uiPlayerDBID))
                {
                    DataIndex [Loca_Data [i].m_uiPlayerDBID].Add(i);
                }
            }
        }

        List <string> NameList = new List <string> (NameDictionary.Keys);

        if (OSorting == O_SortingStatus.NameFirst)
        {
            NameList.Sort();
        }
        else
        {
            NameList.Sort();
            //NameList.Reverse ();
        }

        for (int i = 0; i < NameList.Count; i++)
        {
            for (int j = 0; j < DataIndex[NameDictionary[NameList[i]]].Count; j++)
            {
                Final_Data.Add(Loca_Data [DataIndex [NameDictionary [NameList [i]]] [j]]);
            }
        }
        if (OSorting == O_SortingStatus.NameFirst)
        {
            for (int i = 0; i < Final_Data.Count; i++)
            {
                O_AwardShow.Add(i, Final_Data [i]);
            }
            OSorting = O_SortingStatus.ReNameFirst;
        }
        else
        {
            Final_Data.Reverse();
            for (int i = 0; i < Final_Data.Count; i++)
            {
                O_AwardShow.Add(i, Final_Data [i]);
            }
            OSorting = O_SortingStatus.NameFirst;
        }
    }