Esempio n. 1
0
 public override void Update(GameTime time, GameScreenManager Manager)
 {
     foreach (Player p in GameManager.Players)
     {
         p.GamePad.Update();
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Core framework constructor.
        /// </summary>
        public FrameworkCore() : base()
        {
            game = this;

            graphicsDeviceManager = new GraphicsDeviceManager(this);
            viewer           = new Viewer(this);
            inputManager     = new InputComponentManager();
            fontManager      = new FontManager();
            screenManager    = new GameScreenManager(this);
            textManager      = new TextManager(this);
            resourceManager  = new ResourceManager(this, "Content");
            particleManager  = new ParticleManager();
            collisionContext = new CollisionContext();
            soundManager     = new SoundManager();
            gameEventManager = new GameEventManager();
            fpsCounter       = new FpsCounter();

            //  Entry GameScreenManager
            AddComponent(screenManager);

            // Disable vertical retrace to get highest framerates possible for
            // testing performance.
            //graphicsDeviceManager.SynchronizeWithVerticalRetrace = false;

            // Update as fast as possible, do not use fixed time steps
            IsFixedTimeStep = false;
        }
Esempio n. 3
0
File: Shri.cs Progetto: PlGGS/Shri
 public Shri()
 {
     _graphics          = new GraphicsDeviceManager(this);
     IsMouseVisible     = true;
     _gameScreenManager = new GameScreenManager();
     _inputManager      = new InputManager();
     _contentManager    = new ContentManager();
     _soundManager      = new SoundManager(new List <SoundFX>
     {
         new SoundFX {
             Key = "Fill", FileName = "Shri/Content/Audio/fill.wav", DefaultPitch = 0.01f, DefaultVolume = 1
         },
         new SoundFX {
             Key = "NoFill", FileName = "Shri/Content/Audio/noFill.wav", DefaultPitch = 0.01f, DefaultVolume = 1
         },
         new SoundFX {
             Key = "Open", FileName = "Shri/Content/Audio/open.wav", DefaultPitch = 0.01f, DefaultVolume = 1
         },
         new SoundFX {
             Key = "Close", FileName = "Shri/Content/Audio/close.wav", DefaultPitch = 0.01f, DefaultVolume = 1
         },
         new SoundFX {
             Key = "Music", FileName = "Shri/Content/Audio/music.wav", DefaultPitch = 0.01f, DefaultVolume = 1
         },
         new SoundFX {
             Key = "TempWin", FileName = "Shri/Content/Audio/tempWin.wav", DefaultPitch = 0.01f, DefaultVolume = 1
         }
     }, 1);
 }
Esempio n. 4
0
 public override void Update(Microsoft.Xna.Framework.GameTime time, GameScreenManager Manager)
 {
     foreach (Player p in GameManager.Players)
     {
         p.GamePad.Update();
     }
     foreach (ControllerButton b in Enum.GetValues(typeof(ControllerButton)))
     {
         if (GameManager.Players[0].GamePad.IsButtonPressed(b))
         {
             foreach (Player p in GameManager.Players)
             {
                 if (p.IsComputer)
                 {
                     p.GamePad.GetSimState().SetButtonDown(b);
                 }
             }
         }
         if (GameManager.Players[0].GamePad.IsButtonReleased(b))
         {
             foreach (Player p in GameManager.Players)
             {
                 if (p.IsComputer)
                 {
                     p.GamePad.GetSimState().SetButtonUp(b);
                 }
             }
         }
     }
 }
Esempio n. 5
0
    private void Awake()
    {
        Assert.IsNull(Instance, "There can only be one GameScreenManager!");
        Instance = this;

        List <GameObject> panelsObjects = new List <GameObject> {
            previousPanel, currentPanel, nextPanel
        };

        Assert.IsFalse(panelsObjects.Any(o => o == null), "One of the Panels wasn't properly assigned");

        m_PanelRects = panelsObjects.ToDictionary(o => o, o => o.GetComponent <RectTransform>());

        m_ScreenPrefabs = new Dictionary <ScreenType, Transform>()
        {
            { ScreenType.Home, homeScreenPrefab },
            { ScreenType.Game, gameScreenPrefab },
            { ScreenType.End, endScreenPrefab },
        };

        Assert.IsTrue(Enum.GetValues(typeof(ScreenType)).Length == m_ScreenPrefabs.Count);
        Assert.IsFalse(m_ScreenPrefabs.Values.Any(t => t == null), "One of the screen prefabs wasn't set properly");

        m_CurrentlyLoadedPrefab = LoadScreen(firstScreenToLoad, currentPanel);
    }
Esempio n. 6
0
        public PlayScreen(GameScreenManager gameScreenManager, Texture2D interfaceTexture, TextureAtlas interfaceAtlas)
            : base(gameScreenManager)
        {
            SpawnX = 214;
            SpawnY = 250;
            _cam = new Camera2D(MainGame.GraphicD.Viewport);
            Seeds.CreateNewSeeds();
            Spritebatch = new SpriteBatch(MainGame.GraphicD);

            DecorationTexture = MainGame.ContentLoader.Load<Texture2D>("Screens/Play/Sheets/decorations");
            DecorationAtlas = MainGame.ContentLoader.Load<TextureAtlas>("Screens/Play/Sheets/decorationsJSON");

            CharacterTexture = MainGame.ContentLoader.Load<Texture2D>("Screens/Play/Sheets/characters");
            CharacterAtlas = MainGame.ContentLoader.Load<TextureAtlas>("Screens/Play/Sheets/charactersJSON");

            InterfaceTexture = interfaceTexture;
            InterfaceAtlas = interfaceAtlas;

            var worlditems = new TextureRegion[WorldItemKey.AllItems.Count];
            for (var i = 0; i < WorldItemKey.AllItems.Count; i++)
                worlditems[i] = DecorationAtlas.GetRegion(WorldItemKey.AllItems[i]);
            WorldItemKey.ItemRegions = worlditems;

            #if DEBUG
            if (ShowMap)
            {
                WorldData.MyWorldData = new WorldData();
                _cw = new CreateWorld(true, false);
                //_tb = new TestBox();
            }
            else
            {
                var az = Enumerable.Range(0, 64*64).Select(i => Color.Red).ToArray();
                ErrorBox = new Texture2D(MainGame.GraphicD, 64, 64, false, SurfaceFormat.Color);
                ErrorBox.SetData(az);
            #endif
                // Create a new SpriteBatch, which can be used to draw textures.

                // showMap = new CreateWorld(GraphicsDevice);
                if (WorldData.MyWorldData == null)
                {
                    //look for file
                    //Utility.RemoveSave();
                    WorldData.MyWorldData = Utility.LoadGameData();
                    if (WorldData.MyWorldData == null)
                    {
                        WorldData.MyWorldData = new WorldData();
                        _cw = new CreateWorld(false, true);
                    }
                }
                _managers = new Manager();
                _myInputs = new Inputs();
            #if DEBUG
            }
            #endif

            GC.Collect();
        }
Esempio n. 7
0
        static void Postfix(GameScreenManager __instance)
        {
            if (!Main.enabled)
            {
                return;
            }

            Main.SetCapacity(true);
        }
Esempio n. 8
0
        public MainGameScreen()
        {
            graphics = new GraphicsDeviceManager(this);
            Content.RootDirectory    = "Content";
            graphics.GraphicsProfile = GraphicsProfile.HiDef;

            Time.Initialize();
            InputManager.Initialize();
            GameScreenManager.Initialize(graphics);
        }
Esempio n. 9
0
        protected override void LoadContent()
        {
            spriteBatch = new SpriteBatch(GameScreenManager.GraphicsDevice);

            // F*****g around
            backgrounds = new SpriteBatch(GraphicsDevice);
            background  = Content.Load <Texture2D>("DOGGIE");
            offset      = Content.Load <Effect>("offset");


            // *** Lab 8 Item ***********************
            GameScreenManager.Setup(false, 1080, 720);
            //***************************************

            particleManager                 = new ParticleManager(GraphicsDevice, 100);
            particleEffect                  = Content.Load <Effect>("ParticleShader");
            PlayerBehav.bulletMesh          = Content.Load <Model>("Sphere");
            AsteroidObject.AstroidModel     = Content.Load <Model>("Sphere");
            AsteroidObject.tex              = Content.Load <Texture2D>("lunaTexture");
            StandardLightingMaterial.effect = Content.Load <Effect>("StandardShading");
            particleTex = Content.Load <Texture2D>("fire");
            font        = Content.Load <SpriteFont>("font");

            Player = GameObject3d.Initialize();
            Player.transform.LocalScale *= 0.01f;
            Player.transform.Rotate(Vector3.Left, -(float)Math.PI / 2);
            PlayerBehav.bulletMesh = Content.Load <Model>("Sphere");
            Player.addBehavior(new PlayerBehav());
            Rigidbody r = new Rigidbody();

            Player.addBehavior(r);
            SphereCollider s = new SphereCollider();

            Player.addBehavior(s);
            Player.mesh = Content.Load <Model>("PlayerModel");

            // Sound shit
            gunSound      = Content.Load <SoundEffect>("Gun");
            soundInstance = gunSound.CreateInstance();
            AudioListener listener = new AudioListener();

            listener.Position = camera.Transform.Position;
            listener.Forward  = camera.Transform.Forward;
            AudioEmitter emitter = new AudioEmitter();

            emitter.Position = Vector3.Zero;
            soundInstance.Apply3D(listener, emitter);

            foreach (GameObject3d gameObject in GameObject3d.activeGameObjects)
            {
                gameObject.Start();
            }
            GameObject.gameStarted = true;
        }
Esempio n. 10
0
 public override void Update(GameTime time, GameScreenManager Manager)
 {
     foreach (Player p in players)
     {
         if (p.IsComputer)
         {
             currentGame.RunAI(p, p.ComputerLevel);
         }
     }
     currentGame.Update(time, this);
 }
        /// <summary>
        /// calling when exit key pressed.
        /// </summary>
        public override void OnExit(int inputIndex)
        {
            MessageBoxScreen messageBox =
                new MessageBoxScreen("Are you sure you want to exit?");

            //  Register message box handle method
            messageBox.Accepted += ReturnToTitleAccepted;

            GameScreenManager.AddScreen(messageBox, true);


            //  Play the open menu sound
            GameSound.Play(SoundTrack.MenuClose);
        }
Esempio n. 12
0
        public Core()
        {
            if (Instance != null)
            {
                throw new AccessViolationException("Unable to create more than one instance");
            }

            Instance = this;

            Exiting      += Game_Exiting;
            mGraphics     = new GraphicsDeviceManager(this);
            ScreenManager = new GameScreenManager(this);

            IsMouseVisible = true;
            //IsFixedTimeStep = false;
        }
Esempio n. 13
0
    private void Awake()
    {
        if (instance == null)
        {
            instance = this;
        }
        else
        {
            Destroy(gameObject);
        }

        foreach (var screen in _screens)
        {
            screens.Add(Instantiate(screen, _holder).GetComponent <GameUI_Screen>());
        }
    }
Esempio n. 14
0
        /// <summary>
        /// Moves to selected menu.
        /// </summary>
        /// <param name="inputIndex">an index of the input</param>
        /// <param name="verticalEntryIndex">
        /// a vertical index of selected entry
        /// </param>
        /// <param name="horizontalEntryIndex">
        /// a horizontal index of selected entry
        /// </param>
        public override void OnSelectedEntry(int inputIndex,
                                             int verticalEntryIndex,
                                             int horizontalEntryIndex)
        {
            //  It prevents more than one input.
            if (inputIndex != 0)
            {
                return;
            }

            if (ScreenState == ScreenState.Active)
            {
                //  If selected a start button, jump to the first stage screen
                if (verticalEntryIndex == 0)
                {
                    NextScreen            = new LoadingScreen();
                    NextScreen.NextScreen = new FirstStageScreen();

                    TransitionOffTime = TimeSpan.FromSeconds(1.0f);
                    ExitScreen();
                }
                //  If selected a versus button, jump to the versus ready screen
                else if (verticalEntryIndex == 1)
                {
                    NextScreen = new VersusReadyScreen();

                    TransitionOffTime = TimeSpan.FromSeconds(1.0f);
                    ExitScreen();
                }
                //  If selected a exit button, exit the program
                else if (verticalEntryIndex == 2)
                {
                    // Allows the default game to exit on Xbox 360 and Windows
                    MessageBoxScreen messageBox =
                        new MessageBoxScreen("Are you sure you want to exit?");

                    //  Register message box handle method
                    messageBox.Accepted += RobotGameGame.ExitAccepted;

                    GameScreenManager.AddScreen(messageBox, true);
                }

                //  Play the select sound
                GameSound.Play(SoundTrack.MenuClose);
            }
        }
Esempio n. 15
0
        /// <summary>
        /// is called when the exit button is pressed.
        /// </summary>
        public override void OnExit(int inputIndex)
        {
            if (!this.IsActive)
            {
                return;
            }

            MessageBoxScreen messageBox =
                new MessageBoxScreen("Are you sure you want to exit?");

            //  Set to message box handle method
            messageBox.Accepted += RobotGameGame.ExitAccepted;

            GameScreenManager.AddScreen(messageBox, true);

            //  Play the select sound
            GameSound.Play(SoundTrack.MenuClose);
        }
Esempio n. 16
0
        public WelcomeScreen(GameScreenManager gameScreenManager, Texture2D interfaceTexture,
                             TextureAtlas interfaceAtlas)
            : base(gameScreenManager)
        {
            _interfaceTexture = interfaceTexture;
            _interfaceAtlas = interfaceAtlas;
            _buttonExitPosition.Width =
                _buttonLoadGamePosition.Width =
                _buttonNewGamePosition.Width =
                _buttonSettingsPosition.Width = _interfaceAtlas.GetRegion("NewGame").Bounds.Width;

            _buttonExitPosition.Height =
                _buttonLoadGamePosition.Height =
                _buttonNewGamePosition.Height =
                _buttonSettingsPosition.Height = _interfaceAtlas.GetRegion("NewGame").Bounds.Height;
            _inputs = new MainInput();
            _spriteBatch = new SpriteBatch(MainGame.GraphicD);
        }
Esempio n. 17
0
        public override void Update(GameTime time, GameScreenManager Manager)
        {
            for (int i = 0; i < Players.Length; i++)
            {
                if (Players[i].IsComputer)
                {
                    if (GamePad.GetState((PlayerIndex)i).IsButtonDown(Buttons.Start))
                    {
                        Players[i] = new TemporaryPlayer("", Difficulty.NON_COMP, (PlayerIndex)i);
                        int color = 0;
                        for (int j = 0; j < Players.Length; j++)
                        {
                            if (Players[j].PlayerColor == PCLR[color])
                            {
                                color++;
                                j = -1;
                            }
                        }
                        Players[i].PlayerColor = PCLR[color];
                    }
                }
                else
                {
                    Players[i].MenuUpdate(this);
                }
            }

            if (Players.Any(x => !x.IsComputer) && Players.Where(x => !x.IsComputer).All(x => x.isReady))
            {
                // EVERYONE READY
                foreach (TemporaryPlayer p in Players)
                {
                    p.isReady = true;
                }
                Player[] ActualPlayers = new Player[4];
                for (int i = 0; i < 4; i++)
                {
                    ActualPlayers[i] = Players[i].GetFinalizedPlayer();
                }
                GameManager.Setup(ActualPlayers);
                GameTimer.AddStaticTimer(time, new TimeSpan(0, 0, 1), x => { Manager.ChangeScreen(new SetupScreen()); });
            }
        }
Esempio n. 18
0
    // Update is called once per frame
    void Update()
    {
        if (!PlayerMovementIsPaused && SceneManager.GetActiveScene().name == "Game")
        {
            AddPlanets();
            SortPlanetsByDistance();
            ChooseCurrentPlanet();

            if (buttonIsHeld)
            {
                if (!GameScreenManager.playerHasCrashed && !playerCantOrbit)
                {
                    OrbitalMovement();
                }
                else
                {
                    NormalMovement();
                }
            }
            else if (!buttonIsHeld)
            {
                isOrbiting              = false;
                isOnCorrectHeading      = false;
                outOfBoundsWithoutOrbit = true;
                NormalMovement();
                SortPlanetsByDistance();
                if (currentPlanet != null)
                {
                    ChangeSprite(false);
                }
            }
            currentPos = player.position.y;

            if (currentPos > 500)
            {
                if (!GameScreenManager.playerHasCrashed)
                {
                    GameScreenManager.MoveColliders();
                }
            }
            playerPosition = self.transform.position;
        }
    }
Esempio n. 19
0
    public static GameScreen GetScreen(EScreen aScreen)
    {
        GameScreenManager     gameScreenManager = GameScreenManager.Instance;
        IServiceProvider      serviceProvider   = gameScreenManager.Service;
        GraphicsDeviceManager graphics          = gameScreenManager.Graphics;

        switch (aScreen)
        {
        case EScreen.SplashScreen:
            return(new cIntro(serviceProvider, graphics));

        case EScreen.MainTitle:
            return(new MainTitle(serviceProvider, graphics));

        case EScreen.MainMenu:
            return(new cMainMenu(serviceProvider, graphics));
        }

        return(null);
    }
Esempio n. 20
0
        /// <summary>
        /// Dispose all managers.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            if (fpsCounter != null)
            {
                fpsCounter = null;
            }

            if (textManager != null)
            {
                textManager.Dispose();
                textManager = null;
            }

            if (fontManager != null)
            {
                fontManager.Dispose();
                fontManager = null;
            }

            inputManager = null;

            if (collisionContext != null)
            {
                collisionContext.ClearAllLayer();
                collisionContext = null;
            }

            if (particleManager != null)
            {
                particleManager.ClearAllParticles();
                particleManager = null;
            }

            if (soundManager != null)
            {
                soundManager.Dispose();
                soundManager = null;
            }

            if (screenManager != null)
            {
                screenManager.Dispose();
                screenManager = null;
            }

            if (viewer != null)
            {
                viewer.Dispose();
                viewer = null;
            }

            if (resourceManager != null)
            {
                resourceManager.Dispose();
                resourceManager = null;
            }

            if (debugFont != null)
            {
                debugFont = null;
            }

            base.Dispose(disposing);
        }
Esempio n. 21
0
 public static void DestroyInstance()
 {
     Instance = null;
 }
Esempio n. 22
0
 //Mono Funcitons
 private void Start()
 {
     display           = GetComponentInChildren <GameDisplay>();
     gameScreenManager = GameObject.FindObjectOfType <GameScreenManager>();
 }
Esempio n. 23
0
 public void Awake()
 {
     _gameScreenManager = GameObject.FindGameObjectWithTag("Root").GetComponent <GameScreenManager>();
 }
Esempio n. 24
0
 public override void Update(GameTime time, GameScreenManager Manager)
 {
 }
Esempio n. 25
0
 protected override void OnCleanUp()
 {
     Debug.Assert((Object)Instance != (Object)null);
     Instance = null;
 }
Esempio n. 26
0
 void Awake()
 {
     _instance = this;
 }
Esempio n. 27
0
 protected override void OnPrefabInit()
 {
     base.OnPrefabInit();
     Debug.Assert((Object)Instance == (Object)null);
     Instance = this;
 }