예제 #1
0
        public IObservable <bool> MoveCharacterByEvent(MoveCharacterEventModel moveCharacterEventModel)
        {
            Character  character = this.GetCharacterWithLoad(moveCharacterEventModel.characterId, moveCharacterEventModel.initCellNum);
            List <int> route     = this.GetRouteByEvent(moveCharacterEventModel, character);

            return(MoveCharacterByCharacter(character, route, moveCharacterEventModel.MoveVelocity));
        }
예제 #2
0
 override public void Launch(OnFinishEvent callBack, DataManager dataManager, EventModel eventManagerModel, GameManager gameManager)
 {
     base.Launch(callBack, dataManager, eventManagerModel, gameManager);
     this.moveCharacterEventModel = this.dataManager.moveCharacterEventModel.getModelById(eventManagerModel.eventChildId);
     this.gameManager.MoveCharacterByEvent(this.moveCharacterEventModel)
     .Subscribe(_ => {; }, () => { this.OnMoved(); });
 }
예제 #3
0
        List <int> GetRouteByEvent(MoveCharacterEventModel moveCharacterEventModel, Character character)
        {
            List <int> route;

            if (moveCharacterEventModel.isMoveToHero)
            {
                route = this.fieldManager.gameMap.Route(character.currentCell.cellNumber, hero.currentCell.cellNumber, false);
            }
            else
            {
                route = this.fieldManager.gameMap.Route(character.currentCell.cellNumber, moveCharacterEventModel.moveTargetCellNum, false);
            }
            return(route);
        }
예제 #4
0
 public void RemoveCharacterByEvent(MoveCharacterEventModel moveCharacterEventModel)
 {
     this.fieldManager.RemoveCharacterByEvent(moveCharacterEventModel);
 }
예제 #5
0
 public IObservable <bool> MoveCharacterByEvent(MoveCharacterEventModel moveCharacterEventModel)
 {
     return(this.fieldManager.MoveCharacterByEvent(moveCharacterEventModel));
 }
예제 #6
0
 public void RemoveCharacterByEvent(MoveCharacterEventModel moveCharacterEventModel)
 {
     this.fieldObjectManager.RemoveCharacter(moveCharacterEventModel.characterId);
 }