コード例 #1
0
    private SpinDataClass GetSpinData()
    {
        SpinDataClass data = new SpinDataClass();

        data.Combinations = new List <SpinDataClass.ComboLineClass>();
        bool win = isWin();

        data.itemsData = new int[5, 3];

        for (int x = 0; x < 5; x++)
        {
            for (int y = 0; y < 3; y++)
            {
                data.itemsData[x, y] = GetRandomID();
            }
        }

        if (win)
        {
            int[] comboLine = GetComboLine();

            for (int i = 0; i < comboLine.Length; i++)
            {
                int comboLength = GetComboLength();
                int winCell     = GetRandomID();
                for (int x = 4; x >= (5 - comboLength); x--)
                {
                    data.itemsData[x, SlotSettings.Combinations[comboLine[i]].numbers[x]] = winCell;
                }
            }
        }

        for (int i = 0; i < SlotSettings.Combinations.Count; i++)
        {
            int id = data.itemsData[4, SlotSettings.Combinations[i].numbers[4]];
            SpinDataClass.ComboLineClass combo = new SpinDataClass.ComboLineClass();
            combo.ID = i;
            for (int x = 4; x >= 0; x--)
            {
                if (data.itemsData[x, SlotSettings.Combinations[i].numbers[x]] != id)
                {
                    break;
                }
                combo.Length    = 5 - x;
                combo.winAmount = combo.Length * SlotSettings.Items[id].Value * (SlotSettings.BetsList[player_controller.instance.bet] / 5);
            }
            if (combo.Length >= 3)
            {
                data.Combinations.Add(combo);
            }
        }

        return(data);
    }
コード例 #2
0
 private void Spin(button_handler button)
 {
     if (canPlay)
     {
         if (player_controller.instance.Reduce(crypt.data.Encrypt("" + SlotSettings.BetsList[player_controller.instance.bet])))
         {
             reelAudio.clip = SpinSound;
             reelAudio.loop = true;
             reelAudio.Play();
             CurrentSpin = GetSpinData();
             for (int x = 0; x < SlotReels.Count; x++)
             {
                 SlotReels[x].WantedSpeed = SlotSettings.SpinSpeed;
             }
             canPlay   = false;
             isRun     = true;
             SpinTimer = 0;
         }
     }
 }