示例#1
0
 void OnCollisionEnter2D(Collision2D collision)
 {
     if (!collected)
     {
         if (canBeCollectedByEntitesTagged.Contains(collision.gameObject.tag))
         {
             GameManager.instance.GetComponent <TutorialManager> ().SetTrigger(TutorialManager.TutorialTriggers.PickupCollected);
             UpgradeSystem upSys = collision.gameObject.GetComponent <UpgradeSystem> ();
             //Grant Upgrade , If the reciever has an UpgradeSystem
             if (upSys != null)                   // if it's players
             {
                 collected = true;
                 sound.Collect();
                 body.bodyType = RigidbodyType2D.Kinematic;
                 if (!grantOneAtRandom)
                 {
                     foreach (Upgrade u in upgradesToGrant)
                     {
                         upSys.Add(u);
                     }
                 }
                 else
                 {
                     Upgrade toGrant = upgradesToGrant [Random.Range(0, upgradesToGrant.Count)];
                     upSys.Add(toGrant);
                 }
             }
             animator.SetTrigger("Collected");
         }
         this.enabled = false;
     }
 }
示例#2
0
    private void Start()
    {
        if (!tutorial)
        {
            Time.timeScale = 1;
        }

        upgrades = UpgradeSystem.Get();
        increaseScoreMilestone           = initialMilestone;
        WaveSystem.OnStartWaveFirstTime += StartGivingPoints;
        Fairy.OnFairyDeath   += CheckFairies;
        Fairy.OnFairyEscaped += AddTimesEscaped;
        Enemy.OnDeath        += AddPoints;

        upgrades.AssignUpgrades();

        maxFairies         = (int)upgrades.GetUpgrade(0).GetCurrentAmount();
        shoot.rechargeTime = upgrades.GetUpgrade(1).GetCurrentAmount();
        towerFireRate      = upgrades.GetUpgrade(2).GetCurrentAmount();
        fairySpeed         = (int)upgrades.GetUpgrade(3).GetCurrentAmount();

        turretSpawner.fireRate     = towerFireRate;
        upgradePointsGiveMilestone = upgradePointsGiveMilestonesOriginal;

        for (int i = 0; i < confetti.Length; i++)
        {
            confetti[i].Stop();
        }
    }
示例#3
0
    public void AssignData()
    {
        id             = data.id;
        animation      = GetComponent <UIAnimation>();
        button         = GetComponentInChildren <Button>();
        nameText       = transform.GetChild(1).GetChild(0).GetComponent <Text>();
        levelText      = transform.GetChild(1).GetChild(1).GetComponent <Text>();
        differenceText = transform.GetChild(1).GetChild(2).GetComponent <Text>();
        costText       = transform.GetChild(1).GetChild(3).GetComponent <Text>();
        currentColor   = Color.white;


        SpriteState state;

        button.image.sprite  = data.buttonIdle;
        state.disabledSprite = data.buttonDisabled;
        state.pressedSprite  = data.buttonPressed;

        button.spriteState = state;
        isUnlocked         = data.isUnlocked;
        currentLevel       = data.currentLevel;
        maxLevel           = data.amountPerLevel.Length;

        UpgradeSystem.Get().AddUpgrade(this);

        button.onClick.AddListener(BuyUpgrade);

        if (OnUpgradePurcharsed != null)
        {
            OnUpgradePurcharsed(id);
        }
    }
 void Start()
 {
     if (data == null)
     {
         data = GameManager.instance.Player.GetComponent <UpgradeSystem> ().Bind(this);
     }
     RefreshUI();
 }
示例#5
0
        public IEnumerator JSONReadTest()
        {
            UpgradeSystem upgradeSystem = new UpgradeSystem();
            int           listCount     = upgradeSystem.GetUpgradeCount();

            upgradeSystem.LoadUpgrades();
            Assert.AreNotEqual(listCount, upgradeSystem.GetUpgradeCount());
            yield return(null);
        }
