Mohan System
Mohan_System.dgt
—
Xtreme,
19 KB (20166 bytes)
Contenuto del file
system "Mohan_System.dgn"
method "main"
begin
While Starting a New Session
begin
Call "Initialize New Session";
Load double Wheel;
Exit;
end
Copy last Number to the record "Last Spin" layout;
Add 1 on record "Spin Count" data;
if Flag "Rule # 4" is False
begin
Call "Determine Rules";
end
Else
begin
Call "Add Last Number";
Call "Determine Win";
Call "Place Bets";
end
end
method "Add Last Number"
begin
add 1 to record "Last 5 List" layout index;
if record "Last 5 List" layout index >5 then
begin
move list up by 1 for record "Last 5 List" layout;
put 5 to record "Last 5 List" layout index;
end
copy last number to record "Last 5 List" layout;
end
method "Add to Neighbor List"
begin
Add 1 on record "Neighbor List" Layout Index;
Copy record "Last 5 List" layout to record "Neighbor List" layout;
end
//Find distance between each number on the wheel
method "Find distance on wheel"
begin
put 1 to record "Neighbor List" Layout Index;
loop until record "Neighbor List" Layout index > record
"Neighbor List" Layout count
begin
if record "Last 5 List" layout span within 7 gaps from
record "Neighbor List" layout
begin
Add 1 on record "Neighbor List" layout index;
end
Else
begin
Set Flag "Number Match" to False;
Add 1 on record "Neighbor List" layout index;
end
end
set max record "Neighbor List" Layout Index;
end
method "Determine ORIGINAL number"
begin
put 1 on record "Left and Right List" Layout Index;
loop until record "Left and Right List" Layout Index >
record "Left and Right List" Layout count
begin
if record "Left and Right List" layout has not hit between 2 to 11 spins
and record "Left and Right List" layout has hit between 12 to 27 spins
begin
Copy record "Left and Right List" layout to
record "Original" layout;
Set Flag "Rule # 2" to True;
Return;
end
Add 1 on record "Left and Right List" layout index;
end
end
method "Determine Rules"
begin
if Flag "Wait for 40 spins after Loss" is True
begin
Add 1 on record "Total count to Wait before playing" data;
if record "Total count to Wait before playing" data >
record "Maximum count to Wait" data
begin
Call "Startup";
end
end
if record "Spin Count" data > 1
begin
if record "Last Spin" Layout is not found in record "Last 5 List" Layout
begin
Call "Add Last Number";
if record "Last 5 List" layout index >= 5
begin
Clear record "Neighbor List" data;
Clear record "Neighbor List" layout;
Set Flag "Rule # 1" to false;
Set Flag "Rule # 2" to false;
Set Flag "Rule # 3" to false;
Set Flag "Rule # 4" to false;
Call "Determine Rule # 1";
Call "Determine Rule # 2";
Call "Determine Rule # 3";
Call "Determine Rule # 4";
end
end
else
begin
Call "Add Last Number";
end
end
Else
begin
Call "Add Last Number";
end
end
method "Determine Rule # 1"
begin
put 1 on record "Last 5 List" Layout Index;
loop until record "Last 5 List" Layout Index >
record "Last 5 List" Layout count
begin
if record "Neighbor List" layout index > 0
begin
Set Flag "Number Match" to True;
call "Find distance on wheel";
if Flag "Number Match" is True
begin
Call "Add to Neighbor List";
end
if record "Neighbor List" Layout Index = 4
begin
Set Flag "Rule # 1" to True;
end
end
Else
begin
Call "Add to Neighbor List";
end
Add 1 on record "Last 5 List" Layout Index;
end
set max record "Last 5 List" Layout Index;
end
method "Determine Rule # 2"
begin
if Flag "Rule # 1" is true
begin
put 1 on record "Left and Right List" Layout index;
Clear record "Left and Right List" layout;
Locate Number Left 1 gap from record "Last Spin" layout into
record "Left and Right List" layout;
add 1 on record "Left and Right List" Layout index;
Locate Number Left 0 gaps from record "Last Spin" layout into
record "Left and Right List" layout;
add 1 on record "Left and Right List" Layout index;
Locate Number Right 0 gaps from record "Last Spin" layout into
record "Left and Right List" layout;
add 1 on record "Left and Right List" Layout index;
Locate Number Right 1 gaps from record "Last Spin" layout into
record "Left and Right List" layout;
Clear record "Original" layout;
Clear record "Runner List" layout;
Clear record "Phantom Original" layout;
Clear record "Phantom Runner List" layout;
Call "Determine ORIGINAL number";
if Flag "Rule # 2" is False
begin
Set Flag "Rule # 1" to False;
Clear record "Left and Right List" layout;
end
end
end
method "Determine Rule # 3"
begin
if Flag "Rule # 2" is False
begin
Return;
end
put 0 to record "Neighbor List" data index;
put 1 to record "Neighbor List" layout index;
put 0 on record "Neighbors that satisfy Rule # 3" data;
Set Flag "Rule # 3" to False;
loop until record "Neighbor List" Layout Index >
record "Neighbor List" Layout count
begin
if record "Neighbor List" layout contiguous span is within 3 gaps
from record "Original" layout
begin
add 1 to record "Neighbor List" data index;
put 1 to record "Neighbor List" data;
Add 1 to record "Neighbors that satisfy Rule # 3" data;
end
else
begin
add 1 to record "Neighbor List" data index;
put 0 to record "Neighbor List" data;
end
Add 1 on record "Neighbor List" layout index;
end
if record "Neighbors that satisfy Rule # 3" data >= 4
begin
Set Flag "Rule # 3" to True;
end
set max to record "Neighbor List" layout index;
end
//Go forward and backward eight (8) spins from the Original number.
method "Determine Rule # 4"
begin
if Flag "Rule # 3" is False
begin
Return;
end
Set Flag "Rule # 4" to False;
Clear record "Forward and Backward List" layout;
Clear record "Forward and Backward List" data;
Call "Do Rule 4 A";
Call "Do Rule 4 B";
Call "Do Rule 4 C";
Call "Do Rule 4 D";
clear record "Runner List" layout;
Call "Find Runners";
end
//Find numbers that have shown in the last eight (8) spins
method "Do Rule 4 A"
begin
put 1 on record "Spins" data;
Loop until record "Spins" data > 8
begin
Locate Number Forward of record "Spins" data from record "Original" layout
into record "temp layout 1" layout;
Call "record Number Forward and Backward from Original to List";
Locate Number Backward of record "Spins" data from record "Original" layout
into record "temp layout 1" layout;
Call "record Number Forward and Backward from Original to List";
Add 1 on record "Spins" data;
end
end
method "record Number Forward and Backward from Original to List"
begin
if record "temp layout 1" Layout is not found in record "Forward and Backward List" Layout
begin
if record "temp layout 1" layout has hit between 1 to 8 spins
begin
add 1 to record "Forward and Backward List" layout index;
copy record "temp layout 1" layout to
record "Forward and Backward List" layout;
end
end
end
//Find numbers that are within eight (8) spins of each other
method "Do Rule 4 B"
begin
put 1 to record "Forward and Backward List" Layout Index;
duplicate record "Forward and Backward List" to record "temp list";
loop until record "Forward and Backward List" layout index >
record "Forward and Backward List" Layout count
begin
put 1 to record "temp list" layout index;
put 0 to record "Forward and Backward List" data index;
loop until record "temp list" layout index >
record "Forward and Backward List" Layout count
begin
if record "Forward and Backward List" layout distance is
within 8 spins from record "temp list" layout
and record "Forward and Backward List" layout not = record "temp list" layout
begin
add 1 to record "Forward and Backward List" data index;
put 1 on record "Forward and Backward List" data;
end
else
begin
add 1 to record "Forward and Backward List" data index;
end
Add 1 to record "temp list" layout index;
end
Add 1 to record "Forward and Backward List" layout index;
end
end
//Find numbers that are within eight(8) spins from the "Original Number"
method "Do Rule 4 C"
begin
put 1 to record "Forward and Backward List" Layout Index;
put 0 to record "Forward and Backward List" data index;
loop until record "Forward and Backward List" layout index >
record "Forward and Backward List" Layout count
begin
if record "Forward and Backward List" layout distance is within 8 spins
from record "Original" layout
begin
Add 1 to record "Forward and Backward List" data index;
Add 1 on record "Forward and Backward List" data;
end
else
begin
Add 1 to record "Forward and Backward List" data index;
end
Add 1 on record "Forward and Backward List" layout index;
end
end
{Find numbers that are within four (4) left and four (4) right of the
"Original Number" on the wheel
}
method "Do Rule 4 D"
begin
put 1 to record "Forward and Backward List" Layout Index;
put 0 to record "Forward and Backward List" data index;
loop until record "Forward and Backward List" layout index >
record "Forward and Backward List" Layout count
begin
if record "Forward and Backward List" layout contiguous span is within 3
gaps from record "Original" layout
begin
Add 1 to record "Forward and Backward List" data index;
Add 1 on record "Forward and Backward List" data;
end
else
begin
Add 1 to record "Forward and Backward List" data index;
end
Add 1 on record "Forward and Backward List" layout index;
end
end
//Find two Runners and place them in the Runners data record
method "Find Runners"
begin
put 1 to record "Forward and Backward List" Layout Index;
put 1 to record "Forward and Backward List" data index;
put 0 on record "Runner List" layout index;
put 0 on record "Runners Found" data;
loop until record "Forward and Backward List" data index >
record "Forward and Backward List" Data count
begin
if record "Forward and Backward List" data = 3 then
begin
add 1 to record "Runner List" layout index;
Copy record "Forward and Backward List" layout to record "Runner List" layout;
Add 1 on record "Runners Found" data;
end
if record "Runners Found" data = 2
begin
Set Flag "Rule # 4" to True;
return;
end
add 1 to record "Forward and Backward List" data index;
add 1 to record "Forward and Backward List" Layout Index;
end
end
method "Place Bets"
begin
Call "Determine if we can place a bet";
if Flag "Ok to place Bet" is True
begin
Add 1 on record "Total Spin count after start placing Bets" data;
Set Flag "Bets placed" to True;
if Flag "Wait for 40 spins after Loss" is False
begin
put 2 on record "Original" layout;
put 1 on record "Runner List" layout index;
put 1 on record "Runner List" layout;
put 2 on record "Runner List" layout index;
put 1 on record "Runner List" layout;
end
if Flag "Wait for 40 spins after Loss" is True
begin
if Flag "Phantom Bet during our Timeout Wait" is False
begin
Set Flag "Bets placed" to False;
end
Copy record "Original" layout to the record "Phantom Original" layout;
duplicate record "Runner List" to record "Phantom Runner List";
Set Flag "Phantom Bet during our Timeout Wait" to True;
end
end
end
method "Determine if we can place a bet"
begin
Set Flag "Ok to place Bet" to True;
if record "Total Spin count after start placing Bets" data >= 7
begin
Set Flag "Ok to place Bet" to False;
Set Flag "Bet one more time" to False;
put 0 on record "Total Spin count after start placing Bets" data;
Call "Determine Wait count";
Set Flag "Bet Won" to False;
Return;
end
if record "Total count to Wait before playing" data >
record "Maximum count to Wait" data
begin
Call "Startup";
Return;
end
if record "Maximum count to Wait" data not = 0
and Flag "Wait for 11 spins after Win" is True
begin
Add 1 on record "Total count to Wait before playing" data;
Set Flag "Ok to place Bet" to False;
Return;
end
if record "Maximum count to Wait" data not = 0
and Flag "Wait for 40 spins after Loss" is True
begin
Add 1 on record "Total count to Wait before playing" data;
Return;
end
if Flag "Bet one more time" is True
begin
Set Flag "Ok to place Bet" to False;
Call "Determine Wait count";
end
end
method "Determine Win"
begin
if Flag "Bets placed" is True
and Flag "Bet one more time" is False
begin
if Flag "Wait for 40 spins after Loss" is False
and Any Number bet has won each time
begin
Set Flag "Bet Won" to True;
Set Flag "Bet one more time" to True;
Return;
end
if Flag "Wait for 40 spins after Loss" is True
and Flag "Phantom Bet during our Timeout Wait" is True
begin
Call "Determine Phantom Win";
Return;
end
end
if Flag "Bets placed" is True
and Flag "Bet one more time" is True
and Any Number Bet has won each time
begin
Set Flag "Bet Won" to True;
Set Flag "Bet one more time" to False;
Call "Determine Wait count";
end
end
method "Determine Phantom Win"
begin
if Flag "Bets placed" is True
and Flag "Phantom Bet during our Timeout Wait" is True
begin
if record "Phantom Original" layout = record "Last Spin" layout
begin
call "Startup";
end
else
begin
put 1 to record "Phantom Runner List" layout index;
loop until record "Phantom Runner List" layout index >
record "Phantom Runner List" Layout count
begin
if record "Phantom Runner List" layout = record "Last Spin" layout
begin
Call "Startup";
return;
end
add 1 to record "Phantom Runner List" layout index;
end
end
end
end
method "Determine Wait count"
begin
if Flag "Bet Won" is True
begin
Set Flag "Wait for 11 spins after Win" to True;
Set Flag "Wait for 40 spins after Loss" to False;
Set Flag "Phantom Bet during our Timeout Wait" to False;
put 100 % of record "# of times to wait after a Win" data on
record "Maximum count to Wait" data;
Set Flag "Bet one more time" to False;
put 1 on record "Total count to Wait before playing" data;
Subtract 1 on record "Maximum count to Wait" data;
Set Flag "Bets placed" to False;
end
Else
begin
Call "Startup";
Set Flag "Wait for 40 spins after Loss" to True;
Set Flag "Wait for 11 spins after Win" to False;
put 100% of record "# of times to wait after a Loss" data on
record "Maximum count to Wait" data;
put 1 on record "Total count to Wait before playing" data;
Subtract 1 on record "Maximum count to Wait" data;
end
end
method "Initialize New Session"
begin
Clear record "Neighbor List" data;
Clear record "Neighbor List" layout;
Clear record "Last 5 List" layout;
Clear record "Left and Right List" layout;
Clear record "Original" layout;
Clear record "Runner List" layout;
Clear record "Phantom Original" layout;
Clear record "Phantom Runner List" layout;
Clear record "Forward and Backward List" layout;
Clear record "temp list" layout;
Clear record "temp list" data;
Set Flag "Number Match" to false;
Set Flag "Rule # 1" to false;
Set Flag "Rule # 2" to false;
Set Flag "Rule # 3" to false;
Set Flag "Rule # 4" to false;
Set Flag "Bet Won" to false;
Set Flag "Bets placed" to false;
Set Flag "Wait for 11 spins after Win" to false;
Set Flag "Wait for 40 spins after Loss" to false;
Set Flag "Bet one more time" to false;
Set Flag "Ok to place Bet" to false;
Set Flag "Phantom Bet during our Timeout Wait" to false;
put 0 on record "Spin Count" data;
put 0 on record "Total Spin count after start placing Bets" data;
put 40 on record "# of times to wait after a Loss" data;
put 11 on record "# of times to wait after a Win" data;
call "Startup";
end
method "Startup"
begin
Reset All Flags to False;
put 0 on record "Maximum count to Wait" data;
put 0 on record "Total count to Wait before playing" data;
put 0 on record "Total Spin count after start placing Bets" data;
end





