コード例 #1
0
ファイル: NetworkMessageManager.cs プロジェクト: xxy1991/cozy
 private void OnFightMessage(FightResultMessage msg)
 {
     if (msg.Result == OkTag)
     {
         var follower = (Follower)FollowerObjectManager.Instance.GetObj(msg.ObjectId);
         if (msg.StatusNow == FightMessage.GoToFight)
         {
             PlayerObject.Instance.Self.FightFollower.Followers.Add(follower);
             follower.IsFighting = true;
         }
         else
         {
             if (PlayerObject.Instance.Self.FightFollower.Followers.Contains(follower))
             {
                 PlayerObject.Instance.Self.FightFollower.Followers.Remove(follower);
                 follower.IsFighting = false;
             }
         }
         MessageManager.SendMessage("Message.FollowerFight.Success");
     }
     else
     {
         MessageManager.SendMessage("Message.FollowerFight.Failed");
     }
 }
コード例 #2
0
        private void FightMessageImpl(NetIncomingMessage im, MessageBase msg)
        {
            var fightMsg    = msg as FightMessage;
            var r           = new FightResultMessage();

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

                if(follower.FollowerList.Contains(fightMsg.ObjectId))
                {
                    if(fightMsg.FightType == FightMessage.GoToFight)
                    {
                        follower.FightingFollowerList.Add(fightMsg.ObjectId);
                        r.StatusNow = FightMessage.GoToFight;
                    }
                    else
                    {
                        if(follower.FightingFollowerList.Contains(fightMsg.ObjectId))
                        {
                            follower.FightingFollowerList.Remove(fightMsg.ObjectId);
                            r.StatusNow = FightMessage.GoToRest;
                        }
                    }
                }
                AdventurePluginDB.PlayerFollower.Update(follower);
            }
            else
            {
                r.Result = ErrorTag;
            }
            SharedServer.SendMessage(r, im.SenderConnection);
        }