示例#6
0
    public void ForcedChangeScene()
    {
        if (SceneManager.GetActiveScene().name == "Gameplay")
        {
            Destroy(GameManager.Get().gameObject);
            Destroy(WaveSystem.Get().gameObject);
            Destroy(TurretSpawner.Get().gameObject);
            Destroy(Highscore.Get().gameObject);
            Destroy(MilestoneManager.Get().gameObject);

            UpgradeSystem upgrades = UpgradeSystem.Get();

            if (upgrades)
            {
                upgrades.CleanList();
            }
        }
        else if (SceneManager.GetActiveScene().name == "Upgrade Screen")
        {
            AkSoundEngine.StopAll();
        }



        if (sceneName == "Gameplay")
        {
            AkSoundEngine.StopAll();
            UpgradeSystem upgrades = UpgradeSystem.Get();

            if (upgrades)
            {
                upgrades.CleanList();
            }

            LoaderManager.Get().LoadScene(sceneName);
            UILoadingScreen.Get().SetVisible(true);
        }
        else if (sceneName == "Upgrade Screen")
        {
            AkSoundEngine.StopAll();

            UpgradeSystem upgrades = UpgradeSystem.Get();

            if (upgrades)
            {
                upgrades.CleanList();
            }

            SceneManager.LoadScene(sceneName);
        }
        else
        {
            SceneManager.LoadScene(sceneName);
        }

        Time.timeScale = 1;
    }
示例#7
0
        /// <summary>
        /// This is called when the game should draw itself.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing values.</param>
        protected override void Draw(GameTime gameTime)
        {
            /* GraphicsDevice.Clear(Color.CornflowerBlue);
             * spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend, null, null, null, null, null);
             * hud.Draw(spriteBatch,graphics.PreferredBackBufferWidth,graphics.PreferredBackBufferHeight);
             *
             * // TODO: Add your drawing code here
             * spriteBatch.End();
             * base.Draw(gameTime);*/


            GraphicsDevice.Clear(Color.WhiteSmoke);
            spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend, null, null, null, null, camera.transformation(GraphicsDevice));

            //spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend, null, null, null, null, camera.transformation(GraphicsDevice));

            // TODO: Add your drawing code here

            gameManager.Draw(spriteBatch);

            spriteBatch.End();

            spriteBatch.Begin();

            /*for (int i = 0; i < buttons.Count; i++)
             * {
             *  buttons[i].Draw(spriteBatch, 1);
             * }
             * stick.Draw(spriteBatch, 1);*/
            if (GameData.menuState == MenuState.MissionMenu)
            {
                missionScreen.Draw(spriteBatch, 0.99f);
            }
            else if (GameData.inGameState != InGameState.Paused)
            {
                hud.Draw(spriteBatch, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight);
                UI.Draw(spriteBatch, 1);
            }
            else
            {
                //UI.Draw(spriteBatch, 0.9f);
                UpgradeSystem.Draw(spriteBatch);
            }



            /*if (gameManager.GetPlayer.playerCanLand)
             * {
             *  landButton.Draw(spriteBatch, 1);
             * }*/
            spriteBatch.End();

            base.Draw(gameTime);
        }
示例#8
0
        public IEnumerator UpgradeObjectRetrievalTest()
        {
            UpgradeSystem upgradeSystem = new UpgradeSystem();
            Upgrade       testUpgrade   = new Upgrade("Attack", 1);

            upgradeSystem.AddUpgrade(testUpgrade);
            Upgrade testUpgrade2 = upgradeSystem.GetUpgrade("Attack");

            Assert.AreEqual("Attack", testUpgrade2.GetUpgradeName());
            yield return(null);
        }
