Skip to content
Snippets Groups Projects
Commit 6acf6152 authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

Merge branch 'mlong/thepit'

parents 954b512e d2e99ff3
No related branches found
No related tags found
No related merge requests found
...@@ -29,6 +29,10 @@ ...@@ -29,6 +29,10 @@
# hostname, and that host must point to the IP address that the IRCd will be # hostname, and that host must point to the IP address that the IRCd will be
# running on. # running on.
# #
# To control the interfaces the ircd binds on when running as a service, they
# need to be configured in the services.ini file. When running as a stand-alone
# script, the ircd always binds to the wildcard address (ie: all addresses).
#
# M:hostname:ip(Unused):description:port # M:hostname:ip(Unused):description:port
# #
M:SYSTEM_QWKID.synchro.net:*:SYSTEM_NAME:6667 M:SYSTEM_QWKID.synchro.net:*:SYSTEM_NAME:6667
...@@ -261,6 +265,10 @@ H:*:*:rrx.synchro.net ...@@ -261,6 +265,10 @@ H:*:*:rrx.synchro.net
# from jsexec) or inside the Synchronet services configuration. One port per # from jsexec) or inside the Synchronet services configuration. One port per
# line. # line.
# #
# To control the interfaces the ircd binds on when running as a service, they
# need to be configured in the services.ini file. When running as a stand-alone
# script, the ircd always binds to the wildcard address (ie: all addresses).
#
# P:*:*:*:port # P:*:*:*:port
# #
#P:*:*:*:7000 #P:*:*:*:7000
......
...@@ -366,8 +366,12 @@ function export_users(msgbase, realnames, all) ...@@ -366,8 +366,12 @@ function export_users(msgbase, realnames, all)
if(!list.disabled) if(!list.disabled)
list.disabled = []; list.disabled = [];
list.disabled.push(u.alias); list.disabled.push(u.alias);
if(realnames) if(u.name != u.alias) {
list.disabled.push(u.name); if(realnames)
list.disabled.push(u.name);
else if(realnames !== false)
list.disabled.push("md5:" + md5_calc(u.name));
}
} else { } else {
if(!lib.is_enabled(avatar)) { if(!lib.is_enabled(avatar)) {
alert("Invalid avatar for user #" + n); alert("Invalid avatar for user #" + n);
...@@ -378,8 +382,12 @@ function export_users(msgbase, realnames, all) ...@@ -378,8 +382,12 @@ function export_users(msgbase, realnames, all)
if(!list[data]) if(!list[data])
list[data] = []; list[data] = [];
list[data].push(u.alias); list[data].push(u.alias);
if(realnames && u.name != u.alias) if(u.name != u.alias) {
list[data].push(u.name); if(realnames)
list[data].push(u.name);
else if(realnames !== false)
list[data].push("md5:" + md5_calc(u.name));
}
} }
avatar.last_exported = new Date(); avatar.last_exported = new Date();
avatar.export_count++; avatar.export_count++;
...@@ -541,7 +549,7 @@ function main() ...@@ -541,7 +549,7 @@ function main()
var cmd; var cmd;
var i; var i;
var offset; var offset;
var realnames = false; var realnames;
var ptr; var ptr;
var limit; var limit;
var all; var all;
...@@ -571,6 +579,9 @@ function main() ...@@ -571,6 +579,9 @@ function main()
case '-realnames': case '-realnames':
realnames = true; realnames = true;
break; break;
case '-aliasonly':
realnames = false;
break;
case "-ptr": case "-ptr":
ptr = val; ptr = val;
break; break;
......
...@@ -192,7 +192,7 @@ function read_netuser(username, netaddr) ...@@ -192,7 +192,7 @@ function read_netuser(username, netaddr)
return obj; return obj;
} }
function read(usernum, username, netaddr) function read(usernum, username, netaddr, bbsid)
{ {
var usernum = parseInt(usernum, 10); var usernum = parseInt(usernum, 10);
var obj = cache_get(usernum >= 1 ? usernum : username, netaddr); var obj = cache_get(usernum >= 1 ? usernum : username, netaddr);
...@@ -202,8 +202,17 @@ function read(usernum, username, netaddr) ...@@ -202,8 +202,17 @@ function read(usernum, username, netaddr)
obj = read_localuser(usernum); obj = read_localuser(usernum);
else if(!netaddr) else if(!netaddr)
obj = read_localuser(system.matchuser(username)); obj = read_localuser(system.matchuser(username));
else else {
obj = read_netuser(username, netaddr); obj = read_netuser(username, netaddr);
if(!obj && bbsid)
obj = read_netuser(username, bbsid);
if(!obj) {
var namehash = "md5:" + md5_calc(username);
obj = read_netuser(namehash, netaddr);
if(!obj && bbsid)
obj = read_netuser(namehash, bbsid);
}
}
cache_set(usernum >= 1 ? usernum : username, obj, netaddr); cache_set(usernum >= 1 ? usernum : username, obj, netaddr);
return obj; return obj;
} }
...@@ -262,7 +271,7 @@ function is_enabled(obj) ...@@ -262,7 +271,7 @@ function is_enabled(obj)
// Uses Graphic.draw() at an absolute screen coordinate // Uses Graphic.draw() at an absolute screen coordinate
function draw(usernum, username, netaddr, above, right, top) function draw(usernum, username, netaddr, above, right, top)
{ {
var avatar = this.read(usernum, username, netaddr); var avatar = this.read(usernum, username, netaddr, usernum);
if(!is_enabled(avatar)) if(!is_enabled(avatar))
return false; return false;
return draw_bin(avatar.data, above, right, top); return draw_bin(avatar.data, above, right, top);
...@@ -297,7 +306,7 @@ function draw_bin(data, above, right, top) ...@@ -297,7 +306,7 @@ function draw_bin(data, above, right, top)
// Uses console.write() where-ever the cursor happens to be // Uses console.write() where-ever the cursor happens to be
function show(usernum, username, netaddr) function show(usernum, username, netaddr)
{ {
var avatar = this.read(usernum, username, netaddr); var avatar = this.read(usernum, username, netaddr, usernum);
if(!is_enabled(avatar)) if(!is_enabled(avatar))
return false; return false;
return show_bin(avatar.data); return show_bin(avatar.data);
......
...@@ -50,7 +50,8 @@ if(!(bbs.msg_attr&bbs.mods.smbdefs.MSG_ANONYMOUS)) { ...@@ -50,7 +50,8 @@ if(!(bbs.msg_attr&bbs.mods.smbdefs.MSG_ANONYMOUS)) {
if(!bbs.mods.avatar_lib) if(!bbs.mods.avatar_lib)
bbs.mods.avatar_lib = load({}, 'avatar_lib.js'); bbs.mods.avatar_lib = load({}, 'avatar_lib.js');
var options = get_options(); var options = get_options();
var success = bbs.mods.avatar_lib.draw(bbs.msg_from_ext, bbs.msg_from, bbs.msg_from_net var success = bbs.mods.avatar_lib.draw(bbs.msg_from_ext || bbs.msg_from_bbsid
,bbs.msg_from, bbs.msg_from_net
,options.msghdr_draw_above, options.msghdr_draw_right ,options.msghdr_draw_above, options.msghdr_draw_right
,options.msghdr_draw_top && bbs.msghdr_top_of_screen); ,options.msghdr_draw_top && bbs.msghdr_top_of_screen);
if(!success && bbs.smb_sub_code) { if(!success && bbs.smb_sub_code) {
......
...@@ -92,6 +92,10 @@ ...@@ -92,6 +92,10 @@
QUIET = @ QUIET = @
!endif !endif
!ifndef 3RDP_ROOT
3RDP_ROOT = $(SRC_ROOT)/../3rdp
!endif
# OS-specific # OS-specific
DIRSEP = \ # This comment is necessary DIRSEP = \ # This comment is necessary
EXEFILE = .exe EXEFILE = .exe
......
...@@ -940,11 +940,11 @@ int ansi_writestr_cb(const unsigned char *str, size_t len) ...@@ -940,11 +940,11 @@ int ansi_writestr_cb(const unsigned char *str, size_t len)
int ansi_initio_cb(void) int ansi_initio_cb(void)
{ {
#ifdef _WIN32 #ifdef _WIN32
DWORD conmode = 0;
if(isatty(fileno(stdin))) { if(isatty(fileno(stdin))) {
if(!SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), ENABLE_VIRTUAL_TERMINAL_INPUT)) if(!SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), ENABLE_VIRTUAL_TERMINAL_INPUT))
return(0); return(0);
DWORD conmode = 0;
GetConsoleMode(GetStdHandle(STD_OUTPUT_HANDLE), &conmode); GetConsoleMode(GetStdHandle(STD_OUTPUT_HANDLE), &conmode);
if(!SetConsoleMode(GetStdHandle(STD_OUTPUT_HANDLE), conmode | ENABLE_VIRTUAL_TERMINAL_PROCESSING)) if(!SetConsoleMode(GetStdHandle(STD_OUTPUT_HANDLE), conmode | ENABLE_VIRTUAL_TERMINAL_PROCESSING))
return(0); return(0);
......
...@@ -39,7 +39,6 @@ ...@@ -39,7 +39,6 @@
#include <stdarg.h> #include <stdarg.h>
#include <stdlib.h> /* alloca */ #include <stdlib.h> /* alloca */
#include <stdio.h> #include <stdio.h>
#include <stdbool.h>
#if defined(_WIN32) #if defined(_WIN32)
#include <malloc.h> /* alloca() on Win32 */ #include <malloc.h> /* alloca() on Win32 */
#endif #endif
...@@ -1677,7 +1676,7 @@ CIOLIBEXPORT struct ciolib_screen * CIOLIBCALL ciolib_savescreen(void) ...@@ -1677,7 +1676,7 @@ CIOLIBEXPORT struct ciolib_screen * CIOLIBCALL ciolib_savescreen(void)
} }
if (vmode != -1) { if (vmode != -1) {
ret->pixels = ciolib_getpixels(0, 0, vparams[vmode].charwidth * vparams[vmode].cols - 1, vparams[vmode].charheight * vparams[vmode].rows - 1, true); ret->pixels = ciolib_getpixels(0, 0, vparams[vmode].charwidth * vparams[vmode].cols - 1, vparams[vmode].charheight * vparams[vmode].rows - 1, TRUE);
} }
ciolib_vmem_gettext(1, 1, ret->text_info.screenwidth, ret->text_info.screenheight, ret->vmem); ciolib_vmem_gettext(1, 1, ret->text_info.screenwidth, ret->text_info.screenheight, ret->vmem);
ret->fg_colour = ciolib_fg; ret->fg_colour = ciolib_fg;
......
...@@ -14,6 +14,14 @@ exe: ooii.exe ...@@ -14,6 +14,14 @@ exe: ooii.exe
ver = 1.20 ver = 1.20
url = http://www.operationoverkill.com/files/ooii_120.zip url = http://www.operationoverkill.com/files/ooii_120.zip
[md5:fb448a43d3da4e14bc61606320d33fd1]
ver = 1.11
url = https://www.ziskind.com/bbsdoorfiles/ooii/oo111.zip
[md5:26a91c349e08a4052129ee90b527309d]
ver = 1.10
url = https://www.ziskind.com/bbsdoorfiles/ooii/oo110-1.zip
[md5:75917bcbda6a7aa478e0968830219626] [md5:75917bcbda6a7aa478e0968830219626]
ver = 1.00 ver = 1.00
......
Name: The Pit
Desc: Warriors fight for glory in a huge area against other players or AI creatures
By: James R. Berry
Cats: Games
Subs: Combat
exe: pit.exe
;http://wiki.synchro.net/howto:door:thepit
;
; Run control.exe and choose:
; -FOSSIL
; -DOOR.SYS
; -Path to doorfile: your node's directory
; -MultiNoded Usage: ON
; -Repeat for each node (use Page Up to make a new node config)
[md5:42bae5f01ee9f0d23d541f1c95ca2ab5]
ver = 3.6
url = http://bbsfiles.com/ftp/misc/pit36.zip
[prog:THEPIT]
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
name = The Pit
; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
cmd = pit /NODE%#
ars = DOS
execution_ars = NOT GUEST
settings = XTRN_ANSI | XTRN_SH | XTRN_MULTIUSER
type = XTRN_GAP
;clean_cmd =
...@@ -139,7 +139,7 @@ function GameSettings() ...@@ -139,7 +139,7 @@ function GameSettings()
this.save=GameSettings_Save; this.save=GameSettings_Save;
if(file_exists(f.name)) { if(file_exists(f.name)) {
f.open("r+"); f.open("r");
for(i=0; i<GameSettingProperties.length; i++) { for(i=0; i<GameSettingProperties.length; i++) {
this[GameSettingProperties[i].prop]=f.iniGetValue(null, GameSettingProperties[i].prop, GameSettingProperties[i].def); this[GameSettingProperties[i].prop]=f.iniGetValue(null, GameSettingProperties[i].prop, GameSettingProperties[i].def);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment