public async Task IncomingPlayerPotatoCollectingRequest() { if (CharactersData.GetCharacterFarmingSkill(Context.User.Id) >= 5) { if ((DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds >= 120) // checks if more than 120 seconds have passed between the last requests send by the player { //In future update add a axe durability check //Execution of command int PlantsToGiveAmount = random.Next(1, 5) + Convert.ToInt32(CharactersData.GetCharacterFarmingSkill(Context.User.Id)); PlantsFarmEmbed.WithColor(Color.Blue); PlantsFarmEmbed.AddField("<:Wheat:603957637947588608>```Success!```", $"```You have received {PlantsToGiveAmount} potatoes!```"); await Context.Channel.SendMessageAsync("", false, PlantsFarmEmbed.Build()); //Save data await CharactersData.SavePlayerFarmCooldown(Context.User.Id, DateTime.Now); //Refresh cooldown for mining await CharactersData.SaveCharacterPotato(Context.User.Id, PlantsToGiveAmount, 0.3f / CharactersData.GetCharacterFarmingSkill(Context.User.Id)); } else { //Send message about cooldown PlantsFarmEmbed.WithColor(Color.Blue); if (120 - (DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds > 60) { PlantsFarmEmbed.AddField($"<:Wheat:603957637947588608>```{CharactersData.GetCharacterName(Context.User.Id)}, you're too exhausted to collect plants```", $"```Try again in 1m {Math.Round(Convert.ToDecimal(120 - (DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds - 60))}s```"); } else { PlantsFarmEmbed.AddField($"<:Wheat:603957637947588608>```{CharactersData.GetCharacterName(Context.User.Id)}, you're too exhausted to collect plants```", $"```Try again in {Math.Round(Convert.ToDecimal(120 - (DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds))}s```"); } await Context.Channel.SendMessageAsync("", false, PlantsFarmEmbed.Build()); return; } } else { PlantsFarmEmbed.WithColor(Color.Blue); PlantsFarmEmbed.AddField($"<:Wheat:603957637947588608>```Farming skill comes with time, {CharactersData.GetCharacterName(Context.User.Id)}```", "```Required level of skill is: [5]\n" + $"Your current skill level is: [{CharactersData.GetCharacterFarmingSkill(Context.User.Id)}]```"); await Context.Channel.SendMessageAsync("", false, PlantsFarmEmbed.Build()); return; } }
public async Task IncomingPlayerEggsCollectingRequest() { if ((DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds >= 120) // checks if more than 120 seconds have passed between the last requests send by the player { //In future update add a axe durability check //Execution of command int AnimalLootToGiveAmount = random.Next(1, 5) + Convert.ToInt32(CharactersData.GetCharacterFarmingSkill(Context.User.Id)); AnimalsFarmEmbed.WithColor(Color.Blue); AnimalsFarmEmbed.AddField("<:milkBar:604047741189881857>```Success!```", $"```You have received {AnimalLootToGiveAmount} eggs!```"); await Context.Channel.SendMessageAsync("", false, AnimalsFarmEmbed.Build()); //Save data await CharactersData.SavePlayerFarmCooldown(Context.User.Id, DateTime.Now); //Refresh cooldown for mining if (CharactersData.GetCharacterFarmingSkill(Context.User.Id) <= 2) { await CharactersData.SaveCharacterEggsAmount(Context.User.Id, AnimalLootToGiveAmount, 0.3f); } else { await CharactersData.SaveCharacterEggsAmount(Context.User.Id, AnimalLootToGiveAmount, 0.3f / CharactersData.GetCharacterFarmingSkill(Context.User.Id)); } } else { //Send message about cooldown AnimalsFarmEmbed.WithColor(Color.Blue); if (120 - (DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds > 60) { AnimalsFarmEmbed.AddField($"<:milkBar:604047741189881857>```{CharactersData.GetCharacterName(Context.User.Id)}, you're too exhausted to collect farm loot```", $"```Try again in 1m {Math.Round(Convert.ToDecimal(120 - (DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds - 60))}s```"); } else { AnimalsFarmEmbed.AddField($"<:Wheat:603957637947588608>```{CharactersData.GetCharacterName(Context.User.Id)}, you're too exhausted to collect farm loot```", $"```Try again in {Math.Round(Convert.ToDecimal(120 - (DateTime.Now - CharactersData.GetCharacterFarmingCooldown(Context.User.Id)).TotalSeconds))}s```"); } await Context.Channel.SendMessageAsync("", false, AnimalsFarmEmbed.Build()); return; } }