Roulette

A roulette wheel with ANSI graphics. (This keno game uses a Role Playing MUSH money system, and the &VAR_MONEY has to be changed accordingly. With a little work it could be made to work using the built-in MUSH currency.)

Author: Demonic
Category: Games
Compatibility: CobraMUSH, PennMUSH, TinyBit, TinyMUX.

Instructions

Copy and paste the below code into a compatible MUSH or MUX.

MUSHCode for Roulette

@set me=quiet
think [ansi(hm,INSTALL:)] Creating Roulette Wheel Parent...
@switch [isdbref(num(Roulette Wheel Parent))]=0,{think [ansi(hm,INSTALL:)] No "Roulette Wheel Parent" object found -- creating...;@create Roulette Wheel Parent},1,{think [ansi(hm,INSTALL:)] "Roulette Wheel Parent" object already exists... skipping creation.}
@set Roulette Wheel Parent=Safe
@set Roulette Wheel Parent=no_command
@set Roulette Wheel Parent=!halt
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Commands...
&CMD_WHEEL.COPYRIGHT Roulette Wheel Parent=$wheel/copy*:[pemit(%#,Roulette Wheel v[v(DATA_VERSION)] -- Created by: Demonic \(1999\)%rUpdated versions of this code can be found on:%r%b%bhttp://www.mindspring.com/~loparo)]
&CMD_WHEEL.BET Roulette Wheel Parent=$wheel/bet *=*:[switch([u(FUN_PLR.Valid,%#)][u(FUN_PLR.Banned,%#)][not(u(FLAG_BET.Ok))][u(FUN_TYPE.Valid,secure(%0))][u(FUN_BET.Valid,trunc(secure(%1)))][u(FUN_PLR.Enough-Money,%#,trunc(secure(%1)))][u(FUN_WHEEL.Enough-Money,mul(trunc(secure(%1)),last(sort(v(LIST_BET.Payoffs),n))))][u(FUN_PLR.Has-Bet,%#,secure(%0))],0???????,u(TRI_ERROR,%#,PLR_!VALID),11??????,u(TRI_ERROR,%#,PLR_BANNED),101?????,u(TRI_ERROR,%#,CANT_BET),1000????,u(TRI_ERROR,%#,TYPE_!VALID),10010???,u(TRI_ERROR,%#,BET_!VALID),100110??,u(TRI_ERROR,%#,!ENOUGH_MONEY),1001110?,u(TRI_ERROR,%#,OUT_OF_MONEY),10011111,u(TRI_ERROR,%#,PLR_HAS_BET),10011110,u(TRI_WHEEL.Bet,%#,trunc(secure(%1)),edit(secure(%0),%b,_)),u(TRI_SYSERR,%#))]
&CMD_WHEEL.BAIZE Roulette Wheel Parent=$wheel/baize:[setq(0,ansi(Rw,%b%b%b%b))][setq(1,ansi(Xw,%b%b%b%b))][setq(2,ansi(Rw,____))][setq(3,ansi(Xw,____))][pemit(%#,%b%b%b[repeat(_,69)]%r%b%b/%b%b|%q0|%q1|%q0|%q0|%q1|%q0|%q0|%q1|%q0|%q0|%q1|%q0|[space(6)]|%r%b/%b%b%b|[ansi(Rw,%b%b3%b)]|[ansi(Xw,%b%b6%b)]|[ansi(Rw,%b%b9%b)]|[ansi(Rw,%b12%b)]|[ansi(Xw,%b15%b)]|[ansi(Rw,%b18%b)]|[ansi(Rw,%b21%b)]|[ansi(Xw,%b24%b)]|[ansi(Rw,%b27%b)]|[ansi(Rw,%b30%b)]|[ansi(Xw,%b33%b)]|[ansi(Rw,%b36%b)]|2 to 1|%r/%b00%b|%q2|%q3|%q2|%q2|%q3|%q2|%q2|%q3|%q2|%q2|%q3|%q2|______|%r\\%b%b%b%b|%q1|%q0|%q1|%q1|%q0|%q1|%q1|%q0|%q1|%q1|%q0|%q1|[space(6)]|%r%b>---|[ansi(Xw,%b%b2%b)]|[ansi(Rw,%b%b5%b)]|[ansi(Xw,%b%b8%b)]|[ansi(Xw,%b11%b)]|[ansi(Rw,%b14%b)]|[ansi(Xw,%b17%b)]|[ansi(Xw,%b20%b)]|[ansi(Rw,%b23%b)]|[ansi(Xw,%b26%b)]|[ansi(Xw,%b29%b)]|[ansi(Rw,%b32%b)]|[ansi(Xw,%b35%b)]|2 to 1|%r/%b%b%b%b|%q3|%q2|%q3|%q3|%q2|%q3|%q3|%q2|%q3|%q3|%q2|%q3|______|%r\\%b%b0%b|%q0|%q1|%q0|%q1|%q1|%q0|%q0|%q1|%q0|%q1|%q1|%q0|[space(6)]|%r%b\\%b%b%b|[ansi(Rw,%b%b1%b)]|[ansi(Xw,%b%b4%b)]|[ansi(Rw,%b%b7%b)]|[ansi(Xw,%b10%b)]|[ansi(Xw,%b13%b)]|[ansi(Rw,%b16%b)]|[ansi(Rw,%b19%b)]|[ansi(Xw,%b22%b)]|[ansi(Rw,%b25%b)]|[ansi(Xw,%b28%b)]|[ansi(Xw,%b31%b)]|[ansi(Rw,%b34%b)]|2 to 1|%r%b%b\\__|%q2|%q3|%q2|%q3|%q3|%q2|%q2|%q3|%q2|%q3|%q3|%q2|______|%r[space(5)]|[space(19)]|[space(19)]|[space(19)]|%r[space(5)]|%b%b%bFirst Twelve%b%b%b%b|%b%b%bSecond Twelve%b%b%b|%b%b%bThird Twelve%b%b%b%b|%r[space(5)]|[repeat(_,19)]|[repeat(_,19)]|[repeat(_,19)]|%r[space(5)]|[space(9)]|[space(9)]|[ansi(Rw,space(9))]|[space(9)]|[space(9)]|[space(9)]|%r[space(5)]|%b1 - 18%b%b|%b%bEven%b%b%b|[ansi(Rw,%b%b%bRed%b%b%b)]|%b%bBlack%b%b|%b%b%bOdd%b%b%b|%b19 - 36%b|%r[space(5)]|[repeat(_,9)]|[repeat(_,9)]|[ansi(Rw,repeat(_,9))]|[repeat(_,9)]|[repeat(_,9)]|[repeat(_,9)]|%r%r* Type '[ansi(v(FONT_WHEEL.Cmds),wheel/list)]' for a list of current bets.)]
&CMD_WHEEL.START Roulette Wheel Parent=$wheel/start:&FLAG_BUSY me=[inc(v(FLAG_BUSY))];@switch [u(FUN_BUSY)][u(FUN_PLR.Playing,%#)][u(FLAG_SPINNING)]=1??,{think [u(TRI_ERROR,%#,BUSY)];&FLAG_BUSY me=0},00?,{think [u(TRI_ERROR,%#,PLR_!PLAYING)];&FLAG_BUSY me=0},011,{think [u(TRI_ERROR,%#,WHEEL_SPINNING)];&FLAG_BUSY me=0},010,{&FLAG_SPINNING me=1;&FLAG_BUSY me=0;think [u(TRI_MESSAGE,SEPARATOR)][u(TRI_MESSAGE,SPIN_BEGIN)];@wait [v(DATA_WAIT.Start)]={&FLAG_BET.Ok me=0;@tr me/TRI_WHEEL.Begin=%#},{think [u(TRI_SYSERR,%#)];&FLAG_BUSY me=0}
&CMD_WHEEL.HELP Roulette Wheel Parent=$wheel/help:[pemit(%#,[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP SECTION,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rRoulette is a very simple game requiring no real skill. You just bet on a number \(or set of numbers\)\, and hope the ball lands in your favor. The only real difficulty is trying to figure out which number or set of numbers you want to wager your money on.%r%r[ansi(v(FONT_HELP.Title),Commands:%r---------)]%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/setup,20))] - Resets the Roulette Wheel \(Admin Only\).%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/copyright,20))] - Shows Copyright information.%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/start,20))] - Puts the ball in motion.%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/baize,20))] - Displays the 'baize layout'.%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/list,20))] - Lists all current bets.%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/remove <type>,20))] - Removes your bet of the indicated type.%r%b%b[ansi(v(FONT_HELP.Cmds),ljust(wheel/bet <type>=<#>,20))] - Makes a bet of the indicated type using # [u(FUN_MONEY.Name,2)].%r[space(25)]Valid types are:%r[ansi(hm,u(FUN_TABLE,STRAIGHT COLUMN DOZEN RED BLACK ODDS EVENS LOW HIGH ROW SQUARE FIVE SIX SPLIT,3,15,26))]%r%r* Type '[ansi(v(FONT_HELP.Cmds),wheel/help <type>)]' for more information on the individual types.%r[ansi(v(FONT_HELP.Border),repeat(-,78))])]
&CMD_WHEEL.HELP-TYPE Roulette Wheel Parent=$wheel/help *:[pemit(%#,udefault(HELP_TYPE.[secure(%0)],[u(DATA_PREFIX.Error)] That is not a valid type. See '[ansi(v(FONT_HELP.Cmds),wheel/help)]' for a list.))]
&CMD_WHEEL.REMOVE Roulette Wheel Parent=$wheel/remove *:[switch([u(FUN_PLR.Valid,%#)][u(FUN_PLR.Banned,%#)][u(FLAG_SPINNING)][u(FUN_TYPE.Valid,secure(%0))][u(FUN_PLR.Has-Bet,%#,secure(%0))],0????,u(TRI_ERROR,%#,PLR_!VALID),11???,u(TRI_ERROR,%#,PLR_BANNED),101??,u(TRI_ERROR,%#,BUSY),1000?,u(TRI_ERROR,%#,TYPE_!VALID),10010,u(TRI_ERROR,%#,PLR_!HAS_BET),10011,u(TRI_WHEEL.Remove,%#,extract(grab(v(LIST_WHEEL.Players),%# * [edit(secure(%0),%b,_)] *,|),2,1),edit(secure(%0),%b,_)),u(TRI_SYSERR,%#))]
&CMD_WHEEL.SETUP Roulette Wheel Parent=$wheel/setup:[ifelse(u(FUN_PLR.Auth,%#),u(TRI_WHEEL.Setup,%#),u(TRI_ERROR,%#,PLR_!AUTH))]
&CMD_WHEEL.LIST Roulette Wheel Parent=$wheel/list:[pemit(%#,[ansi(v(FONT_LIST.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_LIST.Header),center(ROULETTE -- LIST OF BETS,68))][ansi(v(FONT_LIST.Border),>>>>>%r[repeat(-,78)])]%r[ansi(v(FONT_LIST.Title),[ljust(Player Name,17)] [rjust(Bet,5)] [ljust(Bet Type,14)])][ansi(v(FONT_LIST.Border),|)] [ansi(v(FONT_LIST.Title),[ljust(Player Name,17)] [rjust(Bet,5)] [ljust(Bet Type,14)])]%r[ansi(v(FONT_LIST.Border),[ljust(-----------,17)] [rjust(---,5)] [ljust(--------,14)]| [ljust(-----------,17)] [rjust(---,5)] [ljust(--------,14)])][ifelse(words(v(LIST_WHEEL.Players),|),iter(after(v(LIST_WHEEL.Players),|),[ifelse(mod(#@,2),%r,)][ansi(v(FONT_LIST.Names),ljust(left(name(first(##)),17),17))] [ansi(v(FONT_LIST.Bets),rjust(extract(##,2,1),5))] [ansi(v(FONT_LIST.Types),ljust(ucstr(left(edit(extract(##,3,1),_,%b),14)),14))][ifelse(mod(#@,2),ansi(v(FONT_LIST.Border),|),)],|),%rThere are no bets placed.)]%r%r* Type '[ansi(v(FONT_LIST.Cmds),wheel/baize)]' for the baize layout.%r[ifelse(match(v(LIST_WHEEL.Players),%# *,|),* Type '[ansi(v(FONT_LIST.Cmds),wheel/start)]' to put the ball in motion.%r,)][ansi(v(FONT_LIST.Border),repeat(-,78))])]
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Data...
&DATA_VERSION Roulette Wheel Parent=2.1
&DATA_BET.MIN Roulette Wheel Parent=1
&DATA_BET.MAX Roulette Wheel Parent=100
&DATA_WAIT.MIN Roulette Wheel Parent=1
&DATA_WAIT.MAX Roulette Wheel Parent=4
&DATA_WHEEL Roulette Wheel Parent=00 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
&DATA_MONEY.SINGULAR Roulette Wheel Parent=dollar
&DATA_MONEY.PLURAL Roulette Wheel Parent=dollars
&DATA_WAIT.START Roulette Wheel Parent=30
&DATA_WHEEL.Money Roulette Wheel Parent=1000000
&DATA_MAX.Money Roulette Wheel Parent=200000
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel ASCII-Art...
&DRAW_BAIZE.COLUMN Roulette Wheel Parent=[setq(0,ansi(Rw,%b%b%b%b))][setq(1,ansi(Xw,%b%b%b%b))][setq(2,ansi(Rw,____))][setq(3,ansi(Xw,____))][pemit(%#,%b%b%b[repeat(_,69)]%r%b%b/%b%b|%q0|%q1|%q0|%q0|%q1|%q0|%q0|%q1|%q0|%q0|%q1|%q0|[space(6)]|%r%b/%b%b%b|[ansi(Rw,%b%b3%b)]|[ansi(Xw,%b%b6%b)]|[ansi(Rw,%b%b9%b)]|[ansi(Rw,%b12%b)]|[ansi(Xw,%b15%b)]|[ansi(Rw,%b18%b)]|[ansi(Rw,%b21%b)]|[ansi(Xw,%b24%b)]|[ansi(Rw,%b27%b)]|[ansi(Rw,%b30%b)]|[ansi(Xw,%b33%b)]|[ansi(Rw,%b36%b)]|[ansi(hm,Column C)]%r/%b00%b|%q2|%q3|%q2|%q2|%q3|%q2|%q2|%q3|%q2|%q2|%q3|%q2|______|%r\\%b%b%b%b|%q1|%q0|%q1|%q1|%q0|%q1|%q1|%q0|%q1|%q1|%q0|%q1|[space(6)]|%r%b>---|[ansi(Xw,%b%b2%b)]|[ansi(Rw,%b%b5%b)]|[ansi(Xw,%b%b8%b)]|[ansi(Xw,%b11%b)]|[ansi(Rw,%b14%b)]|[ansi(Xw,%b17%b)]|[ansi(Xw,%b20%b)]|[ansi(Rw,%b23%b)]|[ansi(Xw,%b26%b)]|[ansi(Xw,%b29%b)]|[ansi(Rw,%b32%b)]|[ansi(Xw,%b35%b)]|[ansi(hm,Column B)]%r/%b%b%b%b|%q3|%q2|%q3|%q3|%q2|%q3|%q3|%q2|%q3|%q3|%q2|%q3|______|%r\\%b%b0%b|%q0|%q1|%q0|%q1|%q1|%q0|%q0|%q1|%q0|%q1|%q1|%q0|[space(6)]|%r%b\\%b%b%b|[ansi(Rw,%b%b1%b)]|[ansi(Xw,%b%b4%b)]|[ansi(Rw,%b%b7%b)]|[ansi(Xw,%b10%b)]|[ansi(Xw,%b13%b)]|[ansi(Rw,%b16%b)]|[ansi(Rw,%b19%b)]|[ansi(Xw,%b22%b)]|[ansi(Rw,%b25%b)]|[ansi(Xw,%b28%b)]|[ansi(Xw,%b31%b)]|[ansi(Rw,%b34%b)]|[ansi(hm,Column A)]%r%b%b\\__|%q2|%q3|%q2|%q3|%q3|%q2|%q2|%q3|%q2|%q3|%q3|%q2|______|%r
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Error Messages...
&ERR_TYPE_!VALID Roulette Wheel Parent=That is not a valid bet-type.
&ERR_BET_!VALID Roulette Wheel Parent=Your bet must be between [v(DATA_BET.Min) and [v(DATA_BET.Max)] [u(FUN_MONEY.Name,2)].
&ERR_PLR_HAS_BET Roulette Wheel Parent=You already have a bet on that type.
&ERR_PLR_!VALID Roulette Wheel Parent=You are not a valid player.
&ERR_BUSY Roulette Wheel Parent=Sorry\, but the system is busy.
&ERR_PLR_BANNED Roulette Wheel Parent=You are banned from using the Roulette Wheels.
&ERR_!ENOUGH_MONEY Roulette Wheel Parent=You do not have enough money to do that.
&ERR_OUT_OF_MONEY Roulette Wheel Parent=The Croupier does not have enough money to cover that bet. Please contact the Casino owner.
&ERR_PLR_!PLAYING Roulette Wheel Parent=You must place a bet before starting the wheel.
&ERR_WHEEL_SPINNING Roulette Wheel Parent=[ifelse(v(FLAG_BET.Ok),But the ball is already scheduled to be dropped.,But the ball has already been dropped.)]
&ERR_PLR_!HAS_BET Roulette Wheel Parent=You do not have that type of bet on the table.
&ERR_PLR_!AUTH Roulette Wheel Parent=You are not authorized to do that.
&ERR_CANT_BET Roulette Wheel Parent=You cannot place bets at this time.
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Soft Flags...
&FLAG_BUSY Roulette Wheel Parent=0
&FLAG_BET.OK Roulette Wheel Parent=1
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Fonts...
&FONT_HELP.BORDER Roulette Wheel Parent=hb
&FONT_HELP.HEADER Roulette Wheel Parent=hc
&FONT_HELP.TITLE Roulette Wheel Parent=hb
&FONT_HELP.CMDS Roulette Wheel Parent=hc
&FONT_HELP.TYPES Roulette Wheel Parent=hm
&FONT_DESC.BORDER Roulette Wheel Parent=hb
&FONT_DESC.TITLE Roulette Wheel Parent=hc
&FONT_WHEEL.CMDS Roulette Wheel Parent=hc
&FONT_LIST.BORDER Roulette Wheel Parent=hb
&FONT_LIST.TITLE Roulette Wheel Parent=hm
&FONT_LIST.HEADER Roulette Wheel Parent=hc
&FONT_LIST.CMDS Roulette Wheel Parent=hc
&FONT_LIST.NAMES Roulette Wheel Parent=h
&FONT_LIST.BETS Roulette Wheel Parent=h
&FONT_LIST.TYPES Roulette Wheel Parent=h
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Functions...
&FUN_PLR.VALID Roulette Wheel Parent=[hastype(%#,PLAYER)]
&FUN_PLR.BANNED Roulette Wheel Parent=[not(not(member(v(LIST_WHEEL.Banned),%0)))]
&FUN_TYPE.VALID Roulette Wheel Parent=[not(not(member(v(LIST_BET.Types),edit(%0,%b,_))))]
&FUN_BET.VALID Roulette Wheel Parent=[and(gte(%0,v(DATA_BET.Min)),lte(%0,v(DATA_BET.Max)))]
&FUN_PLR.ENOUGH-MONEY Roulette Wheel Parent=[gte(trunc(xget(%0,v(VAR_MONEY))),%1)]
&FUN_WHEEL.ENOUGH-MONEY Roulette Wheel Parent=[gte(v(DATA_WHEEL.Money),%0)]
&FUN_PLR.HAS-BET Roulette Wheel Parent=[not(not(match(v(LIST_WHEEL.Players),%0 * [edit(%1,%b,_)] *,|)))]
&FUN_GET.PLR-MONEY Roulette Wheel Parent=[default(%0/[v(VAR_MONEY)],0)]
&FUN_MONEY.NAME Roulette Wheel Parent=[ifelse(eq(%0,1),u(DATA_MONEY.Singular),u(DATA_MONEY.Plural))]
&FUN_PLR.PLAYING Roulette Wheel Parent=[not(not(match(v(LIST_WHEEL.Players),%0 *,|)))]
&FUN_BUSY Roulette Wheel Parent=[gt(v(FLAG_BUSY),1)]
&FUN_TABLE Roulette Wheel Parent=%b[iter(%0,ifelse(mod(#@,ifelse(and(words(%1),gt(trunc(%3),0)),trunc(%1),div(78,abs(%2)))),ifelse(mod(dec(#@),ifelse(and(words(%1),gt(trunc(%1),0)),trunc(%1),div(78,abs(%2)))),ljust(mid(##,0,%2),%2),[space(ifelse(words(%3),trunc(%3),0))][ljust(mid(##,0,%2),%2)]),[mid(##,0,%2)]%r))]
&FUN_PLR.AUTH Roulette Wheel Parent=[hasflag(%0,Wizard)]
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Help...
&HELP_TYPE.COLUMN Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP COLUMN,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: [ansi(v(FONT_HELP.Cmds),wheel/bet column <letter>=<bet amount>)]%rExample: [ansi(v(FONT_HELP.Cmds),wheel/bet column c=500)]%r%rThere are three columns on a baize layout\, and you can bet on any one of them. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls in the column you chose\, you will be payed off at 2-1 odds.%r%r[ansi(v(FONT_HELP.Types),Column A)] - 1 4 7 10 13 16 19 22 25 28 31 34%r[ansi(v(FONT_HELP.Types),Column B)] - 2 5 8 11 14 17 20 23 26 29 32 35%r[ansi(v(FONT_HELP.Types),Column C)] - 3 6 9 12 15 18 21 24 27 30 33 36%r%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.RED Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP RED,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet red=<bet amount>%rExample: wheel/bet red=500%r%rThe red numbers are indicated on wheel/baize. If you can not see colors on your terminal\, refer to the list below. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls on a red-colored number\, you will be payed off at 1-1 odds.%r%r[ansi(v(FONT_HELP.Types),Red)] - 1 3 5 7 9 12 14 16 18 19 21 23 25 27 30 32 34 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.BLACK Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP BLACK,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet black=<bet amount>%rExample: wheel/bet black=500%r%rThe black numbers are indicated on wheel/baize. If you can not see colors on your terminal\, refer to the list below. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls on a black-colored number\, you will be payed off at 1-1 odds.%r%r[ansi(v(FONT_HELP.Types),Black)] - 1 3 5 7 9 12 14 16 18 19 21 23 25 27 30 32 34 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.DOZEN Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP DOZEN,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet dozen <letter>=<bet amount>%rExample: wheel/bet dozen c=500%r%rThere are three sets of dozens on a baize layout\, and you can bet on any one of them. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls in the column you chose\, you will be payed off at 2-1 odds.%r%r[ansi(v(FONT_HELP.Types),Dozen A)] - 1 2 3 4 5 6 7 8 9 10 11 12%r[ansi(v(FONT_HELP.Types),Dozen B)] - 13 14 15 16 17 18 19 20 21 22 23 24%r[ansi(v(FONT_HELP.Types),Dozen C)] - 25 26 27 28 29 30 31 32 33 34 35 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.EVENS Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP EVENS,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet evens=<bet amount>%rExample: wheel/bet evens=500%r%rEven numbers are those which are evenly divisible by 2. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls on an even number\, you will be payed off at 1-1 odds.%r%r[ansi(v(FONT_HELP.Types),Even)] - 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.LOW Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP LOW,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet low=<bet amount>%rExample: wheel/bet low=500%r%rLow numbers are those which are less than or equal to 18. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls on a low number\, you will be payed off at 1-1 odds.%r%r[ansi(v(FONT_HELP.Types),Low)] - 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.ROW Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP ROW,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet row <letter>=<bet amount>%rExample: wheel/bet row f=500%r%rThere are 12 rows that you can choose from. If the ball lands in 0 or 00\, you will lose automatically. If the ball lands in the row you chose\, you will be payed off at 11-1 odds.%r%r[ansi(v(FONT_HELP.Types),Row A)] - 1 2 3%r[ansi(v(FONT_HELP.Types),Row B)] - 4 5 6%r[ansi(v(FONT_HELP.Types),Row C)] - 7 8 9%r[ansi(v(FONT_HELP.Types),Row D)] - 10 11 12%r[ansi(v(FONT_HELP.Types),Row E)] - 13 14 15%r[ansi(v(FONT_HELP.Types),Row F)] - 16 17 18%r[ansi(v(FONT_HELP.Types),Row G)] - 19 20 21%r[ansi(v(FONT_HELP.Types),Row H)] - 22 23 24%r[ansi(v(FONT_HELP.Types),Row I)] - 25 26 27%r[ansi(v(FONT_HELP.Types),Row J)] - 28 29 30%r[ansi(v(FONT_HELP.Types),Row K)] - 31 32 33%r[ansi(v(FONT_HELP.Types),Row L)] - 34 35 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.STRAIGHT Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP STRAIGHT,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet straight <#>=<bet amount>%rExample: wheel/bet straight 35=500%r%rMaking a 'straight' bet means you are betting on a SINGLE number. This is the hardest bet to win\, but also has the largest payoff (35-1). When making this bet\, <#> is any number between 1 and 36\, including 0 and 00.%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.FIVE Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP FIVE,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet five=<bet amount>%rExample: wheel/bet five=500%r%rThis bet is placed on the five numbers: 0\, 00\, 1\, 2\, 3. If the ball lands on any of these\, you will be payed off at 6-1 odds.%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.ODDS Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP ODDS,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet odds=<bet amount>%rExample: wheel/bet odds=500%r%rOdd numbers are those which are not evenly divisible by 2. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls on an odd number\, you will be payed off at 1-1 odds.%r%r[ansi(v(FONT_HELP.Types),Odd)] - 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.HIGH Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP HIGH,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet high=<bet amount>%rExample: wheel/bet high=500%r%rHigh numbers are those which are greater than or equal to 19. If the ball lands in 0 or 00\, you will lose automatically. If the ball falls on a high number\, you will be payed off at 1-1 odds.%r%r[ansi(v(FONT_HELP.Types),High)] - 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.SIX Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP SIX,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet six <letter>=<bet amount>%rExample: wheel/bet six d=500%r%rThis bet is placed on a group of six numbers. The six numbers must be all adjacent to eachother\, effectively making the bet the same as betting on two rows next to eachother. If the ball lands on one of the six numbers\, you will be payed off at 5-1 odds.%r%r[ansi(v(FONT_HELP.Types),Six A)] - 1 2 3 4 5 6%r[ansi(v(FONT_HELP.Types),Six B)] - 4 5 6 7 8 9%r[ansi(v(FONT_HELP.Types),Six C)] - 7 8 9 10 11 12%r[ansi(v(FONT_HELP.Types),Six D)] - 10 11 12 13 14 15%r[ansi(v(FONT_HELP.Types),Six E)] - 13 14 15 16 17 18%r[ansi(v(FONT_HELP.Types),Six F)] - 16 17 18 19 20 21%r[ansi(v(FONT_HELP.Types),Six G)] - 19 20 21 22 23 24%r[ansi(v(FONT_HELP.Types),Six H)] - 22 23 24 25 26 27%r[ansi(v(FONT_HELP.Types),Six I)] - 25 26 27 28 29 30%r[ansi(v(FONT_HELP.Types),Six J)] - 28 29 30 31 32 33%r[ansi(v(FONT_HELP.Types),Six K)] - 31 32 33 34 35 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.SQUARE Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP SQUARE,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet square <letter>=<bet amount>%rExample: wheel/bet square b=500%r%rThis bet is placed on four numbers that form a square. If the ball lands in 0 or 00\, you will lose automatically. If the ball lands on any of the numbers in the square\, you will be payed off at 8-1 odds.%r%r[ansi(v(FONT_HELP.Types),Square A)] - 1 2 4 5 [space(24)][ansi(v(FONT_HELP.Types),Square B)] - 2 3 5 6%r[ansi(v(FONT_HELP.Types),Square C)] - 4 5 7 8 [space(24)][ansi(v(FONT_HELP.Types),Square D)] - 5 6 8 9%r[ansi(v(FONT_HELP.Types),Square E)] - 7 8 10 11 [space(22)][ansi(v(FONT_HELP.Types),Square F)] - 8 9 11 12%r[ansi(v(FONT_HELP.Types),Square G)] - 10 11 13 14 [space(20)][ansi(v(FONT_HELP.Types),Square H)] - 11 12 14 15%r[ansi(v(FONT_HELP.Types),Square I)] - 13 14 16 17 [space(20)][ansi(v(FONT_HELP.Types),Square J)] - 14 15 17 18%r[ansi(v(FONT_HELP.Types),Square K)] - 16 17 19 20 [space(20)][ansi(v(FONT_HELP.Types),Square L)] - 17 18 20 21%r[ansi(v(FONT_HELP.Types),Square M)] - 19 20 22 23 [space(20)][ansi(v(FONT_HELP.Types),Square N)] - 20 21 23 24%r[ansi(v(FONT_HELP.Types),Square O)] - 22 23 25 26 [space(20)][ansi(v(FONT_HELP.Types),Square P)] - 23 24 26 27%r[ansi(v(FONT_HELP.Types),Square Q)] - 25 26 28 29 [space(20)][ansi(v(FONT_HELP.Types),Square R)] - 26 27 29 30%r[ansi(v(FONT_HELP.Types),Square S)] - 28 29 31 32 [space(20)][ansi(v(FONT_HELP.Types),Square T)] - 29 30 32 33%r[ansi(v(FONT_HELP.Types),Square U)] - 31 32 34 35 [space(20)][ansi(v(FONT_HELP.Types),Square V)] - 32 33 35 36%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
&HELP_TYPE.SPLIT Roulette Wheel Parent=[ansi(v(FONT_HELP.Border),[repeat(-,78)]%r<<<<<)][ansi(v(FONT_HELP.Header),center(ROULETTE -- HELP SPLIT,68))][ansi(v(FONT_HELP.Border),>>>>>%r[repeat(-,78)])]%rSyntax: wheel/bet split <#>-<#>=<bet amount>%rExample: wheel/bet split 19-22=500%r%rThis places a bet on two numbers that are adjacent to eachother. The numbers must be indicated in numerical order -- for example\, [ansi(v(FONT_HELP.Cmds),wheel/bet split 29-26)] would *NOT* work because the two numbers are in the incorrect order. If desired\, you may even split the 0 and 00 by indicating them in that order. Remember that the numbers must be adjacent \(meaning touching either vertically or horizontally\, but NOT diagonally\). If the ball should land on one of the two numbers you picked\, you will be payed off at 17-1 odds.%r[ansi(v(FONT_HELP.Border),repeat(-,78))]
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Data Lists...
&LIST_ATTRIBUTES Roulette Wheel Parent=AENTER CMD DATA DESCRIBE DRAW ENTER ERR FAILURE FLAG FONT FUN HELP LEAVE LIST LOCK MSG OENTER OLEAVE OXENTER OXLEAVE TRI VAR
&LIST_BET.TYPES Roulette Wheel Parent=straight_0 straight_00 straight_1 straight_2 straight_3 straight_4 straight_5 straight_6 straight_7 straight_8 straight_9 straight_10 straight_11 straight_12 straight_13 straight_14 straight_15 straight_16 straight_17 straight_18 straight_19 straight_20 straight_21 straight_22 straight_23 straight_24 straight_25 straight_26 straight_27 straight_28 straight_29 straight_30 straight_31 straight_32 straight_33 straight_34 straight_35 straight_36 column_a column_b column_c dozen_a dozen_b dozen_c red black odds evens low high row_a row_b row_c row_d row_e row_f row_g row_h row_i row_j row_k row_l square_a square_b square_c square_d square_e square_f square_g square_h square_i square_j square_k square_l square_m square_n square_o square_p square_q square_r square_s square_t square_u square_v five six_a six_b six_c six_d six_e six_f six_g six_h six_i six_j six_k split_0-00 split_1-2 split_2-3 split_4-5 split_5-6 split_7-8 split_8-9 split_10-11 split_11-12 split_13-14 split_14-15 split_16-17 split_17-18 split_19-20 split_20-21 split_22-23 split_23-24 split_25-26 split_26-27 split_28-29 split_29-30 split_31-32 split_32-33 split_34-35 split_35-36 split_1-4 split_2-5 split_3-6 split_4-7 split_5-8 split_6-9 split_7-10 split_8-11 split_9-12 split_10-13 split_11-14 split_12-15 split_13-16 split_14-17 split_15-18 split_16-19 split_17-20 split_18-21 split_19-22 split_20-23 split_21-24 split_22-25 split_23-26 split_24-27 split_25-28 split_26-29 split_27-30 split_28-31 split_29-32 split_30-33 split_31-34 split_32-35 split_33-36
&LIST_BET.NUMS Roulette Wheel Parent=0 00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 1_4_7_10_13_16_19_22_25_28_31_34 2_5_8_11_14_17_20_23_26_29_32_35 3_6_9_12_15_18_21_24_27_30_33_36 1_2_3_4_5_6_7_8_9_10_11_12 13_14_15_16_17_18_19_20_21_22_23_24 25_26_27_28_29_30_31_32_33_34_35_36 1_3_5_7_9_12_14_16_18_19_21_23_25_27_30_32_34_36 2_4_6_8_10_11_13_15_17_20_22_24_26_28_29_31_33_35 1_3_5_7_9_11_13_15_17_19_21_23_25_27_29_31_33_35 2_4_6_8_10_12_14_16_18_20_22_24_26_28_30_32_34_36 1_2_3_4_5_6_7_8_9_10_11_12_13_14_15_16_17_18 19_20_21_22_23_24_25_26_27_28_29_30_31_32_33_34_35_36 1_2_3 4_5_6 7_8_9 10_11_12 13_14_15 16_17_18 19_20_21 22_23_24 25_26_27 28_29_30 31_32_33 34_35_36 1_2_4_5 2_3_5_6 4_5_7_8 5_6_8_9 7_8_10_11 8_9_11_12 10_11_13_14 11_12_14_15 13_14_16_17 14_15_17_18 16_17_19_20 17_18_20_21 19_20_22_23 20_21_23_24 22_23_25_26 23_24_26_27 25_26_28_29 26_27_29_30 28_29_31_32 29_30_32_33 31_32_34_35 32_33_35_36 1_2_3_0_00 1_2_3_4_5_6 4_5_6_7_8_9 7_8_9_10_11_12 10_11_12_13_14_15 13_14_15_16_17_18 16_17_18_19_20_21 19_20_21_22_23_24 22_23_24_25_26_27 25_26_27_28_29_30 28_29_30_31_32_33 31_32_33_34_35_36 0_00 1_2 2_3 4_5 5_6 7_8 8_9 10_11 11_12 13_14 14_15 16_17 17_18 19_20 20_21 22_23 23_24 25_26 26_27 28_29 29_30 31_32 32_33 34_35 35_36 1_4 2_5 3_6 4_7 5_8 6_9 7_10 8_11 9_12 10_13 11_14 12_15 13_16 14_17 15_18 16_19 17_20 18_21 19_22 20_23 21_24 22_25 23_26 24_27 25_28 26_29 27_30 28_31 29_32 30_33 31_34 32_35 33_36
&LIST_BET.PAYOFFS Roulette Wheel Parent=35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 2 2 2 2 2 2 1 1 1 1 1 1 11 11 11 11 11 11 11 11 11 11 11 11 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 6 5 5 5 5 5 5 5 5 5 5 5 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Locks...
&LOCK_AT.WHEEL Roulette Wheel Parent=[member(%l,%!)]
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Game Messages...
&MSG_PLR_BET Roulette Wheel Parent=[name(%0)] makes a BET of %1 [u(FUN_MONEY.Name,%1)] on [ucstr(edit(%2,_,%b))].
&MSG_WHEEL_BOUNCE Roulette Wheel Parent=The ball bounces off the number [first(shuffle(v(DATA_WHEEL)))]\, and continues to roll...
&MSG_WHEEL_SLOW Roulette Wheel Parent=The ball bounces off the number [first(shuffle(v(DATA_WHEEL)))]\, as it begins to settle...
&MSG_WHEEL_STOP Roulette Wheel Parent=The ball LANDS in number %0!!!
&MSG_WHEEL_SEPARATOR Roulette Wheel Parent=[ansi(hg,repeat(=,40))]
&MSG_PLR_LOST Roulette Wheel Parent=[name(%0)] LOST with [poss(%0)] [ucstr(edit(%1,_,%b))] bet.
&MSG_PLR_WON Roulette Wheel Parent=[name(%0)] <<< WON >>> %1 [u(FUN_MONEY.Name,%1)] with [poss(%0)] [ucstr(edit(%2,_,%b))] bet!!!
&MSG_SPIN_START Roulette Wheel Parent=The croupier grabs the ball and spins it around the wheel...
&MSG_SEPARATOR Roulette Wheel Parent=[ansi(hg,repeat(=,40))]
&MSG_PLR_REMOVE Roulette Wheel Parent=[name(%0)] REMOVES [poss(%0)] bet of %1 [u(FUN_MONEY.Name,%1)] on [ucstr(edit(%2,_,%b))].
&MSG_PLR_SETUP Roulette Wheel Parent=[name(%0)]\(%0\) has RESET the Roulette Wheel.
&MSG_SPIN_BEGIN Roulette Wheel Parent=The croupier announces\, "The ball will be spun shortly. Please finish placing your bets."
&MSG_NO_BET Roulette Wheel Parent=The croupier announces\, "No more bets."
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Triggers...
&TRI_WHEEL.BET Roulette Wheel Parent=[set(me,LIST_WHEEL.Players:[v(LIST_WHEEL.Players)]|%0 %1 %2 [extract(v(LIST_BET.Nums),match(v(LIST_BET.Types),%2),1)])][u(TRI_SET.Plr-Money,%0,sub(u(FUN_GET.Plr-Money,%0),%1))][u(TRI_INCREASE.Wheel-Money,%1)][u(TRI_MESSAGE,PLR_BET,%0,%1,%2)]
&TRI_SET.PLR-MONEY Roulette Wheel Parent=[ifelse(gte(%1,v(DATA_MAX.Money)),[set(%0,[v(VAR_MONEY)]:[v(DATA_MAX.Money)])][pemit(%0,[u(DATA_PREFIX.Warn)] You cannot carry any more money! Any money won from this point on will NOT be given to you.)][set(me,DATA_WHEEL.Money:[add(v(DATA_WHEEL.Money),sub(%1,v(DATA_MAX.Money)))])],set(%0,[v(VAR_MONEY)]:%1))]
&TRI_INCREASE.WHEEL-MONEY Roulette Wheel Parent=[set(me,DATA_WHEEL.Money:[add(v(DATA_WHEEL.Money),%0)])]
&TRI_DECREASE.WHEEL-MONEY Roulette Wheel Parent=[set(me,DATA_WHEEL.Money:[sub(v(DATA_WHEEL.Money),%0)])]
&TRI_WHEEL.SPIN Roulette Wheel Parent=think [u(TRI_MESSAGE,WHEEL_BOUNCE)];@wait [add(v(DATA_WAIT.Min),rand(inc(sub(v(DATA_WAIT.Max),v(DATA_WAIT.Min)))))]={@tr me/[ifelse(rand(4),TRI_WHEEL.Spin,TRI_WHEEL.Slow)]}
&TRI_WHEEL.SLOW Roulette Wheel Parent=think [u(TRI_MESSAGE,WHEEL_SLOW)];@wait [add(v(DATA_WAIT.Min),rand(inc(sub(v(DATA_WAIT.Max),v(DATA_WAIT.Min)))))]={@tr me/TRI_WHEEL.Stop=[first(shuffle(v(DATA_WHEEL)))]}
&TRI_WHEEL.STOP Roulette Wheel Parent=think [u(TRI_MESSAGE,WHEEL_STOP,%0)][u(TRI_MESSAGE,SEPARATOR)][iter(after(v(LIST_WHEEL.Players),|),ifelse(member(last(##),%0,_),u(TRI_WIN,extract(##,1,1),mul(extract(##,2,1),extract(v(LIST_BET.Payoffs),match(v(LIST_BET.Types),extract(##,3,1)),1)),extract(##,2,1),extract(##,3,1)),u(TRI_LOSE,extract(##,1,1),extract(##,3,1))),|)][u(TRI_RESET)]
&TRI_LOSE Roulette Wheel Parent=[u(TRI_MESSAGE,PLR_LOST,%0,%1,%2)]
&TRI_WIN Roulette Wheel Parent=[u(TRI_MESSAGE,PLR_WON,%0,%1,%3)][u(TRI_SET.Plr-Money,%0,add(u(FUN_GET.Plr-Money,%0),add(%1,%2)))][u(TRI_DECREASE.Wheel-Money,add(%1,%2))]
&TRI_ERROR Roulette Wheel Parent=[pemit(%0,[u(DATA_PREFIX.Error)][space(not(not(words(u(DATA_PREFIX.Error)))))][u(ERR_%1,%2,%3,%4)])]
&TRI_SYSERR Roulette Wheel Parent=[pemit(%0,[ansi(hfr,SYSERR:)] There is a bug in the code. Report this to an Admin immediately.)]
&TRI_WHEEL.START Roulette Wheel Parent=think [u(TRI_MESSAGE,WHEEL_BOUNCE)];@wait [add(v(DATA_WAIT.Min),rand(inc(sub(v(DATA_WAIT.Max),v(DATA_WAIT.Min)))))]={@tr me/[ifelse(rand(5),TRI_WHEEL.Start,TRI_WHEEL.Slow)]}
&TRI_MESSAGE Roulette Wheel Parent=[remit(me,[u(DATA_PREFIX.Game)][space(not(not(words(u(DATA_PREFIX.Game)))))][u(MSG_%0,%1,%2,%3,%4,%5)])]
&TRI_RESET Roulette Wheel Parent=[set(me,LIST_WHEEL.Players:)][set(me,FLAG_BUSY:0)][set(me,FLAG_SPINNING:0)][set(me,FLAG_BET.Ok:1)]
&TRI_WHEEL.REMOVE Roulette Wheel Parent=[u(TRI_SET.Plr-Money,%0,add(u(FUN_GET.Plr-Money,%0),%1))][u(TRI_DECREASE.Wheel-Money,%1)][u(TRI_MESSAGE,PLR_REMOVE,%0,%1,%2)][set(me,LIST_WHEEL.Players:[ldelete(v(LIST_WHEEL.Players),match(v(LIST_WHEEL.Players),%0 * %2 *,|),|)])]
&TRI_WHEEL.SETUP Roulette Wheel Parent=[lock(me,me)][lock(me/use,LOCK_AT.Wheel/1)][set(me,DATA_BET.Min:[v(DATA_BET.Min)])][set(me,DATA_BET.Max:[v(DATA_BET.Max)])][set(me,FLAG_SPINNING:0)][set(me,FLAG_BUSY:0)][set(me,LIST_WHEEL.Players:)][set(me,ENTER_OK)][u(TRI_MESSAGE,PLR_SETUP,%0)]
&TRI_WHEEL.BEGIN Roulette Wheel Parent=think [u(TRI_MESSAGE,SEPARATOR)][u(TRI_MESSAGE,NO_BET)][u(TRI_MESSAGE,SPIN_START)];@wait [v(DATA_WAIT.Max)]=@tr me/TRI_WHEEL.Start
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Variables...
&VAR_MONEY Roulette Wheel Parent=Econ_Money
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Object Messages...
@AENTER Roulette Wheel Parent=[pemit(%#,* Type '[ansi(v(FONT_WHEEL.Cmds),wheel/help)]' for more information.)]
@IDESCRIBE Roulette Wheel Parent=[u(ADD_DESC)][ansi(v(FONT_DESC.Border),%r---------------.[repeat(-,63)]%r)][ansi(v(FONT_DESC.Title),Players Betting)][ansi(v(FONT_DESC.Border),:)] [iter(after(v(LIST_WHEEL.Players),|),name(first(##)),|,\,%b)]%r[ansi(v(FONT_DESC.Border),---------------')]%r[ansi(v(FONT_DESC.Title),Min Bet:)] [ljust(v(DATA_BET.Min),53)][ansi(v(FONT_DESC.Title),Max Bet:)] [v(DATA_BET.Max)]%r[ansi(v(FONT_DESC.Border),repeat(-,78))]
@DESCRIBE Roulette Wheel Parent=Type '[ansi(hc,enter [name(me)])]' to play a game.
@ENTER Roulette Wheel Parent=You approach [name(me)]'s area.
@FAILURE Roulette Wheel Parent=It seems to be bolted to the ground.
@OENTER Roulette Wheel Parent=approaches the Roulette Wheel from [name(loc(me))].
@OLEAVE Roulette Wheel Parent=departs the Roulette Wheel and heads back toward [name(loc(me))].
@OXENTER Roulette Wheel Parent=departs toward [name(me)]'s area.
@OXLEAVE Roulette Wheel Parent=approaches from [name(me)]'s area.
@LEAVE Roulette Wheel Parent=You depart [name(me)]'s area.
think [ansi(hm,INSTALL:)] Downloading Roulette Wheel Prefixes...
&DATA_PREFIX.WARN Roulette Wheel Parent=[ansi(hy,WARN:)]
&DATA_PREFIX.GAME Roulette Wheel Parent=[ansi(hg,GAME:)]
&DATA_PREFIX.ERROR Roulette Wheel Parent=[ansi(hr,ERROR:)]
&DATA_PREFIX.SYSERR Roulette Wheel Parent=[ansi(fhr,SYSERR:)]
think [ansi(hm,INSTALL:)] [ansi(hr,Download is complete! Now you must do the following:)]
think [ansi(hm,INSTALL:)] %b%b%b- @create a roulette wheel and drop it
think [ansi(hm,INSTALL:)] %b%b%b- @parent the created object to the Roulette Wheel Parent
think [ansi(hm,INSTALL:)] %b%b%b- @set the created object !NO_COMMAND and !HALT
think [ansi(hm,INSTALL:)] %b%b%b- Enter the created object and type wheel/setup
think [ansi(hm,INSTALL:)] %b%b%b- Set the created object WIZARD if others will be using it.
think [ansi(hm,INSTALL:)] %b%b%b- BE SURE TO SET &VAR_MONEY ON THE ROULETTE WHEEL PARENT. It
think [ansi(hm,INSTALL:)] %b%b%b%b should be set to the name of the variable you use for money.
think [ansi(hm,INSTALL:)]
think [ansi(hm,INSTALL:)] The Copyright must stay with this code. If you have any questions
think [ansi(hm,INSTALL:)] or complaints \(bug reports\) concerning this code\, please contact
think [ansi(hm,INSTALL:)] me at: [ansi(hc,worldwar@bb6.betterbox.net)]. Thank you.
@set me=!quiet