示例#1
0
    public TileGeneration GetTile()
    {
        if (_debugField == null)
        {
            _debugField = FindObjectOfType <DebugField>();
        }

        _debugField.ShowDebugText("in Get tile");

        var            tilesThatAtPool = _tilePool.Where(t => t.IsInThePool == true).ToArray();
        TileGeneration tile;

        try
        {
            tile = tilesThatAtPool[Random.Range(0, tilesThatAtPool.Length)];
        }
        catch (IndexOutOfRangeException)
        {
            Debug.Log("");
            return(null);
        }

        tile.IsInThePool = false;
        return(tile);
    }
示例#2
0
 private void Awake()
 {
     _debugField = FindObjectOfType <DebugField>();
     _debugField.ShowDebugText("awake in level Constructor");
     //Time.timeScale = 1;
     //GenerateLevel(_startTile);
     //_currentTiles = new List<ITile>();
     //_currentTiles.Add(_startTile);
     //_pool = FindObjectOfType<MapElementPool>();
     //_fogConstructor = GetComponent<FogConstructor>();
     //_enemiesConstructor = GetComponent<EnemiesConstructor>();
 }
示例#3
0
    private void Start()
    {
        Time.timeScale = 1;
        //_startTile.CheckPosition += GenerateLevel;

        _currentTiles = new List <TileGeneration>();
        _currentTiles.Add(_startTile);
        _pool               = FindObjectOfType <MapElementPool>();
        _fogConstructor     = GetComponent <FogConstructor>();
        _enemiesConstructor = GetComponent <EnemiesConstructor>();
        GenerateLevel(_startTile);

        _debugField.ShowDebugText("start in level Constructor");
    }