Example #1
0
        public IActionResult Index(int partyMember1Id, int partyMember2Id)
        {
            var champions = LoadChampions();
            var viewModel = new BattleViewModel
            {
                BattleMinionList = CreateHorde(NumberOfMinionsInHorde()),
                Party            = new Party(),
                PartyMember1     = champions.SingleOrDefault(c => c.ID == partyMember1Id),
                PartyMember2     = champions.SingleOrDefault(c => c.ID == partyMember2Id),
                IsRed            = MinionsAreRed()
            };

            viewModel.PartyMember1.ID = 1;
            viewModel.PartyMember2.ID = 2;
            foreach (var minion in viewModel.BattleMinionList)
            {
                viewModel.BattleOrder.Add(minion);
            }
            viewModel.BattleOrder.Add(viewModel.PartyMember1);
            viewModel.BattleOrder.Add(viewModel.PartyMember2);

            viewModel.BattleOrder = viewModel.BattleOrder.OrderByDescending(o => o.AttackSpeed).ToList();

            globalModel = viewModel;
            return(View(viewModel));
        }
Example #2
0
 public BattlePage()
 {
     ctrl            = new BattleController();
     battleViewModel = new BattleViewModel(ctrl);
     InitializeComponent();
     BindingContext = battleViewModel;
 }
