Eu posso ligar Get<int>(Stat);
ouGet<string>(Name);
Mas, ao compilar, recebo:
Não é possível converter implicitamente o tipo 'int' em 'T'
e a mesma coisa para string
.
public T Get<T>(Stats type) where T : IConvertible
{
if (typeof(T) == typeof(int))
{
int t = Convert.ToInt16(PlayerStats[type]);
return t;
}
if (typeof(T) == typeof(string))
{
string t = PlayerStats[type].ToString();
return t;
}
}