示例#9
0
        /// <summary>
        /// LoadContent will be called once per game and is the place to load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            UI.LoadContent(Content, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight);
            UIClass.LoadContent(Content);
            UpgradeSystem.LoadContent(Content, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight);

            WeaponList.LoadContent(Content);
            ChopperList.LoadContent(Content);
            EffectsList.LoadContent(Content);

            EnemyMaker.LoadContent(Content);

            // Create a new SpriteBatch, which can be used to draw textures.
            spriteBatch = new SpriteBatch(GraphicsDevice);
            Level level = new Level(500, 500);


            Player player = new Player(ChopperList.GetChopper(ChopperType.Training), new Vector2(500, 2000));

            //Player player = new Player(ChopperList.GetChopper(0), new Vector2(0, 0));
            hud    = new Hud(Content.Load <SpriteFont>("hudFont"));
            camera = new Camera();
            //camera.Position = player.PlayerSpriteCenter;
            camera.Position = player.PlayerCenter;
            gameManager     = new GameManager(level, player);

            List <Sprite> listOfEnemies = new List <Sprite>();

            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.MGun, new Vector2(0, 0), 0, 0));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.MGun, new Vector2(0, 700), 0, 0));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.MGun, new Vector2(700, 700), 0, 0));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.MGun, new Vector2(700, 0), 0, 0));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.Rocket, new Vector2(350, 350), 0, 0));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.RocketHoming, new Vector2(800, 800), 0, 0));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.ShotGun, new Vector2(500, 500), 3, 1));
            listOfEnemies.Add(EnemyMaker.GetTurret(TurretType.ShotGun, new Vector2(250, 450), 5, 0.5f));

            level.AddEntity(listOfEnemies, true, true, true);

            listOfEnemies.Clear();
            listOfEnemies.Add(new Building(Content.Load <Texture2D>("building"), new Vector2(1000, 1000)));
            List <Helipad> listOfHelipads = new List <Helipad>();

            listOfHelipads.Add(new Helipad(Content.Load <Texture2D>("Allies\\helipad"), new Vector2(500, 2000)));
            level.AddLandingPad(listOfHelipads);

            level.AddEntity(listOfEnemies, true, true, false);

            missionScreen      = new MissionScreen(1, "GameTest", "Yarrr mission is to blow up\nevery turret. Then return\nto the base\n\nWASD - Move \nLeft\\Right arrow - rotate\nSpace - fire \nX and L - land\\lift \nU - upgrade (on helipad)\nP- developer stats\n+ and - - zoom ", graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight, Color.SaddleBrown);
            GameData.menuState = MenuState.MissionMenu;
            // TODO: use this.Content to load your game content here
        }
示例#10
0
        public IEnumerator UpgradeSystemObjectCreationTest()
        {
            UpgradeSystem upgradeSystem = new UpgradeSystem();
            int           listCount     = upgradeSystem.GetUpgradeCount();

            Assert.AreEqual(listCount, 0);
            Upgrade testUpgrade = new Upgrade("Attack", 1);

            upgradeSystem.AddUpgrade(testUpgrade);
            listCount = upgradeSystem.GetUpgradeCount();
            Assert.AreEqual(listCount, 1);
            yield return(null);
        }
示例#11
0
    public IEnumerator JSONWriteTest()
    {
        UpgradeSystem upgradeSystem = new UpgradeSystem();
        Upgrade       testUpgrade   = new Upgrade("Bomb Count", 1);

        upgradeSystem.AddUpgrade(testUpgrade);
        testUpgrade = new Upgrade("Speed", 2);
        upgradeSystem.AddUpgrade(testUpgrade);
        testUpgrade = new Upgrade("Range", 5);
        upgradeSystem.AddUpgrade(testUpgrade);
        UpgradeSystem.SaveUpgrades(upgradeSystem.GetUpgradeList());
        yield return(null);
    }
示例#12
0
        public IEnumerator JSONWriteTest()
        {
            UpgradeSystem upgradeSystem = new UpgradeSystem();
            Upgrade       testUpgrade   = new Upgrade("Attack", 1);

            upgradeSystem.AddUpgrade(testUpgrade);

            /*testUpgrade = new Upgrade("Speed", 2);
            *  upgradeSystem.AddUpgrade(testUpgrade);
            *  testUpgrade = new Upgrade("Range", 5);
            *  upgradeSystem.AddUpgrade(testUpgrade);*/
            upgradeSystem.SaveUpgrades();
            yield return(null);
        }
