コード例 #1
0
        public IActionResult GetAll()
        {
            var result = _gameDataAccess.Get();

            if (result == null)
            {
                return(BadRequest("Not found"));
            }

            return(Ok(result.ToList()));
        }
コード例 #2
0
ファイル: GameData.cs プロジェクト: DaVinci-98/PBgra
        /// <summary>
        /// Gets charcter object.
        /// </summary>
        /// <param name="character">
        /// Model of character to get.
        /// </param>
        public async Task <CharacterModel> Get(CharacterModel character)
        {
            var save = new Character
            {
                Name = character.Name
            };

            //Get a saved chracter object with given name
            save = await _gameDataAccess.Get(save);

            //Rteurn if there was no objects with given name
            if (save == null)
            {
                return(null);
            }
            //Turn raw data into an usable game object
            var result = new CharacterModel
            {
                Damage  = save.Damage,
                Defence = save.Defence,
                Exp     = save.Exp,
                Gold    = save.Gold,
                Hp      = save.HP,
                Level   = save.Level,
                MaxHp   = save.MaxHP,
                Name    = save.Name
            };

            //if charcter had armour equipped
            if (save.ArmourID != null)
            {
                //get a full armour object
                result.EquippedArmour = await Get(new ArmourModel { Id = save.ArmourID.Value });
            }
            //if charcter had weapon equipped
            if (save.WeaponID != null)
            {
                //get a full weapon object
                result.EquippedWeapon = await Get(new WeaponModel { Id = save.WeaponID.Value });
            }
            //if charcter had potion equipped
            if (save.PotionID != null)
            {
                //get a full potion object
                result.EquippedPotion = await Get(new PotionModel { Id = save.PotionID.Value });
            }
            //get charcter's position
            result.Position = await Get(new RoomModel { Id = save.RoomID });

            return(result);
        }