diff --git a/Mud Designer/MudEngine/GameObjects/Bag.cs b/Mud Designer/MudEngine/GameObjects/Bag.cs new file mode 100644 index 0000000..7f72bbf --- /dev/null +++ b/Mud Designer/MudEngine/GameObjects/Bag.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using MudDesigner.MudEngine.GameObjects.Items; + +namespace MudDesigner.MudEngine.GameObjects +{ + public class Bag : BaseObject + { + /// + /// Gets or Sets the size of the bag. + /// + public int Size + { + get; + set; + } + + private List Items { get; set; } + + public void Add(BaseItem item) + { + if (Items.Count < Size) + Items.Add(item); + } + + public int GetSlotsRemaining() + { + return Size - Items.Count; + } + } +} diff --git a/Mud Designer/MudEngine/GameObjects/Environment/StartingLocation.cs b/Mud Designer/MudEngine/GameObjects/Environment/StartingLocation.cs new file mode 100644 index 0000000..dd71bb6 --- /dev/null +++ b/Mud Designer/MudEngine/GameObjects/Environment/StartingLocation.cs @@ -0,0 +1,15 @@ +//MudEngine +using MudDesigner.MudEngine.Attributes; +using MudDesigner.MudEngine.FileSystem; +using MudDesigner.MudEngine.GameObjects; +using MudDesigner.MudEngine.GameObjects.Environment; + +namespace MudDesigner.MudEngine.GameObjects.Environment +{ + public struct StartingLocation + { + public string Room; + public string Zone; + public string Realm; + } +} \ No newline at end of file diff --git a/Mud Designer/MudEngine/GameObjects/Environment/TravelDirections.cs b/Mud Designer/MudEngine/GameObjects/Environment/TravelDirections.cs new file mode 100644 index 0000000..a2f4f22 --- /dev/null +++ b/Mud Designer/MudEngine/GameObjects/Environment/TravelDirections.cs @@ -0,0 +1,39 @@ +namespace MudDesigner.MudEngine.GameObjects +{ + public enum AvailableTravelDirections + { + None = 0, + North, + South, + East, + West, + Up, + Down, + } + + public static class TravelDirections + { + public static AvailableTravelDirections GetReverseDirection(AvailableTravelDirections Direction) + { + switch (Direction) + { + case AvailableTravelDirections.Down: + return AvailableTravelDirections.Up; + case AvailableTravelDirections.East: + return AvailableTravelDirections.West; + case AvailableTravelDirections.None: + return AvailableTravelDirections.None; + case AvailableTravelDirections.North: + return AvailableTravelDirections.South; + case AvailableTravelDirections.South: + return AvailableTravelDirections.North; + case AvailableTravelDirections.Up: + return AvailableTravelDirections.Down; + case AvailableTravelDirections.West: + return AvailableTravelDirections.East; + default: + return AvailableTravelDirections.None; + } + } + } +} \ No newline at end of file