示例#13
0
        public IEnumerator UpgradeLevelTest()
        {
            UpgradeSystem upgradeSystem = new UpgradeSystem();
            Upgrade       testUpgrade   = new Upgrade("Attack", 1);

            upgradeSystem.AddUpgrade(testUpgrade);
            int upgradeLevel = upgradeSystem.GetUpgrade("Attack").GetUpgradeLevel();

            upgradeSystem.GetUpgrade("Attack").IncreaseLevel();
            Assert.AreNotEqual(upgradeLevel, upgradeSystem.GetUpgrade("Attack").GetUpgradeLevel());
            upgradeLevel = upgradeSystem.GetUpgrade("Attack").GetUpgradeLevel();
            upgradeSystem.GetUpgrade("Attack").SetLevel(0);
            Assert.AreNotEqual(upgradeLevel, upgradeSystem.GetUpgrade("Attack").GetUpgradeLevel());
            yield return(null);
        }
示例#14
0
    //

    // Start is called before the first frame update
    void Start()
    {
        upgradeSystem = UpgradeSystem.Get();
        Upgrade.OnUpgradePurcharsed = UpdateText;
        upgradeSystem.parent        = parentForUpgrades;
        upgradeSystem.AssignUpgrades();

        for (int i = 0; i < upgradeSystem.allUpgrades.Count; i++)
        {
            UpdateText(upgradeSystem.allUpgrades[i].id);
        }

        mainCanvas.SetActive(true);
        backgroundCanvas.SetActive(false);
    }
示例#15
0
    public void ResetEverything()
    {
        upgrades = UpgradeSystem.Get();

        if (upgrades)
        {
            upgrades.ResetUpgrades();
        }

        PlayerPrefs.SetInt("isFirstTimePlaying", 1);

        buttonAppearCounter = 0;
        button.SetActive(false);

        SceneManager.LoadScene("Home Screen");
    }
示例#16
0
        public async Task <IActionResult> Upgrade(UpgradeSystem selected)
        {
            UpdateAll upengine = new UpdateAll();
            var       Town     = await _context.Towns.LastOrDefaultAsync(x => x.UserId == User.GetUserId());

            var Player = await _userManager.FindByIdAsync(User.GetUserId());

            UpgradeSystem buildings = new UpgradeSystem(_context, Player);

            buildings.BuildingPage(Town);
            var production = buildings.Upgrades.ElementAt(selected.UpgradeIndex);

            upengine.UpdateResource(Town);
            upengine.UpdateBuildings(Town);
            await _context.SaveChangesAsync();

            if (ModelState.IsValid && production.Cost_Iron <= Town.TownIRON &&
                production.Cost_Meat <= Town.TownMEAT && production.Cost_Wheat
                <= Town.TownWHEAT && production.Cost_Wood <= Town.TownWOOD)
            {
                Town.TownWHEAT = Town.TownWHEAT - production.Cost_Wheat;
                Town.TownMEAT  = Town.TownMEAT - production.Cost_Meat;
                Town.TownIRON  = Town.TownIRON - production.Cost_Iron;
                Town.TownWOOD  = Town.TownWOOD - production.Cost_Wood;

                UpgradeSystem Engine     = new UpgradeSystem(_context, Player);
                UpgradeQueue  NewUpgrade = new UpgradeQueue();

                NewUpgrade.BuildingINDEX = production.index;
                NewUpgrade.TownID        = Town.TownId;

                NewUpgrade.ProductionTime = DateTime.Now.AddSeconds(production.Buildtime);

                _context.upgradeQueue.Add(NewUpgrade);

                await _context.SaveChangesAsync();

                return(View("Buildings", buildings));
            }
            else
            {
                await _context.SaveChangesAsync();

                ModelState.AddModelError("", "Not Enough Resources");
                return(View("Buildings", buildings));
            }
        }
