Výherní automat DAYTONA GAMBLER pro dosbox který stáhnete z domovské stránky dosboxu

Category: KMP (Club of young programmers)
gambler.jpgAuthor: Martin Koleček
Program: Daytona.pasDefault.pasHisther.pasJackpot.pasLoading.pasMain.pasMaingame.pasMisc.pasMys.pasOvladani.pas
File exe: Gambler.zip
need: Plus1000.pasPlus500.pasProdat.pasRiskscr.pasRoll.pasRollpre.pasRollproc.pasRolsetup.pasRskdolni.pasRskhorni.pas
Example: Saveload.pasScore.pasScreen.pasServis.pasSetbet.pasTestwin.pasUpdate5.pasWaitbtn.pasWinblink.pasWrivalce.pasZisky.pas

Výherní automat podle skutečného stroje Daytona 750. Podporuje Sound Blaster.
Rychlost hry je konfigurovatelná. Experimentálně podporuje ovládání dotykovým displayem pro Androidy.

POZOR:
O dosboxu:


Nastavení výhernosti:
V servisní obrazovce klávesou TAB měníte switch a nahoru dolů manipupuje s výherností rozsahy jsou 0 až 65000 v‘echny switche a číslo na něm vyrábí poměr mezi dvěma stavy, obvykle to bývá jestli je výhra nebo není výhra a číslo teda dělí na poměr mezi těmito stavy, vždy "0 až číslo" je jedna část, třeba jestli se riskovani povede nebo nepovede a "číslo až 65000" je druhá část možného výsledku. Nakonec rozhodne náhodné číslo z rozsahu "0 až 65535" , ale záleží na poměru na switchi co je pravděpodobněj‘í interval.


SWITCHE:
Procedure WriteSymbol(x,y:Word; Symbol:Byte; Color:Boolean; Up,Down:Byte;BufferTo:Word);
Var A,B: Word;
Begin
  Case Symbol of
    1: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,0,A,31,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,0,A,31,B,Buffer[2],BufferTo);
                            End;
       End;
    2: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,32,A,63,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,32,A,63,B,Buffer[2],BufferTo);
                            End;
       End;
    3: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,64,A,95,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,64,A,95,B,Buffer[2],BufferTo);
                            End;
       End;
    4: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,96,A,127,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,96,A,127,B,Buffer[2],BufferTo);
                            End;
       End;
    5: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,128,A,159,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,128,A,159,B,Buffer[2],BufferTo);
                            End;
       End;
    6: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,160,A,191,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,160,A,191,B,Buffer[2],BufferTo);
                            End;
       End;
    7: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,192,A,223,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,192,A,223,B,Buffer[2],BufferTo);
                            End;
       End;
    8: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,224,A,255,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,224,A,255,B,Buffer[2],BufferTo);
                            End;
       End;
    9: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,256,A,287,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,256,A,287,B,Buffer[2],BufferTo);
                            End;
       End;
    0: Begin
         If Color=True then Begin
                              A:=24+Up;
                              B:=47-Down;
                              If B>A then
                              WriteBlok(x,y,288,A,319,B,Buffer[2],BufferTo)
                            End
                       else Begin
                              A:=0+Up;
                              B:=23-Down;
                              If B>A then
                              WriteBlok(x,y,288,A,319,B,Buffer[2],BufferTo);
                            End;
       End;
  End; {Case End}
End;
 
 
Procedure KresliValce2;
Begin
  HideMouse;
  WriteSymbol(108,54,Valec[0].Symbol[0],False,24-Valec[0].Scroll,0,Buffer[4]);
  WriteSymbol(108,54+Valec[0].Scroll,Valec[0].Symbol[1],False,0,0,Buffer[4]);
  WriteSymbol(108,54+Valec[0].Scroll+24,Valec[0].Symbol[2],False,0,0,Buffer[4]);
  WriteSymbol(108,54+Valec[0].Scroll+48,Valec[0].Symbol[3],False,0,Valec[0].Scroll,Buffer[4]);
 
  WriteSymbol(144,54,Valec[1].Symbol[0],False,24-Valec[1].Scroll,0,Buffer[4]);
  WriteSymbol(144,54+Valec[1].Scroll,Valec[1].Symbol[1],False,0,0,Buffer[4]);
  WriteSymbol(144,54+Valec[1].Scroll+24,Valec[1].Symbol[2],False,0,0,Buffer[4]);
  WriteSymbol(144,54+Valec[1].Scroll+48,Valec[1].Symbol[3],False,0,Valec[1].Scroll,Buffer[4]);
 
  WriteSymbol(180,54,Valec[2].Symbol[0],False,24-Valec[2].Scroll,0,Buffer[4]);
  WriteSymbol(180,54+Valec[2].Scroll,Valec[2].Symbol[1],False,0,0,Buffer[4]);
  WriteSymbol(180,54+Valec[2].Scroll+24,Valec[2].Symbol[2],False,0,0,Buffer[4]);
  WriteSymbol(180,54+Valec[2].Scroll+48,Valec[2].Symbol[3],False,0,Valec[2].Scroll,Buffer[4]);
  ShowMouse;
End;
 
 
Procedure KresliValce;
Begin
  WriteSymbol(108,54,Valec[0].Symbol[0],False,24-Valec[0].Scroll,0,Buffer[3]);
  WriteSymbol(108,54+Valec[0].Scroll,Valec[0].Symbol[1],False,0,0,Buffer[3]);
  WriteSymbol(108,54+Valec[0].Scroll+24,Valec[0].Symbol[2],False,0,0,Buffer[3]);
  WriteSymbol(108,54+Valec[0].Scroll+48,Valec[0].Symbol[3],False,0,Valec[0].Scroll,Buffer[3]);
 
  WriteSymbol(144,54,Valec[1].Symbol[0],False,24-Valec[1].Scroll,0,Buffer[3]);
  WriteSymbol(144,54+Valec[1].Scroll,Valec[1].Symbol[1],False,0,0,Buffer[3]);
  WriteSymbol(144,54+Valec[1].Scroll+24,Valec[1].Symbol[2],False,0,0,Buffer[3]);
  WriteSymbol(144,54+Valec[1].Scroll+48,Valec[1].Symbol[3],False,0,Valec[1].Scroll,Buffer[3]);
 
  WriteSymbol(180,54,Valec[2].Symbol[0],False,24-Valec[2].Scroll,0,Buffer[3]);
  WriteSymbol(180,54+Valec[2].Scroll,Valec[2].Symbol[1],False,0,0,Buffer[3]);
  WriteSymbol(180,54+Valec[2].Scroll+24,Valec[2].Symbol[2],False,0,0,Buffer[3]);
  WriteSymbol(180,54+Valec[2].Scroll+48,Valec[2].Symbol[3],False,0,Valec[2].Scroll,Buffer[3]);
End;