public World(ushort chunkSize, ushort drawDistance, Tile[] tiles, Vein[] veins, int seed, PlayerBehaviour playerPrefab)
    {
        UnityEngine.Random.InitState(seed);

        TileIdExtensions.World = this;

        // Order and verify databases.
        OrderTileDatabase(tiles);
        VerifyVeinDatabase(veins);

        player    = GameObject.Instantiate(playerPrefab, Vector2.zero, Quaternion.identity);
        chunkGrid = new ChunkGrid(chunkSize, drawDistance, seed, veins);
    }
Ejemplo n.º 2
0
        private void OnEnable()
        {
            m_isDeleteMode      = false;
            m_clickedCoordinate = null;
            m_hoveredCoordinate = null;

            m_grid = target as ChunkGrid;
            m_serializedProperties = new SerializedProperties(serializedObject);
            m_setter = new SerializedPropertySetter(serializedObject);

            m_emptyNeighbourControlIDs.Clear();

            foreach (Vector3Int coordinate in m_grid.UnoccupiedAxisAlignedNeighbourCoordinates)
            {
                m_emptyNeighbourControlIDs.Add(GUIUtility.GetControlID(FocusType.Passive), coordinate);
            }
        }