Ejemplo n.º 1
0
        public InGameLevel(Player player1, Game game)
        {
            this._inGameService = (InGameManager)(game.Services.GetService(typeof(InGameManager)));
            this.spriteService = (IManageSprites)(game.Services.GetService(typeof(IManageSprites)));
            this._collisionService = (IManageCollision)(game.Services.GetService(typeof(IManageCollision)));

            _player1 = player1;
        }
Ejemplo n.º 2
0
        private IManageSprites _spritemanager; //Spritemanager(For å laste inn teksturer når spilleren går opp i level)

        #endregion Fields

        #region Constructors

        public Player(Rectangle destinationRectangle, float layerDepth, float scale, Game game)
            : base(destinationRectangle, layerDepth, scale, game)
        {
            Directory = @"player";
            setSpeed(4);
            combatLevel = 1;
            setStats();
            setHpBar();

            //Henter ut inGameManager og spriteManager fra game
            _inGameManager = (InGameManager)game.Services.GetService(typeof(InGameManager));
            _spritemanager = (IManageSprites)game.Services.GetService(typeof(IManageSprites));

            //Skalerer spilleren med scale
            destinationRectangle.Width = (int)(destinationRectangle.Width * scale);
            destinationRectangle.Height = (int)(destinationRectangle.Height * scale);

            //Setter hitboxen til spilleren til 40px høy og bredden på spilleren / 2
            footBoxWidth = (int)destinationRectangle.Width;
            footBoxXOffset = (int)footBoxWidth / 2;
            footBoxYOffset = (int)(110 * scale);
            footBoxHeight = (int)(60 * scale);

            //Plasserer boksen midstilt nederst på spilleren.
            _footBox = new Rectangle(destinationRectangle.X - footBoxXOffset, destinationRectangle.Y + footBoxYOffset, footBoxWidth, (int)footBoxHeight);
            TargetBox = new Rectangle(_footBox.X - targetBoxXDif / 2 - 5, _footBox.Y, _footBox.Width + targetBoxXDif, _footBox.Height + targetBoxYDif);

            //Legger til alle navn på animasjoner som spilleren har, brukes for å laste inn riktige animasjoner.
            animationList.Add("block");
            animationList.Add("strikeSword");
            animationList.Add("battleBlockWalk");

            //Legger til alle navn på ben som hører til animasjonen, brukes for å endre på teksturer
            playerTextureList.Add("torso");
            playerTextureList.Add("bicep");
            playerTextureList.Add("shieldHand_Walking");
            playerTextureList.Add("hip");
            playerTextureList.Add("shin");
            playerTextureList.Add("foot");
            playerTextureList.Add("head");
            playerTextureList.Add("forearm");
            playerTextureList.Add("swordHand");
            playerTextureList.Add("helmet");
            playerTextureList.Add("shield_StudWood_Ready");
            playerTextureList.Add("shield_StudWood_Slashing");
            playerTextureList.Add("shieldHand_Blocking");
        }
Ejemplo n.º 3
0
        public Game1()
        {
            graphics = new GraphicsDeviceManager(this);
            Content.RootDirectory = "Content";

            //setter bredde og høyde på spillvinduet
            graphics.PreferredBackBufferWidth = 1245;
            graphics.PreferredBackBufferHeight = 700;

              //her opprettes alle spillets komponenter
            //holder orden på hvilken tilstand spillet er i (pauset, i spill, i meny osv.)
            GameComponent gameStateManager = new GameStateManager(this);
            Components.Add(gameStateManager);
            Services.AddService(typeof(IManageStates), gameStateManager);

            //hovedoppgaven til SpriteManager (/IManageSprites) er å tegne alt som skal på skjermen.
            DrawableGameComponent spriteManager = new SpriteManager(this);
            Components.Add(spriteManager);
            Services.AddService(typeof(IManageSprites), spriteManager);

            //har ansvaret for kollisjonssjekking
            GameComponent collisionManager = new CollisionManager(this);
            Components.Add(collisionManager);
            Services.AddService(typeof(IManageCollision), collisionManager);

            //holder orden på inn-data
            GameComponent inputManager = new InputManager(this);
            Components.Add(inputManager);
            Services.AddService(typeof(IManageInput), inputManager);

            //styrer menyen (hva som skal tegnes og oppdateres i menyene)
            GameComponent menuManager = new MenuManager(this);
            Components.Add(menuManager);
            Services.AddService(typeof(MenuManager), menuManager);

            //styrer selve spillet (oppretter levler, bestemmer hva som skal tegnes og oppdateres osv.)
            GameComponent inGameManager = new InGameManager(this);
            Components.Add(inGameManager);
            Services.AddService(typeof(InGameManager), inGameManager);

            //styrer spillets lyd
            DrawableGameComponent audioManager = new AudioManager(this);
            Components.Add(audioManager);
            Services.AddService(typeof(IManageAudio), audioManager);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Allows the game component to perform any initialization it needs to before starting
        /// to run.  This is where it can query for any required services and load content.
        /// </summary>
        public override void Initialize()
        {
            //initialiserer komponenter
            _spriteService = (IManageSprites)Game.Services.GetService(typeof(IManageSprites));
            _collisionService = (IManageCollision)Game.Services.GetService(typeof(IManageCollision));
            _inGameService = (InGameManager)Game.Services.GetService(typeof(InGameManager));
            _menuService = (MenuManager)Game.Services.GetService(typeof(MenuManager));
            _audioService = (IManageAudio)Game.Services.GetService(typeof(AudioManager));

            //spillet vil starte i denne tilstanden
            ChangeState("MainMenu");

            base.Initialize();
        }