Пример #1
0
    /// <summary>
    /// TODO
    /// </summary>
    private void AddItemTileTypes()
    {
        //Debug.Log("No. item tiles = " + m_numOfAddedItemTiles);

        // Create item deployment minus one of the total of item tiles. That one is used for the vr googles
        ItemTileDeployment itemTileDeployment = new ItemTileDeployment(m_numOfAddedItemTiles - 1);

        List <int> itemTileIDs = new List <int>();

        // Get all item tile id's
        foreach (Transform t in m_itemTiles)
        {
            Tile tile = t.GetComponent <Tile>();
            itemTileIDs.Add(tile.TileID);
        }

        // Shuffle the id's so items is not added at the same tiles each game
        System.Random rnd = new System.Random();
        itemTileIDs.Shuffle(rnd);

        int currentItemIdIndex = 0;
        int numOfItems         = itemTileDeployment.MoneyItemDeployment.Count;

        foreach (KeyValuePair <string, int> kvp in itemTileDeployment.MoneyItemDeployment)
        {
            int moneyValue;
            Int32.TryParse(kvp.Key, out moneyValue);

            for (int i = 0; i < kvp.Value; i++)
            {
                //Transform t = m_tiles.GetChild(itemTileIDs[currentItemIdIndex]);
                Tile tile = GetTile(itemTileIDs[currentItemIdIndex].ToString());

                if (tile.IsItemTile)
                {
                    ItemTile      itemTile      = tile.GetComponent <ItemTile>();
                    MoneyItemTile moneyItemTile = tile.gameObject.AddComponent <MoneyItemTile>();
                    moneyItemTile.TranferItemData(itemTile);
                    moneyItemTile.Value     = moneyValue;
                    moneyItemTile.TilePrize = moneyItemTile.Value;
                    //Debug.Log("TileID: " + moneyItemTile.TileID);
                    Destroy(itemTile);
                }

                currentItemIdIndex++;
            }
        }
    }
Пример #2
0
    /// <summary>
    /// Get the tile item and save the value in player inventory
    /// </summary>
    private void RetriveTileItem()
    {
        ItemTile itemTile = m_playerMovement.CurrentItemTile;

        itemTile.HasItem = false;
        itemTile.SetColor(Color.gray);
        ItemTile.ItemType itemType = itemTile.TileItemType;

        switch (itemType)
        {
        case ItemTile.ItemType.MoneyItem:
            Debug.Log("Itemtype = MoneyItem");
            MoneyItemTile moneyItemTile = (MoneyItemTile)itemTile;
            int           value         = moneyItemTile.Value;
            m_gameManager.Bank.WithdrawMoney(value);
            break;

        default:
            break;
        }
    }