All codes in c#
Solved 1 Answer
See More Answers for FREE
Enhance your learning with StudyX
Receive support from our dedicated community users and experts
See up to 20 answers per week for free
Experience reliable customer service
NOTE:- IN CASE OF ANY QUERY FEEL FREE TO ASK INCOMMENT ANYTIME.........HAPPY LEARNING AND KEEPING.....ANSWER:--Iteration 2GameObject.csusing System;using System.Collections.Generic;using System.Text;using System.Linq;using System.Threading.Tasks;namespace SwinAdventure{public abstract class GameObject : IdentifiableObject{private string __name; //_nameprivate string __desc;  public GameObject (string[] ids, string name, string desc)//private GameObject (string[] ids, string name, string desc){__name = name; //_name__desc = desc; //_descforeach (string id in ids){this.AddIdentifier(id);}}public GameObject(){}public string Name{get => __name; // get { return __name; }set => __name = value; // set {__name = value; }}public string ShortDesc{get{return "A" + __name + " " + this.FirstId + ".";}}public string LongDesc{get => __desc; // get {return __desc;}set => __desc = value; // set {__desc = value;}}}}====================================================================================IdentifiableObject.csusing System;using System.Collections.Generic;using System.Linq;using SwinAdventure;using System.Text;using System.Threading.Tasks;namespace SwinAdventure{public class IdentifiableObject{List<string> _identifier = new List<string>();public IdentifiableObject(String[] Idents){_identifier.AddRange(Idents);}public bool AreYou(string id){foreach (string Check in _identifier){if (id == Check){ return true; }}return false;}public string FirstId{get{if (_identifier.Count == 0){ return " "; }else{ return _identifier.First(); }}}public void AddIdentifier(string id){_identifier.Add(id.ToLower());}}}==========================================================================================IdentifiableObjectTest.csusing System;using System.Collections.Generic;using System.Linq;using SwinAdventure;using System.Text;using System.Threading.Tasks;using Microsoft.VisualStudio.TestTools.UnitTesting;namespace SwinAdventure.Tests{[TestClass()]public class IdentifiableObjectTests{[TestMethod()]public void IdentifiableObjectTest(){IdentifiableObject id = new IdentifiableObject(new string[] {"fred", "bob" });Assert.IsTrue(id.AreYou("Fred"));Assert.IsTrue(id.AreYou("bob"));Assert.IsFalse(id.AreYou("wilma"));Assert.IsFalse(id.AreYou("boBy"));Assert.IsFalse(id.AreYou("FReD"));Assert.IsFalse(id.AreYou("B0b"));}[TestMethod()]public void FirstIDTest(){IdentifiableObject id = new IdentifiableObject(new string[] {"fred", "bob" });Assert.IsTrue(id.FirstId == "fred");}[TestMethod()]public void AddIDTest(){IdentifiableObject id = new IdentifiableObject(new string[] {"fred", "bob" });id.AddIdentifier("wilma");Assert.IsTrue(id.AreYou("fred"));Assert.IsTrue(id.AreYou("bob"));Assert.IsTrue(id.AreYou("wilma"));}}}==============================================================================Inventory.csusing System;using System.Collections.Generic;using System.Text;using System.Threading.Tasks;using System.Linq;namespace SwinAdventure{public class Inventory : GameObject{private List<Item> _inventory;public Inventory(){_inventory = new List<Item>();}//IKnv entory=new listpublic void PutItem(Item NewItem){_inventory.Add(NewItem);//Add(NewItem)}public bool HasItem(string id){foreach (Item Check in _inventory){//if (Check.AreYou(id) == true)if (Check.AreYou(id) == true){return true;//false}}return false;//true}/*public Inventory(){_inventory = new List<Item>();}*/public Item TakeItem(Item NewItem){//RemokveApprovalbool RemoveApproval = false;foreach (Item Check in _inventory){if(NewItem == Check)// if(NewItem == Check){//RemoveApproval = true;RemoveApproval = true;}}if (RemoveApproval == true){_inventory.Remove(NewItem);return NewItem;}/*else{return null;}*/else{return null;}}public List<string> ItemList(){List<string> ItemList = new List<string>();foreach (Item Check in _inventory)//_pinhgfdxcfgvh{//ItemList.Add ( Check.Name + "\t" + Check.ShortDesc + "\n");}//Check.ShortDescreturn ItemList;}//itempublic Item FetchItem(string id){foreach(Item InventoryItem in _inventory){if (InventoryItem.AreYou(id) == true){return InventoryItem;//inventory}}return null;//null}  }}===================================================================================InventoryTests.csusing Microsoft.VisualStudio.TestTools.UnitTesting;using SwinAdventure;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace SwinAdventure.Tests{[TestClass]public class InventoryTests{[TestMethod]public void TestNoItemFind(){Item TestItem = new Item(new string[]  { "pasta", "salad" }, "pasta salad", "a pasta salad");Inventory TestInventory = new Inventory();//InventoryTestInventory = new Inventory();/*TestInventory.PutItem(TestItem);*/TestInventory.PutItem(TestItem);Assert.IsFalse(TestInventory.HasItem("chicken"));//chicken}[TestMethod]public void TestTakeItem(){Item TestItem = new Item(new string[] { "salad", "pasta" }, "pastasalad", "a psta salad");//erdtyui//{ "salad", "pasta" }, "pasta salad", "a psta salad");Inventory TestInventory = new Inventory();TestInventory.PutItem(TestItem);//testitemAssert.IsTrue(TestInventory.HasItem("pasta"));//paastaTestInventory.TakeItem(TestItem);Assert.IsFalse(TestInventory.HasItem("pasta"));}[TestMethod]public void TestFetchItems(){Item TestItem = new Item(new string[] { "salad", "pasta" }, "pastasalad", "a pasta salad");Inventory TestInventory = new Inventory();/*Item TestItem = new Item(new string[] { "salad", "pasta" }, "pastasalad", "a pasta salad");*/TestInventory.PutItem(TestItem);//Assert.IsTrue(TestInventory.FetchItem("pasta") ==TestItem);Assert.IsTrue(TestInventory.FetchItem("pasta") == TestItem);//pasta??Assert.IsTrue(TestInventory.HasItem("pasta"));}[TestMethod]public void TestItemList(){Item TestItem = new Item(new string[] { "salad", "pasta" }, "pastasalad", "a pasta salad");// { "salad", "pasta" }, "pasta salad", "a pasta salad");Item TestItem2 = new Item(new string[] { "chicken", "baked" },"baked chicken", "a baked chicken");Inventory TestInventory = new Inventory();TestInventory.PutItem(TestItem);TestInventory.PutItem(TestItem2);Assert.IsTrue(TestInventory.HasItem("salad"));Assert.IsTrue(TestInventory.HasItem("chicken"));//Assert.IsTrue(TestInventory.HasItem("chicken"));Assert.IsTrue(TestInventory.ItemList().Contains("pasta salad" +"\t" + "A pasta salad salad" + "\n"));// Assert.IsTrue(TestInventory.ItemList().Contains("baked chicken"+ "\t" + " A baked chicken chicken." + "\n"));Assert.IsTrue(TestInventory.ItemList().Contains("baked chicken" +"\t" + " A baked chicken chicken." + "\n"));}}}============================================================================Item.csusing System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;using System.Text;namespace SwinAdventure{public class Item : GameObject//item{public Item (){}//public Item (){}  public Item(string[] idents, string name, string desc)//publicItem(string[] idents, string name, string desc){Name = name; LongDesc = desc;foreach (string id in idents){//this.Addbthis.AddIdentifier(id);}}}}==============================================================================ItemTests.csusing Microsoft.VisualStudio.TestTools.UnitTesting;using SwinAdventure;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace SwinAdventure.Tests{[TestClass()]public class ItemTests{[TestMethod]public void ItemIsIdentifiableTest(){Item id = new Item(new string[] { "potato", "baked" }, "bakedpatato", "a baked potato");Assert.IsTrue(id.AreYou("potato"));//potato?Assert.IsTrue(id.AreYou("baked"));//baked?}[TestMethod()]public void LongDescriptionTest(){Item id = new Item(new string[] { "potato", "baked" }, "bakedpotato", "a baked potato");// { "potato", "baked" }, "baked potato", "a baked potato");Assert.IsTrue(id.ShortDesc == ("A baked potato "));}[TestMethod()]public void ShortDescriptionTest(){/*Item id = new Item(new string[] { "potato", "baked" }, "bakedpotato", "a baked potato");Assert.IsTrue(id.ShortDesc == ("A baked potato patato"));*/Item id = new Item(new string[] { "potato", "baked" }, "bakedpotato", "a baked potato");Assert.IsTrue(id.ShortDesc == ("A baked potatopatato"));//baked?}  }}============================================================================================PlayerTests.csusing Microsoft.VisualStudio.TestTools.UnitTesting;using SwinAdventure;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace SwinAdventure.Tests{[TestClass]public class PlayerTests{[TestMethod]public void PlayerIdentifierTest(){Player TestPlayer = new Player("Adeepa", "Test");Assert.IsTrue(TestPlayer.AreYou("me"));}[TestMethod]public void PlayerLocaterTest(){Player TestPlayer = new Player("Adeepa", "Test");//PlayerTestPlayer = new Player("Adeepa", "Test");Assert.IsTrue(TestPlayer.Locate("me") == TestPlayer);//me}[TestMethod]public void PlayerItemLocaterTest(){Player TestPlayer = new Player("Adeepa", "Test");// newPlayer("Adeepa", "Test");Item TestItem = new Item(new string[] { "salad", "pasta" },"pasta salad", "s pasta salad");// { "salad", "pasta" }, "pastasalad", "s pasta salad")TestPlayer.Inventory.PutItem(TestItem);/*Assert.IsTrue(TestPlayer.Locate("salad") == TestItem);Assert.IsTrue(TestPlayer.Locate("salad") == TestItem);*/Assert.IsTrue(TestPlayer.Locate("salad") == TestItem);Assert.IsTrue(TestPlayer.Locate("salad") == TestItem);}[TestMethod]public void PlayerFullDescriptionTest(){Player TestPlayer = new Player("Adeepa", "Test");Item TestItem = new Item(new string[] { "salad", "pasta" }, "pastasalad", "a pasta salad");//salad? / pasta?TestPlayer.Inventory.PutItem(TestItem);Assert.IsTrue(TestPlayer.FullDescription().Contains("You areCarrying: \n" + "pasta salad" + "\t" + "A pasta salad. " +"\n"));// Console.WriteLine( TestPlayer.FullDescription ());Console.WriteLine( TestPlayer.FullDescription ());}[TestMethod]public void PlayerLacteNothingTest(){Player TestPlayer = new Player("Adeepa", "Test");Assert.IsTrue(TestPlayer.Locate("salad") == null);}}}===============================================================================Player.csusing System;using System.Collections.Generic;using System.Text;namespace SwinAdventure{public class Player : GameObject,IHaveInventory{private Inventory _inventory;public Player(){//}public Player(string name, string desc):base(new string[] {"me", "inventory"} , name, desc){this.Name = name;//this.Name = __name;this.LongDesc = desc;//this.LongDesc = desc;_inventory = new Inventory();}public GameObject Locate(string id){if ( this.AreYou (id ) ){ return this; }//return/*else if (this.Inventory.HasItem(id)){ return this._inventory.FetchItem(id); }return null;*/else if (this.Inventory.HasItem(id)){ return this._inventory.FetchItem(id); }return null;}public Inventory Inventory{get => _inventory;//get{return _inventory;}set => _inventory = value;//set{_inventory = value;}}public string FullDescription(){string InventoryDescription = "You are Carrying: \n"; //stringInventoryDescription = ;foreach (string Item in _inventory.ItemList())/*foreach (string Item in _inventory.ItemList()){InventoryDescription = InventoryDescription + Item;}*/{ InventoryDescription = InventoryDescription + Item;}return InventoryDescription;}  }}If you have any query please feel free to ask andplease upvote--------------I hope my answer met all yourrequirements......Thank You----------- ...