Exemplo n.º 1
0
        public static SolarSystemInstance mockSolarSystemInstance(int planetId       = planetid, int planetx = planetx, int planety = planety,
                                                                  int planetsystemid = planetsystemid, short planetobjectid = planetobjectid, byte planetdrawsize = planetdrawsize)
        {
            SolarSystemInstance solarSystemInstance = new SolarSystemInstance(planetId, planetx, planety, planetsystemid, planetobjectid, planetdrawsize);

            return(solarSystemInstance);
        }
        public SolarSystem createSystem(bool _paint, bool _text, sunTypes _type, bool _startingSystem)
        {
            paintGraphics = _paint;
            showText      = _text;

            typeDetector.habitablePlanetCount = 0;
            startingSystemTypeDetector.habitablePlanetCount = 0;

            SolarSystem SolarSystemInstance;

            if (_startingSystem)
            {
                SolarSystemInstance = new SolarSystem(startingSystemTypeDetector, TextBox, showText, _startingSystem);
            }
            else
            {
                SolarSystemInstance = new SolarSystem(typeDetector, TextBox, showText, _startingSystem);
            }

            SolarSystemInstance.MakeSystem(_type);

            if (showText && TextBox != null)
            {
                TextBox.Text += SolarSystemInstance.PlanetsCount + " Planets - " + SolarSystemInstance.AsteroidCirclesCount + " Asteroids" + Environment.NewLine;
            }

            SolarSystemInstance = check(_paint, _text, _type, _startingSystem, SolarSystemInstance);

            return(SolarSystemInstance);
        }
Exemplo n.º 3
0
        public void RecalcCostsTest()
        {
            int newUserId = (int)Instance.identities.allianceId.getNext();

            Assert.IsTrue(SpacegameServer.Core.User.registerUser(newUserId));
            User user = Instance.users[newUserId];

            //Ecosystem adaption (needs Base research)
            Research research = Core.Instance.Researchs[9];

            research.baseCost = 10;
            research.cost     = 10;

            research.RecalcCosts();
            Assert.AreEqual(10, research.cost, "Research cost did change, although no user has researched it...");

            //add a colony to the user, so that he has some population (which is needed to calc research spread)
            Ship                target    = Instance.ships.First(ship => ship.Value.userid == user.id).Value;
            PrivateObject       obj       = new PrivateObject(target);
            List <Ship>         ships     = new List <Ship>();
            Colony              newColony = null;
            SolarSystemInstance planet    = Instance.planets.First(colonizable => colonizable.Value.systemid == target.systemid &&
                                                                   (colonizable.Value.objectid == 24 ||
                                                                    colonizable.Value.objectid == 25 ||
                                                                    colonizable.Value.objectid == 26)).Value;
            var retVal = obj.Invoke("createMajorColony", user, "ColonyName", ships, newColony, planet);

            research.RecalcCosts();
            Assert.AreEqual(10, research.cost, "Research cost did change, although no user has researched it...");


            UserResearch ResearchDone = new UserResearch(newUserId, research.id);

            ResearchDone.isCompleted = 1;
            user.PlayerResearch.Add(ResearchDone);
            research.RecalcCosts();
            Assert.AreNotEqual(10, research.cost, "Research cost did change, although no user has researched it...");
        }