Beispiel #1
0
        private bool CheckIfNoOneWon()
        {
            bool draw  = false;
            int  count = 0;

            foreach (var item in playFieldList)
            {
                if (item.isSet == true)
                {
                    count++;
                }
            }
            if (count == 9)
            {
                draw = true;
            }
            return(draw);
        }
Beispiel #2
0
        private async Task PlayTTT(SocketMessage msg)
        {
            SocketUserMessage msgUser = msg as SocketUserMessage;

            if (msgUser == null)
            {
                return;
            }

            if (msgUser.Channel.Id != configFile.GetTTTChannel())
            {
                return;
            }

            int prefixPosition = 0;

            if (!(msgUser.HasCharPrefix(configFile.GetPrefix(), ref prefixPosition) ||
                  msgUser.HasMentionPrefix(client.CurrentUser, ref prefixPosition)) ||
                msgUser.Author.IsBot)
            {
                return;
            }

            string[] command = msg.Content.Split(" ");
            if (!(command[0] == configFile.GetPrefix() + "playttt"))
            {
                return;
            }
            if (command[0] == configFile.GetPrefix() + "playttt" && playerList.Count == 2)
            {
                await msgUser.Channel.SendMessageAsync(msgUser.Author.Mention + " Es läuft bereits ein Spiel.");

                return;
            }

            if (playerList.Count == 1 && playerList[0].playerID == msgUser.Author.Id)
            {
                await msgUser.Channel.SendMessageAsync(msgUser.Author.Mention + " Du bist bereits als Spieler 1 registriert, bitte warte auf einen Gegner.");

                return;
            }

            playerList.Add(new Player
            {
                playerID = msgUser.Author.Id,
                turn     = false
            });

            if (playerList.Count == 2 && playfieldStarted == false)
            {
                playfieldStarted = true;
                await msgUser.Channel.SendMessageAsync(msgUser.Author.Mention + " Du bist Player 2. Los gehts!");

                for (int i = 0; i < 9; i++)
                {
                    playFieldList.Add(new Playfield(i));
                }

                this.bitmap   = new Bitmap(bitmapWidth, bitmapHeight, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
                this.graphics = Graphics.FromImage(bitmap);
                this.penField = new Pen(Color.FromKnownColor(KnownColor.Black), penThicknes);
                this.penP1    = new Pen(Color.FromKnownColor(KnownColor.DeepSkyBlue), penThicknes);
                this.penP2    = new Pen(Color.FromKnownColor(KnownColor.BlueViolet), penThicknes);
                draw          = new Draw(bitmap, graphics);
                DrawField();
                bitmap.Save(bitmapPath);

                playerList[0].SetTurn(true);

                await msgUser.Channel.SendMessageAsync("Du bist dran Player 1! Schreib eine Zahl von 1 - 9 in den Chat um dein Feld zu füllen.");

                await msgUser.Channel.SendFileAsync(bitmapPath);
            }

            if (playfieldStarted == false)
            {
                await msgUser.Channel.SendMessageAsync(msgUser.Author.Mention + " Du bist Player 1, warte auf einen Mitspieler");
            }
        }