home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Devil's Doorknob BBS Capture (1996-2003)
/
devilsdoorknobbbscapture1996-2003.iso
/
Dloads
/
WWIVMODS
/
RANK.ZIP
/
RANK.C
< prev
next >
Wrap
C/C++ Source or Header
|
1992-04-22
|
11KB
|
328 lines
/* Sysop Configurable Ranks V 1.02 */
/* Written By: Dr. D. */
/* Black Cross 1992 */
#include "vars.h"
#include "vardec.h"
#include "fcns.h"
int rank_sex;
void rankedit()
{
rank_sex=1;
read_ranks();
male_list();
}
void read_ranks()
{
int handle,i=1;
handle=open("RANK.DAT",O_RDWR);
do {
read(handle,rankcfg.rank[i],40);
i++;
} while (i<53);
}
void write_ranks()
{
int handle,i=1;
handle=open("RANK.DAT",O_CREAT | O_RDWR);
do {
write(handle,rankcfg.rank[i],40);
i++;
} while (i<53);
}
void male_list()
{
nl();
nl();
pl(" # │ SL │ Male Rank");
npr(" 1 │ 0-9 │ %s\r\n",rankcfg.rank[1]);
npr(" 2 │ 10-19 │ %s\r\n",rankcfg.rank[2]);
npr(" 3 │ 20-29 │ %s\r\n",rankcfg.rank[3]);
npr(" 4 │ 30-39 │ %s\r\n",rankcfg.rank[4]);
npr(" 5 │ 40-49 │ %s\r\n",rankcfg.rank[5]);
npr(" 6 │ 50-59 │ %s\r\n",rankcfg.rank[6]);
npr(" 7 │ 60-69 │ %s\r\n",rankcfg.rank[7]);
npr(" 8 │ 70-79 │ %s\r\n",rankcfg.rank[8]);
npr(" 9 │ 80-89 │ %s\r\n",rankcfg.rank[9]);
npr(" 10 │ 90-99 │ %s\r\n",rankcfg.rank[10]);
npr(" 11 │100-109│ %s\r\n",rankcfg.rank[11]);
npr(" 12 │110-119│ %s\r\n",rankcfg.rank[12]);
npr(" 13 │120-129│ %s\r\n",rankcfg.rank[13]);
npr(" 14 │130-139│ %s\r\n",rankcfg.rank[14]);
npr(" 15 │140-149│ %s\r\n",rankcfg.rank[15]);
npr(" 16 │150-159│ %s\r\n",rankcfg.rank[16]);
npr(" 17 │160-169│ %s\r\n",rankcfg.rank[17]);
npr(" 18 │170-179│ %s\r\n",rankcfg.rank[18]);
npr(" 19 │180-189│ %s\r\n",rankcfg.rank[19]);
npr(" 20 │190-199│ %s\r\n",rankcfg.rank[20]);
npr(" 21 │200-209│ %s\r\n",rankcfg.rank[21]);
npr(" 22 │210-219│ %s\r\n",rankcfg.rank[22]);
npr(" 23 │220-229│ %s\r\n",rankcfg.rank[23]);
npr(" 24 │230-239│ %s\r\n",rankcfg.rank[24]);
npr(" 25 │240-249│ %s\r\n",rankcfg.rank[25]);
npr(" 26 │250-255│ %s\r\n",rankcfg.rank[26]);
change_ranks();
}
void female_list()
{
nl();
nl();
pl(" # │ SL │ Female Rank");
npr(" 1 │ 0-9 │ %s\r\n",rankcfg.rank[27]);
npr(" 2 │ 10-19 │ %s\r\n",rankcfg.rank[28]);
npr(" 3 │ 20-29 │ %s\r\n",rankcfg.rank[29]);
npr(" 4 │ 30-39 │ %s\r\n",rankcfg.rank[30]);
npr(" 5 │ 40-49 │ %s\r\n",rankcfg.rank[31]);
npr(" 6 │ 50-59 │ %s\r\n",rankcfg.rank[32]);
npr(" 7 │ 60-69 │ %s\r\n",rankcfg.rank[33]);
npr(" 8 │ 70-79 │ %s\r\n",rankcfg.rank[34]);
npr(" 9 │ 80-89 │ %s\r\n",rankcfg.rank[35]);
npr(" 10 │ 90-99 │ %s\r\n",rankcfg.rank[36]);
npr(" 11 │100-109│ %s\r\n",rankcfg.rank[37]);
npr(" 12 │110-119│ %s\r\n",rankcfg.rank[38]);
npr(" 13 │120-129│ %s\r\n",rankcfg.rank[39]);
npr(" 14 │130-139│ %s\r\n",rankcfg.rank[40]);
npr(" 15 │140-149│ %s\r\n",rankcfg.rank[41]);
npr(" 16 │150-159│ %s\r\n",rankcfg.rank[42]);
npr(" 17 │160-169│ %s\r\n",rankcfg.rank[43]);
npr(" 18 │170-179│ %s\r\n",rankcfg.rank[44]);
npr(" 19 │180-189│ %s\r\n",rankcfg.rank[45]);
npr(" 20 │190-199│ %s\r\n",rankcfg.rank[46]);
npr(" 21 │200-209│ %s\r\n",rankcfg.rank[47]);
npr(" 22 │210-219│ %s\r\n",rankcfg.rank[48]);
npr(" 23 │220-229│ %s\r\n",rankcfg.rank[49]);
npr(" 24 │230-239│ %s\r\n",rankcfg.rank[50]);
npr(" 25 │240-249│ %s\r\n",rankcfg.rank[51]);
npr(" 26 │250-255│ %s\r\n",rankcfg.rank[52]);
change_ranks();
}
void change_ranks()
{
char a[3];
int i;
prt(2,"< = Male Rank, > = Female Rank, ? = Rank List, Q = Quit"); nl();
prt(2,"Which:");
input(a,2);
if (((a[0]>='A') && (a[0]<='P')) || ((a[0]>='R') && (a[0]<='Z'))) {
change_ranks();
} else if (a[0]=='>') {
rank_sex=2;
female_list();
} else if (a[0]=='<') {
rank_sex=1;
male_list();
} else if (a[0]=='?') {
if (rank_sex==1)
male_list();
else if (rank_sex==2)
female_list();
} else if (a[0]=='Q') {
var_quit();
} else {
i=atoi(a);
if ((i>=27) || (i==0)) {
change_ranks();
} else if (rank_sex==1) {
prt(2,"New Rank:");
inputl(rankcfg.rank[i],40);
i=0;
change_ranks();
} else if (rank_sex==2) {
prt(2,"New Rank:");
inputl(rankcfg.rank[i+26],40);
i=0;
change_ranks();
}
}
}
void var_quit()
{
char ch;
prt(2,"Save Changes:");
ch=onek("YN");
switch (ch) {
case 'Y':
write_ranks();
break;
case 'N':
break;
}
}
void ranks()
{
read_ranks();
if (thisuser.sex=='M') {
if ((thisuser.sl>=0) && (thisuser.sl<=9)) {
strcpy(rankcfg.rank[0],rankcfg.rank[1]);
return;
} else if ((thisuser.sl>=10) && (thisuser.sl<=19)) {
strcpy(rankcfg.rank[0],rankcfg.rank[2]);
return;
} else if ((thisuser.sl>=20) && (thisuser.sl<=29)) {
strcpy(rankcfg.rank[0],rankcfg.rank[3]);
return;
} else if ((thisuser.sl>=30) && (thisuser.sl<=39)) {
strcpy(rankcfg.rank[0],rankcfg.rank[4]);
return;
} else if ((thisuser.sl>=40) && (thisuser.sl<=49)) {
strcpy(rankcfg.rank[0],rankcfg.rank[5]);
return;
} else if ((thisuser.sl>=50) && (thisuser.sl<=59)) {
strcpy(rankcfg.rank[0],rankcfg.rank[6]);
return;
} else if ((thisuser.sl>=60) && (thisuser.sl<=69)) {
strcpy(rankcfg.rank[0],rankcfg.rank[7]);
return;
} else if ((thisuser.sl>=70) && (thisuser.sl<=79)) {
strcpy(rankcfg.rank[0],rankcfg.rank[8]);
return;
} else if ((thisuser.sl>=80) && (thisuser.sl<=89)) {
strcpy(rankcfg.rank[0],rankcfg.rank[9]);
return;
} else if ((thisuser.sl>=90) && (thisuser.sl<=99)) {
strcpy(rankcfg.rank[0],rankcfg.rank[10]);
return;
} else if ((thisuser.sl>=100) && (thisuser.sl<=109)) {
strcpy(rankcfg.rank[0],rankcfg.rank[11]);
return;
} else if ((thisuser.sl>=110) && (thisuser.sl<=119)) {
strcpy(rankcfg.rank[0],rankcfg.rank[12]);
return;
} else if ((thisuser.sl>=120) && (thisuser.sl<=129)) {
strcpy(rankcfg.rank[0],rankcfg.rank[13]);
return;
} else if ((thisuser.sl>=130) && (thisuser.sl<=139)) {
strcpy(rankcfg.rank[0],rankcfg.rank[14]);
return;
} else if ((thisuser.sl>=140) && (thisuser.sl<=149)) {
strcpy(rankcfg.rank[0],rankcfg.rank[15]);
return;
} else if ((thisuser.sl>=150) && (thisuser.sl<=159)) {
strcpy(rankcfg.rank[0],rankcfg.rank[16]);
return;
} else if ((thisuser.sl>=160) && (thisuser.sl<=169)) {
strcpy(rankcfg.rank[0],rankcfg.rank[17]);
return;
} else if ((thisuser.sl>=170) && (thisuser.sl<=179)) {
strcpy(rankcfg.rank[0],rankcfg.rank[18]);
return;
} else if ((thisuser.sl>=180) && (thisuser.sl<=189)) {
strcpy(rankcfg.rank[0],rankcfg.rank[19]);
return;
} else if ((thisuser.sl>=190) && (thisuser.sl<=199)) {
strcpy(rankcfg.rank[0],rankcfg.rank[20]);
return;
} else if ((thisuser.sl>=200) && (thisuser.sl<=209)) {
strcpy(rankcfg.rank[0],rankcfg.rank[21]);
return;
} else if ((thisuser.sl>=210) && (thisuser.sl<=219)) {
strcpy(rankcfg.rank[0],rankcfg.rank[22]);
return;
} else if ((thisuser.sl>=220) && (thisuser.sl<=229)) {
strcpy(rankcfg.rank[0],rankcfg.rank[23]);
return;
} else if ((thisuser.sl>=230) && (thisuser.sl<=239)) {
strcpy(rankcfg.rank[0],rankcfg.rank[24]);
return;
} else if ((thisuser.sl>=240) && (thisuser.sl<=249)) {
strcpy(rankcfg.rank[0],rankcfg.rank[25]);
return;
} else if ((thisuser.sl>=250) && (thisuser.sl<=255)) {
strcpy(rankcfg.rank[0],rankcfg.rank[26]);
return;
}
} else if (thisuser.sex=='F') {
if ((thisuser.sl>=0) && (thisuser.sl<=9)) {
strcpy(rankcfg.rank[0],rankcfg.rank[27]);
return;
} else if ((thisuser.sl>=10) && (thisuser.sl<=19)) {
strcpy(rankcfg.rank[0],rankcfg.rank[28]);
return;
} else if ((thisuser.sl>=20) && (thisuser.sl<=29)) {
strcpy(rankcfg.rank[0],rankcfg.rank[29]);
return;
} else if ((thisuser.sl>=30) && (thisuser.sl<=39)) {
strcpy(rankcfg.rank[0],rankcfg.rank[30]);
return;
} else if ((thisuser.sl>=40) && (thisuser.sl<=49)) {
strcpy(rankcfg.rank[0],rankcfg.rank[31]);
return;
} else if ((thisuser.sl>=50) && (thisuser.sl<=59)) {
strcpy(rankcfg.rank[0],rankcfg.rank[32]);
return;
} else if ((thisuser.sl>=60) && (thisuser.sl<=69)) {
strcpy(rankcfg.rank[0],rankcfg.rank[33]);
return;
} else if ((thisuser.sl>=70) && (thisuser.sl<=79)) {
strcpy(rankcfg.rank[0],rankcfg.rank[34]);
return;
} else if ((thisuser.sl>=80) && (thisuser.sl<=89)) {
strcpy(rankcfg.rank[0],rankcfg.rank[35]);
return;
} else if ((thisuser.sl>=90) && (thisuser.sl<=99)) {
strcpy(rankcfg.rank[0],rankcfg.rank[36]);
return;
} else if ((thisuser.sl>=100) && (thisuser.sl<=109)) {
strcpy(rankcfg.rank[0],rankcfg.rank[37]);
return;
} else if ((thisuser.sl>=110) && (thisuser.sl<=119)) {
strcpy(rankcfg.rank[0],rankcfg.rank[38]);
return;
} else if ((thisuser.sl>=120) && (thisuser.sl<=129)) {
strcpy(rankcfg.rank[0],rankcfg.rank[39]);
return;
} else if ((thisuser.sl>=130) && (thisuser.sl<=139)) {
strcpy(rankcfg.rank[0],rankcfg.rank[40]);
return;
} else if ((thisuser.sl>=140) && (thisuser.sl<=149)) {
strcpy(rankcfg.rank[0],rankcfg.rank[41]);
return;
} else if ((thisuser.sl>=150) && (thisuser.sl<=159)) {
strcpy(rankcfg.rank[0],rankcfg.rank[42]);
return;
} else if ((thisuser.sl>=160) && (thisuser.sl<=169)) {
strcpy(rankcfg.rank[0],rankcfg.rank[43]);
return;
} else if ((thisuser.sl>=170) && (thisuser.sl<=179)) {
strcpy(rankcfg.rank[0],rankcfg.rank[44]);
return;
} else if ((thisuser.sl>=180) && (thisuser.sl<=189)) {
strcpy(rankcfg.rank[0],rankcfg.rank[45]);
return;
} else if ((thisuser.sl>=190) && (thisuser.sl<=199)) {
strcpy(rankcfg.rank[0],rankcfg.rank[46]);
return;
} else if ((thisuser.sl>=200) && (thisuser.sl<=209)) {
strcpy(rankcfg.rank[0],rankcfg.rank[47]);
return;
} else if ((thisuser.sl>=210) && (thisuser.sl<=219)) {
strcpy(rankcfg.rank[0],rankcfg.rank[48]);
return;
} else if ((thisuser.sl>=220) && (thisuser.sl<=229)) {
strcpy(rankcfg.rank[0],rankcfg.rank[49]);
return;
} else if ((thisuser.sl>=230) && (thisuser.sl<=239)) {
strcpy(rankcfg.rank[0],rankcfg.rank[50]);
return;
} else if ((thisuser.sl>=240) && (thisuser.sl<=249)) {
strcpy(rankcfg.rank[0],rankcfg.rank[51]);
return;
} else if ((thisuser.sl>=250) && (thisuser.sl<=255)) {
strcpy(rankcfg.rank[0],rankcfg.rank[52]);
return;
}
}
}