在C#控制台应用程序中,我将如何创建';图像';在21点游戏中玩纸牌?
我正在为我的学校开发一个简单的C#blackjack控制台应用程序游戏,有人给我举了一个例子。这个例子以某种方式在控制台窗口中绘制了一张卡的图片,我不知道如何在不指定数百个控制台的情况下复制它。为52个唯一的卡中的每一个指定Write 这就是你实际玩游戏时的样子。很好 主菜单中还有一个选项,可以洗牌并显示所有52张牌在C#控制台应用程序中,我将如何创建';图像';在21点游戏中玩纸牌?,c#,image,console-application,blackjack,C#,Image,Console Application,Blackjack,我正在为我的学校开发一个简单的C#blackjack控制台应用程序游戏,有人给我举了一个例子。这个例子以某种方式在控制台窗口中绘制了一张卡的图片,我不知道如何在不指定数百个控制台的情况下复制它。为52个唯一的卡中的每一个指定Write 这就是你实际玩游戏时的样子。很好 主菜单中还有一个选项,可以洗牌并显示所有52张牌 这是什么魔法?他们真的花了很多时间硬编码每一张独特的卡片是如何打印出来的吗?我当然希望不会。这就是我试图复制的东西,除了硬编码,我对想法一无所知。谢谢你的帮助。你不需要卡片上的
这是什么魔法?他们真的花了很多时间硬编码每一张独特的卡片是如何打印出来的吗?我当然希望不会。这就是我试图复制的东西,除了硬编码,我对想法一无所知。谢谢你的帮助。你不需要卡片上的图像。你已经有了。按从
alt+3
到alt+6
(在数字键盘上)
多亏了达米恩的评论,我在我的卡片课上想出了这两种方法。还要感谢vik_78的评论,让我知道我需要UTF8编码才能看到卡的符号
public void PrintCard()
{
if (_value == 1)
{
_printString =
" V " +
" " +
" " +
" S " +
" " +
" " +
" V " ;
PrintMethod();
}
if (_value == 2)
{
_printString =
" V " +
" S " +
" " +
" " +
" " +
" S " +
" V ";
PrintMethod();
}
if (_value == 3)
{
_printString =
" V " +
" S " +
" " +
" S " +
" " +
" S " +
" V ";
PrintMethod();
}
if (_value == 4)
{
_printString =
" V " +
" S S " +
" " +
" " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 5)
{
_printString =
" V " +
" S S " +
" " +
" S " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 6)
{
_printString =
" V " +
" S S " +
" " +
" S S " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 7)
{
_printString =
" V " +
" S S " +
" S " +
" S S " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 8)
{
_printString =
" V " +
" S S " +
" S " +
" S S " +
" S " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 9)
{
_printString =
" V " +
" S S S " +
" " +
" S S S " +
" " +
" S S S " +
" V ";
PrintMethod();
}
if (_value == 10 || _value == 11 || _value == 12 || _value == 13)
{
_printString =
" V " +
" S S " +
" S " +
" S S S S " +
" S " +
" S S " +
" V ";
PrintMethod();
}
}
private void PrintMethod()
{
bool hasWrittenFirstNumber = false;
switch (_suit)
{
case "Hearts":
case "Diamonds":
Console.ForegroundColor = ConsoleColor.Red;
break;
case "Clubs":
case "Spades":
Console.ForegroundColor = ConsoleColor.Black;
break;
}
for (int i = 0; i < _printString.Length; i++)
{
Console.BackgroundColor = ConsoleColor.White;
if (i % 11 == 0 && i != 0)
{
Console.CursorLeft -= 11;
Console.CursorTop += 1;
}
if (_printString[i] == 'S')
{
switch (_suit)
{
case "Hearts":
Console.Write('♥');
break;
case "Clubs":
Console.Write("♣");
break;
case "Diamonds":
Console.Write("♦");
break;
case "Spades":
Console.Write("♠");
break;
}
continue;
}
else if (_printString[i] == 'V')
{
if (_value == 10)
{
if (hasWrittenFirstNumber == false)
{
Console.Write(10);
hasWrittenFirstNumber = true;
i++;
}
else
{
Console.CursorLeft--;
Console.Write(10);
}
continue;
}
else if (_value == 11)
{
Console.Write("J");
}
else if (_value == 12)
{
Console.Write("Q");
}
else if (_value == 13)
{
Console.Write("K");
}
else if (_value == 1)
{
Console.Write("A");
}
else
{
Console.Write(_value);
}
}
else
{
Console.Write(_printString[i]);
}
}
Console.BackgroundColor = ConsoleColor.Black;
Console.ForegroundColor = ConsoleColor.White;
}
公共作废打印卡()
{
如果(_值==1)
{
_打印字符串=
“V”+
" " +
" " +
“S”+
" " +
" " +
“五”;
PrintMethod();
}
如果(_值==2)
{
_打印字符串=
“V”+
“S”+
" " +
" " +
" " +
“S”+
“五”;
PrintMethod();
}
如果(_值==3)
{
_打印字符串=
“V”+
“S”+
" " +
“S”+
" " +
“S”+
“五”;
PrintMethod();
}
如果(_值==4)
{
_打印字符串=
“V”+
“S”+
" " +
" " +
" " +
“S”+
“五”;
PrintMethod();
}
如果(_值==5)
{
_打印字符串=
“V”+
“S”+
" " +
“S”+
" " +
“S”+
“五”;
PrintMethod();
}
如果(_值==6)
{
_打印字符串=
“V”+
“S”+
" " +
“S”+
" " +
“S”+
“五”;
PrintMethod();
}
如果(_值==7)
{
_打印字符串=
“V”+
“S”+
“S”+
“S”+
" " +
“S”+
“五”;
PrintMethod();
}
如果(_值==8)
{
_打印字符串=
“V”+
“S”+
“S”+
“S”+
“S”+
“S”+
“五”;
PrintMethod();
}
如果(_值==9)
{
_打印字符串=
“V”+
“S S”+
" " +
“S S”+
" " +
“S S”+
“五”;
PrintMethod();
}
如果(|u值==10 | | | u值==11 | | | u值==12 | | u值==13)
{
_打印字符串=
“V”+
“S”+
“S”+
“S”+
“S”+
“S”+
“五”;
PrintMethod();
}
}
私有void打印方法()
{
bool hasWrittenFirstNumber=false;
开关(_套装)
{
案例“红心”:
“钻石”案:
Console.ForegroundColor=ConsoleColor.Red;
打破
案例“俱乐部”:
“黑桃”一案:
Console.ForegroundColor=ConsoleColor.Black;
打破
}
对于(int i=0;i<\u printString.Length;i++)
{
Console.BackgroundColor=ConsoleColor.White;
如果(i%11==0&&i!=0)
{
Console.CursorLeft-=11;
Console.CursorTop+=1;
}
如果(_printString[i]='S')
{
开关(_套装)
{
案例“红心”:
控制台。写入('♥');
打破
案例“俱乐部”:
控制台。写入(“♣");
打破
“钻石”案:
控制台。写入(“♦");
打破
“黑桃”一案:
控制台。写入(“♠");
打破
}
继续;
}
else if(_printString[i]=='V')
{
如果(_值==10)
{
if(hasWrittenFirstNumber==false)
{
public void PrintCard()
{
if (_value == 1)
{
_printString =
" V " +
" " +
" " +
" S " +
" " +
" " +
" V " ;
PrintMethod();
}
if (_value == 2)
{
_printString =
" V " +
" S " +
" " +
" " +
" " +
" S " +
" V ";
PrintMethod();
}
if (_value == 3)
{
_printString =
" V " +
" S " +
" " +
" S " +
" " +
" S " +
" V ";
PrintMethod();
}
if (_value == 4)
{
_printString =
" V " +
" S S " +
" " +
" " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 5)
{
_printString =
" V " +
" S S " +
" " +
" S " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 6)
{
_printString =
" V " +
" S S " +
" " +
" S S " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 7)
{
_printString =
" V " +
" S S " +
" S " +
" S S " +
" " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 8)
{
_printString =
" V " +
" S S " +
" S " +
" S S " +
" S " +
" S S " +
" V ";
PrintMethod();
}
if (_value == 9)
{
_printString =
" V " +
" S S S " +
" " +
" S S S " +
" " +
" S S S " +
" V ";
PrintMethod();
}
if (_value == 10 || _value == 11 || _value == 12 || _value == 13)
{
_printString =
" V " +
" S S " +
" S " +
" S S S S " +
" S " +
" S S " +
" V ";
PrintMethod();
}
}
private void PrintMethod()
{
bool hasWrittenFirstNumber = false;
switch (_suit)
{
case "Hearts":
case "Diamonds":
Console.ForegroundColor = ConsoleColor.Red;
break;
case "Clubs":
case "Spades":
Console.ForegroundColor = ConsoleColor.Black;
break;
}
for (int i = 0; i < _printString.Length; i++)
{
Console.BackgroundColor = ConsoleColor.White;
if (i % 11 == 0 && i != 0)
{
Console.CursorLeft -= 11;
Console.CursorTop += 1;
}
if (_printString[i] == 'S')
{
switch (_suit)
{
case "Hearts":
Console.Write('♥');
break;
case "Clubs":
Console.Write("♣");
break;
case "Diamonds":
Console.Write("♦");
break;
case "Spades":
Console.Write("♠");
break;
}
continue;
}
else if (_printString[i] == 'V')
{
if (_value == 10)
{
if (hasWrittenFirstNumber == false)
{
Console.Write(10);
hasWrittenFirstNumber = true;
i++;
}
else
{
Console.CursorLeft--;
Console.Write(10);
}
continue;
}
else if (_value == 11)
{
Console.Write("J");
}
else if (_value == 12)
{
Console.Write("Q");
}
else if (_value == 13)
{
Console.Write("K");
}
else if (_value == 1)
{
Console.Write("A");
}
else
{
Console.Write(_value);
}
}
else
{
Console.Write(_printString[i]);
}
}
Console.BackgroundColor = ConsoleColor.Black;
Console.ForegroundColor = ConsoleColor.White;
}