home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
BBS_UTIL
/
MODS_3.ZIP
/
MSGMENU.MOD
< prev
Wrap
Text File
|
1994-01-24
|
9KB
|
314 lines
┌────────────────────────────────────────────────────────────────────────────┐
│ Mod Name: MSGMENU.MOD Mod Author: MidiMan #1@850 │
│ Difficulty: ███┼┼┼┼ Date: 12-07-1993 │
│ WWIV Version: 4.23 │
│ Description: Seperates all your email/message commands in its own menu │
│ this is good for ripmod (less icons per menu) │
└────────────────────────────────────────────────────────────────────────────┘
++ ADD -- DELETE =+ MODIFY == EXISTING LINE
Load MULTINST.C
Look for void make_inst_str()
== case INST_LOC_WFC:
== sprintf(s1,"%-25.25s",get_string(1402));
== break;
++ case INST_LOC_MSGMENU:
++ sprintf(s1,"Message Base");
++ break;
== default:
== sprintf(s1,"%-25.25s",get_string(1403));
== break;
Save & then Load vardec.h and look for and change:
== #define INST_LOC_NETLIST 45
++ #define INST_LOC_MSGMENU 46
== #define INST_LOC_WFC 65535
Save & then Load BBS.C and look for and change the following:
== main_menu_label:
== setiia(90);
== set_net_num(0);
== while (!hangup) {
== switch(curdloads) {
++ case 3:
++ write_inst(INST_LOC_MSGMENU,usub[cursub].subnum,INST_FLAGS_ONLINE);
++ msgmenu();
++ break;
== case 2:
== write_inst(INST_LOC_CHAINS,0,INST_FLAGS_ONLINE);
== do_chains();
== break;
Blcok copy the following at the bottom of misccmd.c
void msgmenu(void)
{
char *s, s1[81], s2[81], ch;
int i, useconf, ac;
long l;
s2[0]=0;
if (usub[cursub].subnum==-1) {
cursub=0;
if (usub[cursub].subnum==-1) {
strcpy(s2,get_string(16));
}
}
write_inst(INST_LOC_MSGMENU,usub[cursub].subnum,INST_FLAGS_ONLINE);
tleft(1);
if ((sysstatus_expert & thisuser.sysstatus)==0) {
/* if (!mm) { uncomment if using ripmod */
printmenu(20);
/* lines_listed=0; uncomment if using ripmod */
/* } else uncomment if using ripmod */
/* mm=0; uncomment if using ripmod */
}
nl();
nl();
tleft(1);
useconf=((subconfnum>1) && okconf(&thisuser));
#ifdef OPT_EXTRA_COLOR
/* if (!rip) uncomment if using ripmod */
npr("T - %s\r\n",ctim(nsl()));
sprintf(s1,"[Conf %c] [%s]",subconfs[uconfsub[curconfsub].confnum].designator
,
stripcolors(subconfs[uconfsub[curconfsub].confnum].name));
if (s2[0]==0)
sprintf(s2,"[%s%s] [%s] : ",
useconf?get_string(1398):"",
usub[cursub].keys,
stripcolors(subboards[usub[cursub].subnum].name));
#else
/* if (!rip) uncomment if using ripmod */
npr("T - %s\r\n",ctim(nsl()));
sprintf(s1,"[Conf %c] [%s]",subconfs[uconfsub[curconfsub].confnum].designator
,
stripcolors(subconfs[uconfsub[curconfsub].confnum].name));
if (s2[0]==0)
sprintf(s2,"[%s%s] [%s] :",
useconf?get_string(1398):"",
usub[cursub].keys,
stripcolors(subboards[usub[cursub].subnum].name));
#endif
if (useconf) {
ansic(2);
pl(s1);
}
prt(2,s2);
helpl=1;
s=mmkey(0);
helpl=0;
if (s[0])
for (i=0; (i<num_subs) && (usub[i].subnum!=-1); i++)
if (strcmp(usub[i].keys,s)==0)
cursub=i;
if (strcmp(s,"WHO")==0) {
multi_instance();
}
/* single-key commands here */
if ((s[1]==0) && (s[0]!=0)) {
switch(s[0]) {
case '}':
if (okconf(&thisuser)) {
if ((curconfsub<subconfnum-1) && (uconfsub[curconfsub+1].confnum>=0))
++curconfsub;
else
curconfsub=0;
setuconf(CONF_SUBS, curconfsub, -1);
}
/* mm=1; uncommment if using ripmod */
break;
case '>':
case '+':
case ']':
if ((cursub<num_subs-1) && (usub[cursub+1].subnum>=0))
++cursub;
else
cursub=0;
/* mm=1; uncomment if using ripmod */
break;
case '{':
if (okconf(&thisuser)) {
if (curconfsub>0)
--curconfsub;
else {
while ((uconfsub[curconfsub+1].confnum>=0) && (curconfsub<subconfnu
m-1))
++curconfsub;
}
setuconf(CONF_SUBS, curconfsub, -1);
}
/* mm=1; uncommment if using ripmod */
break;
case '<':
case '-':
case '[':
if (cursub>0)
--cursub;
else {
while ((usub[cursub+1].subnum>=0) && (cursub<num_subs-1))
++cursub;
}
/* mm=1; uncommment if using ripmod */
break;
case '#':
nl();
pl(get_string(939));
nl();
case '*':
/* ripwindow(); uncomment if using ripmod */
sublist();
break;
case '~':
/* ripbig(); uncomment if using ripmod */
list_users(1);
break;
case 'C':
helpl=3;
reqchat();
break;
case 'E':
/* ripbig(); uncomment if using ripmod */
send_email();
break;
case 'F':
write_inst(INST_LOC_FEEDBACK,0,INST_FLAGS_ONLINE);
feedback(0);
break;
case 'H':
hop_sub();
break;
case 'J':
/* ripbig(); uncomment if using ripmod */
if (okconf(&thisuser))
jump_conf(CONF_SUBS);
break;
case 'K':
/* ripbig(); uncomment if using ripmod */
helpl=8;
write_inst(INST_LOC_KILLEMAIL,0,INST_FLAGS_ONLINE);
kill_old_email();
break;
case 'M':
/* ripbig(); uncomment if using ripmod */
readmail();
break;
case 'N':
write_inst(INST_LOC_SUBS,65535,INST_FLAGS_ONLINE);
express=0;
expressabort=0;
nscan(0);
break;
case 'O':
/* ripoff(); uncomment if using ripmod */
/* if (!rip) { uncomment if using ripmod */
nl();
nl();
prt(5,get_string(28));
helpl=12;
if (yn()) {
write_inst(INST_LOC_LOGOFF,0,INST_FLAGS_ONLINE);
outchr(12);
outstr(get_string(29));
pl(ctim(timer()-timeon));
existprint(get_string(1036));
hangup=1;
}
/* } uncomment if using ripmod */
break;
case 'P':
/* ripbig(); uncomment if using ripmod */
irt[0]=0;
irt_name[0]=0;
grab_quotes(NULL, NULL);
if (usub[0].subnum!=-1)
post();
break;
case 'Z':
/* ripbig(); uncomment if using ripmod */
write_inst(INST_LOC_SUBS,usub[cursub].subnum,INST_FLAGS_ONLINE);
i=0;
express=0;
expressabort=0;
qscan(cursub,&i);
break;
case 'R':
/* ripphaser(); uncomment if using ripmod */
/* ripwindow(); uncomment if using ripmod */
write_inst(INST_LOC_SUBS,usub[cursub].subnum,INST_FLAGS_ONLINE);
helpl=15;
remove_post();
break;
case 'S':
/* ripbig(); uncomment if using ripmod */
write_inst(INST_LOC_SUBS,usub[cursub].subnum,INST_FLAGS_ONLINE);
express=0;
expressabort=0;
scan2();
break;
case 'T':
if (syscfg.sysconfig & sysconfig_no_xfer) {
nl();
pl(get_string(30));
nl();
break;
}
if ((udir[0].subnum==-1) && (okconf(&thisuser))) {
for (curconfdir=0;
(curconfdir<dirconfnum) &&
(uconfdir[curconfdir].confnum!=-1);
curconfdir++) {
setuconf(CONF_DIRS, curconfdir, -1);
if (udir[0].subnum!=-1)
break;
}
}
if (udir[0].subnum!=-1) {
write_inst(INST_LOC_XFER,udir[curdir].subnum,INST_FLAGS_ONLINE);
curdloads=1;
existprint(get_string(1037));
} else {
nl();
pl(get_string(31));
nl();
}
break;
case 'Q':
curdloads=0;
break;
case '?':
printmenu(20);
break;
}
}
helpl=0;
}
=*=*=*=*=*=*=*=*=*=*=*= END BLOCK COPY
go into bbs.c and delete all the message/mail commands from your void
main menu.
next, make a menu and label it MENU20.ANS MENU20.MSG MENU29.RIP
compile and run!
#1@850 Midiman