public HeistGameCommand(UserCurrencyViewModel currency) : base("Heist", new List <string>() { "heist" }, new RequirementViewModel(role: new RoleRequirementViewModel(MixerRoleEnum.User), cooldown: new CooldownRequirementViewModel(CooldownTypeEnum.Global, 60), currency: new CurrencyRequirementViewModel(currency, CurrencyRequirementTypeEnum.MinimumOnly, 10)), new List <GameOutcome>(), new List <GameOutcomeGroup>(), null, gameLength: 30, minimumParticipants: 2) { this.GameStartedCommand = PreMadeGameCommandHelper.CreateCustomChatCommand("@$username is starting a heist! Type \"!heist <BET>\" in chat to join in!"); this.GameEndedCommand = PreMadeGameCommandHelper.CreateCustomChatCommand("The cops have shown up! Everyone from the heist scatters with whatever they were able to get..."); this.UserJoinedCommand = PreMadeGameCommandHelper.CreateCustomWhisperChatCommand("You've hopped into the heist van! Let's see if you can pull it off..."); this.NotEnoughUsersCommand = PreMadeGameCommandHelper.CreateCustomChatCommand("Apparently not enough people wanted to join @$username..."); this.Outcomes.Add(new GameOutcome("Win", PreMadeGameCommandHelper.CreateCustomWhisperChatCommand("You made out successfully with $gamepayout!"))); this.Outcomes.Add(new GameOutcome("Super Win", PreMadeGameCommandHelper.CreateCustomWhisperChatCommand("You made out like a SUPER BANDIT with $gamepayout!"))); GameOutcomeGroup userGroup = new GameOutcomeGroup(MixerRoleEnum.User); userGroup.Probabilities.Add(new GameOutcomeProbability(40, 25, "Win")); userGroup.Probabilities.Add(new GameOutcomeProbability(10, 75, "Super Win")); this.Groups.Add(userGroup); GameOutcomeGroup subscriberGroup = new GameOutcomeGroup(MixerRoleEnum.Subscriber); subscriberGroup.Probabilities.Add(new GameOutcomeProbability(40, 25, "Win")); subscriberGroup.Probabilities.Add(new GameOutcomeProbability(10, 75, "Super Win")); this.Groups.Add(subscriberGroup); GameOutcomeGroup modGroup = new GameOutcomeGroup(MixerRoleEnum.Mod); modGroup.Probabilities.Add(new GameOutcomeProbability(40, 25, "Win")); modGroup.Probabilities.Add(new GameOutcomeProbability(10, 75, "Super Win")); this.Groups.Add(modGroup); this.LoseLeftoverCommand = PreMadeGameCommandHelper.CreateCustomWhisperChatCommand("Tough luck, the cops caught you before you could get anything good!"); }
public RussianRouletteGameCommand(UserCurrencyViewModel currency) : base("Russian Roulette", new List <string>() { "rr", "russian" }, UserRole.User, 60, new UserCurrencyRequirementViewModel(currency, 10), gameLength: 30, minimumParticipants: 2) { this.GameStartedCommand = PreMadeGameCommandHelper.CreateCustomChatCommand("@$username is starting a game of Russian Roulette! Type \"!rr\" in chat to join in and win the whole pot!"); this.GameEndedCommand = PreMadeGameCommandHelper.CreateCustomChatCommand("Russian Roulette has ended...and @$username emerged victorious with $gamepayout $gamecurrencyname!"); this.UserJoinedCommand = PreMadeGameCommandHelper.CreateCustomWhisperChatCommand("You've taken your seat at the circle, let's wait and see what happens!"); this.NotEnoughUsersCommand = PreMadeGameCommandHelper.CreateCustomChatCommand("Apparently not enough people wanted to join @$username..."); }