Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2016, 13:47   #1
z7172
 
Регистрация: 25.11.2015
Сообщений: 3
По умолчанию Уголки на C#

Игра "Уголки" на C#
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace curs
{
    class dbDB
    {
       public int [,]mas = new int[7,7];
        int gx, gy,cgx,cgy;
       public char gch, cgch;
        public int onlone;
        public int onltwo;
        public dbDB()
        {
                onlone = 0;
                onltwo = 0;
            for (int i = 0; i != 7; i++)
                for (int j = 0; j != 7; j++)
                    mas[i,j] = 0;
        }
        public void newindex(String str)
        {
            parser(str);
            if (gch == 'b')
            {
                for (int i = gy+1; i != 7; i++) 
                    if (mas[gx, i] == 0)
                        mas[gx, i] = 3;
                    else
                        break;

               for(int i = gy-1;i>=0;i--)
                     if (mas[gx, i] == 0)
                        mas[gx, i] = 3;
                      else
                       break;
               for (int i = gx+1; i != 7; i++)
                   if (mas[i, gy] == 0)
                       mas[i, gy] = 3;
                   else
                       break;
            }
            else if(gch=='w')
            {
                for (int i = gy + 1; i != 7; i++)
                    if (mas[gx, i] == 0)
                        mas[gx, i] = 3;
                    else
                        break;

                for (int i = gy - 1; i >= 0; i--)
                    if (mas[gx, i] == 0)
                        mas[gx, i] = 3;
                    else
                        break;
                for (int i = gx - 1; i >= 0; i--)
                    if (mas[i, gy] == 0)
                        mas[i, gy] = 3;
                    else
                        break;
            }
            else if (gch =='h')
            {
            //    MessageBox.Show(cgx.ToString()+" "+cgy.ToString()+" "+gx.ToString()+" "+gy.ToString()+" "+cgch.ToString());
                int buf = cgx + cgy;
                buf -= gx + gy;
                if ((buf!=1)&&(buf!=-1))
                {
                    MessageBox.Show("За нарушение правил ШТРАФ лишение хода","Штраф");
                    return;
                }
                mas[cgx, cgy] = 0;
                if (cgch == 'b')
                    mas[gx, gy] = 1;
                else if(cgch =='w')
                    mas[gx, gy] = 2;
            }
        }
       private void parser(String str){
           cgx = gx;
           cgy = gy;
           cgch=gch;
           gch = str[1];
           String buf = gch.ToString();
           gx = Int32.Parse(buf);
           gch = str[2];
           buf = gch.ToString();
           gy = Int32.Parse(buf);
           gch = str[0];
        }
        public void insertindex(String str){
            parser(str);
            if (gch == 'b')
            {
                mas[gx, gy] = 1;
            }
            else if(gch=='w')
            {
                mas[gx, gy] = 2;
            }
        }
       public int finnish()
        {
            int w = 0, b = 0;
            for (int i = 0; i != 3; i++)
            {
                for (int j = 4 ; j != 7 ; j++)
                {
                    if (mas[i, j] == 2)
                        b += 1;
                }
            }
            for (int i = 4; i != 7; i++)
            {
                for (int j = 0; j != 4; j++)
                {
                    if (mas[i, j] == 1)
                        w += 1;
                }
            }
            if (w == 6)
                return 1;
            if(b == 6)
                return 2;
            onlone = w;
            onltwo = b;
            return 0;
        }
    }
}
Есть такие проблемы:
-Рестарт игры не работает().
-Ход не возможен через свою и фишку противника
-При активации шашки ход выполняется только этой шашкой
-Нет возможности ходить назад(тоесть если походил наверх, нет возможности вернуться вниз)
Заранее благодарю
z7172 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Игра уголки на basic Stiff Фриланс 2 28.04.2011 10:49
Черные уголки titlebar cyber_guest Win Api 3 04.11.2010 18:44
Круглые уголки Linel HTML и CSS 0 19.08.2010 23:56
Уголки Lera Фриланс 4 16.05.2010 18:39
Криптография. Шифр уголки. С++ Lera Помощь студентам 3 15.05.2010 19:43