コード例 #1
0
            public async Task IncomingPlayerDeerLeatherCollectingRequest()
            {
                if (CharactersData.GetCharacterHuntingSkill(Context.User.Id) >= 25)
                {
                    //Checking commands
                    if (CharactersData.GetCharacterDeerCarcass(Context.User.Id) < 1)
                    {
                        LeatherEmbed.WithColor(Color.Blue);
                        LeatherEmbed.AddField("<:Knife:607575664987734026>```You don't have enough deer carcasses to collect leather from them!```", "```At least 1 deer carcass required```");
                        await Context.Channel.SendMessageAsync("", false, LeatherEmbed.Build());

                        return;
                    }
                    //Execution of command
                    LeatherEmbed.WithColor(Color.Blue);
                    int TotalLeatherToGive = 0, TotalCarcassesToTook = 0, ChanceToGetBonusLeather, LeatherToGive;
                    for (int i = CharactersData.GetCharacterDeerCarcass(Context.User.Id); i >= 1; i -= 1)
                    {
                        ChanceToGetBonusLeather = random.Next(0, 10);
                        if (ChanceToGetBonusLeather > (7 - CharactersData.GetCharacterHuntingSkill(Context.User.Id) / 20))
                        {
                            LeatherToGive = random.Next(3, 4);
                        }
                        else
                        {
                            LeatherToGive = random.Next(1, 2);
                        }
                        TotalLeatherToGive   += LeatherToGive;
                        TotalCarcassesToTook += 1;
                    }
                    LeatherEmbed.AddField("<:Knife:607575664987734026>```Success!```", $"```You have received {TotalLeatherToGive} units of deer leather!```");
                    await Context.Channel.SendMessageAsync("", false, LeatherEmbed.Build());

                    //Save data
                    await CharactersData.SaveCharacterDeerLeather(Context.User.Id, TotalLeatherToGive, 0.3f / CharactersData.GetCharacterHuntingSkill(Context.User.Id), TotalCarcassesToTook);;
                    return;
                }
                else
                {
                    LeatherEmbed.WithColor(Color.Blue);
                    LeatherEmbed.AddField($"<:Knife:607575664987734026>```Hunting skill comes with time, {CharactersData.GetCharacterName(Context.User.Id)}```",
                                          "```Required level of skill is: [25]\n" +
                                          $"Your current skill level is: [{CharactersData.GetCharacterHuntingSkill(Context.User.Id)}]```");
                    await Context.Channel.SendMessageAsync("", false, LeatherEmbed.Build());

                    return;
                }
            }