Exemplo n.º 1
0
        public IActionResult TryAgain()
        {
            string userName = HttpContext.Session.GetString("Username");

            if (UserNameErrorCheck(userName))
            {
                return(new RedirectToActionResult("Login", "Account", null));
            }
            string serializedPokemon = HttpContext.Session.GetString("PokemonData");

            if (PokemonErrorCheck(serializedPokemon))
            {
                return(new RedirectToActionResult("Walkaround", "Explore", null));
            }

            var pokemonData = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);
            var getPokemon  = pokemonContext.Pokemons
                              .Where(p => p.Name == pokemonData.Name).FirstOrDefault();

            ExploreCatchVm vm = new ExploreCatchVm();

            vm.AppearedPokemon = getPokemon;
            vm.HP       = pokemonData.HP;
            vm.Moves    = pokemonData.Moves;
            vm.UserName = userName;
            return(View(vm));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> GeneratePokemon()
        {
            PokemonCatch       appearedPokemon;
            Pokemon            template;
            PokemonSessionData pokemonData;
            string             serializedPokemon;

            Guid userId;
            Guid?tempUserId = CheckSession();

            if (tempUserId == null)
            {
                return(new RedirectToActionResult("Login", "Account", null));
            }
            else
            {
                userId = (Guid)tempUserId;
            }

            UserSimpleDTO user = await GetUserWithId(userId);

            serializedPokemon = HttpContext.Session.GetString("PokemonData");
            if (PokemonErrorCheck(serializedPokemon))
            {
                return(new RedirectToActionResult("Walkaround", "Explore", null));
            }

            pokemonData = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);

            string uri     = $"{baseuri}/Types/TypeName/{pokemonData.Type}";
            var    getType = await WebApiHelper.GetApiResult <Type>(uri);

            if (pokemonData.Name == null)//er is nog geen pokemon gegenereerd. Is dit wel zo zal de bovenstaande terug getoond worden
            {
                appearedPokemon = await LetPokemonAppear(getType, user.Id);
            }
            else
            {
                appearedPokemon = GetPokemonCatchObject(pokemonData.Id, userId, pokemonData.HP, pokemonData.CP,
                                                        pokemonData.Height, pokemonData.Weight, pokemonData.Gender,
                                                        pokemonData.IsShiny, pokemonData.IsAlolan, pokemonData.MoveCatches);
            }

            uri      = $"{baseuri}/Pokemons/GetById/{appearedPokemon.PokemonId}";
            template = await WebApiHelper.GetApiResult <Pokemon>(uri);

            appearedPokemon.Pokemon = template;
            ExploreCatchVm vm = new ExploreCatchVm();

            vm.AppearedPokemon = appearedPokemon;
            vm.CheatingWarning = pokemonData.CheatingWarning;
            vm.UserName        = user.UserName;
            vm.BaseUri         = baseuriClient;
            vm.FolderType      = GeneralFunctions.EvaluateFolderType(appearedPokemon.IsShiny, appearedPokemon.IsAlolan);//FolderType is ook property van PokemonCatch
            return(View(vm));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Gotcha()
        {
            Guid userId;
            Guid?tempUserId = CheckSession();

            if (tempUserId == null)
            {
                return(new RedirectToActionResult("Login", "Account", null));
            }
            else
            {
                userId = (Guid)tempUserId;
            }

            UserSimpleDTO user = await GetUserWithId(userId);

            string serializedPokemon = HttpContext.Session.GetString("PokemonData");

            if (PokemonErrorCheck(serializedPokemon))
            {
                return(new RedirectToActionResult("Walkaround", "Explore", null));
            }
            var pokemonData = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);

            if (!pokemonData.Caught)
            {/*de bool is niet op true gezet in CatchProcesser. De user heeft dus gecheat*/
                pokemonData.CheatingWarning = "Professor Oak can't allow cheating!";
                string serializedPokemonData = JsonConvert.SerializeObject(pokemonData);
                HttpContext.Session.SetString("PokemonData", serializedPokemonData);
                return(new RedirectToActionResult("GeneratePokemon", "Explore", null));
            }

            string  uri      = $"{baseuri}/Pokemons/GetById/{pokemonData.Id}";
            Pokemon template = await WebApiHelper.GetApiResult <Pokemon>(uri);

            PokemonCatch appearedPokemon = GetPokemonCatchObject(pokemonData.Id, userId, pokemonData.HP, pokemonData.CP,
                                                                 pokemonData.Height, pokemonData.Weight, pokemonData.Gender,
                                                                 pokemonData.IsShiny, pokemonData.IsAlolan, pokemonData.MoveCatches);

            appearedPokemon.Pokemon = template;

            ExploreCatchVm vm = new ExploreCatchVm();

            vm.AppearedPokemon = appearedPokemon;
            vm.UserName        = user.UserName;
            vm.BaseUri         = baseuriClient;
            vm.FolderType      = GeneralFunctions.EvaluateFolderType(appearedPokemon.IsShiny, appearedPokemon.IsAlolan);
            HttpContext.Session.Remove("PokemonData"); //om minder geheugen in te nemen op de server.
                                                       //Ook om een Redirect te forceren bij terugkeer naar de vorige pagina
            return(View(vm));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> TryAgain()
        {
            Guid userId;
            Guid?tempUserId = CheckSession();

            if (tempUserId == null)
            {
                return(new RedirectToActionResult("Login", "Account", null));
            }
            else
            {
                userId = (Guid)tempUserId;
            }

            UserSimpleDTO user = await GetUserWithId(userId);

            string serializedPokemon = HttpContext.Session.GetString("PokemonData");

            if (PokemonErrorCheck(serializedPokemon))
            {
                return(new RedirectToActionResult("Walkaround", "Explore", null));
            }

            var pokemonData = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);

            string  uri      = $"{baseuri}/Pokemons/GetById/{pokemonData.Id}";
            Pokemon template = await WebApiHelper.GetApiResult <Pokemon>(uri);

            PokemonCatch appearedPokemon = GetPokemonCatchObject(pokemonData.Id, userId, pokemonData.HP, pokemonData.CP,
                                                                 pokemonData.Height, pokemonData.Weight, pokemonData.Gender,
                                                                 pokemonData.IsShiny, pokemonData.IsAlolan, pokemonData.MoveCatches);

            appearedPokemon.Pokemon = template;

            ExploreCatchVm vm = new ExploreCatchVm();

            vm.AppearedPokemon = appearedPokemon;
            vm.UserName        = user.UserName;
            vm.BaseUri         = baseuriClient;
            vm.FolderType      = GeneralFunctions.EvaluateFolderType(appearedPokemon.IsShiny, appearedPokemon.IsAlolan);
            return(View(vm));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> GeneratePokemon()
        {
            MyPokemon          appearedPokemon;
            PokemonSessionData pokemonData;
            string             serializedPokemon, userName;

            userName = HttpContext.Session.GetString("Username");
            if (UserNameErrorCheck(userName))
            {
                return(new RedirectToActionResult("Login", "Account", null));
            }
            serializedPokemon = HttpContext.Session.GetString("PokemonData");
            if (PokemonErrorCheck(serializedPokemon))
            {
                return(new RedirectToActionResult("Walkaround", "Explore", null));
            }

            pokemonData = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);
            var getType = pokemonContext.Types
                          .Where(t => t.Name == pokemonData.Type).FirstOrDefault();

            if (pokemonData.Name == null)//er is nog geen pokemon gegenereerd. Is dit wel zo zal de bovenstaande terug getoond worden
            {
                appearedPokemon = await LetPokemonAppear(getType);

                serializedPokemon = HttpContext.Session.GetString("PokemonData");
                pokemonData       = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);
            }

            appearedPokemon = pokemonContext.Pokemons
                              .Where(p => p.Name == pokemonData.Name).FirstOrDefault();

            ExploreCatchVm vm = new ExploreCatchVm();

            vm.AppearedPokemon = appearedPokemon;
            vm.HP              = pokemonData.HP;
            vm.Moves           = pokemonData.Moves;
            vm.CheatingWarning = pokemonData.CheatingWarning;
            vm.UserName        = userName;
            return(View(vm));
        }
