Skip to content
Snippets Groups Projects
Commit d24db77c authored by echicken's avatar echicken :chicken:
Browse files

Wow.

parent 7eeec842
No related branches found
No related tags found
1 merge request!463MRC mods by Codefenix (2024-10-20)
...@@ -25,37 +25,36 @@ load("sbbsdefs.js"); ...@@ -25,37 +25,36 @@ load("sbbsdefs.js");
load("menu-commands.js"); load("menu-commands.js");
var menu; var menu;
for(var m in Commands.Menus) { for (var m in Commands.Menus) {
if(!Commands.Menus[m].Default) if (!Commands.Menus[m].Default) continue;
continue;
menu = m; menu = m;
break; break;
} }
var putMsg = function(str) { function putMsg(str) {
str = str.replace(/\\1/g, ascii(1)); str = str.replace(/\\1/g, ascii(1)); // What in the sweet blue frig is this all about
console.putmsg(str); console.putmsg(str);
} }
var doMenu = function() { function doMenu() {
console.clear(LIGHTGRAY); console.clear(LIGHTGRAY);
if(Commands.Menus[menu].Header != "") if (Commands.Menus[menu].Header != "") {
bbs.menu(Commands.Menus[menu].Header.replace(/\..*$/, "")); bbs.menu(Commands.Menus[menu].Header.replace(/\..*$/, ""));
else } else {
putMsg(Commands.Menus[menu].Title); putMsg(Commands.Menus[menu].Title);
}
console.crlf(); console.crlf();
var keys = []; var keys = [];
for(var command in Commands.Menus[menu].Commands) { for (var command in Commands.Menus[menu].Commands) {
if(!user.compare_ars(Commands.Menus[menu].Commands[command].ARS)) { if (!user.compare_ars(Commands.Menus[menu].Commands[command].ARS)) {
keys.push(null); keys.push(null);
continue; continue;
} }
keys.push(Commands.Menus[menu].Commands[command].hotkey); keys.push(Commands.Menus[menu].Commands[command].hotkey);
if(!Commands.Menus[menu].List) if (!Commands.Menus[menu].List) continue;
continue;
putMsg(Commands.Menus[menu].Commands[command].text); putMsg(Commands.Menus[menu].Commands[command].text);
console.crlf(); console.crlf();
} }
...@@ -63,37 +62,34 @@ var doMenu = function() { ...@@ -63,37 +62,34 @@ var doMenu = function() {
putMsg(Commands.Menus[menu].Prompt); putMsg(Commands.Menus[menu].Prompt);
var userInput = console.getkeys(keys.join("")); var userInput = console.getkeys(keys.join(""));
if(typeof userInput == "undefined" || userInput == "") if (userInput === undefined || userInput == "") return;
return;
var command = Commands.Menus[menu].Commands[keys.indexOf(userInput)]; var command = Commands.Menus[menu].Commands[keys.indexOf(userInput)];
if(typeof command.menu != "undefined") { if (command.menu !== undefined) {
menu = command.menu; menu = command.menu;
} else { } else {
try { // Let's not lose the entire session because of a bad command. try { // Let's not lose the entire session because of a bad command.
var path = command.command.split("."); var path = command.command.split(".");
if(path[1] == "Externals") if (path[1] == "Externals") {
bbs.exec_xtrn(path[2]); bbs.exec_xtrn(path[2]);
else } else {
Commands[path[1]][path[2]].Action(); Commands[path[1]][path[2]].Action();
} catch(err) { }
} catch (err) {
log(LOG_ERR, err); log(LOG_ERR, err);
} }
} }
} }
var main = function() { try {
while(bbs.online) { while (bbs.online) {
getMenus(); getMenus();
doMenu(); doMenu();
} }
}
try {
main();
} catch(err) { } catch(err) {
log(LOG_ERR, err); log(LOG_ERR, err);
} } finally {
bbs.hangup(); bbs.hangup();
exit(); exit();
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment