예제 #1
0
    public void AddChest(SaveableChest chest)
    {
        //  (int chestID, ChestState chestState, DateTime openOrderTimeInSystem, TimeSpan openDuration, Prize prize)
        SaveableChest newChest = new SaveableChest(chest.chestID, chest.chestState, chest.openOrderTimeInSystem, chest.openDurationSaveable, chest.chestType);

        userChests.Add(newChest);
        SaveItems(this);
    }
예제 #2
0
 void SetCommonUI(SaveableChest chest)
 {
     thisChest         = chest;
     index             = (int)thisChest.chestType;
     chestImage.sprite = chestCollection.chestCollection[thisChest.chestID].chestImage;
     chestName.text    = chestCollection.chestCollection[thisChest.chestID].chestDescription;
     coinText.text     = awardGenerate.lowerCoinNum[index] + persianPhrases[0] + awardGenerate.higherCoinNum[index]
                         + persianPhrases[1];
     totalDice.text   = (awardGenerate.lowerNormalDiceNum[index] + awardGenerate.rareLowDiceCard[index] + awardGenerate.talismLowDiceCard[index]) + persianPhrases[2];
     minRareDice.text = persianPhrases[3] + awardGenerate.rareLowDiceCard[index] + persianPhrases[4];
 }
예제 #3
0
    void UnlockAttempt(SaveableChest chest)
    {
        thisChest            = chest;
        thisChest.chestState = ChestState.InOpening;
        thisChestOpening     = true;



        noChestOpening = false;
        OnChestInOpening();
        ChestClickedOn();
    }
예제 #4
0
 void BrowseChests()
 {
     userChests = LoadItems().userChests;
     foreach (var chest in userChests)
     {
         SaveableChest nChest = new SaveableChest(chest.chestID, chest.chestState, chest.openOrderTimeSaveable, chest.openDurationSaveable, chest.chestType);
         if (OnNewChest != null)
         {
             OnNewChest(nChest);
         }
     }
 }
예제 #5
0
    void OneChestUnlocking(SaveableChest chest)
    {
        thisChest            = chest;
        thisChest.chestState = ChestState.InOpening;
        thisChestOpening     = true;



        noChestOpening = false;
        OnChestInOpening();
        ChestClickedOn();
        OnExitClicked();
    }
예제 #6
0
 void UpdateChestStatus(SaveableChest chest)
 {
     foreach (var userChest in userChests)
     {
         Debug.Log("update: " + userChest.chestID + "   " + chest.chestState + "   " + userChest.openDurationSaveable.seconds + "  " + chest.openDurationSaveable.seconds);
         if (userChest.chestID == chest.chestID && userChest.openDurationSaveable == chest.openDurationSaveable)
         {
             userChest.chestState = chest.chestState;
             break;
         }
     }
     SaveItems(this);
 }
 void ChangeChestState(SaveableChest saveableChest)
 {
     chestReady = true;
     //  Debug.Log("in vhange:  "+saveableChest.chestState);
     thisChest.chestState = saveableChest.chestState;
     chestState           = saveableChest.chestState;
     if (chestState == ChestState.InOpening)
     {
         OnChestUnlocked(thisChest);
     }
     if (chestState == ChestState.Ready)
     {
         OnChestReady();
     }
 }
 public void OnUnlockClicked()
 {
     if (chestClickedOn)
     {
         Debug.Log("chest unlock: ");
         thisChest.chestState            = ChestState.InOpening;
         chestState                      = ChestState.InOpening;
         thisChest.openOrderTimeInSystem = System.DateTime.Now;
         SaveableChest newChest = new SaveableChest(chestID, chestState, System.DateTime.Now, openDuration, thisChest.chestType);
         OnChestUnlocked(newChest);
         OnChestChanged(newChest);
         OnChestAssigned(newChest);
         OnChestAssignedSingle(newChest);
     }
 }
예제 #9
0
    void AssignChest(SaveableChest chest)
    {
        Debug.Log("assignneeddd");
        thisChest = chest;
//        OnChestAssigned(thisChest);

        if (chest.chestState == ChestState.InOpening)
        {
            thisChestOpening = true;
            noChestOpening   = false;
            //  OnChestInOpening();
        }
        OnChestAssigned(thisChest);
        ChestClickedOn();
    }
예제 #10
0
    void RemoveChest(SaveableChest chest)
    {
        int index = 0;

        foreach (var userChest in userChests)
        {
            if (userChest.chestID == chest.chestID && userChest.openDurationSaveable == chest.openDurationSaveable)
            {
                break;
            }
            index++;
        }

        userChests.RemoveAt(index);
        SaveItems(this);
    }
예제 #11
0
    void DisplayChestInfo(SaveableChest chestS)
    {
        GetComponent <Image>().sprite = chestCollection.chestCollection[chestS.chestID].chestImage;
        for (int i = 0; i < childNum; i++)
        {
            transform.GetChild(0).GetChild(i).gameObject.SetActive(false);
        }

        chest = chestS;
        Debug.Log("time: " + chest.chestState + "   " + (int)chest.chestState);
        if (chest.chestState == ChestState.Closed)
        {
            transform.GetChild(0).GetChild(1).GetComponent <Text>().text = chest.openDuration.Hours.ToString();
            transform.GetChild(0).GetChild(1).gameObject.SetActive(true);
        }


        transform.GetChild(0).GetChild((int)(chest.chestState)).gameObject.SetActive(true);
    }
 public void AssignValues(SaveableChest saveableChest)
 {
     thisChest = saveableChest;
     chestID   = saveableChest.chestID;
     if (saveableChest.chestState == ChestState.InOpening)
     {
         OnChestBrowsedUnlocking(thisChest);
     }
     if (chestReady == false)
     {
         chestState = saveableChest.chestState;
     }
     //  prize = saveableChest.prize;
     openDuration  = saveableChest.openDurationSaveable;
     openOrderTime = saveableChest.openOrderTimeSaveable;
     Debug.Log("chest dur: " + saveableChest.openDuration + "   " + saveableChest.chestState);
     remainingTimeToOpen = System.DateTime.Now - saveableChest.openOrderTimeInSystem;
     GetComponent <ChessMenuUI>().EnrollInEvent();
     OnChestAssignedSingle(saveableChest);
 }
    void DisplayUIData(int winnerNum)
    {
        Debug.Log("ui:  " + playerNum);
        playerNum = PlayerMoveSync.localPlayerID;
        if (CoinCollection.playersCoin[playerNum] > 0)
        {
            coinAmount.enabled = true;
            coinImage.enabled  = true;
            coinAmount.text    = CoinCollection.playersCoin[playerNum].ToString();
            PlayerPrefs.SetInt("Coin", PlayerPrefs.GetInt("Coin") + CoinCollection.playersCoin[playerNum]);
        }
        if (playerNum != winnerNum)
        {
            return;
        }
        if (SafePickup.playerSafeID[playerNum] > 0)
        {
            safeImage.enabled = true;

            safeImage.sprite = chestCollection.chestCollection[SafePickup.playerSafeID[playerNum]].chestImage;
            if (chestSaver.ReturnChestNum() >= 4)
            {
                safeImage.color      = Color.gray;
                safeFullText.enabled = true;
                return;
            }
        }

        ChestData     cData    = chestCollection.chestCollection[SafePickup.playerSafeID[playerNum]];
        SaveableChest newChest = new SaveableChest(cData.chestID, ChestState.Closed, System.DateTime.Now, cData.openDuration, cData.chestType);

        if (playerNum == winnerNum && playerNum > 0 && cData.chestID > 0)
        {
            OnAddChest(newChest);
        }
    }
예제 #14
0
    void CreateChest(SaveableChest chest)
    {
        GameObject temp = Instantiate(chestMenuPrefab, chestHolder, false);

        temp.GetComponent <ChestMenuBehaviour>().AssignValues(chest);
    }
예제 #15
0
    void GenerateChestAward(SaveableChest chest)
    {
        ChestType chestType = chest.chestType;
        Prize     prize     = new Prize();

        prize.awardCards = new List <AwardCard>();
        int normalDiceNum = Random.Range(awardGenerate.lowerNormalDiceNum[(int)chestType], awardGenerate.higherNormalDiceNum[(int)chestType] + 1);
        int rareDiceNum   = Random.Range(awardGenerate.lowerRareDiceNum[(int)chestType], awardGenerate.higherRareDiceNum[(int)chestType] + 1);
        int talismDiceNum = Random.Range(awardGenerate.lowerTalismDiceNum[(int)chestType], awardGenerate.higherTalismDiceNum[(int)chestType] + 1);
        int coinNum       = Random.Range(awardGenerate.lowerCoinNum[(int)chestType], awardGenerate.higherCoinNum[(int)chestType] + 1);
        int gemNum        = Random.Range(awardGenerate.lowerGemNum[(int)chestType], awardGenerate.higherGemNum[(int)chestType] + 1);

        int normalCardNum = Random.Range(awardGenerate.normalLowDiceCard[(int)chestType], awardGenerate.normalHighDiceCard[(int)chestType] + 1);
        int rareCardNum   = Random.Range(awardGenerate.rareLowDiceCard[(int)chestType], awardGenerate.rareHighDiceCard[(int)chestType] + 1);
        int talismCardNum = Random.Range(awardGenerate.talismLowDiceCard[(int)chestType], awardGenerate.talismHighDiceCard[(int)chestType] + 1);

        if (coinNum > 0)
        {
            AwardCard temp = new AwardCard();
            temp.prizeID     = 0;
            temp.prizeAmount = coinNum;
            prize.awardCards.Add(temp);
            OnAwardReceived(temp);
        }
        List <DiceFullDesign> dicesTemp = new List <DiceFullDesign>();

        foreach (var item in normalDices.diceFullDesigns)
        {
            dicesTemp.Add(item);
        }
        List <AwardCard> temp2 = (GenerateDice(normalDiceNum, normalCardNum, dicesTemp, DiceRareness.Normal));

        foreach (var item in temp2)
        {
            prize.awardCards.Add(item);
            OnAwardReceived(item);
        }

        dicesTemp = new List <DiceFullDesign>();
        foreach (var item in rareDices.diceFullDesigns)
        {
            dicesTemp.Add(item);
        }

        temp2 = (GenerateDice(rareDiceNum, rareCardNum, dicesTemp, DiceRareness.Rare));
        foreach (var item in temp2)
        {
            OnAwardReceived(item);
            prize.awardCards.Add(item);
        }

        dicesTemp = new List <DiceFullDesign>();
        foreach (var item in talismanDices.diceFullDesigns)
        {
            dicesTemp.Add(item);
        }

        temp2 = (GenerateDice(talismDiceNum, talismCardNum, dicesTemp, DiceRareness.Talisman));
        foreach (var item in temp2)
        {
            OnAwardReceived(item);
            prize.awardCards.Add(item);
        }

        if (gemNum > 0)
        {
            AwardCard temp = new AwardCard();
            temp.prizeID     = 2;
            temp.prizeAmount = gemNum;
            prize.awardCards.Add(temp);
            OnAwardReceived(temp);
        }
    }