示例#17
0
    // Start is called before the first frame update
    private void Start()
    {
        int goToTutorial = PlayerPrefs.GetInt("isFirstTimePlaying", 1);

        if (goToTutorial == 1)
        {
            PlayerPrefs.SetInt("isFirstTimePlaying", 1);
        }
        else if (goToTutorial == 0)
        {
            PlayerPrefs.SetInt("isFirstTimePlaying", 0);
        }

        Debug.Log(goToTutorial);
        upgrades = UpgradeSystem.Get();
        button.SetActive(false);
    }
示例#18
0
        public async Task <IActionResult> Buildings()
        {
            var Town = await _context.Towns.LastOrDefaultAsync(x => x.UserId == User.GetUserId());

            var Player = await _userManager.FindByIdAsync(User.GetUserId());

            var Set = await _context.UserGameSettings.LastOrDefaultAsync(x => x.UserId == User.GetUserId());

            UpgradeSystem model  = new UpgradeSystem();
            UpdateAll     Engine = new UpdateAll();

            Engine.UpdateResource(Town);
            Engine.UpdateBuildings(Town);
            model.BuildingPage(Town);

            await _context.SaveChangesAsync();

            return(View(model));
        }
示例#19
0
    private void GameOver()
    {
        int originalPoints = PlayerPrefs.GetInt("UpgradePoints", 0);

        PlayerPrefs.SetInt("UpgradePoints", originalPoints + upgradePointsCurrentMatch);
        UpgradeSystem.Get().UpdatePoints();
        movement.enabled = false;
        shoot.enabled    = false;
        GameOverPanel.SetActive(true);
        TurretSpawner.Get().preview = false;
        TurretSpawner.Get().StopAllOutlines();

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

        AkSoundEngine.PostEvent("perder", gameOverSound);
    }
示例#20
0
    public void RepeatScene()
    {
        if (SceneManager.GetActiveScene().name == "Gameplay")
        {
            Destroy(GameManager.Get().gameObject);
            Destroy(WaveSystem.Get().gameObject);
            Destroy(TurretSpawner.Get().gameObject);
            Destroy(Highscore.Get().gameObject);
            Destroy(MilestoneManager.Get().gameObject);
        }
        SceneManager.LoadScene(SceneManager.GetActiveScene().name);
        Time.timeScale = 1;

        UpgradeSystem upgrades = UpgradeSystem.Get();

        if (upgrades)
        {
            upgrades.CleanList();
        }
    }
示例#21
0
    //进入读取
    private void LoadPlayerStates()
    {
        UpgradeSystem us = new UpgradeSystem();

        //us.LoadData();
        level      = us.level;
        currentEXP = us.currentEXP;
        totalEXP   = getTotalEXP(level);

        levelText.text       = level.ToString();
        expText.text         = currentEXP.ToString() + "/" + totalEXP.ToString();
        expProgress.maxValue = 1;
        expProgress.minValue = 0;

        skillInfo.text = "S1 : " + us.skill_1_level.ToString() + "\n" +
                         "S2 : " + us.skill_2_level.ToString() + "\n" +
                         "S3 : " + us.skill_3_level.ToString() + "\n" +
                         "S4 : " + us.skill_4_level.ToString();

        remianPoints = us.skillPoints;
    }
示例#22
0
    public void UpgradeModule(int upgrade)
    {
        GameObject GO = UpgradeSystem.GetSelectedModule();

        switch (upgrade)
        {
        case 1:
            GO.GetComponent <ModuleObject>().UpgradeSprite(one);
            break;

        case 2:
            GO.GetComponent <ModuleObject>().UpgradeSprite(two);
            break;

        case 3:
            GO.GetComponent <ModuleObject>().UpgradeSprite(three);
            break;

        default:
            Debug.LogError("The energy upgrade system is set up incorrectly");
            break;
        }
    }
