Esempio n. 1
0
        private void InitializeBuildings()
        {
            buildings = new Building[numBuildings];

            for (int i = 0; i < units.Length; i++)
            {
                int x            = GameEngine.random.Next(0, SIZE);
                int y            = GameEngine.random.Next(0, SIZE);
                int factionIndex = GameEngine.random.Next(0, 2);
                int buildingType = GameEngine.random.Next(0, 2);

                while (map[x, y] != null)
                {
                    x = GameEngine.random.Next(0, SIZE);
                    y = GameEngine.random.Next(0, SIZE);
                }

                if (buildingType == 0)
                {
                    buildings[i] = new ResourceBuilding(x, y, factions[factionIndex]);
                }
                else
                {
                    buildings[i] = new FactoryBuilding(x, y, factions[factionIndex]);
                }
                map[x, y] = buildings[i].Faction[0] + "/" + buildings[i].Symbol;
            }
        }
Esempio n. 2
0
        private void InitializeBuildings()
        {
            buildings = new Building[numBuildings];

            for (int i = 0; i < buildings.Length; i++)
            {
                int x            = GameEngine.random.Next(0, width);
                int y            = GameEngine.random.Next(0, height);
                int factionIndex = GameEngine.random.Next(0, 2);
                int buildingType = GameEngine.random.Next(0, 2);

                while (map[x, y] != null)
                {
                    x = GameEngine.random.Next(0, width);
                    y = GameEngine.random.Next(0, height);
                }

                if (buildingType == 0)
                {
                    buildings[i] = new ResourceBuilding(x, y, factions[factionIndex]);
                }
                else
                {
                    /*FactoryBuilding tempFact = new FactoryBuilding(x, y, factions[factionIndex]);
                     * if (tempFact.Y >= height - 1)
                     * {
                     *  buildings[i].SpawnY = buildings[i].Y - 1;
                     * }
                     * else
                     * {
                     *  buildings[i].SpawnY = buildings[i].Y + 1;
                     * }*/

                    //buildings[i] = tempFact;
                    buildings[i] = new FactoryBuilding(x, y, factions[factionIndex]);
                    if (buildings[i].Y >= height - 1)
                    {
                        buildings[i].SpawnY = buildings[i].Y - 1;
                    }
                    else
                    {
                        buildings[i].SpawnY = buildings[i].Y + 1;
                    }
                }
                map[x, y] = buildings[i].Faction[0] + "/" + buildings[i].Symbol;
            }
        }
Esempio n. 3
0
        void UpdateBuildings()
        {
            foreach (Building building in map.Buildings)
            {
                ResourceBuilding resBuild = building as ResourceBuilding;
                if (resBuild != null)
                {
                    resBuild.GenerateResources();
                }

                FactoryBuilding facBuild = building as FactoryBuilding;
                if (facBuild != null)
                {
                    Unit newUnit = facBuild.SpawnUnit();
                    map.AddUnit(newUnit);
                }
            }
        }
Esempio n. 4
0
 void UpdateBuildings()
 {
     foreach (Building building in map.Buildings)
     {
         if (building is FactoryBuilding)
         {
             FactoryBuilding factoryBuilding = (FactoryBuilding)building;
             //if factory, cast to factory building
             if (round % factoryBuilding.ProductionSpeed == 0)
             // spawning condition
             {
                 Unit newUnit = factoryBuilding.SpawnUnit();
                 map.AddUnit(newUnit);
             }
             //need to cast to use it as the specific building type
         }
         else if (building is ResourceBuilding)
         {
             ResourceBuilding resourceBuilding = (ResourceBuilding)building;
             resourceBuilding.GenerateResources();
         }
     }
 }