system "Holly Grail System" { V.C.M. HOLY GRAIL SYSTEM RX-ed by UX Software } method "main" begin While Starting a New Session begin put 64 to record "Martingale Max" data group begin Display "Holly Grail Roulette System " Input Dropdown "Enter Type of Progression betting 1:= Flat betting 2:= D'Alembert 3:= Martingale" to record "Progression Type" data Input Data "If Martingale, enter Maximum Martingale Bet (needed for Casino Maximum)" to record "Martingale Max" data end Call "Init" end While on Each Spin begin if spin count >=65 then begin Display "Spin count 65 reached. System will Stop" Stop Session Exit end Copy last number to record "last number" layout call "Record hit" Call "Transfer hits" if record "last number" layout not found in record "track 18" layout begin if flag "ready to bet" is true and flag "Have bet" is true begin Add 1 to record "lost" data Add 1 to record "total lost" data if record "Progression Type" data = 3 then begin Multiply 2 to record "progression" data if record "progression" data > record "Martingale Max" data begin Display "You have reached the Martingale Maximum System will Stop" Stop Session Exit end end if record "Progression Type" data = 2 then begin Add 1 to record "progression" data end if record "lost" data > 7 begin Display "You have lost 7 times in a row. System will Stop" Stop Session Exit end call "Remove oldest hit" end Track Last number for 18 times to record "track 18" layout if record "track 18" layout count = 18 begin set flag "ready to bet" to true end end else begin if flag "ready to bet" is true and record "wait count" data = 1 and flag "Have bet" is true begin Put 0 on record "lost" data Add 1 to record "total win" data if record "Progression Type" data = 2 then begin Subtract 1 to record "progression" data end if record "Progression Type" data = 3 then begin Put 1 to record "progression" data end if record "progression" data <=0 begin Put 1 on record "progression" data end end end if flag "ready to bet" is true and record "wait count" data = 1 begin put 100% of record "total win" data to record "result" data Subtract 100% of record "total lost" data to record "result" data if record "result" data > =7 then begin Display "You won 7 times more that you lost. System will Stop" Stop Session Exit end Call "Place Bets" end if record "wait count" data = 0 and flag "ready to bet" is true begin put 1 on record "wait count" data end end end method "Place Bets" begin put 100% of record "progression" data to record "track 18" layout list set flag "Have bet" to true end method "Record hit" begin put 1 on record "numbers" layout index Loop until record "numbers" Layout index > record "numbers" Layout count begin if record "last number" Layout = record "numbers" Layout begin put 100% of record "numbers" Layout index to record "numbers" data index Add 1 to record "numbers" data return end Add 1 to record "numbers" Layout index end end method "Transfer hits" begin put 1 on record "track 18" layout index Loop until record "track 18" Layout index > record "track 18" Layout count begin put 1 on record "numbers" layout index Loop until record "numbers" Layout index > record "numbers" Layout count begin if record "numbers" Layout = record "track 18" Layout begin put 100% of record "numbers" Layout index to record "numbers" data index put 100% of record "track 18" Layout index to record "track 18" data index put 100% of record "numbers" data to record "track 18" data end Add 1 to record "numbers" Layout index end Add 1 to record "track 18" Layout index end end method "Remove oldest hit" begin put 1 on record "track 18" data index clear record "temp" layout clear record "temp" data set flag "found" to false put 1 on record "temp" data index Loop until record "track 18" data index > record "track 18" data count begin if record "track 18" data = 1 begin if flag "found" is false begin put 0 on record "track 18" data set flag "found" to true end end if record "track 18" data not = 0 begin put 100% of record "track 18" data to record "temp" data put 100% of record "track 18" Data index to record "track 18" Layout index put 100% of record "temp" data index to record "temp" layout index copy record "track 18" layout to record "temp" layout Add 1 to record "temp" data index end Add 1 to record "track 18" data index end Duplicate record "temp" to record "track 18" end method "Init" begin copy list [number 00, number 0, number 1, number 2, number 3,number 4,number 5,number 6, number 7,number 8,number 9,number 10,number 11,number 12,number 13,number 14, number 15,number 16,number 17,number 18,number 19,number 20,number 21,number 22, number 23,number 24,number 25,number 26,number 27,number 28,number 29,number 30, number 31,number 32,number 33,number 34,number 35,number 36] to record"numbers"layout clear record "numbers" data put 0 on record "wait count" data set flag "ready to bet" to false put 1 on record "progression" data put 0 on record "total lost" data put 0 on record "total win" data set flag "won" to false set flag "Have bet" to false Reset Spin Count end