示例#23
0
    public void UpgradeModule(int upgrade)
    {
        GameObject GO = UpgradeSystem.GetSelectedModule();

        switch (upgrade)
        {
        case 1:
            GO.GetComponent <ModuleObject>().UpgradeSprite(powerBanks);
            break;

        case 2:
            GO.GetComponent <ModuleObject>().UpgradeSprite(generator);
            break;

        case 3:
            GO.GetComponent <ModuleObject>().UpgradeSprite(placeholder);
            break;

        default:
            Debug.LogError("The energy upgrade system is set up incorrectly");
            break;
        }
    }
示例#24
0
    // Use this for initialization
    void Start()
    {
        m_US       = GameObject.Find("UpgradeSystem").GetComponentInChildren <UpgradeSystem>();
        m_IAPStore = GameObject.Find("UpgradeSystem").GetComponentInChildren <IAPStore>();
        CheckState();

        int posX = 350, posY = -100, offsetX = 200;

        if (m_MaterialCost > 0)
        {
            AddCostItem(posX, posY, 0, new Color(1, 1, 0), m_MaterialCost);
            posX += offsetX;
        }
        if (m_DNACost > 0)
        {
            AddCostItem(posX, posY, 1, new Color(1, 1, 1), m_DNACost);
            posX += offsetX;
        }
        if (m_MoneyCost > 0)
        {
            AddCostItem(posX, posY, 2, new Color(1, 1, 1), m_MoneyCost);
            posX += offsetX;
        }
    }
示例#25
0
    public void BuyUpgrade()
    {
        animation.ExecuteCurves();
        if (UpgradeSystem.Get().BuyUpgrade(id))
        {
            switch (id)
            {
            case 0:
                AkSoundEngine.PostEvent("upgrade_max", UpgradeSystem.Get().fairyMaxSound);
                break;

            case 1:
                AkSoundEngine.PostEvent("upgrade_cooldown", UpgradeSystem.Get().meteorCooldownSound);
                break;

            case 2:
                AkSoundEngine.PostEvent("upgrade_tower", UpgradeSystem.Get().towerSound);
                break;

            case 3:
                AkSoundEngine.PostEvent("upgrade_speed", UpgradeSystem.Get().fairySpeedSound);
                break;

            default:
                break;
            }
        }
        else
        {
            AkSoundEngine.PostEvent("upgrade_error", UpgradeSystem.Get().errorSound);
        }
        if (OnUpgradePurcharsed != null)
        {
            OnUpgradePurcharsed(id);
        }
    }
示例#26
0
 void Start()
 {
     m_US = GetComponent <UpgradeSystem>();
 }
示例#27
0
        public void Update(GameTime gameTime)
        {
            if (GameData.inGameState != InGameState.Paused)
            {
                KeyboardState key = Keyboard.GetState();
                if (key.IsKeyDown(Keys.P))
                {
                    UI.enableDeveloperStats = true;
                }

                UI.Update(gameTime);
                UI.upgradeButton.Visible(false);
                bool isPlayerAboveHelipad = PlayerAboveHelipad();
                player.PlayerCanLand(isPlayerAboveHelipad);
                if (completed)
                {
                    UI.EnableTextOnScreen(100);
                }

                if (isPlayerAboveHelipad)
                {
                    UI.landButton.SpecialCase();
                }
                if (player.Health > 0 && !player.changeAltitude)
                {
                    player.Update(gameTime);

                    if (level.IsEveryoneDead() && !completed)
                    {
                        UI.EnableTextOnScreen(0);
                    }
                }
                else
                {
                    if (player.Health <= 0)
                    {
                        player.Alive = false;
                        player.KillPlayer(gameTime);
                    }
                    else if (player.changeAltitude)
                    {
                        if (player.landing)
                        {
                            player.LandPlayer(gameTime);
                        }
                        else if (player.lifting)
                        {
                            player.LiftPlayer(gameTime);
                        }
                        else
                        {
                            if (PlayerAboveHelipad())
                            {
                                if (level.IsEveryoneDead())
                                {
                                    completed = true;
                                }
                                //On helipad
                                int cost = player.UpdateOnHelipad(gameTime);
                                UI.upgradeButton.Visible(true);
                                UI.upgradeButton.SpecialCase();
                                if (UI.upgradeButton.IsItPressed() || key.IsKeyDown(Keys.U))
                                {
                                    GameData.inGameState = InGameState.Paused;
                                    GameData.pauseReason = PauseReason.Upgrade;
                                }
                            }
                            else
                            {
                                player.UpdateOnLand(gameTime);
                            }
                        }
                    }
                }
                // We collect all the bullets so if the tower get destroyed we can change the tower class to a simple sprite
                if (player.Alive)
                {
                    level.Update(gameTime, player.PlayerSprite);
                }
                UpdateEnemyBullets(gameTime);
                UpdateEnemyExplosionBullets(gameTime);
                UpdateFriendlyBullets(gameTime);
                UpdateFriendlyExplosiveBullets(gameTime);
                UpdateEffects(gameTime);
            }
            else
            {
                if (GameData.pauseReason == PauseReason.Upgrade)
                {
                    UpgradeSystem.Update(gameTime, player);
                    if (UpgradeSystem.finishedButton.IsItReleased())
                    {
                        GameData.inGameState = InGameState.Going;
                    }
                }
            }
            if (UI.enableDeveloperStats)
            {
                UI.UpdateDeveloperStats(CollectDeveloperStats(gameTime));
            }
        }
