示例#1
0
    public Planet(string name, string type)
    {
        this.planetName = name;
        this.planetType = type;

        this.starBase = null;
    }
示例#2
0
    public Planet(string name, string type)
    {
        this.planetName = name;
        this.planetType = type;

        this.planetResources = RandomiseResources();

        this.starBase = null;
    }
示例#3
0
    public void BuildRandomStarSystem(StarBase star, List <PlanetsBuildData> planets)
    {
        #region Inst Star

        GameObject starTmp = Instantiate(star.gameObject, Vector3.zero, Quaternion.identity);
        starTmp.transform.SetParent(gameObject.transform);
        #endregion

        #region Inst Planet

        planets.ForEach(x =>
        {
            GameObject planetTmp = Instantiate(x.planet.gameObject, x.position, Quaternion.identity);
            planetTmp.transform.SetParent(gameObject.transform);

            OrbitalAroundHeandler orbitalScript = planetTmp.GetComponent <OrbitalAroundHeandler>();
            if (orbitalScript != null)
            {
                orbitalScript.orbitingAround = starTmp;

                if (solarSystemDataSource == SolarSystemDataSource.Generate)
                {
                    float coef = Vector3.Distance(planetTmp.transform.position, starTmp.transform.position);
                    if (coef < 1)
                    {
                        coef = 1;
                    }
                    float orbitalSpeed         = 60 / coef;
                    orbitalScript.orbitalSpeed = Random.value == 0 ? -orbitalSpeed : orbitalSpeed;
                }
                else
                {
                    //TODO Set orbital speed from save file
                }
            }

            ShootingManager shoot = planetTmp.GetComponent <ShootingManager>();
            if (shoot != null)
            {
                if (allWeapons.Count > 0)
                {
                    shoot.awalibleWeapons.Clear();
                    shoot.awalibleWeapons.Add(allWeapons[Random.Range(0, allWeapons.Count)]);
                }
            }
        });
        #endregion
    }
示例#4
0
 public void Initialize()
 {
     FleetPropertyChangedDuringInitialization = 0;
     Fleet = new StarFleet();
     ((INotifyPropertyChanged)Fleet.StarShips).PropertyChanged += FleetPropertyChanged;
     Assert.AreEqual(0, Fleet.StarShips.Count);
     Assert.AreEqual(0, Fleet.StarBases.Count);
     EnterpriseC = new StarShip {
         Guid = Ncc1701C, Name = UssEnterpriseNcc1701C
     };
     Garrett = new CrewMember {
         Rank = "Captain", FirstName = "Rachel", SurName = "Garrett"
     };
     EnterpriseC.CrewMembers.Add(Garrett);
     Castillo = new CrewMember {
         Rank = "Lieutenant", FirstName = "Richard", SurName = "Castillo"
     };
     EnterpriseC.CrewMembers.Add(Castillo);
     Yar = new CrewMember {
         Rank = "Lieutenant", FirstName = "Natasha", SurName = "Yar"
     };
     EnterpriseC.CrewMembers.Add(Yar);
     Fleet.StarShips.Add(EnterpriseC);
     EnterpriseD = new StarShip {
         Name = "USS Enterprise NCC-1701D"
     };
     Picard = new CrewMember {
         Rank = "Captain", FirstName = "Jean-Luc", SurName = "Picard"
     };
     EnterpriseD.CrewMembers.Add(Picard);
     WilliamRiker = new CrewMember {
         Rank = "Commander", FirstName = "William", SurName = "Riker"
     };
     EnterpriseD.CrewMembers.Add(WilliamRiker);
     EnterpriseD.CrewMembers.Add(Yar);
     Ro = new CrewMember {
         Rank = "Ensign", FirstName = "Laren", SurName = "Ro"
     };
     EnterpriseD.CrewMembers.Insert(0, Ro);
     EnterpriseD.CrewMembers.Remove(Ro);
     EnterpriseD.CrewMembers.Insert(0, Ro);
     Pulaski = new CrewMember {
         Rank = "Doctor", FirstName = "Katherine", SurName = "Pulaski"
     };
     EnterpriseD.CrewMembers[0] = Pulaski;
     EnterpriseD.CrewMembers.RemoveAt(0);
     Fleet.StarShips.Add(EnterpriseD);
     CrewMemberArray = new CrewMember[5];
     EnterpriseD.CrewMembers.CopyTo(CrewMemberArray, 1);
     Montgomery = new StarBase {
         Name = "Starbase Montgomery"
     };
     KyleRiker = new CrewMember {
         Rank = "Special Advisor", FirstName = "Kyle", SurName = "Riker"
     };
     Montgomery.Personnel.Add(KyleRiker);
     Montgomery.DockedShips.Add(EnterpriseD);
     Fleet.StarBases.Add(Montgomery);
     Fleet.PropertyChanged -= FleetPropertyChanged;
     Universes              = new ParallelUniverses();
     Universes.StarFleets.Add(Fleet);
 }