예제 #1
0
 public void RemovePlanetExposer(PlanetExposerScript planet)
 {
     activePlanets--;
     planet.id = -1;
     if (planetExposers.Contains(planet) && planet)
     {
         planetExposers.Remove(planet);
     }
 }
예제 #2
0
        private int AddPlanetInDirectory(PlanetExposerScript planet)
        {
            var id = -1;

            if (debug)
            {
                Debug.Log("[ColliderDirectoryScript] Add one planet to directory");
            }
            if (_planetsDirectory.ContainsValue(planet))
            {
                return(id);
            }
            _planetsDirectory.Add(planet.planetGravityField, planet);
            id = activePlanets - 1;
            if (debug)
            {
                Debug.LogFormat("[ColliderDirectoryScript] Directory key : {0} and value : {1}",
                                planet.planetGravityField, planet);
            }
            return(id);
        }
예제 #3
0
        public void AddPlanetExposer(PlanetExposerScript planet, out int id)
        {
            if (planetExposers == null)
            {
                planetExposers = new List <PlanetExposerScript>();
            }

            if (!planetExposers.Contains(planet) && planet)
            {
                planetExposers.Add(planet);
            }

            activePlanets++;

            id = AddPlanetInDirectory(planet);
            planet.planetsPhotonView = planetsPhotonView;

            if (debug)
            {
                Debug.Log(id >= 0
                    ? "[ColliderDirectoryScript] Successful added planet to directory"
                    : "[ColliderDirectoryScript] Failed to add planet in directory");
            }
        }
예제 #4
0
    //Planet data
    public static void RegisterPlanet(PlanetExposerScript planet)
    {
        if (instance != null && instance.dataVaultPlanet != null)
        {
            var id              = UnityEngine.Random.Range(0, 23);
            var randTimeEnter   = UnityEngine.Random.Range(10f, 30f);
            var randTimeExit    = UnityEngine.Random.Range(20f, 50f);
            var randChestNumber = UnityEngine.Random.Range(1, 5);
            var randTimeChest   = UnityEngine.Random.Range(15f, 40f);
            //int numberOfPlayer = UnityEngine.Random.Range(0, 2);
            int   numberOfPlayer = 1;
            float timeOnPlanet   = randTimeExit - randTimeEnter;

            if (numberOfPlayer == 0)
            {
                randTimeChest = 0;
                randTimeEnter = 0;
                randTimeExit  = 0;
                timeOnPlanet  = 0;
            }

            instance.dataVaultPlanet.AddidPlanet(id, randChestNumber, numberOfPlayer, randTimeEnter, randTimeExit, randTimeChest, timeOnPlanet);
        }
    }