Программирование для мобильных платформ. Windows Phone - страница 3



// Дополнительный заряд аккумулятора заблокирован.

InactiveSleepTime = TimeSpan.FromSeconds (1);

// Тип жестов – нажатие

TouchPanel. EnabledGestures = GestureType. Tap;

}

protected override void Initialize ()

{

base.Initialize ();

}

// Загрузка контента

protected override void LoadContent ()

{

spriteBatch = new SpriteBatch (GraphicsDevice);

// Загрузка текстур – фон, двоеточие, выделение стандартных и выбранных чисел, выделение ошибок,

// сообщение об обновлении и информация о рекорде

gameField = Content. Load («GameField»);

doublePoint = Content. Load («d»);

standartNumbers = Content. Load («s»);

errorNumbers = Content. Load («error»);

menuUpdate = Content. Load («MenuUpdate»);

menuRecord = Content. Load («MenuRecord»);

// Загрузка текстур цифр

for (short i = 0; i <10; i++)

{

numbersTexture [i] = Content.Load(i.ToString ());

}

// Созданние массиива объектов класса Field

for (short i = 0; i <9; i++)

{

for (short j = 0; j <9; j++)

{

field [i, j] = new Field ();

// Определение принадлежности к одному из 9 квадратов

if (i <3 && j <3)

{

field [i, j].Square = 1;

}

else if (i <3 && j <6)

{

field [i, j].Square = 2;

}

else if (i <3 && j <9)

{

field [i, j].Square = 3;

}

else if (i <6 && j <3)

{

field [i, j].Square = 4;

}

else if (i <6 && j <6)

{

field [i, j].Square = 5;

}

else if (i <6 && j <9)

{

field [i, j].Square = 6;

}

else if (i <9 && j <3)

{

field [i, j].Square = 7;

}

else if (i <9 && j <6)

{

field [i, j].Square = 8;

}

else if (i <9 && j <9)

{

field [i, j].Square = 9;

}

}

}

// Чтение сохраненных данных

ReadData ();

// Поиск повторов

SearchRepeats ();

}

// Генерация поля

public void Generate ()

{

for (short i = 0; i <9; i++)

{

for (short j = 0; j <9; j++)

{

field [i, j].Standard = false;

field [i, j].Repeat = false;

}

}

time = 0;

Random rand = new Random ();

numbers = new short [9] {1, 2, 3, 4, 5, 6, 7, 8, 9};

// Рандомное формирование первой стороки

for (short i = 0; i <9; i++)

{

short tempRand = (short)(rand.Next (45689) % (9 – i));

field [0, i].Value = numbers [tempRand];

for (short j = tempRand; j <9 – i – 1; j++)

{

numbers [j] = numbers [j +1];

}

}

// Формирование строк согласно перестановкам

numbers = new short [9] {8, 3, 4, 6, 7, 0, 5, 1, 2};

// Формирование второй строки

for (short i = 0; i <9; i++)

{

field [1, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {5, 6, 8, 2, 0, 7, 1, 3, 4};

// Формирование третьей строки

for (short i = 0; i <9; i++)

{

field [2, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {2, 8, 6, 4, 3, 1, 7, 0, 5};

// Формирование четвертой строки

for (short i = 0; i <9; i++)

{

field [3, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {7, 5, 3, 1, 2, 6, 4, 8, 0};

// Формирование пятой строки

for (short i = 0; i <9; i++)

{

field [4, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {4, 2, 1, 7, 8, 3, 0, 5, 6};

// Формирование шестой строки

for (short i = 0; i <9; i++)

{

field [5, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {6, 0, 5, 8, 1, 4, 3, 2, 7};

// Формирование седьмой строки

for (short i = 0; i <9; i++)

{

field [6, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {3, 4, 7, 0, 5, 8, 2, 6, 1};

// Формирование восьмой строки

for (short i = 0; i <9; i++)

{

field [7, numbers[i]].Value = field [0, i].Value;

}

numbers = new short [9] {1, 7, 0, 5, 6, 2, 8, 4, 3};

// Формирование девятой строки