У меня есть бот Discord, который я создаю, в котором я пытаюсь создать счетчик, который увеличивается при выполнении команды. (Команда называется «щелкнуть») Я пытался записать переменные в консоли в нескольких точках, и при увеличении переменной он сбрасывается до 0 по неизвестной (мне) причине . Код функции, отвечающей за увеличение количества кликов:
public int clicks;
int x = 1;
string item = "default value";
[Command("click")]
public async Task ClickAsync()
{
clicks++;
await ReplyAsync($"You have found a {x}{item}! You now have {clicks} coins!");
Console.WriteLine(clicks.ToString());
}
полный код; поскольку предыдущий раздел, скорее всего, не был проблемой, хотя все еще возможен, это:
public int clicks;
int x = 1;
string item = "default value";
[Command("click")]
public async Task ClickAsync()
{
clicks++;
await ReplyAsync($"You have found a {x}{item}! You now have {clicks} coins!");
Console.WriteLine(clicks.ToString());
}
int de;
string name;
String[] items = { "a", "b" };
[Command("shop")]
public async Task ShopAsync(string item)
{
foreach (string i in items)
{
if (i == item)
{
name = i;
de = getPrice(i);
if (clicks >= de)
{
await ReplyAsync($"You have purchased a {name} for {de}");
clicks -= de;
}
else
{
await ReplyAsync($"You have {clicks} coins. You need more.");
}
}
}
}
[Command("help")]
public async Task TaskAsync()
{
await ReplyAsync("Help Module: {}");
}
public int getPrice(string de)
{
return 1;
}
При необходимости вывод консоли:
15:45:48 Gateway Ready
1
1
1 #| The amount of 1's is equal to the amount of times the "click" command was ran.
Заранее спасибо,