Example #1
0
        public void Initialize()
        {
            newRoll    = new SlotrollElement(RandomSymbol(), topHidden);
            topRoll    = new SlotrollElement(RandomSymbol(), firstPosition);
            middleRoll = new SlotrollElement(RandomSymbol(), secondPosition);
            bottomRoll = new SlotrollElement(RandomSymbol(), thirdPosition);

            rollCanvas.Children.Add(newRoll.element);
            rollCanvas.Children.Add(topRoll.element);
            rollCanvas.Children.Add(middleRoll.element);
            rollCanvas.Children.Add(bottomRoll.element);
        }
Example #2
0
        public async Task <SlotSymbol> Spin(int times)
        {
            for (int i = 0; i < times; i++)
            {
                _ = newRoll.MoveTo(firstPosition);
                _ = topRoll.MoveTo(secondPosition);
                _ = middleRoll.MoveTo(thirdPosition);
                await bottomRoll.MoveTo(bottomHidden);

                var toDelete = bottomRoll;
                bottomRoll = middleRoll;
                middleRoll = topRoll;
                topRoll    = newRoll;

                rollCanvas.Children.Remove(toDelete.element);

                newRoll = new SlotrollElement(RandomSymbol(), topHidden);
                rollCanvas.Children.Add(newRoll.element);
            }
            return(middleRoll.symbol);
        }