コード例 #1
0
        public void RemoveCharacterOne(FollowQueueResult _this, QueueCharacter character)
        {
            QueueResultBase.GetImpl().RemoveCharacterOne(_this, character);
            var scene = QueueSceneManager.GetCharacterScene(_this.Character.mDatas[0].Id);

            if (scene == null)
            {
                Logger.Error("In AllOK scene == null!!!");
                return;
            }
            scene.RemoveFollowCharacter(character);
        }
コード例 #2
0
        public void TimeOver(FollowQueueResult _this)
        {
            var character = _this.Character;
            var scene     = QueueSceneManager.GetCharacterScene(character.mDatas[0].Id);

            if (scene == null)
            {
                return;
            }
            scene.FollowResult(character, 1);
            QueueManager.Pop(character.mDatas[0].Id, eLeaveMatchingType.TimeOut);
        }
コード例 #3
0
        public void AllOK(FollowQueueResult _this)
        {
            _this.mQueue.OnAllOk(_this);
            var scene = QueueSceneManager.GetCharacterScene(_this.Character.mDatas[0].Id);

            if (scene == null)
            {
                Logger.Error("In AllOK scene == null!!!");
                return;
            }
            scene.FollowResult(_this.Character, 1);
            QueueManager.Remove(_this.Character.mDatas[0].Id, eLeaveMatchingType.Success);
            _this.Character.result = null;
        }
コード例 #4
0
        //后续排入的某个玩家进入
        public void FollowCharacter(FightQueueScene _this, QueueCharacter c, int camp)
        {
            PlayerLog.WriteLog((int)LogType.QueueMessage, "FollowCharacter c={0}, ids={1}", c.Guid,
                               c.mDatas.Select(d => d.Id).GetDataString());
            var result = new FollowQueueResult(c.mLogic);

            result.PushOneCharacter(c);
            result.StartTrigger();
            c.mLogic.Pop(c, eLeaveMatchingType.InTemp);
            _this.FollowCharacters.Add(c);
            foreach (var data in c.mDatas)
            {
                InitCharacter(_this, data.Id, camp);
            }
        }
コード例 #5
0
        public ErrorCodes MatchingBack(FollowQueueResult _this, ulong guid, bool agree = false)
        {
            var err = QueueResultBase.GetImpl().MatchingBack(_this, guid, agree);

            if (!agree)
            {
                var scene = QueueSceneManager.GetCharacterScene(guid);
                if (scene == null)
                {
                    return(err);
                }
                scene.FollowResult(_this.Character, 0);
                QueueManager.Pop(guid, eLeaveMatchingType.Refuse);
            }
            return(err);
        }
コード例 #6
0
 public void RemoveCharacterList(FollowQueueResult _this, List <QueueCharacter> cs)
 {
     RemoveCharacterOne(_this, cs[0]);
 }
コード例 #7
0
 public void PushOneCharacter(FollowQueueResult _this, QueueCharacter queue)
 {
     QueueResultBase.GetImpl().PushOneCharacter(_this, queue);
     _this.Character = queue;
 }