Example #3
0
        public ActionResult Battle(int?leftHeroApiId, int?rightHeroApiId)
        {
            try
            {
                #region Validation
                //if not logged in or get nulls for heroes
                if (rightHeroApiId == null || leftHeroApiId == null)
                {
                    return(RedirectToAction("Index", "Home"));
                }

                var userId            = User.Identity.GetUserId();
                var userHeroApiId     = (int)leftHeroApiId;
                var opponentHeroApiId = (int)rightHeroApiId;
                var model             = new BattleViewModel();

                //if something went wrong
                var userFavHeroApiIdList = objBs.FavouriteSuperHeroBLL.GetUserFavouriteHeroIdList(userId);
                if (!userFavHeroApiIdList.Contains(userHeroApiId) || !userFavHeroApiIdList.Contains(opponentHeroApiId))
                {
                    return(RedirectToAction("ChooseHero", "ChooseHeroView"));
                }
                #endregion

                model.UserHero     = objBs.FavouriteSuperHeroBLL.GetUserFavouriteHeroById(userHeroApiId, userId);
                model.OpponentHero = objBs.FavouriteSuperHeroBLL.GetUserFavouriteHeroById(opponentHeroApiId, userId);

                return(View(model));
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #4
0
        public PlayerViewModel ReturnWinnerBattle(BattleViewModel battle)
        {
            Battle _battle = new Battle();

            Player player = new Player();

            player.Name     = battle.Player1.Name;
            player.Movement = battle.Player1.Movement;

            _battle.Player1 = player;

            player          = new Player();
            player.Name     = battle.Player2.Name;
            player.Movement = battle.Player2.Movement;

            _battle.Player2 = player;

            player = new Player();
            player = _Servicebattle.ReturnWinnerBattle(_battle);


            PlayerViewModel p = new PlayerViewModel()
            {
                Name     = player.Name,
                Movement = player.Movement
            };

            return(p);
        }
Example #5
0
        // 雑魚関連
        private BattleCharacterModel CreateZakoCharacter(GameObject prefab, bool isEnemy, uint characterId)
        {
            if (prefab == null)
            {
                return(null);
            }

            // オブジェクトの生成
            GameObject zakoObject = CreateObject(prefab);

            if (zakoObject == null)
            {
                return(null);
            }

            // キャラクタのモデルの生成
            var           view     = new BattleViewModel(new Chocolate.Battle.Object.Model.Transform(zakoObject.transform));
            DirectorModel director = null;

            if (isEnemy)
            {
                director = new EnemyZakoDirectorModel();
            }
            else
            {
                director = new PlayerZakoDirectorModel();
            }

            var characterModel = new CharacterRepository().Get(characterId);

            return(BattleCharacterModel.CreateCharacter(view, director, characterModel));
        }
Example #6
0
        public async Task <CountryDetailsViewModel> FindCountryByIdAsync(int?id)
        {
            Country country = await _context.Countries
                              .Include(x => x.CountryBuildings)
                              .ThenInclude(x => x.Building)
                              .Include(x => x.CountryUnits)
                              .ThenInclude(x => x.Unit)
                              .Include(x => x.CountryInnovations)
                              .ThenInclude(x => x.Innovation)
                              .Include(x => x.CountryBuildingProgresses)
                              .ThenInclude(x => x.Building)
                              .Include(x => x.CountryInnovationProgresses)
                              .ThenInclude(x => x.Innovation)
                              .FirstOrDefaultAsync(m => m.Id == id);

            BattleViewModel battleViewModel = await DisplayBattleDetails(id);

            CountryDetailsViewModel countryDetailsViewModel = new CountryDetailsViewModel(country);

            if (battleViewModel != null)
            {
                countryDetailsViewModel.BattleViewModel = battleViewModel;
            }

            return(countryDetailsViewModel);
        }
Example #7
0
        // マップの生成
        private BattleMapModel CreateMap(GameObject prefab, bool isEnemy)
        {
            if (prefab == null)
            {
                return(null);
            }

            // オブジェクトの生成
            GameObject betteryObject = CreateObject(prefab);

            if (betteryObject == null)
            {
                return(null);
            }

            // キャラクタのモデルの生成
            var view = new BattleViewModel(new Chocolate.Battle.Object.Model.Transform(betteryObject.transform));

            DirectorModel director = null;

            if (isEnemy)
            {
                director = new EnemyMapDirectorModel();
            }
            else
            {
                director = new PlayerMapDirectorModel();
            }

            return(BattleMapModel.CreateMap(view, director));
        }
        /// <summary>
        /// Stand up the Page and initiate state
        /// </summary>
        public BattleMainPage()
        {
            _viewModel     = BattleViewModel.Instance;
            BindingContext = _viewModel;

            InitializeComponent();

            // Show the Next button, hide the Game Over button
            GameNextButton.IsVisible = true;
            GameOverButton.IsVisible = false;

            _viewModel.StartBattle();
            Debug.WriteLine("Battle Start" + " Characters :" + _viewModel.BattleEngine.CharacterList.Count);

            // Load the Characters into the Battle Engine
            _viewModel.LoadCharacters();

            // Start the Round
            _viewModel.StartRound();
            Debug.WriteLine("Round Start" + " Monsters:" + _viewModel.BattleEngine.MonsterList.Count);

            // Clear the Screen
            ClearMessages();

            ShowModalPageMonsterList();

            AllCharactersToScreen();

            MessagingCenter.Subscribe <BattlePartyPage>(this, "PartyPageClosed", (PartyPage) => {
                ShowModalPageMonsterList();
            });
        }
Example #9
0
        //-------------AUTOBATTLE---------------------------------
        //If player clicks auto battle
        private async void AutoBattle_Clicked(object sender, EventArgs e)
        {
            if (GlobalVariables.auto_battle_reset == true)
            {
                _viewModel.resetAutoBattleView();
            }

            else if (_viewModel == BattleViewModel.Instance)
            {
                _viewModel.resetAutoBattleView();
            }
            _viewModel = BattleViewModel.AutoInstance;

            _viewModel.LoadDataCommand.Execute(null);

            await Task.Delay(5000);

            string result = await _viewModel.FightClickedAutoAsync();

            if (result == "endgame")
            {
                var data = new ScoreDetailViewModel(_viewModel.battleInstance.score);
                await Navigation.PushModalAsync(new EndGamePage(data));
            }
            if (GlobalVariables.auto_battle_reset == false)
            {
                GlobalVariables.auto_battle_reset = true;
            }
        }
Example #10
0
 protected BattleMovableTargetModel(
     BattleViewModel view,
     DirectorModel directer
     ) : base(view, directer)
 {
     View.RootTransform.SetVisible(false);
 }
        /// <summary>
        // Stand up the Page and initiate state
        /// </summary>
        ///
        public BattleMainPage(BattleViewModel viewModel)
        {
            InitializeComponent();

            BindingContext = _viewModel = viewModel;

            //Adds consumable items for chars to use
            _viewModel.BattleEngine.AddItemsToList();

            Debug.WriteLine("Items added to list in mainpage: ");
            foreach (Item item in _viewModel.BattleEngine.ItemPool)
            {
                Debug.WriteLine(item.Name);
            }

            //initialize button controls
            //GameStartButton.IsVisible = true;
            GameNextButton.IsVisible = false;

            GameOverButton.IsVisible = false;

            SelectedMonster     = null;
            ableToSelectMonster = false;


            StartGameSetting();
            DrawGameBoardAttackerDefender();
            RefreshMonsters();
            RefreshCharacters();
        }
Example #12
0
 // Initialize page and populate buttons
 public BattleItemPool(BattleViewModel viewModel)
 {
     InitializeComponent();
     BindingContext = _viewModel = viewModel;
     ShowItemLocation();
     ShowPlayerStats();
     //grab the itemslist from battle engine where the item is not wearable
 }
        public string ReturnWinnerBattle([FromBody] BattleViewModel battle)
        {
            PlayerViewModel p = _appBattle.ReturnWinnerBattle(battle);
            //serializa o vencedor e retorna como string
            string winner = JsonConvert.SerializeObject(p, Formatting.Indented);

            return(winner);
        }
Example #14
0
 protected BattleCharacterModel(
     BattleViewModel view,
     DirectorModel directer,
     CharacterModel characterModel
     ) : base(view, directer)
 {
     this.character = characterModel;
 }
Example #15
0
        public ActionResult EditBattle(BattleViewModel model)
        {
            var battle = _mapper.Map <BattleDTO>(model);

            _battleService.EditBattle(battle);

            return(RedirectToAction("Index"));
        }
Example #16
0
        public BattlePage(List <string> characterList)
        {
            InitializeComponent();

            BindingContext = _viewModel = BattleViewModel.Instance;

            _viewModel.PartyList = characterList;
            _viewModel.SetNeedsRefresh(true);
        }
Example #17
0
 public SelectCharacters()
 {
     InitializeComponent();
     BindingContext = _instanceC = BattleViewModel.Instance;
     //clear character list
     BattleViewModel.Instance.ClearCharacterLists();
     // Start with Next button disabled
     NextButton.IsEnabled = false;
 }
        public ActionResult EditBattle(int?id)
        {
            IRepository <Battle> repo  = new BattleRepository();
            var             config     = new MapperConfiguration(cfg => cfg.CreateMap <Battle, BattleViewModel>());
            var             mapper     = new Mapper(config);
            BattleViewModel battleView = mapper.Map <Battle, BattleViewModel>(repo.Get(id.Value));

            return(View("~/Views/Home/Battle.cshtml", battleView));
        }
Example #19
0
        private BattleViewModel _viewModel; // View model for this page

        // Constructor: create page and load view model
        public GameOverPage()
        {
            InitializeComponent();

            BindingContext         = _viewModel = BattleViewModel.Instance;
            battleNum.Text         = Convert.ToString(_viewModel.BattleEngine.BattleScore.BattleNumber);
            numRounds.Text         = Convert.ToString(_viewModel.BattleEngine.BattleScore.RoundCount);
            numMonstersKilled.Text = Convert.ToString(_viewModel.BattleEngine.BattleScore.MonsterSlainNumber);
            finalScore.Text        = Convert.ToString(_viewModel.BattleEngine.BattleScore.ScoreTotal);
        }
 public PickCharactersPage()
 {
     InitializeComponent();
     BindingContext  = _viewModel = PickCharactersViewModel.Instance;
     BattleViewModel = BattleViewModel.Instance;
     if (_viewModel.DataSet.Count == 0)
     {
         _viewModel.LoadCommand.Execute(null);
     }
 }
        // Constructor.
        public OpeningPage()
        {
            InitializeComponent();
            BindingContext = _viewModel = BattleViewModel.Instance;

            BattleViewModel.Instance.ClearCharacterLists();

            // Start with Next button disabled
            NextButton.IsEnabled = false;
        }
        public ActionResult EditBattle(BattleViewModel model)
        {
            IRepository <Battle> repo = new BattleRepository();
            var    config             = new MapperConfiguration(cfg => cfg.CreateMap <BattleViewModel, Battle>());
            var    mapper             = new Mapper(config);
            Battle battle             = mapper.Map <BattleViewModel, Battle>(model);

            repo.Update(battle);
            repo.Save();
            return(RedirectToAction("GetBattlePage"));
        }
Example #23
0
        public static BattleMovableTargetModel CreateMovableModel(BattleViewModel view, DirectorModel director)
        {
            BattleMovableTargetModel movableModel = new BattleMovableTargetModel(view, director);

            movableModel.SetInternalRefference();

            // オブジェクトを追加
            BattleGlobal.Instance.ObjectsUpdater.AddObject(movableModel);

            return(movableModel);
        }
Example #24
0
        public static BattleBetteryModel CreateBettery(BattleViewModel view, DirectorModel director)
        {
            BattleBetteryModel betteryModel = new BattleBetteryModel(view, director);

            betteryModel.SetInternalRefference();

            // オブジェクトを追加
            BattleGlobal.Instance.ObjectsUpdater.AddObject(betteryModel);

            return(betteryModel);
        }
Example #25
0
        public static BattleCharacterModel CreateCharacter(BattleViewModel view, DirectorModel director, CharacterModel characterModel)
        {
            BattleCharacterModel battleCharacterModel = new BattleCharacterModel(view, director, characterModel);

            battleCharacterModel.SetInternalRefference();

            // オブジェクトを追加
            BattleGlobal.Instance.ObjectsUpdater.AddObject(battleCharacterModel);

            return(battleCharacterModel);
        }
Example #26
0
        private BattleViewModel _viewModel; // view model for the page

        // Constructor: initialize battle page
        public BattlePage(BattleViewModel viewmodel)
        {
            InitializeComponent();
            BindingContext = _viewModel = BattleViewModel.Instance;
            _viewModel.ClearCharacterLists();

            _viewModel.BattleEngine.StartBattle(false);
            Debug.WriteLine("Battle Start" + " Characters: " + _viewModel.BattleEngine.CharacterList.Count);

            Debug.WriteLine("Round Start Monsters: " + _viewModel.BattleEngine.MonsterList.Count);

            // round number at top of page
            numRounds.Text = Convert.ToString(_viewModel.BattleEngine.BattleScore.RoundCount);
        }
Example #27
0
        public ActionResult View(int battleID)
        {
            var battle = battleRepository.GetById(battleID);

            if (battle == null)
            {
                return(NoBattleRedirect());
            }

            var vm = new BattleViewModel(battle, battleRepository, battleService, warRepository, warService);


            return(View(vm));
        }
Example #28
0
        //-------------------------------------------------------
        protected override void OnAppearing()
        {
            base.OnAppearing();

            BindingContext = null;

            InitializeComponent();

            _viewModel = BattleViewModel.AutoInstance;

            _viewModel.LoadDataCommand.Execute(null);

            BindingContext = _viewModel;
        }
Example #29
0
        public ActionResult AddBattle(BattleViewModel battleViewModel)
        {
            using (var warshipsContext = new WarshipsContext())
            {
                var battle = new Battle
                {
                    BattleName = battleViewModel.BattleName
                };

                warshipsContext.Battles.Add(battle);
                warshipsContext.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
Example #30
0
        public Battle(int width, int height, int[,] firstArray, int[,] secondArray)
        {
            InitializeComponent();
            _width            = width;
            _height           = height;
            _viewModel        = new BattleViewModel(_width, _height, firstArray, secondArray);
            _actualPlayer     = Player.FirstPlayer;
            _actualGameType   = (GameType)Application.Current.Properties["gameType"];
            textRound.Content = _viewModel.rounds;

            textPointFirstPlayer.Content       = $"Pont: {_viewModel.pointFirstPlayer}";
            textFirstPlayerShipCounts.Content  = _viewModel.shipCountToString(_viewModel.firstPlayerShipsCounts);
            textPointSecondPlayer.Content      = $"Pont: {_viewModel.pointSecondPlayer}";
            textSecondPlayerShipCounts.Content = _viewModel.shipCountToString(_viewModel.secondPlayerShipsCounts);
        }
 public static void CreateBattle()
 {
     if (_battle == null)
     {
         _battle = new BattleViewModel();
     }
 }
Example #32
0
 public BattleCommand(BattleViewModel ViewModel)
 {
     _ViewModel = ViewModel;
 }