예제 #1
0
        public void Spawn()
        {
            GameObject tileAtPos = TerrainManager.instance.GetTileAtPosition(tilePos.ToVector2());
            Vector3    spawnPos  = new Vector3(tilePos.x, tileAtPos.transform.position.y, tilePos.y);
            Island     island    = tileAtPos.transform.parent.GetComponent <Island>();

            for (int i = 0; i < stackHeight; i++)
            {
                switch (pickupType)
                {
                case 0:
                    TerrainManager.instance.SpawnResource(spawnPos, ResourceInfo.GetInfoFromIndex(index), island);
                    break;

                case 1:
                    TerrainManager.instance.SpawnWeapon(spawnPos, WeaponInfo.GetInfoFromIndex(index), island);
                    break;

                case 2:
                    TerrainManager.instance.SpawnAugment(spawnPos, AugmentInfo.GetInfoFromIndex(index), island);
                    break;

                default:
                    Debug.LogError("Unrecognized pickup type");
                    break;
                }
            }
        }
예제 #2
0
        public void Spawn()
        {
            ResourceInfo info = ResourceInfo.GetInfoFromIndex(resourceIndex);

            TerrainManager.Tile tile = TerrainManager.instance.tiles [tilePos.ToVector2()];

            tile.resourceType = info.type;
            tile.tile.GetComponent <Renderer> ().material.color = info.colorLight;
        }
예제 #3
0
        public Building SpawnBuilding()
        {
            BuildingInfo info = Crafting.instance.buildingInfos [index];

            GameObject tileAtPos = TerrainManager.instance.GetTileAtPosition(tilePos.ToVector2() - info.anchorOffset);
            Vector3    spawnPos  = new Vector3(tilePos.x, tileAtPos.transform.position.y, tilePos.y);
            Island     island    = tileAtPos.transform.parent.GetComponent <Island>();

            return(TerrainManager.instance.SpawnBuilding(spawnPos, info.prefab, info, island, true));
        }