Ejemplo n.º 1
0
        public Game(BluetoothMag bluetooth, GameSettings gameSettings)
        {
            InitializeComponent();
            BGStuff.game   = this;
            BGStuff.InGame = true;
            Labels.Add(txtNumOfShots);
            Labels.Add(txtStatus);
            imageShotGlass.Source = FileManager.SRCShotGlass;
            ApplyTheme();
            this.bluetooth      = bluetooth;
            this.settings       = gameSettings;
            settings.YourTurn   = false;
            settings.EnemyShots = settings.NumOfShots;
            txtNumOfShots.Text  = settings.NumOfShots.ToString();
            GameGrid grid = new GameGrid(this, MainStack, SecStack, settings);

            // check for who goes first
            if (settings.Master)
            {
                Random random = new Random();
                int    ranNum = random.Next(0, 1);
                if (ranNum == 1)
                {
                    bluetooth.SendMessage(ranNum.ToString());
                    txtStatus.Text = settings.EnemyName + "'s Goes First";
                }
                else
                {
                    settings.YourTurn = true;
                    bluetooth.SendMessage(ranNum.ToString());
                    txtStatus.Text = "You Go First";
                }
            }
        }
Ejemplo n.º 2
0
        public void GridButton_Clicked(object sender, EventArgs e)
        {
            if (settings.YourTurn)
            {
                btn = (ImageButton)sender;

                settings.YourTurn = false;
                ToastManager.Show(btn.ClassId);
                settings.AllReadySelected.Add(btn.ClassId);
                bluetooth.SendMessage(btn.ClassId);
            }
            else
            {
                ToastManager.Show("Not Your Turn");
                Task.Run(async() =>
                {
                    uint timeout = 50;
                    await MainStack.TranslateTo(-15, 0, timeout);
                    await MainStack.TranslateTo(15, 0, timeout);
                    await MainStack.TranslateTo(-9, 0, timeout);
                    await MainStack.TranslateTo(9, 0, timeout);
                    await MainStack.TranslateTo(-5, 0, timeout);
                    await MainStack.TranslateTo(5, 0, timeout);
                    await MainStack.TranslateTo(-2, 0, timeout);
                    await MainStack.TranslateTo(2, 0, timeout);
                    MainStack.TranslationX = 0;
                });
            }
        }