Exemple #1
0
    void Test()
    {
        // test
        //List<string> test = new List<string>();
        //test.Add("123");

        //foreach (string request in test)
        foreach (string request in PlayerInfo.friendRequest)
        {
            addFriends.Add(GameObject.Instantiate(RequestInfo));
            addFriends[addFriends.Count - 1].name = request;
            addFriends[addFriends.Count - 1].transform.SetParent(transform, false);
            addFriends[addFriends.Count - 1].SetActive(true);
            var Textvalue = addFriends[addFriends.Count - 1].GetComponentInChildren <Text>();
            Textvalue.text = request;

            // bind a click event
            foreach (Button buttonTmp in addFriends[addFriends.Count - 1].GetComponentsInChildren <Button>())
            {
                //Debug.Log("bind button " + buttonTmp.name);
                if (buttonTmp.name.Equals("agree"))
                {
                    agree = buttonTmp;
                    agree.onClick.AddListener(delegate() {
                        Debug.Log("agree add friend: " + request);
                        Destroy(addFriends[addFriends.Count - 1]);
                        PlayerInfo.friendRequest.Remove(request);
                        CAddFriend msg = new CAddFriend()
                        {
                            success    = true,
                            friendName = request
                        };
                        MyNetwork.Send(msg);
                        PlayerInfo.friends.Add(request);
                    });
                }
                else if (buttonTmp.name.Equals("disagree"))
                {
                    disagree = buttonTmp;
                    disagree.onClick.AddListener(delegate() {
                        Debug.Log("disagree add friend: " + request);
                        Destroy(addFriends[addFriends.Count - 1]);
                        PlayerInfo.friendRequest.Remove(request);
                        CAddFriend msg = new CAddFriend()
                        {
                            success    = false,
                            friendName = request
                        };
                        MyNetwork.Send(msg);
                    });
                }
            }
        }
    }
Exemple #2
0
    private void OnEnable()
    {
        PlayerMyController.Instance.EnabledWindowCount++;
        CAddFriend m = new CAddFriend();

        m.selfdbid = World.Instance.selfDbid;
        m.option   = "get";
        World.Instance.myAddFriend = null;
        Client.Instance.Send(m);
        StartCoroutine(ShowItems());
    }
Exemple #3
0
    public void onClickSend()
    {
        string     name = GetComponentInChildren <InputField>().text;
        CAddFriend m    = new CAddFriend();

        m.option   = "send";
        m.selfdbid = World.Instance.selfDbid;
        m.name     = name;
        m.asTeam   = asTeam;
        m.message  = GameObject.Find("SendMessage").GetComponentInChildren <InputField>().text;
        Client.Instance.Send(m);
    }
Exemple #4
0
    public void onClickAcc()
    {
        CAddFriend m = new CAddFriend();

        m.acc          = true;
        m.request      = World.Instance.friendview.dbID;
        m.response     = World.Instance.selfDbid;
        m.option       = "feedback";
        m.selfdbid     = World.Instance.selfDbid;
        m.selfname     = World.Instance.selfName;
        m.selfentityid = World.Instance.selfId;
        Client.Instance.Send(m);
    }
Exemple #5
0
        private void OnRecvAddFriend(IChannel channel, Message message)
        {
            Console.WriteLine("OnRecvAddFriend");
            CAddFriend request = message as CAddFriend;
            Player     player  = (Player)channel.GetContent();
            ConnectDB  connect = new ConnectDB();

            string name1 = player.user;
            string name2 = request.friendName;

            if (request.success)
            {
                // add friends
                connect.AddFriend(name1, name2);
                connect.AddFriend(name2, name1);
            }

            // delete add friend request
            connect.DeleteFromFriendRequest(name2, name1);
        }
