My code gives error in this EXATA line, I have already re-integered and still gives the same error. it is a game of the gallows:
vLetraA = vLetraA.Substring (x, 1);
full code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
int vAcertos = 0, vErros = 0, x, vTam, i;
string vPalavra = "", vLetraD, vLetra, vAtual, vAnterior, vLetraA;
bool vAcertou;
string[] Palavra = new string[8];
Random aleatory = new Random();
Palavra[0] = "Batman";
Palavra[1] = "Coringa";
Palavra[2] = "Penguim";
Palavra[3] = "Duas Caras";
Palavra[4] = "Harleyquinn";
Palavra[5] = "Morcego Humano";
Palavra[6] = "Drax";
Palavra[7] = "Robin";
i = aleatory.Next(0, 8);
vPalavra = Palavra[i];
vAnterior = ""; vAtual = ""; //declaração Primária;
vTam = vPalavra.Length; //vTam é o tamanho do vPalavra
for (x = 0; x < vTam; x++)
{
vAtual = vAtual + "-";
}
Console.SetCursorPosition(25, 12);
Console.Write(vAtual);
do
{
Console.SetCursorPosition(10, 9);
Console.Write("escreva uma letra: ");
vLetraD = Console.ReadLine();
vLetraA = vAtual; vAcertou = false;
vAtual = "";
for (x = 0; x < vTam; x++)
{
vLetra = vPalavra.Substring(x, 1);
vLetraA = vLetraA.Substring(x, 1);
if (vLetraD == vLetra && vLetraA == "-")
{
vAtual = vAtual + vLetra;
vAcertos++;
vAcertou = true;
}
else
{
if (vLetraA == "-")
{
vAtual = vAtual + "-";
}
}
}
Console.SetCursorPosition(25, 12);
Console.Write(vAtual);
if (vAcertou == false)
{
vErros++;
MostraCorpo(vErros);
Console.ReadKey();
}
Console.ReadKey();
} while (vErros != 6 && vAcertos != vTam);
}
static void janela(int L1, int C1, int L2, int C2)
{
int x;
for (x = L1; x <= L2; x++)
{
Console.SetCursorPosition(C1, x); Console.Write("║");
Console.SetCursorPosition(C2, x); Console.Write("║");
}
for (x = C1; x <= C2; x++)
{
Console.SetCursorPosition(x, L1); Console.Write("═");
Console.SetCursorPosition(x, L2); Console.Write("═");
}
Console.SetCursorPosition(C1, L1); Console.Write("╔");
Console.SetCursorPosition(C2, L1); Console.Write("╗");
Console.SetCursorPosition(C1, L2); Console.Write("╚");
Console.SetCursorPosition(C2, L2); Console.Write("╝");
}
static void MostraCorpo(int p)
{
switch (p)
{
case 1:
Console.SetCursorPosition(13, 7);
Console.Write("O");
break;
case 2:
Console.SetCursorPosition(13, 8);
Console.Write(" /|\ ");
break;
case 3:
Console.SetCursorPosition(13, 7);
Console.Write(" /\");
break;
}
}
static void MostraForca()
{
Console.SetCursorPosition(10, 5);
Console.Write("____");
Console.SetCursorPosition(10, 6);
Console.WriteLine("| |");
Console.SetCursorPosition(10, 7);
Console.WriteLine("|");
Console.SetCursorPosition(10, 8);
Console.WriteLine("|");
}
}
}