Beispiel #1
0
        public static void RetrieveMoney(IUser user, double amount, ICommandContext _context)
        {
            Config._INSTANCE.GuildConfigs[_context.Guild.Id].XUsers[_context.User.Id].Money -= amount;
            double money = Config._INSTANCE.GuildConfigs[_context.Guild.Id].XUsers[_context.User.Id].Money;

            _context.Channel.SendMessageAsync("", false, new EmbedBuilder()
            {
                Title       = "X.A.N.A. - Comptabilité",
                Color       = Color.Red,
                Description = user.Mention + " a perdu " + amount + " pièce" + CFormat.AddPluralS(amount) + "."
                              + Environment.NewLine + "Nouveau solde : **" + money + "** pièce" + CFormat.AddPluralS(money)
            }.Build());

            XmlManager.SaveXmlConfig();
        }
Beispiel #2
0
        public async Task MoneyAsync()
        {
            double money = Config._INSTANCE.GuildConfigs[Context.Guild.Id].XUsers[Context.User.Id].Money;

            await ReplyAsync("Solde de " + Context.User.Mention + " : **" + money + "** pièce" + CFormat.AddPluralS(money));
        }
Beispiel #3
0
        public async Task TresorAsync(int number)
        {
            if (JoueursTimerTresor.Contains(Context.User.Id))
            {
                await ReplyAsync(Context.User.Mention + ", attends un peu avant d'essayer de trouver un nouveau trésor.");

                return;
            }


            if (number < 1 || number > 10)
            {
                await ReplyAsync("Veuillez indiquer un nombre de 1 à 10 pour jouer.");

                return;
            }

            Random rnd    = new Random();
            int    rndNum = rnd.Next(100) + 1;

            int tresorCode  = 1;
            int previousVal = 0;

            // Assignation du résultat du tirage au sort
            for (int i = 1; i <= 10; i++)
            {
                if (rndNum <= Config._INSTANCE.TresorProbabilities[i] + previousVal)
                {
                    tresorCode = i;
                    break;
                }

                previousVal += Config._INSTANCE.TresorProbabilities[i];
            }

            // Vérification et résultat
            if (number == tresorCode)
            {
                await ReplyAsync(Context.User.Mention + " a trouvé le code du coffre au trésor (" + tresorCode + ") et a gagné " + tresorCode *3 + " pièce" + CFormat.AddPluralS(tresorCode * 3) + " !");

                Money.AddMoney(Context.User, tresorCode * 3, Context);

                JoueursTimerTresor.Add(Context.User.Id);

                System.Threading.Timer timer = new System.Threading.Timer((obj) =>
                {
                    JoueursTimerTresor.Remove(Context.User.Id);
                },
                                                                          null, (int)(Config._INSTANCE.GuildConfigs[Context.Guild.Id].TimerTresor * 1000), System.Threading.Timeout.Infinite);
            }
            else
            {
                await ReplyAsync(Context.User.Mention + " n'a pas trouvé le code du coffre au trésor, qui était " + tresorCode + "...");
            }
        }