本文整理汇总了C#中Field.Move方法的典型用法代码示例。如果您正苦于以下问题:C# Field.Move方法的具体用法?C# Field.Move怎么用?C# Field.Move使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Field
的用法示例。
在下文中一共展示了Field.Move方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Play
public override void Play()
{
Frame frame = new Frame();
Field f = new Field();
frame.SetFrame();
f.NewFigure();
f.DrawField();
//створення обєктів подій для клавіатури
EventUp up = new EventUp(); //вверх
EventDown down = new EventDown(); //вниз
EventLeft left = new EventLeft(); // вліво
EventRight right = new EventRight(); //вправо
//<КлассИлиОбъект>.<ИмяСобытия> += <КлассЧейМетодДолженЗапуститься>.<МетодПодходящийПоСигнатуре>
up.UpEvent += f.UpFig;
down.DownEvent += f.DownFig;
left.LeftEvent += f.LeftFig;
right.RightEvent += f.RightFig;
ConsoleKeyInfo cki;
while (true)
{
if (f.CheckDown() == true)
f.Move();
else
{
while (true)
{
bool flag = f.CheckLine();
if (flag == false)
break;
}
f.NewFigure();
if (f.IsAtBottom() == true)
break;
}
int dificulty = 11 - 2 * f.Level;
for (int i = 0; i < dificulty; i++) //кількість ітерацій імітує швидкість
{
System.Threading.Thread.Sleep(50);
if (Console.KeyAvailable)
{
cki = Console.ReadKey();
switch (cki.Key)
{
case ConsoleKey.UpArrow: //перевертає фігуру
{
up.UpUserEvent(); //обробка події
f.DrawField(); //перерисовує поле
break;
}
case ConsoleKey.DownArrow:
{
down.DownUserEvent();
break;
}
case ConsoleKey.LeftArrow:
{
left.LeftUserEvent();
f.DrawField();
break;
}
case ConsoleKey.RightArrow:
{
right.RightUserEvent();
f.DrawField();
break;
}
default:
{
break;
}
}
}
}
}
Console.Clear();
Console.WriteLine("\n\n\n\n\n GAME OVER");
Console.WriteLine("\n TOTAL SCORES " + (f.Level * 1000 + f.Score) + "\n\n\n\n\n\n\n\n\n");
Console.WriteLine("Press any key");
Console.ReadLine();
}