public override void LoadContent(GraphicsDevice graphicsDevice)
        {
            ClientItemFactory.Load(ItemIdentity.PowerScoll,
                                   new ClientItemFactory <PowerScrollClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Scroll")
            });
            ClientItemFactory.Load(ItemIdentity.Gold,
                                   new ClientItemFactory <GoldClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Gold")
            });
            ClientItemFactory.Load(ItemIdentity.Bandage,
                                   new ClientItemFactory <BandageClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Bandage")
            });
            ClientItemFactory.Load(ItemIdentity.Bag,
                                   new ClientItemFactory <BagClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Bag")
            });

            ClientItemFactory.Load(ItemIdentity.Bow,
                                   new ClientItemFactory <BowClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Bow")
            });
            ClientItemFactory.Load(ItemIdentity.Sword,
                                   new ClientItemFactory <SwordClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Sword")
            });
            ClientItemFactory.Load(ItemIdentity.Dagger,
                                   new ClientItemFactory <DaggerClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/Dagger")
            });

            ClientItemFactory.Load(ItemIdentity.LeatherArmor,
                                   new ArmorClientItemFactory <LeatherArmorClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/LeatherArmor"), HeadTexture = Game.Content.Load <Texture2D>("Items/LeatherHead")
            });
            ClientItemFactory.Load(ItemIdentity.PlateArmor,
                                   new ArmorClientItemFactory <PlateArmorClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/PlateArmor"), HeadTexture = Game.Content.Load <Texture2D>("Items/PlateHead")
            });
            ClientItemFactory.Load(ItemIdentity.ClothRobe,
                                   new ArmorClientItemFactory <ClothClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("Items/ClothArmor"), HeadTexture = Game.Content.Load <Texture2D>("Items/ClothHead")
            });

            ClientItemFactory.Load(ItemIdentity.Corpse,
                                   new ClientItemFactory <CorpseClientItem>()
            {
                Texture = Game.Content.Load <Texture2D>("DeadHead")
            });

            if (!network.LoadContent(world))
            {
                this.Disconnect("Failed to load world.");
                return;
            }
            //inventoryScreen.LoadContent(graphicsDevice);

            spriteBatch      = new SpriteBatch(graphicsDevice);
            bodyTexture      = Game.Content.Load <Texture2D>("Body");
            headTexture      = Game.Content.Load <Texture2D>("Head");
            bodyGhostTexture = Game.Content.Load <Texture2D>("GhostBody");
            headGhostTexture = Game.Content.Load <Texture2D>("GhostHead");
            //leatherHoodTexture = Game.Content.Load<Texture2D>("LeatherHood");
            //leatherArmorTexture = Game.Content.Load<Texture2D>("LetherArmor");
            //bowTexture = Game.Content.Load<Texture2D>("BowSmall");
            backgroundTexture = Game.Content.Load <Texture2D>("GrassBackground");
            selectionTexture  = Game.Content.Load <Texture2D>("Selection");
            damageSpriteFont  = Game.Content.Load <SpriteFont>("Damage");
            chatSpriteFont    = Game.Content.Load <SpriteFont>("ChatFont");
            bigBushTexture    = Game.Content.Load <Texture2D>("bigbush");
            hudbarTexture     = Game.Content.Load <Texture2D>("HudBar");
            arrowTexture      = Game.Content.Load <Texture2D>("ArrowProjectile");
            chatIcon          = Game.Content.Load <Texture2D>("ChatIcon");
            deadEffect        = Game.Content.Load <Effect>("DeadEffect");

            effectManager.LoadContent(graphicsDevice, Game.Content);

            //generalMappings = Game.Content.Load<ActionKeyMapping[]>("DefaultKeys\\General");
            //for (int i = 0; i <= generalMappings.GetUpperBound(0); i++)
            //{
            //    generalMappings[i].ActionTriggered += new ActionTriggeredEventHandler(GeneralKeys_ActionTriggered);
            //}
            //Input.Actions.AddRange(generalMappings);


            //DateTime timeOut = DateTime.Now.AddSeconds(20);
            //while (!network.Connected && DateTime.Now < timeOut)
            //{
            //    Thread.Sleep(500);
            //}
            //if (!network.Connected)
            //{
            //    this.Game.Exit();
            //    return;
            //}

            ActionButtonMapping actionButtonMappingMoveTo = new ActionButtonMapping();

            actionButtonMappingMoveTo.Id               = 1;
            actionButtonMappingMoveTo.Primary          = MouseButtons.Right;
            actionButtonMappingMoveTo.ActionTriggered += ActionButtonMappingMoveTo_ActionTriggered;
            Input.Actions.Add(actionButtonMappingMoveTo);

            ActionButtonMapping actionButtonMappingAimTo = new ActionButtonMapping();

            actionButtonMappingAimTo.Id               = 2;
            actionButtonMappingAimTo.Primary          = MouseButtons.Left;
            actionButtonMappingAimTo.ActionTriggered += ActionButtonMappingAimTo_ActionTriggered;
            Input.Actions.Add(actionButtonMappingAimTo);

            ActionKeyMapping actionKeyMappingAbility1 = new ActionKeyMapping();

            actionKeyMappingAbility1.Id               = 11;
            actionKeyMappingAbility1.Primary          = Keys.D1;
            actionKeyMappingAbility1.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility1);
            ActionKeyMapping actionKeyMappingAbility2 = new ActionKeyMapping();

            actionKeyMappingAbility2.Id               = 12;
            actionKeyMappingAbility2.Primary          = Keys.D2;
            actionKeyMappingAbility2.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility2);
            ActionKeyMapping actionKeyMappingAbility3 = new ActionKeyMapping();

            actionKeyMappingAbility3.Id               = 13;
            actionKeyMappingAbility3.Primary          = Keys.D3;
            actionKeyMappingAbility3.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility3);
            ActionKeyMapping actionKeyMappingAbility4 = new ActionKeyMapping();

            actionKeyMappingAbility4.Id               = 14;
            actionKeyMappingAbility4.Primary          = Keys.D4;
            actionKeyMappingAbility4.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility4);
            ActionKeyMapping actionKeyMappingAbility5 = new ActionKeyMapping();

            actionKeyMappingAbility5.Id               = 15;
            actionKeyMappingAbility5.Primary          = Keys.D5;
            actionKeyMappingAbility5.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility5);
            ActionKeyMapping actionKeyMappingAbility6 = new ActionKeyMapping();

            actionKeyMappingAbility6.Id               = 16;
            actionKeyMappingAbility6.Primary          = Keys.D6;
            actionKeyMappingAbility6.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility6);
            ActionKeyMapping actionKeyMappingAbility7 = new ActionKeyMapping();

            actionKeyMappingAbility7.Id               = 16;
            actionKeyMappingAbility7.Primary          = Keys.D7;
            actionKeyMappingAbility7.ActionTriggered += actionKeyMappingAbility_ActionTriggered;
            Input.Actions.Add(actionKeyMappingAbility7);

            ActionKeyMapping actionKeyMappingOpenBags = new ActionKeyMapping();

            actionKeyMappingOpenBags.Id               = 4;
            actionKeyMappingOpenBags.Primary          = Keys.B;
            actionKeyMappingOpenBags.ActionTriggered += ActionKeyMappingOpenBags_ActionTriggered;
            Input.Actions.Add(actionKeyMappingOpenBags);
            ActionKeyMapping actionKeyMappingCharacter = new ActionKeyMapping();

            actionKeyMappingCharacter.Id               = 5;
            actionKeyMappingCharacter.Primary          = Keys.C;
            actionKeyMappingCharacter.ActionTriggered += ActionKeyMappingOpenCharacter_ActionTriggered;
            Input.Actions.Add(actionKeyMappingCharacter);

            ActionKeyMapping actionKeyMappingChat = new ActionKeyMapping();

            actionKeyMappingChat.Id               = 6;
            actionKeyMappingChat.Primary          = Keys.Enter;
            actionKeyMappingChat.ActionTriggered += ActionKeyMappingChat_ActionTriggered;
            Input.Actions.Add(actionKeyMappingChat);

            ActionKeyMapping actionKeyMappingToggleFlullscreen = new ActionKeyMapping();

            actionKeyMappingToggleFlullscreen.Id               = 0;
            actionKeyMappingToggleFlullscreen.Primary          = Keys.Enter;
            actionKeyMappingToggleFlullscreen.PrimaryMod       = Keys.LeftControl;
            actionKeyMappingToggleFlullscreen.ActionTriggered += ActionKeyMappingToggleFlullscreen_ActionTriggered;
            Input.Actions.Add(actionKeyMappingToggleFlullscreen);

            ActionKeyMapping actionKeyMappingGameMenu = new ActionKeyMapping();

            actionKeyMappingGameMenu.Id               = 42;
            actionKeyMappingGameMenu.Primary          = Keys.Escape;
            actionKeyMappingGameMenu.ActionTriggered += this.ActionKeyMappingOpenGameMenu;
            Input.Actions.Add(actionKeyMappingGameMenu);
        }