Alternative input methods
This commit is contained in:
parent
6d782b2798
commit
96ae783ceb
|
@ -23,6 +23,8 @@ namespace Snakity.Loop
|
|||
{
|
||||
case ConsoleKey.W:
|
||||
case ConsoleKey.UpArrow:
|
||||
case ConsoleKey.K:
|
||||
case ConsoleKey.NumPad8:
|
||||
if (headDelta.Y == 0)
|
||||
headDelta.Y = -1;
|
||||
else
|
||||
|
@ -31,6 +33,8 @@ namespace Snakity.Loop
|
|||
break;
|
||||
case ConsoleKey.A:
|
||||
case ConsoleKey.LeftArrow:
|
||||
case ConsoleKey.H:
|
||||
case ConsoleKey.NumPad4:
|
||||
headDelta.X = headDelta.X switch
|
||||
{
|
||||
0 => -1,
|
||||
|
@ -39,6 +43,8 @@ namespace Snakity.Loop
|
|||
break;
|
||||
case ConsoleKey.S:
|
||||
case ConsoleKey.DownArrow:
|
||||
case ConsoleKey.J:
|
||||
case ConsoleKey.NumPad2:
|
||||
headDelta.Y = headDelta.Y switch
|
||||
{
|
||||
0 => 1,
|
||||
|
@ -47,6 +53,8 @@ namespace Snakity.Loop
|
|||
break;
|
||||
case ConsoleKey.D:
|
||||
case ConsoleKey.RightArrow:
|
||||
case ConsoleKey.L:
|
||||
case ConsoleKey.NumPad6:
|
||||
headDelta.X = headDelta.X switch
|
||||
{
|
||||
0 => 1,
|
||||
|
@ -54,9 +62,12 @@ namespace Snakity.Loop
|
|||
};
|
||||
break;
|
||||
case ConsoleKey.R:
|
||||
case ConsoleKey.OemPlus:
|
||||
R = true;
|
||||
break;
|
||||
case ConsoleKey.Escape:
|
||||
case ConsoleKey.End:
|
||||
case ConsoleKey.OemMinus:
|
||||
Esc = true;
|
||||
break;
|
||||
case ConsoleKey.P:
|
||||
|
|
|
@ -38,16 +38,20 @@ Highscore: {SettingsMan.Highscore}
|
|||
switch (Console.ReadKey().Key)
|
||||
{
|
||||
case ConsoleKey.Enter:
|
||||
case ConsoleKey.OemPlus:
|
||||
case ConsoleKey.S:
|
||||
PlayRound();
|
||||
while (GameOver())
|
||||
PlayRound();
|
||||
break;
|
||||
case ConsoleKey.Escape:
|
||||
case ConsoleKey.OemMinus:
|
||||
case ConsoleKey.Q:
|
||||
case ConsoleKey.X:
|
||||
playing = false;
|
||||
break;
|
||||
case ConsoleKey.V:
|
||||
case ConsoleKey.Multiply:
|
||||
SettingsGui.Show();
|
||||
break;
|
||||
case ConsoleKey.B:
|
||||
|
@ -75,8 +79,8 @@ Play again? (y/n)");
|
|||
ConsoleKey tmp;
|
||||
do
|
||||
tmp = Console.ReadKey().Key;
|
||||
while (tmp != ConsoleKey.Y && tmp != ConsoleKey.N);
|
||||
return tmp == ConsoleKey.Y;
|
||||
while (tmp != ConsoleKey.Y && tmp != ConsoleKey.Enter && tmp != ConsoleKey.S && tmp != ConsoleKey.N && tmp != ConsoleKey.Escape && tmp != ConsoleKey.End);
|
||||
return tmp == ConsoleKey.Y || tmp == ConsoleKey.Enter || tmp == ConsoleKey.S;
|
||||
}
|
||||
|
||||
private static void PlayRound()
|
||||
|
|
|
@ -19,12 +19,18 @@ namespace Snakity
|
|||
{
|
||||
case ConsoleKey.Escape:
|
||||
case ConsoleKey.Enter:
|
||||
case ConsoleKey.OemPlus:
|
||||
case ConsoleKey.OemMinus:
|
||||
settingVals = false;
|
||||
break;
|
||||
;
|
||||
case ConsoleKey.LeftArrow:
|
||||
case ConsoleKey.RightArrow:
|
||||
case ConsoleKey.H:
|
||||
case ConsoleKey.L:
|
||||
case ConsoleKey.Spacebar:
|
||||
case ConsoleKey.NumPad4:
|
||||
case ConsoleKey.NumPad6:
|
||||
switch (currentSetting)
|
||||
{
|
||||
case 0:
|
||||
|
@ -39,12 +45,16 @@ namespace Snakity
|
|||
}
|
||||
break;
|
||||
case ConsoleKey.UpArrow:
|
||||
case ConsoleKey.K:
|
||||
case ConsoleKey.NumPad8:
|
||||
currentSetting--;
|
||||
if (currentSetting < 0)
|
||||
currentSetting = 2;
|
||||
break;
|
||||
case ConsoleKey.DownArrow:
|
||||
case ConsoleKey.J:
|
||||
case ConsoleKey.Tab:
|
||||
case ConsoleKey.NumPad2:
|
||||
currentSetting++;
|
||||
if (currentSetting > 2)
|
||||
currentSetting = 0;
|
||||
|
|
Reference in New Issue