private JObject give_prize_to_winner(List <Bet> bets, double winner_number) { JObject message = new JObject(); JObject bets_data = new JObject(); message.Add("winner_number", winner_number); for (int i = 0; i < bets.Count; i++) { float increase_factor = 0f; if ((bets[i].Bet_number == 38 && winner_number % 2 == 0) || (bets[i].Bet_number == 37 && winner_number % 2 == 1)) { increase_factor = 1.8f; } else if (bets[i].Bet_number == winner_number) { increase_factor = 5f; } Global_functions.Update_player_credit(bets[i].Id_player, bets[i].Value * increase_factor); JObject current_bet = add_data_current_bet(bets[i], increase_factor); bets_data.Add(bets[i].Id.ToString(), current_bet); } message.Add("bets", bets_data); return(message); }
//Body params: string id_player, double value, int bet_number, string id_game //bet_number: from 0 until 36 for specific number bet, 37 for odd numbers, 38 for even numbers public string create([FromBody] object response) { JObject json_params = JObject.Parse(response.ToString()); try { Global_functions.Update_player_credit((String)json_params["id_player"], -1 * (Double)json_params["value"]); IMongoCollection <Bet> bets = c.Database.GetCollection <Bet>("bet"); Bet nBet = new Bet { Id_game = (String)json_params["id_game"], Id_player = (String)json_params["id_player"], Bet_number = (Int32)json_params["bet_number"], Value = (Double)json_params["value"] }; bets.InsertOne(nBet); return(nBet.Id.ToString()); } catch { return("-1"); } }