void getinitials(void) { Sint4 k,i; newframe(); outtext("ENTER YOUR",100,70,3); outtext(" INITIALS",100,90,3); outtext("_ _ _",128,130,3); strcpy(scoreinit[0],"..."); killsound(); for (i=0;i<3;i++) { k=0; while (k==0) { k=getinitial(i*24+128,130); if (k==8 || k==127) { if (i>0) i--; k=0; } } if (k!=0) { gwrite(i*24+128,130,k,3); scoreinit[0][i]=k; } } for (i=0;i<20;i++) flashywait(15); setupsound(); gclear(); gpal(0); ginten(0); setretr(true); recputinit(scoreinit[0]); }
void flashywait(Sint4 n) { Sint4 i,gt,cx,p=0; Sint3 gap=19; setretr(false); for (i=0;i<(n<<1);i++) for (cx=0;cx<volume;cx++) { gpal(p=1-p); for (gt=0;gt<gap;gt++); } }
void maininit(void) { calibrate(); ginit(); gpal(0); setretr(true); initkeyb(); detectjoy(); inir(); initsound(); recstart(); }
void drawstatics(void) { int16_t x,y; for (x=0;x<MWIDTH;x++) for (y=0;y<MHEIGHT;y++) if (curplayer==0) field[y*MWIDTH+x]=field1[y*MWIDTH+x]; else field[y*MWIDTH+x]=field2[y*MWIDTH+x]; setretr(true); gpal(0); ginten(0); drawbackg(levplan()); drawfield(); }
void flashywait(Sint4 n) { Sint4 i,gt,cx,p=0; Sint3 gap=19; setretr(FALSE); for (i=0;i<(n<<1);i++) for (cx=0;cx<volume;cx++) { gpal(p=1-p); #ifdef _WINDOWS for (gt=0;gt<gap;gt++) do_windows_events(); #else for (gt=0;gt<gap;gt++); #endif } }
void maininit(void) { static int maininited = 0; if (maininited != 0) { return; } calibrate(); ddap->ginit(); ddap->gpal(0); setretr(true); initkeyb(); detectjoy(); inir(); initsound(); recstart(); maininited = 1; }
void getinitials(void) { Sint4 k,i; #ifdef _WINDOWS pause_windows_sound_playback(); #endif newframe(); outtext("ENTER YOUR",100,70,3); outtext(" INITIALS",100,90,3); outtext("_ _ _",128,130,3); strcpy(scoreinit[0],"..."); killsound(); for (i=0;i<3;i++) { k=0; while (k==0) { k=getinitial(i*24+128,130); if (k==8 || k==127) { if (i>0) i--; k=0; } } if (k!=0) { gwrite(i*24+128,130,k,3); scoreinit[0][i]=k; } } for (i=0;i<20;i++) #ifdef _WINDOWS flashywait(2); #else flashywait(15); #endif setupsound(); gclear(); gpal(0); ginten(0); setretr(TRUE); recputinit(scoreinit[0]); #ifdef _WINDOWS resume_windows_sound_playback(); #endif }
void endofgame(void) { Sint4 i; bool initflag=FALSE; for (i=0;i<diggers;i++) addscore(i,0); if (playing || !drfvalid) return; if (gauntlet) { cleartopline(); outtext("TIME UP",120,0,3); for (i=0;i<50 && !escape;i++) newframe(); outtext(" ",120,0,3); } for (i=curplayer;i<curplayer+diggers;i++) { scoret=scdat[i].score; if (scoret>scorehigh[11]) { gclear(); drawscores(); strcpy(pldispbuf,"PLAYER "); if (i==0) strcat(pldispbuf,"1"); else strcat(pldispbuf,"2"); outtext(pldispbuf,108,0,2); outtext(" NEW HIGH SCORE ",64,40,2); getinitials(); shufflehigh(); savescores(); initflag=TRUE; } } if (!initflag && !gauntlet) { cleartopline(); outtext("GAME OVER",104,0,3); for (i=0;i<50 && !escape;i++) newframe(); outtext(" ",104,0,3); setretr(TRUE); } }