Exemplo n.º 1
0
        public LevelManager(GraphicsDevice graphics)
        {
            this.graphics = graphics;
            path          = new SimplePath(graphics);
            path.Clean();

            ReadPathFromFile();
            enemySpawnRate  = 500;
            enemyWaveTimer  = 500;
            amountOfEnemies = 2;
            waveCount       = 0;
            limitCount      = 8;
        }
Exemplo n.º 2
0
        protected override void LoadContent()
        {
            spriteBatch = new SpriteBatch(GraphicsDevice);
            spriteSheet = Content.Load <Texture2D>("spriteSheet");
            spriteFont  = Content.Load <SpriteFont>("spriteFont");
            textures.Add(Content.Load <Texture2D>("explosion"));                          //har den seperat så att jag kan lägga in den i particleEngine (Ett krav att man skulle ha med en sådan)
            particleEngine = new ParticleEngine(textures, new Vector2(1000000, 1000000)); //Följ tutorian för detta, skrev bara rakt av från den och ändrade några värden på slutet
            towerM         = new TowerManager(spriteSheet);
            path           = new SimplePath(graphics.GraphicsDevice);
            path.Clean();                       //Spline sak, gör så att du inte har en spiral i mitten
            gameState     = GameState.MainMenu; //Tänkt att den skulle börja om när man var klar men spline gjorde så att jag inte kunde börja om... men att börja om var inte krav, bara att det skulle avslutas när x antal waves var klara eller hp <= 0
            HPText        = "HP: " + HP;
            coinsText     = "";
            activeSplineX = 75; //startvärdet, behövs ritas ut av någon anledning, man kan lösa detta med att i Spline ha roadRectList.Count <= 1 istället för roadRectList.Any() men orkade inte bry mig
            activeSplineY = 125;
            coins         = 100;
            HP            = 100;

            grassPosList = GetPos('-', currentLevel); //Ritar ut gräs på alla rutor som har värdet '-' kolla text filen för att se det
            foreach (Vector2 pos in grassPosList)
            {
                grassO = new GrassObject(spriteSheet, pos);
                gameList.Add(grassO);
            }

            roadPosList = GetPos('r', currentLevel);
            foreach (Vector2 pos in roadPosList)
            {
                roadO = new RoadObject(spriteSheet, pos);
                gameList.Add(roadO);
                roadRect = new Rectangle((int)pos.X + 25, (int)pos.Y + 25, 50, 50);
                roadRectList.Add(roadRect); //La in det i en seperat lista för att kunna ha det som en counter samt se till att ingen roadRect missades vid spline ritningen
            }

            towerHUDList = GetPos(' ', currentLevel);
            foreach (Vector2 pos in towerHUDList)
            {
                towerM.TowerHUD(pos);
            }
            Spline(); //Tar er till min spline algoritm!
            waveM = new WaveManager(spriteSheet, this, towerM);
        }
Exemplo n.º 3
0
        public Level(GraphicsDevice graphics)
        {
            path = new SimplePath(graphics);
            path.Clean();

            path.AddPoint(new Vector2(225, -64));
            path.AddPoint(new Vector2(190, 535));
            path.AddPoint(new Vector2(240, 700));
            path.AddPoint(new Vector2(350, 760));
            path.AddPoint(new Vector2(555, 745));
            path.AddPoint(new Vector2(635, 645));
            path.AddPoint(new Vector2(620, 470));
            path.AddPoint(new Vector2(605, 290));
            path.AddPoint(new Vector2(655, 200));
            path.AddPoint(new Vector2(780, 155));
            path.AddPoint(new Vector2(935, 195));
            path.AddPoint(new Vector2(990, 345));
            path.AddPoint(new Vector2(960, 984));

            creepManager = new CreepManager(ref path);
            towerManager = new TowerManager(ref creepManager, graphics);
        }
Exemplo n.º 4
0
        public Level(GraphicsDevice graphics)
        {
            path = new SimplePath(graphics);
            path.Clean();

            path.AddPoint(new Vector2(225, -64));
            path.AddPoint(new Vector2(190, 535));
            path.AddPoint(new Vector2(240, 700));
            path.AddPoint(new Vector2(350, 760));
            path.AddPoint(new Vector2(555, 745));
            path.AddPoint(new Vector2(635, 645));
            path.AddPoint(new Vector2(620, 470));
            path.AddPoint(new Vector2(605, 290));
            path.AddPoint(new Vector2(655, 200));
            path.AddPoint(new Vector2(780, 155));
            path.AddPoint(new Vector2(935, 195));
            path.AddPoint(new Vector2(990, 345));
            path.AddPoint(new Vector2(960, 984));

            creepManager = new CreepManager(ref path);
            towerManager = new TowerManager(ref creepManager, graphics);
        }
Exemplo n.º 5
0
        private void Create_level()
        {
            //Creates lists
            enemies = new List<Enemy>();
            menu_towers = new List<Tower>();
            interactive_towers = new List<Tower>();

            //Sets int and float values
            enemy_amount = 0;
            tower_placed_amount = 0;
            enemy_interval = 100;

            //Creates instances
            menu_tower1 = new Tower(sheet_tex, new Vector2(1080, 50), new Rectangle(0, 0, 45, 70));
            menu_tower2 = new Tower(sheet_tex, new Vector2(1123, 50), new Rectangle(45, 0, 45, 70));
            menu_tower3 = new Tower(sheet_tex, new Vector2(1167, 50), new Rectangle(90, 0, 45, 70));
            path = new SimplePath(graphics);
            layer = new RenderTarget2D(graphics, 1220, 720);
            menu_towers.Add(menu_tower1);
            menu_towers.Add(menu_tower2);
            menu_towers.Add(menu_tower3);

            //Creates steamreader
            sr = new StreamReader("Level1.txt");

            path.Clean();

            //Reads and creates spline points from text file
            while (!sr.EndOfStream)
            {
                string s = sr.ReadLine();
                int x = int.Parse(s.Split(',')[0]);
                int y = int.Parse(s.Split(',')[1]);
                path.AddPoint(new Vector2(x, y));
            }

            Draw_rendertarget();
        }
Exemplo n.º 6
0
 public void LoadContent()
 {
     spline = new SimplePath(graphics);
     spline.Clean();
     MapMaker();
 }