Exemple #6
0
    // Update is called once per frame
    void Update()
    {
        foreach (string request in PlayerInfo.friendRequest)
        {
            bool addRequest = true;
            foreach (GameObject tmp in addFriends)
            {
                if (tmp.name.Equals(request))
                {
                    addRequest = false;
                }
            }

            if (addRequest)
            {
                //MessageBox.Show("online friends count: " + PlayerInfo.friends.Count);

                addFriends.Add(GameObject.Instantiate(RequestInfo));
                addFriends[addFriends.Count - 1].name = request;
                addFriends[addFriends.Count - 1].transform.SetParent(transform, false);
                addFriends[addFriends.Count - 1].SetActive(true);
                var Textvalue = addFriends[addFriends.Count - 1].GetComponentInChildren <Text>();
                Textvalue.text = request;

                // bind a click event
                foreach (Button buttonTmp in addFriends[addFriends.Count - 1].GetComponents <Button>())
                {
                    if (buttonTmp.name.Equals("agree"))
                    {
                        agree = buttonTmp;
                        agree.onClick.AddListener(delegate() {
                            Debug.Log("agree add friend: " + request);
                            Destroy(addFriends[addFriends.Count - 1]);
                            PlayerInfo.friendRequest.Remove(request);
                            CAddFriend msg = new CAddFriend()
                            {
                                success    = true,
                                friendName = request
                            };
                            MyNetwork.Send(msg);
                            PlayerInfo.friends.Add(request);
                        });
                    }
                    else if (buttonTmp.name.Equals("disagree"))
                    {
                        disagree = buttonTmp;
                        disagree.onClick.AddListener(delegate() {
                            Debug.Log("disagree add friend: " + request);
                            Destroy(addFriends[addFriends.Count - 1]);
                            PlayerInfo.friendRequest.Remove(request);
                            CAddFriend msg = new CAddFriend()
                            {
                                success    = false,
                                friendName = request
                            };
                            MyNetwork.Send(msg);
                        });
                    }
                }
            }
        }
    }
Exemple #7
0
        private void OnRecvAddFriend(IChannel channel, Message message)
        {
            CAddFriend request = message as CAddFriend;
            SAddFriend reply   = new SAddFriend();
            string     scene   = "Level1";
            Scene      scenes  = World.Instance.GetScene(scene);
            var        conn    = db.Instance.Connect();

            switch (request.option)
            {
            case "get":
                reply.items  = db.Instance.GetAddFriend(request.selfdbid, conn);
                reply.option = "get";
                break;

            case "feedback":
                if (request.acc == true)
                {
                    bool isteammate = db.Instance.AccFriend(request.request, request.response, conn);
                    foreach (var kvp in scenes.Players)
                    {
                        if (kvp.Value.dbid == request.request)
                        {
                            SCommunity am = new SCommunity();
                            am.name       = kvp.Value.user;
                            am.id         = kvp.Value.entityId;
                            am.enter      = true;
                            am.isTeammate = isteammate;
                            am.dbid       = kvp.Value.dbid;
                            channel.Send(am);
                            SCommunity bm = new SCommunity();
                            bm.name       = request.selfname;
                            bm.id         = request.selfentityid;
                            bm.enter      = true;
                            bm.isTeammate = isteammate;
                            bm.dbid       = request.selfdbid;
                            kvp.Value.connection.Send(bm);
                            break;
                        }
                    }
                    ClientTipInfo(channel, "Successfully accept :)");
                }
                else
                {
                    db.Instance.RejFriend(request.request, request.response, conn);
                    ClientTipInfo(channel, "Successfully reject :)");
                }
                break;

            case "send":
                if (db.Instance.findFriend(request.name, conn))
                {
                    int temp = db.Instance.insertFriend(request.name, request.selfdbid, request.message, request.asTeam, conn);
                    if (temp == 0)
                    {
                        ClientTipInfo(channel, "Successfully send the message :)");
                    }
                    else
                    {
                        ClientTipInfo(channel, "Message already exists :(");
                    }
                }
                else
                {
                    ClientTipInfo(channel, string.Format("Sorry, cannot find {0}", request.name));
                }
                break;
            }
            channel.Send(reply);
        }