public void AddItemToScene(CommonEnums.Interactables item, CommonEnums.LocationType currentLocation)
        {
            switch (item)
            {
            case CommonEnums.Interactables.Desk:
                Desk.RoomLocation = currentLocation;
                break;

            case CommonEnums.Interactables.Note:
                Note.RoomLocation = currentLocation;
                break;

            case CommonEnums.Interactables.Cup:
                Cup.RoomLocation = currentLocation;
                break;

            case CommonEnums.Interactables.Charlie:
                Charlie.RoomLocation = currentLocation;
                break;

            case CommonEnums.Interactables.Chair:
                Chair.RoomLocation = currentLocation;
                break;

            case CommonEnums.Interactables.Pen:
                Pen.RoomLocation = currentLocation;
                break;
            }
        }
        public string GetDescription(CommonEnums.Interactables item, CommonEnums.LocationType currentLocation)
        {
            string description = "That item is nowhere to be found";

            if (DoesObjectExistInScene(item, currentLocation))
            {
                switch (item)
                {
                case CommonEnums.Interactables.Desk:
                    description = Desk.Description();
                    break;

                case CommonEnums.Interactables.Note:
                    description = Note.Description;
                    break;

                case CommonEnums.Interactables.Cup:
                    description = Cup.Description;
                    break;

                case CommonEnums.Interactables.Charlie:
                    description = Charlie.Description;
                    break;

                case CommonEnums.Interactables.Chair:
                    description = Chair.Description;
                    break;

                case CommonEnums.Interactables.Pen:
                    description = Pen.Description;
                    break;
                }
            }
            return(description);
        }
 public void AddItem(CommonEnums.Interactables item, out bool success)
 {
     success = false;
     if (Slot == CommonEnums.Interactables.None)
     {
         Slot    = item;
         success = true;
     }
 }
 public void RemoveItem(CommonEnums.Interactables item, out bool success)
 {
     success = false;
     if (Slot == item)
     {
         Slot    = CommonEnums.Interactables.None;
         success = true;
     }
 }
        public CommonEnums.NPC Talk(CommonEnums.Interactables NPC)
        {
            switch (NPC)
            {
            case CommonEnums.Interactables.Charlie:
                return(CommonEnums.NPC.Charlie);

            default:
                return(CommonEnums.NPC.None);
            }
        }
 public string GetObjectName(CommonEnums.Interactables item)
 {
     if (CommonEnums.Interactables.Charlie == item)
     {
         return("Charlie");
     }
     else
     {
         return(item.ToString().ToLower());
     }
 }
Exemple #7
0
        public string Take(CommonEnums.Interactables item)
        {
            string response;

            Inventory.AddItemToInventory(item, out response);
            if (response == null)
            {
                response = item.ToString() + " has been added to your inventory.";
            }
            return(response);
        }
        public string Drop(CommonEnums.Interactables item)
        {
            string response = Player.Drop(item);

            if (response == null)
            {
                GameObjects.AddItemToScene(item, Player.Location);
                Locations.AddContents(Player.Location, item);
                response = item.ToString() + " has been dropped from your inventory";
            }
            return(response);
        }
 public string Take(CommonEnums.Interactables item)
 {
     GameObjects.RemoveItemFromScene(item, Player.Location, out string response);
     if (response != null)
     {
         return(response);
     }
     else
     {
         Locations.RemoveContents(Player.Location, item);
         return(Player.Take(item));
     }
 }
        public void SetNPC(CommonEnums.Interactables NPC, out string error)
        {
            error = null;
            switch (NPC)
            {
            case CommonEnums.Interactables.Charlie:
                Memory.NPC = CommonEnums.NPC.Charlie;
                break;

            default:
                error = "You cannot talk to that";
                break;
            }
        }
        public void RemoveContents(CommonEnums.LocationType currentLocation, CommonEnums.Interactables item)
        {
            List <CommonEnums.Interactables> contents = GetContents(currentLocation);

            if (contents.Remove(item))
            {
                switch (currentLocation)
                {
                case CommonEnums.LocationType.Office:
                    Office.Contains.Clear();
                    Office.Contains = contents;
                    break;

                case CommonEnums.LocationType.Hallway:
                    Hallway.Contains.Clear();
                    Hallway.Contains = contents;
                    break;
                }
            }
        }
Exemple #12
0
        public void AddItemToInventory(CommonEnums.Interactables item, out string error)
        {
            error = "Inventory is full";
            bool success = false;

            if (success == !true)
            {
                Slot1.AddItem(item, out success);
                error = null;
            }
            if (success == !true)
            {
                Slot2.AddItem(item, out success);
                error = null;
            }
            if (success == !true)
            {
                Slot3.AddItem(item, out success);
                error = null;
            }
            RefreshInventory();
        }
