예제 #1
0
        public ActionResult AddEquipment(Equipment equipment)
        {
            var list = new EquipmentDataAccess().FindAll <Equipment>();

            equipment.Id          = list.Count == 0 ? 1 : list.Last().Id + 1;
            equipment.Name        = Request.Form["Name"];
            equipment.Description = Request.Form["Description"];
            equipment.Cost        = double.Parse(Request.Form["Cost"]);
            equipment.Weight      = double.Parse(Request.Form["Weight"]);
            equipment.Formula     = Request.Form["Formula"];
            equipment.SkillUsed   = Request.Form["SkillUsed"];
            equipment.Type        = Request.Form["Type"];
            equipment.NT          = int.Parse(Request.Form["NT"]);
            new EquipmentDataAccess().InsertOne(equipment);
            return(RedirectToAction("Main", "Admin"));
        }
        public int NextId(string type)
        {
            int id = 1;

            if (type == "consumable" || type == "other")
            {
                var items = new ItemDataAccess().FindAll <Item>();
                if (items.Count != 0)
                {
                    id = items.OrderBy(x => x.Id).Last().Id + 1;
                }
            }
            else
            {
                var equipments = new EquipmentDataAccess().FindAll <Equipment>();
                if (equipments.Count != 0)
                {
                    id = equipments.OrderBy(x => x.Id).Last().Id + 1;
                }
            }
            return(id);
        }
예제 #3
0
        public bool Update([FromBody] JObject content)
        {
            try
            {
                dynamic data      = JsonConvert.DeserializeObject <dynamic>(content.ToString());
                int     id        = (int)data.id;
                var     character = new CharacterDataAccess().FindOne <Character>(id);
                character.Resources = data.resources;
                character.Status["MaxLifePoints"]        = (int)data.max_life_points;
                character.Status["CurrentLifePoints"]    = (int)data.current_life_points;
                character.Status["MaxFatiguePoints"]     = (int)data.max_fatigue_points;
                character.Status["CurrentFatiguePoints"] = (int)data.current_fatigue_points;
                character.Status["MaxCarryWeight"]       = (int)data.max_carry_weight;
                character.Status["CurrentCarryWeight"]   = (int)data.current_carry_weight;

                character.Inventory = new Inventory();
                foreach (var equipment in data.inventory.one_hand_weapons)
                {
                    Equipment equipmentDatabase = new EquipmentDataAccess().FindOne <Equipment>((int)equipment.id);
                    equipmentDatabase.Equipped = equipment.equipped;
                    equipmentDatabase.Bought   = (bool)equipment.bought;
                    character.Inventory.OneHandWeapons.Add(equipmentDatabase);
                }
                foreach (var equipment in data.inventory.two_hand_weapons)
                {
                    Equipment equipmentDatabase = new EquipmentDataAccess().FindOne <Equipment>((int)equipment.id);
                    equipmentDatabase.Equipped = equipment.equipped;
                    equipmentDatabase.Bought   = (bool)equipment.bought;
                    character.Inventory.TwoHandWeapons.Add(equipmentDatabase);
                }
                foreach (var equipment in data.inventory.shields)
                {
                    Equipment equipmentDatabase = new EquipmentDataAccess().FindOne <Equipment>((int)equipment.id);
                    equipmentDatabase.Equipped = equipment.equipped;
                    equipmentDatabase.Bought   = (bool)equipment.bought;
                    character.Inventory.Shields.Add(equipmentDatabase);
                }
                foreach (var equipment in data.inventory.armors)
                {
                    Equipment equipmentDatabase = new EquipmentDataAccess().FindOne <Equipment>((int)equipment.id);
                    equipmentDatabase.Equipped = equipment.equipped;
                    equipmentDatabase.Bought   = (bool)equipment.bought;
                    character.Inventory.Armors.Add(equipmentDatabase);
                }
                foreach (var item in data.inventory.consumables)
                {
                    Item itemDatabase = new ItemDataAccess().FindOne <Item>((int)item.id);
                    itemDatabase.Bought   = (bool)item.bought;
                    itemDatabase.Quantity = item.quantity;
                    character.Inventory.Consumables.Add(itemDatabase);
                }
                foreach (var item in data.inventory.others)
                {
                    Item itemDatabase = new ItemDataAccess().FindOne <Item>((int)item.id);
                    itemDatabase.Bought   = (bool)item.bought;
                    itemDatabase.Quantity = item.quantity;
                    character.Inventory.Others.Add(itemDatabase);
                }
                new CharacterDataAccess().Update <Character>(character.Id, character);
            }
            catch
            {
                return(false);
            }
            return(true);
        }