home *** CD-ROM | disk | FTP | other *** search
/ The Devil's Doorknob BBS Capture (1996-2003) / devilsdoorknobbbscapture1996-2003.iso / Dloads / WWIVMODS / PRE412.ZIP / GOLDSYS4.MOD < prev    next >
Text File  |  1990-03-24  |  2KB  |  77 lines

  1. Tony Godfrey #1 @18
  2. Thu Mar 22 09:01:33 1990
  3. void boardedit()
  4. {
  5.     int i,i1,i2,i3,done,f;
  6.   char s[81],s1[81],s2[81],ch;
  7.  
  8.     goldload();
  9.   if (!checkpw())
  10.     return;
  11.   showsubs();
  12.   done=0;
  13.   do {
  14.     nl();
  15.     prt(2,"Subs: D:elete, I:nsert, M:odify, Q:uit, ? : ");
  16.     ch=onek("QDIM?");
  17.     switch(ch) {
  18.       case '?':
  19.         showsubs();
  20.         break;
  21.       case 'Q':
  22.         done=1;
  23.         break;
  24.       case 'M':
  25.         nl();
  26.         prt(2,"Sub number? ");
  27.         input(s,2);
  28.         i=atoi(s);
  29.         if ((s[0]!=0) && (i>=0) && (i<num_subs))
  30.           modify_sub(i);
  31.         break;
  32.       case 'I':
  33.         if (num_subs<32) {
  34.           nl();
  35.           prt(2,"Insert before which sub? ");
  36.           input(s,2);
  37.           i=atoi(s);
  38.           if ((s[0]!=0) && (i>=0) && (i<=num_subs)) {
  39.             insert_sub(i);
  40.             i2 = rewardgold[i];
  41.             rewardgold[i] = 0;
  42.             for (i1=i+1; i1<num_subs; i1++) {
  43.               i3 = rewardgold[i1];
  44.               rewardgold[i1] = i2;
  45.               i2 = i3;
  46.             }
  47.             rewardgold[num_subs] = i2;
  48.             savegold();
  49.           }
  50.         }
  51.         break;
  52.       case 'D':
  53.         nl();
  54.         prt(2,"Delete which sub? ");
  55.         input(s,2);
  56.         i=atoi(s);
  57.         if ((s[0]!=0) && (i>=0) && (i<num_subs)) {
  58.           nl();
  59.           sprintf(s1,"Delete %s? ",subboards[i].name);
  60.           prt(5,s1);
  61.           if (yn()) {
  62.             delete_sub(i);
  63.             for (i1=i; i1<num_subs; i1++)
  64.               rewardgold[i1] = rewardgold[i1+1];
  65.               rewardgold[num_subs] = 0;
  66.               savegold();
  67.             }
  68.         }
  69.         break;
  70.     }
  71.   } while ((!done) && (!hangup));
  72.   strcpy(s,syscfg.datadir);
  73.   strcat(s,"SUBS.DAT");
  74.   f=open(s,O_RDWR | O_BINARY | O_CREAT | O_TRUNC, S_IREAD | S_IWRITE);
  75.   write(f,(void *)&subboards[0], num_subs * sizeof(subboardrec));
  76.   close(f);
  77. }