示例#28
0
 private void Awake()
 {
     instance      = this;
     cubeToUpgrade = GameObject.FindObjectOfType <PlayerCube>();
 }
示例#29
0
 public void Initialize(UpgradeSystem _UpgradeSystem, BasicProfil _Profil)
 {
     this._UpgradeSystem = _UpgradeSystem;
     Profil = _Profil;
 }
示例#30
0
    public void SaveData()
    {
        UpgradeSystem us = new UpgradeSystem();

        us.SaveData(level, currentEXP, s1_level, s2_level, s3_level, s4_level, remianPoints);
    }
示例#31
0
    public void ChangeScene()
    {
        if (SceneManager.GetActiveScene().name == "Gameplay")
        {
            Destroy(GameManager.Get().gameObject);
            Destroy(WaveSystem.Get().gameObject);
            Destroy(TurretSpawner.Get().gameObject);
            Destroy(Highscore.Get().gameObject);
            Destroy(MilestoneManager.Get().gameObject);

            UpgradeSystem upgrades = UpgradeSystem.Get();

            if (upgrades)
            {
                upgrades.CleanList();
            }

            AkSoundEngine.StopAll();
        }
        else if (SceneManager.GetActiveScene().name == "Upgrade Screen")
        {
            AkSoundEngine.StopAll();
        }

        if (sceneName == "Upgrade Screen")
        {
            AkSoundEngine.StopAll();

            UpgradeSystem upgrades = UpgradeSystem.Get();

            if (upgrades)
            {
                upgrades.CleanList();
            }

            int goToTutorial = PlayerPrefs.GetInt("isFirstTimePlaying", 1);

            if (goToTutorial == 1)
            {
                SceneManager.LoadScene("Tutorial");
            }
            else if (goToTutorial == 0)
            {
                SceneManager.LoadScene(sceneName);
            }
        }
        else if (sceneName == "Gameplay")
        {
            AkSoundEngine.StopAll();
            UpgradeSystem upgrades = UpgradeSystem.Get();

            if (upgrades)
            {
                upgrades.CleanList();
            }

            int goToTutorial = PlayerPrefs.GetInt("isFirstTimePlaying", 1);

            if (goToTutorial == 1)
            {
                SceneManager.LoadScene("Tutorial");
            }
            else if (goToTutorial == 0)
            {
                LoaderManager.Get().LoadScene(sceneName);
                UILoadingScreen.Get().SetVisible(true);
            }
        }
        else
        {
            SceneManager.LoadScene(sceneName);
        }

        Time.timeScale = 1;
    }