Add lwhop() function master
authorAri Johnson <ari@theari.com>
Fri, 20 Sep 2019 14:22:13 +0000 (10:22 -0400)
committerAri Johnson <ari@theari.com>
Fri, 20 Sep 2019 14:22:13 +0000 (10:22 -0400)
game/txt/changes/0.73p4
game/txt/hlp/cobra_func.hlp
src/bsd.c
src/function.c

index b4d1714..fc7362d 100644 (file)
@@ -9,6 +9,7 @@ CobraMUSH Version 0.73p4
 
   Improvements:
     * lports() [AEJ]
+    * lwhop() [AEJ]
 
   Fixes:
     * Compiler warning when RPMODE_SYS enabled [AEJ]
index be7e045..0437fb3 100644 (file)
@@ -2267,6 +2267,7 @@ for an object named "Test", preferring a thing over other types.
   lwho()
   lwho(<viewer>)
   lwhoid(<viewer>)
+  lwhop(<viewer>)
 
   lwho() returns a list of the dbref numbers for all currently-connected
   players. When mortals use this function, the dbref numbers of DARK
@@ -2278,7 +2279,9 @@ for an object named "Test", preferring a thing over other types.
 
   lwohid() returns a list of objid's instead.
 
-See also: mwho(), xwho()
+  lwhop() returns a list of dbrefs and ports separated by colons.
+
+See also: mwho(), xwho(), lports()
 
 & MAP()
   map([<object>/]<attribute>,<list>[,<delim>][, <osep>])
index 53a4f39..49ea6a4 100644 (file)
--- a/src/bsd.c
+++ b/src/bsd.c
@@ -4137,6 +4137,7 @@ FUNCTION(fun_lwho)
   int powered = !(strchr(called_as, 'M') != NULL) && Priv_Who(executor);
   int xwho = *called_as == 'X';
   int objid = strchr(called_as, 'D') != NULL;
+  int port = strchr(called_as, 'P') != NULL;
 
   first = 1;
   if(!xwho && nargs && args[0] && *args[0]) {
@@ -4190,6 +4191,9 @@ FUNCTION(fun_lwho)
       if(objid) {
        safe_chr(':', buff, bp);
        safe_integer(CreTime(d->player), buff, bp);
+      } else if (port) {
+        safe_chr(':', buff, bp);
+        safe_integer(d->descriptor, buff, bp);
       }
     }
   }
index e5db4ed..eb4d8e0 100644 (file)
@@ -475,6 +475,7 @@ FUNTAB flist[] = {
   {"LVTHINGS", fun_dbwalker, 1, 1, FN_REG},
   {"LWHO", fun_lwho, 0, 1, FN_REG},
   {"LWHOID", fun_lwho, 0, 1, FN_REG},
+  {"LWHOP", fun_lwho, 0, 1, FN_REG},
 #ifdef USE_MAILER
   {"MAIL", fun_mail, 0, 2, FN_REG},
   {"MAILFROM", fun_mailfrom, 1, 2, FN_REG},