Beispiel #1
0
        private void RegisterMessageImpl(NetIncomingMessage im, MessageBase msg)
        {
            var registerMsg = msg as RegisterMessage;
            var r           = new RegisterResultMessage();

            if (AdventurePluginDB.User.Get(registerMsg.Name, registerMsg.Pass) == null)
            {
                var user = new UserInfo
                {
                    Name = registerMsg.Name,
                    Pass = registerMsg.Pass,
                };
                var id = AdventurePluginDB.User.Create(user);

                const int FreeId = 2; // 赠送路人乙

                var objid   = ObjectId;
                var info    = new FollowerInfo()
                {
                    FollowerID  = FreeId,
                    ObjectID    = objid,
                };
                AdventurePluginDB.Follower.Create(info);

                AdventurePluginDB.Customer.Create(new CustomerInfo() { PlayerId = id, });
                AdventurePluginDB.PlayerFollower.Create(new PlayerFollowerInfo()
                {
                    PlayerId        = id,
                    FollowerList    = { objid }
                });

                r.PlayerId  = id;
                r.Result    = OkTag;
            }
            else
            {
                r.Result = ErrorTag;
            }
            SharedServer.SendMessage(r, im.SenderConnection);
        }
Beispiel #2
0
 public bool Update(FollowerInfo obj)
 {
     return col.Update(obj.id, obj);
 }
Beispiel #3
0
 public int Create(FollowerInfo user)
 {
     var r = col.Insert(user);
     return r.AsInt32;
 }
Beispiel #4
0
        private void HireFollowerMessageImpl(NetIncomingMessage im, MessageBase msg)
        {
            var hireMsg     = msg as HireFollowerMessage;
            var r           = new HireResultMessage();

            if(AdventurePluginDB.User.Get(hireMsg.PlayerId) != null)
            {
                r.Result        = OkTag;
                var follower    = AdventurePluginDB.PlayerFollower.GetPlayerFollower(hireMsg.PlayerId);

                var ObjectIdList = new List<int>();
                foreach (var id in hireMsg.FollowerId)
                {
                    var objId   = ObjectId;
                    r.Followers.Add(new KeyValuePair<int, int>(objId, id));
                    ObjectIdList.Add(objId);

                    var info = new FollowerInfo()
                    {
                        FollowerID  = id,
                        ObjectID    = objId,
                    };
                    AdventurePluginDB.Follower.Create(info);
                }

                follower.FollowerList.AddRange(ObjectIdList);
                AdventurePluginDB.PlayerFollower.Update(follower);
            }
            else
            {
                r.Result = ErrorTag;
            }
            SharedServer.SendMessage(r, im.SenderConnection);
        }