Exemple #13
0
        public void RemoveItemFromInventory(CommonEnums.Interactables item, out string error)
        {
            error = "That item is not in your inventory";
            bool success = false;

            if (success == !true)
            {
                Slot1.RemoveItem(item, out success);
                error = null;
            }
            if (success == !true)
            {
                Slot2.RemoveItem(item, out success);
                error = null;
            }
            if (success == !true)
            {
                Slot3.RemoveItem(item, out success);
                error = null;
            }
            RefreshInventory();
        }
        private bool CanPickupItem(CommonEnums.Interactables item, CommonEnums.LocationType currentLocation)
        {
            bool status = false;
            int  Size   = 0;

            //Get size of item to carry and the location of the item
            switch (item)
            {
            case CommonEnums.Interactables.Desk:
                Size = (int)Desk.Size;
                break;

            case CommonEnums.Interactables.Note:
                Size = (int)Note.Size;
                break;

            case CommonEnums.Interactables.Cup:
                Size = (int)Cup.Size;
                break;

            case CommonEnums.Interactables.Charlie:
                Size = (int)Charlie.Size;
                break;

            case CommonEnums.Interactables.Chair:
                Size = (int)Chair.Size;
                break;

            case CommonEnums.Interactables.Pen:
                Size = (int)Pen.Size;
                break;
            }
            //If item is too big, deny
            if (Size < 2 && DoesObjectExistInScene(item, currentLocation))
            {
                status = true;
            }
            return(status);
        }
Exemple #15
0
 public string Look(CommonEnums.Interactables item)
 {
     return(GameObjects.GetDescription(item, Player.Location));
 }
Exemple #16
0
 public Slot3(CommonEnums.Interactables item)
 {
     AddItem(item, out bool success);
 }
Exemple #17
0
 public string Put(CommonEnums.Interactables item1, CommonEnums.Interactables item2)
 {
     GameObjects.PutItemOnObject(item1, item2, Player.Location, out string response);
     return(response);
 }
Exemple #18
0
 public string Use(CommonEnums.Interactables item)
 {
     //use an item in the scene
     return("You used " + item.ToString().ToLower());
 }
        private bool DoesObjectExistInScene(CommonEnums.Interactables item, CommonEnums.LocationType location)
        {
            switch (item)
            {
            case CommonEnums.Interactables.Desk:
                if (Desk.RoomLocation == location)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }

            case CommonEnums.Interactables.Note:
                if (Note.RoomLocation == location)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }

            case CommonEnums.Interactables.Cup:
                if (Cup.RoomLocation == location)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }

            case CommonEnums.Interactables.Charlie:
                if (Charlie.RoomLocation == location)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }

            case CommonEnums.Interactables.Chair:
                if (Chair.RoomLocation == location)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }

            case CommonEnums.Interactables.Pen:
                if (Pen.RoomLocation == location)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }

            default:
                return(false);
            }
        }
