home *** CD-ROM | disk | FTP | other *** search
- /* f14.c contains these files for monopoly: savegame()
- jailpark() sendtojail() rnd() random_start()
- */
-
- #include "mono:defines"
- #include "mono:xvariables"
-
- USHORT savegame()
- {
- struct FileHandle *saveptr;
- struct FileLock *save_lock;
- char *Csave_buffer, *Nsave_buffer;
- USHORT *USsave_buffer;
- SHORT *Ssave_buffer;
- BOOL *Bsave_buffer;
- LONG *Lsave_buffer;
- int access_mode, length1, length2, length4, length35, iter;
- UBYTE *file_name;
-
- length1=1;
- length2=2;
- length4=4;
- length35=35;
-
- wait_LS.Screen = screen1;
- wait_LS.Title = (UBYTE *)"PLEASE WAIT";
- if ((waitwindow=(struct Window *)OpenWindow(&wait_LS))==NULL) cleanup();
- rportwait=waitwindow->RPort;
- SetRast(rportwait, yellow);
-
-
- Ssave_buffer=(SHORT *)AllocMem(length2, MEMF_CHIP|MEMF_CLEAR);
- if (Ssave_buffer == 0)
- {
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)"Could not allocate enough memory.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(ALLOCMEM_FAILED);
- }
-
- Bsave_buffer=(BOOL *)AllocMem(length2, MEMF_CHIP|MEMF_CLEAR);
- if (Bsave_buffer == 0)
- {
- FreeMem(Ssave_buffer, length2);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)"Could not allocate enough memory.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(ALLOCMEM_FAILED);
- }
- USsave_buffer=(USHORT *)AllocMem(length2, MEMF_CHIP|MEMF_CLEAR);
- if (USsave_buffer == 0)
- {
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)"Could not allocate enough memory.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(ALLOCMEM_FAILED);
- }
-
- Csave_buffer=(char *)AllocMem(length1, MEMF_CHIP|MEMF_CLEAR);
- if (Csave_buffer == 0)
- {
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)"Could not allocate enough memory.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(ALLOCMEM_FAILED);
- }
- Nsave_buffer=(char *)AllocMem(length35, MEMF_CHIP|MEMF_CLEAR);
- if (Nsave_buffer == 0)
- {
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
- FreeMem(Csave_buffer, length1);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)"Could not allocate enough memory.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(ALLOCMEM_FAILED);
- }
- Lsave_buffer=(LONG *)AllocMem(length4, MEMF_CHIP|MEMF_CLEAR);
- if (Lsave_buffer == 0)
- {
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
- FreeMem(Csave_buffer, length1);
- FreeMem(Nsave_buffer, length35);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)"Could not allocate enough memory.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(ALLOCMEM_FAILED);
- }
-
- if ((file_name=file_request(SAVE_IT)) == 0)
- {
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
- FreeMem(Csave_buffer, length1);
- FreeMem(Nsave_buffer, length35);
- FreeMem(Lsave_buffer, length4);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)" SAVE ABORTED!!!";
- wait_LStext2.IText=(UBYTE *)" Invalid file name.";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(NO_FILE_TO_SAVE);
- }
- wait_LStext1.IText=(UBYTE *)"Now Saving File...";
- wait_LStext2.IText=file_name;
- PrintIText(rportwait, &wait_LStext1, 0,0);
-
- access_mode=MODE_NEWFILE;
-
- if ((save_lock=Lock(file_name, ACCESS_WRITE))!=0)
- {
- struct IntuiText save_prompt, save_prompt1, yes_save_prompt, no_save_prompt;
- save_prompt.FrontPen=red;
- save_prompt.BackPen=black;
- save_prompt.DrawMode=JAM1;
- save_prompt.LeftEdge=50;
- save_prompt.TopEdge=5;
- save_prompt.ITextFont=&TextFont;
- save_prompt.IText=(UBYTE *)"FILE ALREADY EXISTS!";
- save_prompt.NextText=&save_prompt1;
- CMes(&save_prompt1, 5, 15, "O.K. to over write old data?", orange, 1);
- CMes(&yes_save_prompt, 6, 4, "YES", red, 1);
- CMes(&no_save_prompt, 6, 4, "NO", green, 1);
- if (!(AutoRequest(boardwindow, &save_prompt, &yes_save_prompt,
- &no_save_prompt, NULL, NULL, 250, 60)))
- {
- UnLock(save_lock);
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
- FreeMem(Csave_buffer, length1);
- FreeMem(Nsave_buffer, length35);
- FreeMem(Lsave_buffer, length4);
- SetRast(rportwait, yellow);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)"DID NOT SAVE File...";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(DONT_OVERWRITE);
- }
- access_mode=MODE_OLDFILE;
- }
-
- if ((saveptr=Open(file_name, access_mode))==0)
- {
- UnLock(save_lock);
- FreeMem(Ssave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
- FreeMem(Csave_buffer, length1);
- FreeMem(Nsave_buffer, length35);
- FreeMem(Lsave_buffer, length4);
- SetRast(rportwait, yellow);
- wait_LStext1.FrontPen=red;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext1.IText=(UBYTE *)"DID NOT SAVE File...";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(CANT_LOCK_SAVE_FILE);
- }
- else
- {
-
- /* MONO */
- Csave_buffer[0]=0x4d;
- Write(saveptr, Csave_buffer, length1);
- Csave_buffer[0]=0x4f;
- Write(saveptr, Csave_buffer, length1);
- Csave_buffer[0]=0x4e;
- Write(saveptr, Csave_buffer, length1);
- Csave_buffer[0]=0x4f;
- Write(saveptr, Csave_buffer, length1);
- /* SAVE */
- Csave_buffer[0]=0x53;
- Write(saveptr, Csave_buffer, length1);
- Csave_buffer[0]=0x41;
- Write(saveptr, Csave_buffer, length1);
- Csave_buffer[0]=0x56;
- Write(saveptr, Csave_buffer, length1);
- Csave_buffer[0]=0x45;
- Write(saveptr, Csave_buffer, length1);
- FreeMem(Csave_buffer, length1);
-
-
- /* DATA */
- Ssave_buffer[0]=REDX;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=REDY;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=GREENX;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=GREENY;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=BLUEX;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=BLUEY;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=YELLOWX;
- Write(saveptr, Ssave_buffer, length2);
- Ssave_buffer[0]=YELLOWY;
- Write(saveptr, Ssave_buffer, length2);
- FreeMem(Ssave_buffer, length2);
-
- Bsave_buffer[0]=done;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=doublerr;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=doubleutil;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=jaildoubled;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=trieddoubles;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=trydoublethrice;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=doublesrolled;
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=isinjail[0];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=isinjail[1];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=isinjail[2];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=isinjail[3];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=notplaying[0];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=notplaying[1];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=notplaying[2];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=notplaying[3];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[0];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[1];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[2];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[3];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[4];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[5];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[6];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[7];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[8];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[9];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[10];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[11];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[12];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[13];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[14];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[15];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[16];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[17];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[18];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[19];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[20];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[21];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[22];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[23];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[24];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[25];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[26];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[27];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[28];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[29];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[30];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[31];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[32];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[33];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[34];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[35];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[36];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[37];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[38];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismono[39];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[0];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[1];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[2];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[3];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[4];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[5];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[6];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[7];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[8];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[9];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[10];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[11];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[12];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[13];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[14];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[15];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[16];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[17];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[18];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[19];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[20];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[21];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[22];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[23];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[24];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[25];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[26];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[27];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[28];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[29];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[30];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[31];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[32];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[33];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[34];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[35];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[36];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[37];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[38];
- Write(saveptr, Bsave_buffer, length2);
- Bsave_buffer[0]=ismorg[39];
- Write(saveptr, Bsave_buffer, length2);
- FreeMem(Bsave_buffer, length2);
-
- USsave_buffer[0]=nhp;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=ncp;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=ntp;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=nsp;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=nowrolling;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numdoubles;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=typeplayer0;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=typeplayer1;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=typeplayer2;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=typeplayer3;
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=playerat[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=playerat[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=playerat[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=playerat[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=freecard[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=freecard[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=freecard[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=freecard[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numutil[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numutil[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numutil[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numutil[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numrr[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numrr[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numrr[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numrr[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=jaildouble[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=jaildouble[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=jaildouble[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=jaildouble[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[4];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[5];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[6];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[7];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[8];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[9];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[10];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[11];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[12];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[13];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[14];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[15];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[16];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[17];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[18];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[19];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[20];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[21];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[22];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[23];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[24];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[25];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[26];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[27];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[28];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[29];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[30];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[31];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[32];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[33];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[34];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[35];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[36];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[37];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[38];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=owner[39];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[0];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[1];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[2];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[3];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[4];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[5];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[6];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[7];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[8];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[9];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[10];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[11];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[12];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[13];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[14];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[15];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[16];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[17];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[18];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[19];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[20];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[21];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[22];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[23];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[24];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[25];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[26];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[27];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[28];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[29];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[30];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[31];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[32];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[33];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[34];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[35];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[36];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[37];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[38];
- Write(saveptr, USsave_buffer, length2);
- USsave_buffer[0]=numhouses[39];
- Write(saveptr, USsave_buffer, length2);
- FreeMem(USsave_buffer, length2);
-
- for (iter=0; iter<35; iter++) Nsave_buffer[iter]=name0[iter];
- Write(saveptr, Nsave_buffer, length35);
- for (iter=0; iter<35; iter++) Nsave_buffer[iter]=name1[iter];
- Write(saveptr, Nsave_buffer, length35);
- for (iter=0; iter<35; iter++) Nsave_buffer[iter]=name2[iter];
- Write(saveptr, Nsave_buffer, length35);
- for (iter=0; iter<35; iter++) Nsave_buffer[iter]=name3[iter];
- Write(saveptr, Nsave_buffer, length35);
- FreeMem(Nsave_buffer, length35);
-
- Lsave_buffer[0]=bankroll[0];
- Write(saveptr, Lsave_buffer, length4);
- Lsave_buffer[0]=bankroll[1];
- Write(saveptr, Lsave_buffer, length4);
- Lsave_buffer[0]=bankroll[2];
- Write(saveptr, Lsave_buffer, length4);
- Lsave_buffer[0]=bankroll[3];
- Write(saveptr, Lsave_buffer, length4);
- Lsave_buffer[0]=bankroll[4];
- Write(saveptr, Lsave_buffer, length4);
- Lsave_buffer[0]=bankroll[5];
- Write(saveptr, Lsave_buffer, length4);
- FreeMem(Lsave_buffer, length4);
- Close(saveptr);
- UnLock(save_lock);
- SetRast(rportwait, yellow);
- wait_LStext1.FrontPen=green;
- wait_LStext2.FrontPen=green;
- wait_LStext1.BackPen=lt_gray;
- wait_LStext2.BackPen=lt_gray;
- wait_LStext1.DrawMode=JAM2;
- wait_LStext2.DrawMode=JAM2;
- wait_LStext1.IText=file_name;
- wait_LStext2.IText=(UBYTE *)"Sucessfully Saved!";
- PrintIText(rportwait, &wait_LStext1, 0,0);
- Delay(200);
- CloseWindow(waitwindow);
- return(GAME_SAVED);
- }
- }
-
-
-
- VOID jailpark()
- {
- if (nowrolling == 0)
- {
- REDX=38;
- REDY=174;
- }
- if (nowrolling == 1)
- {
- GREENX=50;
- GREENY=174;
- }
- if (nowrolling == 2)
- {
- BLUEX=38;
- BLUEY=183;
- }
- if (nowrolling == 3)
- {
- YELLOWX=50;
- YELLOWY=183;
- }
- WaitTOF();
- DrawGels();
- }
-
- VOID sendtojail()
- {
- switch (playerat[nowrolling])
- {
- case 2:
- {
- for (i=224, j=179; i>41; i-=7)
- {
- if (nowrolling == 0)
- {
- REDX=i;
- REDY=j;
- }
- if (nowrolling == 1)
- {
- GREENX=i;
- GREENY=j;
- }
- if (nowrolling == 2)
- {
- BLUEX=i;
- BLUEY=j;
- }
- if (nowrolling == 3)
- {
- YELLOWX=i;
- YELLOWY=j;
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
- case 7:
- {
- for (i=108, j=179; i>41; i-=4)
- {
- if (nowrolling == 0)
- {
- REDX=i;
- REDY=j;
- }
- if (nowrolling == 1)
- {
- GREENX=i;
- GREENY=j;
- }
- if (nowrolling == 2)
- {
- BLUEX=i;
- BLUEY=j;
- }
- if (nowrolling == 3)
- {
- YELLOWX=i;
- YELLOWY=j;
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
- case 17:
- {
- for (i=42, j=62; j<180; j+=5)
- {
- if (nowrolling == 0)
- {
- REDX=i;
- REDY=j;
- }
- if (nowrolling == 1)
- {
- GREENX=i;
- GREENY=j;
- }
- if (nowrolling == 2)
- {
- BLUEX=i;
- BLUEY=j;
- }
- if (nowrolling == 3)
- {
- YELLOWX=i;
- YELLOWY=j;
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
-
- case 22:
- {
- for (i=0; i<16; i++)
- {
- if (nowrolling == 0)
- {
- REDX=jailvectorlocation22[i][0];
- REDY=jailvectorlocation22[i][1];
- }
- if (nowrolling == 1)
- {
- GREENX=jailvectorlocation22[i][0];
- GREENY=jailvectorlocation22[i][1];
- }
- if (nowrolling == 2)
- {
- BLUEX=jailvectorlocation22[i][0];
- BLUEY=jailvectorlocation22[i][1];
- }
- if (nowrolling == 3)
- {
- YELLOWX=jailvectorlocation22[i][0];
- YELLOWY=jailvectorlocation22[i][1];
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
- case 30:
- {
- for (i=0; i<34; i++)
- {
- if (nowrolling == 0)
- {
- REDX=jailvectorlocation30[i][0];
- REDY=jailvectorlocation30[i][1];
- }
- if (nowrolling == 1)
- {
- GREENX=jailvectorlocation30[i][0];
- GREENY=jailvectorlocation30[i][1];
- }
- if (nowrolling == 2)
- {
- BLUEX=jailvectorlocation30[i][0];
- BLUEY=jailvectorlocation30[i][1];
- }
- if (nowrolling == 3)
- {
- YELLOWX=jailvectorlocation30[i][0];
- YELLOWY=jailvectorlocation30[i][1];
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
- case 33:
- {
- for (i=0; i<31; i++)
- {
- if (nowrolling == 0)
- {
- REDX=jailvectorlocation33[i][0];
- REDY=jailvectorlocation33[i][1];
- }
- if (nowrolling == 1)
- {
- GREENX=jailvectorlocation33[i][0];
- GREENY=jailvectorlocation33[i][1];
- }
- if (nowrolling == 2)
- {
- BLUEX=jailvectorlocation33[i][0];
- BLUEY=jailvectorlocation33[i][1];
- }
- if (nowrolling == 3)
- {
- YELLOWX=jailvectorlocation33[i][0];
- YELLOWY=jailvectorlocation33[i][1];
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
- case 36:
- {
- for (i=0; i<22; i++)
- {
- if (nowrolling == 0)
- {
- REDX=jailvectorlocation36[i][0];
- REDY=jailvectorlocation36[i][1];
- }
- if (nowrolling == 1)
- {
- GREENX=jailvectorlocation36[i][0];
- GREENY=jailvectorlocation36[i][1];
- }
- if (nowrolling == 2)
- {
- BLUEX=jailvectorlocation36[i][0];
- BLUEY=jailvectorlocation36[i][1];
- }
- if (nowrolling == 3)
- {
- YELLOWX=jailvectorlocation36[i][0];
- YELLOWY=jailvectorlocation36[i][1];
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
-
- default:
- {
- for (i=0; i<36; i++)
- {
- if (nowrolling == 0)
- {
- REDX=jailvectorlocation30[i][0];
- REDY=jailvectorlocation30[i][1];
- }
- if (nowrolling == 1)
- {
- GREENX=jailvectorlocation30[i][0];
- GREENY=jailvectorlocation30[i][1];
- }
- if (nowrolling == 2)
- {
- BLUEX=jailvectorlocation30[i][0];
- BLUEY=jailvectorlocation30[i][1];
- }
- if (nowrolling == 3)
- {
- YELLOWX=jailvectorlocation30[i][0];
- YELLOWY=jailvectorlocation30[i][1];
- }
- WaitTOF();
- DrawGels();
- }
- jailpark();
- break;
- }
- }
- playerat[nowrolling]=99;
- isinjail[nowrolling]=TRUE;
- }
-
- int rnd(min, max) /* min and max are INCLUSIVE */
- int min, max;
- {
- int rnum, low, high;
-
- if (min > max)
- {
- low=max;
- high=min;
- }
- else
- {
- low=min;
- high=max;
- }
-
- getrnum: rnum=rand();
- if (rnum < (high-low+1) ) goto getrnum;
-
- return((rnum%(high-low+1))+low);
- }
-
- int random_start()
- {
- int i, first, second, third, fourth;
- UBYTE hold0[35], hold1[35], hold2[35], hold3[35];
-
- if (nsp == 2)
- {
- if (rnd(1,2) == 1) return(0);
- else
- {
- for (i=0; i<35; i++)
- {
- hold0[i]=name0[i];
- hold1[i]=name1[i];
- }
- for (i=0; i<35; i++)
- {
- name0[i]=hold1[i];
- name1[i]=hold0[i];
- }
- }
- return(0);
- }
- if (nsp == 3)
- {
- first=rnd(1,3);
- retwo: second=rnd(1,3);
- if (first == second) goto retwo;
- rethree: third=rnd(1,3);
- if ( (first == third) || (second == third) ) goto rethree;
- if ( (first > second) && (second > third) ) return(0);
- for (i=0; i<35; i++)
- {
- hold0[i]=name0[i];
- hold1[i]=name1[i];
- hold2[i]=name2[i];
- }
- /* if (first == 1) leave it be */
- if (first == 2)
- {
- for (i=0; i<35; i++) name0[i]=hold1[i];
- }
- if (first == 3)
- {
- for (i=0; i<35; i++) name0[i]=hold2[i];
- }
- if (second == 1)
- {
- for (i=0; i<35; i++) name1[i]=hold0[i];
- }
- if (second == 3)
- {
- for (i=0; i<35; i++) name1[i]=hold2[i];
- }
- if (third == 1)
- {
- for (i=0; i<35; i++) name2[i]=hold0[i];
- }
- if (third == 2)
- {
- for (i=0; i<35; i++) name2[i]=hold1[i];
- }
- return(0);
- }
-
- if (nsp == 4)
- {
- first=rnd(1,4);
- retwo4: second=rnd(1,4);
- if (first == second) goto retwo4;
- rethree4: third=rnd(1,4);
- if ( (first == third) || (second == third) ) goto rethree4;
- refour4: fourth=rnd(1,4);
- if ( (first == fourth) || (second == fourth) || (third == fourth) )
- goto refour4;
- if ( (first > second) && (second > third) && (third > fourth) ) return(0);
- for (i=0; i<35; i++)
- {
- hold0[i]=name0[i];
- hold1[i]=name1[i];
- hold2[i]=name2[i];
- hold3[i]=name3[i];
- }
- /* if (first == 1) leave it be */
- if (first == 2)
- {
- for (i=0; i<35; i++) name0[i]=hold1[i];
- }
- if (first == 3)
- {
- for (i=0; i<35; i++) name0[i]=hold2[i];
- }
- if (first == 4)
- {
- for (i=0; i<35; i++) name0[i]=hold3[i];
- }
- if (second == 1)
- {
- for (i=0; i<35; i++) name1[i]=hold0[i];
- }
- if (second == 3)
- {
- for (i=0; i<35; i++) name1[i]=hold2[i];
- }
- if (second == 4)
- {
- for (i=0; i<35; i++) name1[i]=hold3[i];
- }
- if (third == 1)
- {
- for (i=0; i<35; i++) name2[i]=hold0[i];
- }
- if (third == 2)
- {
- for (i=0; i<35; i++) name2[i]=hold1[i];
- }
- if (third == 4)
- {
- for (i=0; i<35; i++) name2[i]=hold3[i];
- }
- if (fourth == 1)
- {
- for (i=0; i<35; i++) name3[i]=hold0[i];
- }
- if (fourth == 2)
- {
- for (i=0; i<35; i++) name3[i]=hold1[i];
- }
- if (fourth == 3)
- {
- for (i=0; i<35; i++) name3[i]=hold3[i];
- }
- }
- }
-