Пример #1
0
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]);
}
Пример #2
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++);
    }
}
Пример #3
0
void maininit(void)
{
  calibrate();
  ginit();
  gpal(0);
  setretr(true);
  initkeyb();
  detectjoy();
  inir();
  initsound();
  recstart();
}
Пример #4
0
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();
}
Пример #5
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);
#ifdef _WINDOWS
      for (gt=0;gt<gap;gt++)
        do_windows_events();
#else
      for (gt=0;gt<gap;gt++);
#endif
    }
}
Пример #6
0
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;
}
Пример #7
0
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
}
Пример #8
0
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);
  }
}