Exemple #20
0
 public string Drop(CommonEnums.Interactables item)
 {
     Inventory.RemoveItemFromInventory(item, out string response);
     return(response);
 }
 public void UseObject(CommonEnums.Interactables item)
 {
     //use an object logic here
 }
        public void RemoveItemFromScene(CommonEnums.Interactables item, CommonEnums.LocationType currentLocation, out string error)
        {
            error = "The item you are looking for is not there.";
            bool canRemove = CanPickupItem(item, currentLocation);

            if (canRemove)
            {
                CommonEnums.Interactables nestedObject = CommonEnums.Interactables.None;
                switch (item)
                {
                case CommonEnums.Interactables.Desk:
                    Desk.RoomLocation   = CommonEnums.LocationType.Inventory;
                    nestedObject        = Desk.ObjectLocation;
                    Desk.ObjectLocation = CommonEnums.Interactables.None;
                    break;

                case CommonEnums.Interactables.Note:
                    Note.RoomLocation   = CommonEnums.LocationType.Inventory;
                    nestedObject        = Note.ObjectLocation;
                    Note.ObjectLocation = CommonEnums.Interactables.None;
                    break;

                case CommonEnums.Interactables.Cup:
                    Cup.RoomLocation   = CommonEnums.LocationType.Inventory;
                    nestedObject       = Cup.ObjectLocation;
                    Cup.ObjectLocation = CommonEnums.Interactables.None;
                    break;

                case CommonEnums.Interactables.Charlie:
                    Charlie.RoomLocation   = CommonEnums.LocationType.Inventory;
                    nestedObject           = Charlie.ObjectLocation;
                    Charlie.ObjectLocation = CommonEnums.Interactables.None;
                    break;

                case CommonEnums.Interactables.Chair:
                    Chair.RoomLocation   = CommonEnums.LocationType.Inventory;
                    nestedObject         = Chair.ObjectLocation;
                    Chair.ObjectLocation = CommonEnums.Interactables.None;
                    break;

                case CommonEnums.Interactables.Pen:
                    Pen.RoomLocation   = CommonEnums.LocationType.Inventory;
                    nestedObject       = Pen.ObjectLocation;
                    Pen.ObjectLocation = CommonEnums.Interactables.None;
                    break;
                }
                switch (nestedObject)
                {
                case CommonEnums.Interactables.Desk:
                    Desk.Contains.Remove(item);
                    break;

                case CommonEnums.Interactables.Note:
                    Note.Contains.Remove(item);
                    break;

                case CommonEnums.Interactables.Cup:
                    Cup.Contains.Remove(item);
                    break;

                case CommonEnums.Interactables.Charlie:
                    Charlie.Contains.Remove(item);
                    break;

                case CommonEnums.Interactables.Chair:
                    Chair.Contains.Remove(item);
                    break;

                case CommonEnums.Interactables.Pen:
                    Pen.Contains.Remove(item);
                    break;
                }
                error = null;
            }
        }
        private bool CanPutOnObject(CommonEnums.Interactables item, CommonEnums.Interactables destination, CommonEnums.LocationType currentLocation)
        {
            bool status          = false;
            int  ItemSize        = 0;
            int  DestinationSize = 0;

            //Get size and location of item to place
            switch (item)
            {
            case CommonEnums.Interactables.Desk:
                ItemSize = (int)Desk.Size;
                break;

            case CommonEnums.Interactables.Note:
                ItemSize = (int)Note.Size;
                break;

            case CommonEnums.Interactables.Cup:
                ItemSize = (int)Cup.Size;
                break;

            case CommonEnums.Interactables.Charlie:
                ItemSize = (int)Charlie.Size;
                break;

            case CommonEnums.Interactables.Chair:
                ItemSize = (int)Chair.Size;
                break;

            case CommonEnums.Interactables.Pen:
                ItemSize = (int)Pen.Size;
                break;
            }
            //Get size and location of item to place first item on
            switch (destination)
            {
            case CommonEnums.Interactables.Desk:
                DestinationSize = (int)Desk.Size;
                break;

            case CommonEnums.Interactables.Note:
                DestinationSize = (int)Note.Size;
                break;

            case CommonEnums.Interactables.Cup:
                DestinationSize = (int)Cup.Size;
                break;

            case CommonEnums.Interactables.Charlie:
                DestinationSize = (int)Charlie.Size;
                break;

            case CommonEnums.Interactables.Chair:
                DestinationSize = (int)Chair.Size;
                break;

            case CommonEnums.Interactables.Pen:
                DestinationSize = (int)Pen.Size;
                break;
            }
            //If the item is too large for the destination, deny
            if (ItemSize < DestinationSize && DoesObjectExistInScene(item, currentLocation) && DoesObjectExistInScene(destination, currentLocation))
            {
                status = true;
            }

            return(status);
        }
        public void PutItemOnObject(CommonEnums.Interactables item, CommonEnums.Interactables destination, CommonEnums.LocationType currentLocation, out string error)
        {
            error = "I don't know how to do that";
            if (item != CommonEnums.Interactables.None && destination != CommonEnums.Interactables.None)
            {
                error = "This item is too large for that action.";
                bool canPut = CanPutOnObject(item, destination, currentLocation);
                if (canPut)
                {
                    switch (item)
                    {
                    case CommonEnums.Interactables.Desk:
                        Desk.ObjectLocation = destination;
                        Desk.RoomLocation   = currentLocation;
                        break;

                    case CommonEnums.Interactables.Note:
                        Note.ObjectLocation = destination;
                        Note.RoomLocation   = currentLocation;
                        break;

                    case CommonEnums.Interactables.Cup:
                        Cup.ObjectLocation = destination;
                        Cup.RoomLocation   = currentLocation;
                        break;

                    case CommonEnums.Interactables.Charlie:
                        Charlie.ObjectLocation = destination;
                        Charlie.RoomLocation   = currentLocation;
                        break;

                    case CommonEnums.Interactables.Chair:
                        Chair.ObjectLocation = destination;
                        Chair.RoomLocation   = currentLocation;
                        break;

                    case CommonEnums.Interactables.Pen:
                        Pen.ObjectLocation = destination;
                        Pen.RoomLocation   = currentLocation;
                        break;
                    }

                    switch (destination)
                    {
                    case CommonEnums.Interactables.Desk:
                        Desk.Contains.Add(item);
                        break;

                    case CommonEnums.Interactables.Note:
                        Note.Contains.Add(item);
                        break;

                    case CommonEnums.Interactables.Cup:
                        Cup.Contains.Add(item);
                        break;

                    case CommonEnums.Interactables.Charlie:
                        Charlie.Contains.Add(item);
                        break;

                    case CommonEnums.Interactables.Chair:
                        Chair.Contains.Add(item);
                        break;

                    case CommonEnums.Interactables.Pen:
                        Pen.Contains.Add(item);
                        break;
                    }

                    error = "The " + destination.ToString().ToLower() + " now contains a " + item.ToString().ToLower();
                }
            }
            else
            {
                if (item == CommonEnums.Interactables.None && destination != CommonEnums.Interactables.None)
                {
                    error = "What would you like to put in the " + destination.ToString().ToLower() + "?";
                }
                if (item != CommonEnums.Interactables.None && destination == CommonEnums.Interactables.None)
                {
                    error = "Where do you want to place the " + item.ToString().ToLower() + "?";
                }
            }
        }