Fixed "!raffle open" output to say <currency> instead of tokens.
Can now open raffles with 0 ticket cost. Command is still the same. Ex: !raffle open 0 1 would be a raffle where everyone in the channel can buy 1 ticket and it doesn't cost them any coins.
"!raffle close" and "!raffle draw" now have an optional third parameter where you can specify how many people to draw. Ex: "!raffle close 3" will draw 3 winners. "!raffle close" by itself will still draw 1 winner.
Custom commands now handle "@user" in them in the same way that greetings do. For instance, if you did "!mod addcommand 0 !hello Hello, @user.", then someone in your channel named Keirathi typed "!hello", the bot would reply with "Hello, Keirathi."
Added About button to the startup GUI.
Added tooltips to startup GUI.
The channel admin can now type !<currency> <user> to check a specific user's amount of currency.
Added reconnecting to the channel after disconnects.
Removed some superfluous error messages from showing up in the console window/Error_Log.log
Fixed a bug in the !ticket command that wouldn't allow you to buy your max amount of <currency> worth of tickets
Admin Only Commands:
!admin payout <number> --- Changes the amount of currency paid out every interval.
!admin interval <number> --- Changes the interval that currency is paid out at. Accepted values: 1,2,3,4,5,6,10,12,15,20,30,60.
****NOTE -- The above 2 settings are currently *NOT* saved between sessions. When you restart the bot, payout and interval will reset back to what you select in the intial drop down boxes.
!admin addmod <username> --- Changes the person to a Moderator (Access Level 1).
!admin addsuper <username> --- Changes the person to a Super mod (Access Level 2).
!admin demote <username> --- Moves the person down 1 Access Level. Only works if the person is a Mod or Super Mod.
!admin setlevel <username> <number> --- Sets the person to the specified Access Level. Can be used instead of addmod, addsuper, or demote. Cannot change someones access level to 3 (your level) or make it less than 0.
!admin addsub <username> --- Add someone to the internal Sub List. Doesn't cause conflicts with a spreadsheet Sub List.
!admin removesub <username> --- Remove someone from the internal Sub List.
!<currency> <username> --- Manually check the currency of a specific person.
!admin greeting set <Greeting Text> --- Sets your (optional) greeting message that will be sent everytime someone joins your channel. Using '@user' in your greeting will put the person who joined's username in the greeting. Your custom greeting is always remembered across bot sessions. If the first character of your greeting is a /, it will be stripped.
!admin greeting on --- Turns on your greeting messages. Must be manually turned on each time you start the bot.
!admin greeting off --- Turns off your greeting messages.
Super Mod + Admin Commands:
!<currency> add <amount> <username/all> --- Adds the specified amount of currency to the username. If "all" is supplied as the last argument instead of a username, will give the coins to everyone currently in the channel.
!<currency> remove <amount> <username/all> --- Removes the specified amount of currency from the username. If "all" is supplied as the last argument instead of a username, will remove the coins from everyone currently in the channel.
Mod + Super Mod + Admin Commands:
!mod addcommmand <AccessLevelRequired> <command> <output> --- Access level must be between 0 and 3. Command and output can be any text. Quick example: "!mod addcom 0 !ts Come hang out with on on teamspeak" would add a !ts command that anyone in the channel could use. If the first character of the <output> is a /, it will be stripped.
!mod removecommand <command> --- Deletes the command. Currently if you want to edit a command, you must delete it and re-add it.
!mod commandlist --- Lists all of the custom commands currently available to the channel.
*Note about custom commands: the <command> parameter can be ANYTHING. If you make a command "bacon", then it will trigger anytime bacon is the worst word in a sentence. It's probably a good practice to make all commands start with an "identifier" key, such as !. The ! isn't forced.
!raffle open <Price> <MaxTickets> --- Opens a new raffle. Price must be >= 0, and Max tickets must be > 0.
!raffle close [optional <Amount>] --- Closes the raffle and draws the first winner. If <Amount> is specified, then it will draw that many winners. Otherwise it will draw 1 winner.
!raffle draw [optional <Amount>] --- Draws another winner from a closed raffle. If <Amount> is specified, then it will draw that many winners. Otherwise it will draw 1 winner.
!raffle cancel --- Cancels the current raffle and refunds everyone's tickets.
!auction open --- Opens a new auction. Users can bid freely until you close the auction. Current winner is shown in the channel each time there's a new High Bid, and every 30 seconds afterwards.
!auction close --- Closes the auction and announces the final winner.
!auction cancel --- Cancels the auction and refunds the highest bid.
!gamble open <MaxBet> <option1>, <option2>, <option3>, ... , <optionN> --- Opens a new betting pool. MaxBet specifies the maximum amount of coins that a user can bet. The options must have a space and a comma between them, and there isn't a limit to the amount of options you can have.
!gamble close --- Locks the bets so that no more bets can be made.
!gamble winner <optionX> --- Closes the bet pool, and pays out people who bet on the correct option. <optionX> must be one of numbers associated with the original options when you started your pool.
!gamble cancel --- Cancels the bet pool, and refunds all bets.
Normal User + Mod + Super Mod + Admin Commands:
!<currency> --- Checks your current amount of currency on the channel.
!btag/!battletag <YourBtag> --- Sets your battletag in the database. If you win an auction or raffle, your battletag is shown in the winner output.
When a raffle is open:
!ticket <numberoftickets> --- purchases the specified number of tickets. Must <numberoftickets> must be a number >=0. If you buy tickets and wish to get out of the raffle, use "!ticket 0" to have your coins refunded.
!raffle help --- Refresher output for the currently open raffle. Details the current ticket cost and max tickets, and explains how to purchase tickets.
When an auction is open:
!bid <amount> --- Bids this amount on the current auction. If your bid is not higher than the current highest bid, nothing happens. Highest bid in a new auction is always 0.
When a betting pool is open:
!bet <amount> <optionnumber> --- Places a bet on the option you select. <optionnumber> is specified when the pool is opened, or you can type "!bet help" for a refresher.
!bet help --- Resends the list of options for the current bet pool, and a quick refresher on how to bet.
*A quick note about Custom Commands:
If you try to add a custom command that matches any of the other built-in commands (!raffle, !bet, etc), the bot will tell you that it's added but you will have no way to ever use it. So just pick a new command name!