Пример #1
0
    public override void read(ErlKVMessage message)
    {
        ErlType erl = message.getValue("msg") as ErlType;

        if (erl is ErlArray)
        {
            GodsWarFinalPoint        user;
            List <GodsWarFinalPoint> infos = new List <GodsWarFinalPoint>();
            ErlArray erlarry        = erl as ErlArray;
            int      currentPostion = 0;     //当前淘汰赛的位置
            for (int i = 0; i < erlarry.Value.Length; i++)
            {
                ErlArray aa = erlarry.Value[i] as ErlArray;
                if (aa.Value.Length != 0)
                {
                    currentPostion++;
                    for (int j = 0; j < aa.Value.Length; j++)
                    {
                        user = new GodsWarFinalPoint();
                        user.bytesRead(aa.Value[j] as ErlArray);
                        if (user.localID != 0)
                        {
                            infos.Add(user);
                        }
                    }
                }
            }
            GodsWarManagerment.Instance.finalRound = currentPostion;
            if (infos != null)
            {
                GodsWarManagerment.Instance.godsWarFinalPoints = infos;
            }
            if (callback != null)
            {
                callback();
            }
        }
        else
        {
            MessageWindow.ShowAlert(erl.getValueString());
            if (callback != null)
            {
                callback = null;
            }
        }
    }
Пример #2
0
    public override void read(ErlKVMessage message)
    {
        ErlType erl = message.getValue("msg") as ErlType;

        if (erl is ErlArray)
        {
            GodsWarFinalPoint           user;
            GodsWarFinalUserInfo        finaluser;
            List <GodsWarFinalUserInfo> fianlInfo;
            List <GodsWarFinalPoint>    infos;

            ErlArray erlarry = erl as ErlArray;
            int      pos     = 0;
            ErlArray array   = erlarry.Value[pos++] as ErlArray;
            if (array.Value.Length > 0)
            {
                fianlInfo = new List <GodsWarFinalUserInfo>();
                for (int i = 0; i < array.Value.Length; i++)
                {
                    finaluser = new GodsWarFinalUserInfo();
                    finaluser.bytesReadFive(array.Value[i] as ErlArray);
                    if (finaluser.uid != null)
                    {
                        fianlInfo.Add(finaluser);
                    }
                }
                if (fianlInfo != null)
                {
                    GodsWarManagerment.Instance.shenMoUserlist = fianlInfo;
                }
            }

            ErlArray tmp = erlarry.Value[pos++] as ErlArray;
            if (tmp.Value.Length > 0)
            {
                infos = new List <GodsWarFinalPoint>();

                for (int j = 0; j < tmp.Value.Length; j++)
                {
                    user = new GodsWarFinalPoint();
                    user.bytesRead(tmp.Value[j] as ErlArray);
                    if (user.localID != 0)
                    {
                        infos.Add(user);
                    }
                }
                if (infos != null)
                {
                    GodsWarManagerment.Instance.shenMoPointlist = infos;
                }
            }

            if (callback != null)
            {
                callback();
            }
        }
        else
        {
            MessageWindow.ShowAlert(erl.getValueString());
            if (callback != null)
            {
                callback = null;
            }
        }
    }