Exemplo n.º 6
0
        public IActionResult Gotcha()
        {
            string userName = HttpContext.Session.GetString("Username");

            if (UserNameErrorCheck(userName))
            {
                return(new RedirectToActionResult("Login", "Account", null));
            }
            string serializedPokemon = HttpContext.Session.GetString("PokemonData");

            if (PokemonErrorCheck(serializedPokemon))
            {
                return(new RedirectToActionResult("Walkaround", "Explore", null));
            }
            var pokemonData = JsonConvert.DeserializeObject <PokemonSessionData>(serializedPokemon);

            if (!pokemonData.Caught)
            {/*de bool is niet op true gezet in CatchProcesser. De user heeft dus gecheat*/
                pokemonData.CheatingWarning = "Professor Oak can't allow cheating!";
                string serializedPokemonData = JsonConvert.SerializeObject(pokemonData);
                HttpContext.Session.SetString("PokemonData", serializedPokemonData);
                return(new RedirectToActionResult("GeneratePokemon", "Explore", null));
            }

            var getPokemon = pokemonContext.Pokemons
                             .Where(p => p.Name == pokemonData.Name).FirstOrDefault();
            ExploreCatchVm vm = new ExploreCatchVm();

            vm.AppearedPokemon = getPokemon;
            vm.HP       = pokemonData.HP;
            vm.Moves    = pokemonData.Moves;
            vm.UserName = userName;
            HttpContext.Session.Remove("PokemonData"); //om minder geheugen in te nemen op de server.
                                                       //Ook om een Redirect te forceren bij terugkeer naar de vorige pagina
            return(View(vm));
        }