Example #1
0
        public void UnregisterSpawnPoint(SpawnPoint spawnPoint)
        {
            foreach (GameTypeData gameTypeData in spawnPoint.GameTypes)
            {
                //Debug.Log($"Unregistering spawnpoint {spawnPoint.name} for game type {gameTypeData.Name}");

                SpawnPoints spawnPoints = _spawnPoints.GetOrDefault(gameTypeData);
                spawnPoints?.Remove(spawnPoint);
            }
        }
Example #2
0
    private void SpawnNewBlueGagNode()
    {
        //Debug.Log("Blue Gags (" + GagsOnMapCounter + ")" + " < " + MinMaxGagLimits.x + " Spawning more");

        if (SpawnPoints.Count != 0)
        {
            var ranIndex = Random.Range(0, SpawnPoints.Count);

            var node = Instantiate(blueGagNodePrefab, SpawnPoints[ranIndex].gameObject.transform.position, Quaternion.identity);

            SpawnPointstOccupied.Add(SpawnPoints[ranIndex]);
            node.SpawnPoint = SpawnPoints[ranIndex];
            SpawnPoints.Remove(SpawnPoints[ranIndex]);

            GagsOnMapCounter++;
        }
        else
        {
            Debug.LogWarning("NO avaliable spawnLocations for = " + this.GetType());
        }
    }
Example #3
0
 public void RemovePortal(Portal PT)
 {
     if (PT.Name == "sp")
     {
         SpawnPoints.Remove(PT.ID);
     }
     else if (PT.Name == "tp")
     {
         // TownPortal: Mystic Door
     }
     else
     {
         if (Portals.ContainsKey(PT.Name))
         {
             Console.WriteLine("Duplicate portal, Name: {0} MapID: {1}", PT.Name, ID);
         }
         else
         {
             Portals.Remove(PT.Name);
         }
     }
 }